/* 桃盯 · 视觉规范 v3（2026-10-28）
 * 方向：清爽、少量粉色、轻玻璃感。仅样式，不改结构、接口或业务逻辑。
 * 所有页面依赖语义元素和既有类名（panel/stack/actions/fields/tabs/muted/tag/empty/table-wrap 等）。 */

/* ---------- 设计变量 ---------- */
:root{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  font-size:15px;line-height:1.6;
  color-scheme:light;
  --bg:#f5f7fa;
  --bg-tint-a:#fff5f8;
  --bg-tint-b:#f0f6fa;
  --surface:#fff;
  --surface-2:#f8fafc;
  --glass:rgba(255,255,255,.72);
  --line:#e6e9ef;
  --line-strong:#cbd2dd;
  --text:#293342;
  --muted:#667285;
  --accent:#b13f72;
  --accent-strong:#91305c;
  --accent-2:#cc638e;
  --soft:#fff0f5;
  --soft-line:#f2d6e3;
  --focus:#5f9fb6;
  --ok:#3f8f72;
  --radius-lg:18px;
  --radius:14px;
  --radius-sm:10px;
  --shadow-sm:0 1px 2px rgba(58,32,52,.05);
  --shadow:0 2px 10px -5px rgba(28,45,68,.12);
  --shadow-lg:0 20px 50px -20px rgba(58,32,52,.28);
  color:var(--text);
  background:var(--bg);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;min-height:100vh;
  background:
    radial-gradient(900px 520px at 100% -10%,var(--bg-tint-a),transparent 60%),
    radial-gradient(800px 500px at -10% 110%,var(--bg-tint-b),transparent 60%),
    var(--bg);
  background-attachment:fixed;
  -webkit-font-smoothing:antialiased;
}
::selection{background:#f5c6dc;color:#3b1d2d}

/* ---------- 基础排版 ---------- */
h1{font-size:28px;font-weight:700;letter-spacing:-.01em;margin:6px 0;line-height:1.3}
h2{font-size:18px;font-weight:650;margin:0 0 14px;line-height:1.4}
h3{font-size:15.5px;font-weight:650;margin:22px 0 10px;line-height:1.45}
h4{font-size:14px;font-weight:650;margin:16px 0 8px;color:var(--text)}
h5{font-size:13px;font-weight:650;margin:12px 0 6px}
p{line-height:1.75;margin:10px 0}
a{color:var(--accent);text-underline-offset:3px}
a:hover{color:var(--accent-strong)}
strong{font-weight:650}
small,.small{font-size:12px}
.muted{color:var(--muted);font-size:13px}
.price{font-variant-numeric:tabular-nums}
ul,ol{padding-left:22px}
li{margin:4px 0;line-height:1.7}
hr{border:0;border-top:1px solid var(--line);margin:20px 0}
pre{
  background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);
  padding:12px 14px;overflow:auto;font-size:12.5px;line-height:1.6;max-width:100%;
  white-space:pre-wrap;overflow-wrap:anywhere;
}
code{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em}
blockquote{margin:12px 0;padding:10px 16px;border-left:3px solid var(--soft-line);background:var(--soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--muted)}
img{max-width:100%}

/* ---------- 按钮 ---------- */
button,input,select,textarea{font:inherit;color:inherit}
button{
  cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  min-height:42px;padding:9px 18px;
  border:1px solid var(--line-strong);border-radius:12px;
  background:var(--surface);color:var(--text);
  font-weight:500;line-height:1.3;text-align:center;
  box-shadow:var(--shadow-sm);
}
button:hover{border-color:var(--accent-2);color:var(--accent-strong);background:#fffafd}
button:active{transform:translateY(1px)}
button:disabled{opacity:.48;cursor:not-allowed;box-shadow:none;transform:none}
button:disabled:hover{border-color:var(--line-strong);color:var(--text);background:var(--surface)}
button.primary{
  background:var(--accent);
  color:#fff;border-color:transparent;
  box-shadow:0 2px 5px rgba(177,63,114,.12);
}
button.primary:hover{background:var(--accent-strong);color:#fff}
button.primary:disabled:hover{background:var(--accent);color:#fff}
/* 相邻按钮自动留出间距（大量模块直接并排输出按钮） */
button+button{margin-inline-start:8px}
:is(.actions,.tabs,nav,.toolbar)>button+button{margin-inline-start:0}
/* 在块级流中的按钮上下留白 */
:is(form,section,fieldset,details,article,.panel,.stack,#content>div)>button{margin-top:8px;margin-bottom:4px}
/* 网格容器中按钮不拉伸成整行 */
:is(.stack,form,fieldset,.fields)>button{justify-self:start;align-self:end}

button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:3px solid var(--focus);outline-offset:2px;
}

/* ---------- 表单 ---------- */
input,select,textarea{
  width:100%;min-height:42px;padding:10px 12px;
  border:1px solid var(--line-strong);border-radius:var(--radius-sm);
  background:var(--surface);
  box-shadow:inset 0 1px 2px rgba(58,32,52,.03);
}
input::placeholder,textarea::placeholder{color:#a79fab}
input:hover,select:hover,textarea:hover{border-color:#cfc2d0}
input:focus,select:focus,textarea:focus{border-color:var(--accent-2);box-shadow:0 0 0 3px rgba(217,112,159,.16)}
input:disabled,select:disabled,textarea:disabled,input[readonly],textarea[readonly]{background:var(--surface-2);color:var(--muted)}
input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#c4507f}
textarea{min-height:96px;resize:vertical;line-height:1.6}
select{
  appearance:none;-webkit-appearance:none;padding-right:38px;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 20px) 52%,calc(100% - 15px) 52%;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;
}
select[multiple]{background-image:none;padding-right:12px}
input[type=checkbox],input[type=radio]{
  width:18px;height:18px;min-height:18px;padding:0;margin:0;flex-shrink:0;
  accent-color:var(--accent);box-shadow:none;cursor:pointer;
}
input[type=file]{padding:8px;cursor:pointer}
input[type=file]::file-selector-button{
  font:inherit;border:1px solid var(--line-strong);border-radius:8px;background:var(--soft);
  color:var(--accent-strong);padding:6px 12px;margin-right:12px;cursor:pointer;
}
input[type=color]{padding:4px;width:56px}
input[type=range]{padding:0;box-shadow:none;border:0;accent-color:var(--accent)}
label{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:500}
/* 复选框/单选框标签改为同一行 */
label:has(>input:is([type=checkbox],[type=radio])){
  display:flex;align-items:center;gap:10px;color:var(--text);font-size:14px;font-weight:400;
  min-height:40px;cursor:pointer;
}
label:has(>input:is([type=checkbox],[type=radio]))>input{order:-1}
fieldset{
  margin:0 0 14px;padding:0;border:0;min-width:0;
  display:grid;gap:14px;
}
fieldset:has(>legend){
  padding:16px 18px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);
}
legend{
  float:left;width:100%;padding:0;margin:0 0 2px;font-size:13.5px;font-weight:650;color:var(--text);
}
legend+*{clear:both}
fieldset:disabled{opacity:.7}
form{min-width:0}
form>label,form>fieldset,form>.fields,form>div>label{margin-bottom:12px}
form>label:has(+button){margin-bottom:6px}
button+:is(.panel,section,form,.table-wrap){margin-top:14px}
:not(form)>label+:is(label,input,select,textarea){margin-top:12px}
.fields>label+label,.actions>label+label,fieldset>label+label{margin-top:0}
#content h1{font-size:22px;margin:4px 0 8px}
form>p:empty,section>p:empty{margin:0}

/* ---------- 应用壳层 ---------- */
#app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
aside{
  padding:32px 18px 22px;
  background:var(--glass);
  border-right:1px solid var(--line);
  display:flex;flex-direction:column;position:sticky;top:0;height:100vh;
  backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);
}
.brand{
  display:inline-block;padding:0 10px;
  font-size:28px;font-weight:800;letter-spacing:4px;text-decoration:none;
  background:linear-gradient(135deg,#e17aa8,#a8407a);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.brand span{
  display:block;font-size:10px;letter-spacing:6px;margin-top:6px;font-weight:600;
  color:var(--muted);-webkit-text-fill-color:var(--muted);
}
.caption{font-size:12px;margin:14px 10px 26px;color:var(--muted);line-height:1.6}
nav{display:grid;gap:4px}
nav button{
  justify-content:flex-start;text-align:left;
  min-height:40px;padding:9px 12px;
  background:transparent;border-color:transparent;box-shadow:none;
  color:#4c4551;font-weight:500;border-radius:11px;
}
nav button:hover{background:rgba(252,240,245,.8);border-color:transparent;color:var(--accent-strong)}
nav button.active{
  background:var(--surface);color:var(--accent);font-weight:650;
  box-shadow:0 1px 2px rgba(58,32,52,.05),0 6px 18px -10px rgba(184,72,127,.45);
  position:relative;
}
nav button.active::before{
  content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;
  background:linear-gradient(var(--accent-2),var(--accent));
}
.sidebar-bottom{margin-top:auto;padding:16px 10px 0;font-size:11.5px;color:var(--muted)}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok);margin-right:7px;box-shadow:0 0 0 3px rgba(63,143,114,.15)}

main{padding:36px clamp(20px,4vw,64px) 64px;max-width:1440px;width:100%}
header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}
.eyebrow{font-size:10.5px;letter-spacing:2.4px;color:var(--accent);font-weight:600;opacity:.8}

/* ---------- 卡片 ---------- */
.panel{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:24px 26px;margin-bottom:18px;box-shadow:var(--shadow);
}
.panel>h2:first-child,.panel>h3:first-child{margin-top:0}
/* 卡片内的嵌套卡片降级为浅色分区，避免层层阴影 */
.panel .panel{background:var(--surface-2);box-shadow:none;border-radius:var(--radius);padding:18px 20px}
/* 未加类名但以标题开头的独立分区，视觉上同样成卡片（套餐、站长等页面） */
#content section:not([class]):has(>:is(h2,h3):first-child):not(.panel section){
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:22px 26px;margin-bottom:16px;box-shadow:var(--shadow);
}
#content section:not([class]):has(>:is(h2,h3):first-child):not(.panel section)>:is(h2,h3):first-child{margin-top:0}
#content section:not([class]):has(>:is(h2,h3):first-child):not(.panel section) section:not([class]):has(>:is(h2,h3):first-child){
  background:var(--surface-2);box-shadow:none;border-radius:var(--radius);padding:18px 20px;
}
article{
  border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;margin:10px 0;background:var(--surface);
}
.panel article{background:var(--surface-2)}
.intro{
  position:relative;overflow:hidden;
  background:linear-gradient(110deg,#fff 30%,#f8fbfe 75%,#fff4f8);
  padding:30px 32px;border-radius:var(--radius-lg);border:1px solid var(--soft-line);margin-bottom:22px;
  box-shadow:var(--shadow);
}
.intro::after{
  content:"";position:absolute;right:-60px;top:-80px;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(217,112,159,.08),transparent 70%);pointer-events:none;
}
.intro h2{font-size:21px}
.intro p{color:var(--muted);margin-bottom:0;max-width:640px}

/* ---------- 布局工具 ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:16px;margin-bottom:18px}
.grid>.panel{margin-bottom:0;display:flex;flex-direction:column;transition:none}
.grid>.panel h2,.grid>.panel h3{font-size:17px}
.grid>.panel>:last-child{margin-top:auto}
.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px 16px;margin-bottom:16px;align-items:end}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.actions>h2,.actions>h3{margin:0 6px}
.actions>label:not(:has(>input:is([type=checkbox],[type=radio]))){min-width:160px}
.stack{display:grid;gap:14px}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}
.tag{
  display:inline-flex;align-items:center;gap:4px;padding:3px 10px;
  background:var(--soft);color:var(--accent);border:1px solid var(--soft-line);
  border-radius:999px;font-size:12px;font-weight:600;margin-bottom:12px;align-self:flex-start;
}
.empty{
  text-align:center;padding:44px 16px;color:var(--muted);
  border:1.5px dashed var(--line-strong);border-radius:var(--radius);background:rgba(255,255,255,.5);
}
.auth{max-width:520px;margin:28px auto}

/* ---------- 标签页 ---------- */
.tabs{
  display:flex;gap:4px;margin:18px 0 20px;flex-wrap:wrap;
  padding:5px;background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow-sm);width:fit-content;max-width:100%;
}
.tabs>button{
  min-height:36px;padding:7px 14px;border-color:transparent;background:transparent;box-shadow:none;
  font-size:13.5px;color:#5a5260;border-radius:10px;
}
.tabs>button:hover{background:var(--soft);color:var(--accent-strong)}
.tabs .active,.tabs>button.active{
  background:var(--surface);color:var(--accent);font-weight:650;
  box-shadow:0 1px 2px rgba(58,32,52,.06),0 4px 12px -6px rgba(184,72,127,.4);
}

/* ---------- 表格 ---------- */
.table-wrap{
  overflow:auto;max-width:100%;min-width:0;
  border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:12px 0;
}
table{width:100%;border-collapse:separate;border-spacing:0;white-space:nowrap}
th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:13px;vertical-align:middle}
th{
  color:var(--muted);font-weight:600;font-size:12px;letter-spacing:.02em;background:var(--surface-2);
  position:sticky;top:0;z-index:1;
}
tbody tr:last-child>td{border-bottom:0}
tbody tr:hover>td{background:#fdf8fb}
td>p{margin:4px 0}
td>button{min-height:36px;padding:6px 14px;font-size:13px}
caption{caption-side:top;text-align:left;padding:12px 14px;color:var(--muted);font-size:13px}

/* ---------- 折叠区 ---------- */
details{
  border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);
  margin:12px 0;padding:0 16px;
}
details[open]{padding-bottom:14px}
summary{
  cursor:pointer;list-style:none;padding:13px 0;font-weight:600;font-size:14px;
  display:flex;align-items:center;gap:10px;border-radius:8px;
}
summary::-webkit-details-marker{display:none}
summary::before{
  content:"";flex-shrink:0;width:7px;height:7px;margin:0 4px 0 2px;
  border-right:2px solid var(--accent-2);border-bottom:2px solid var(--accent-2);
  transform:rotate(-45deg);transition:transform .15s ease;
}
details[open]>summary::before{transform:rotate(45deg)}
details[open]>summary{border-bottom:1px solid var(--line);margin-bottom:10px;border-radius:0}
summary:hover{color:var(--accent-strong)}
.panel details{background:var(--surface-2)}

/* ---------- 提示与弹窗 ---------- */
#notice:not(:empty){
  display:flex;align-items:flex-start;gap:10px;
  padding:13px 16px;border:1px solid var(--soft-line);border-left:4px solid var(--accent);
  border-radius:12px;margin-bottom:20px;background:var(--soft);color:#7f2d55;box-shadow:var(--shadow-sm);
}
[role=alert]:not(:empty){color:#9c2f5d}
dialog{
  border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;
  max-width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;
  background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg);
}
dialog::backdrop{background:rgba(40,24,36,.38);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
progress{accent-color:var(--accent);width:100%;height:8px}

/* ---------- 地图与图片 ---------- */
svg.map{
  background:linear-gradient(#fbfafc,#f5f3f7);border:1px solid var(--line);border-radius:var(--radius);
  width:100%;height:380px;box-shadow:inset 0 1px 3px rgba(58,32,52,.05);
}
.map text{font-size:14px;fill:#3f414a}
.item-images img{display:block;max-width:min(100%,240px);max-height:240px;object-fit:contain;border-radius:12px;margin:12px 0;border:1px solid var(--line);background:var(--surface-2)}
.item-image-preview img,.item-image-preview{border-radius:12px}

[hidden]{display:none!important}

/* ---------- 窄屏与溢出保护 ---------- */
#app>aside{overflow-y:auto;min-width:0}
#app>aside>nav{flex-shrink:0}
main,#content,.panel,.intro,.grid>*,.fields>*{min-width:0}
header>div{min-width:0}
h1,h2,h3,.muted,#notice,button{overflow-wrap:anywhere}
header>button{flex-shrink:0}

@media(max-width:760px){
  :root{font-size:15px}
  #app{grid-template-columns:1fr;grid-template-rows:auto 1fr}
  aside{
    position:sticky;top:0;z-index:20;height:auto;align-self:start;padding:12px 14px 10px;
    flex-direction:column;align-items:stretch;gap:8px;
    border-right:0;border-bottom:1px solid var(--line);
  }
  #app>aside{overflow:visible}
  .brand{font-size:21px;letter-spacing:3px;padding:0 4px}
  .brand span,.caption,.sidebar-bottom{display:none}
  /* 导航改为横向滑动条，避免占满首屏 */
  #app>aside>nav{
    display:flex;flex-wrap:nowrap;gap:4px;overflow-x:auto;width:auto;
    margin:0 -14px;padding:2px 14px 4px;scrollbar-width:none;scroll-snap-type:x proximity;
  }
  #app>aside>nav::-webkit-scrollbar{display:none}
  #app>aside>nav button{flex:0 0 auto;min-height:36px;padding:7px 13px;font-size:13px;scroll-snap-align:start;white-space:nowrap}
  nav button.active::before{display:none}
  nav button.active{background:var(--soft);box-shadow:none}
  main{padding:20px 14px 48px}
  header{flex-wrap:wrap;align-items:center;margin-bottom:18px}
  h1{font-size:23px}
  .panel,.intro,#content section:not([class]):has(>:is(h2,h3):first-child):not(.panel section){padding:18px 16px;border-radius:16px}
  .panel .panel{padding:14px}
  .fields{grid-template-columns:1fr}
  .eyebrow{font-size:9px}
  .auth{margin:12px auto}
  /* 标签页横向滑动 */
  .tabs{flex-wrap:nowrap;overflow-x:auto;width:auto;scrollbar-width:none;margin-left:-2px;margin-right:-2px}
  .tabs::-webkit-scrollbar{display:none}
  .tabs>button{flex:0 0 auto;white-space:nowrap}
  input,select,textarea{min-width:0;max-width:100%;font-size:16px}
  fieldset:has(>legend){padding:14px}
  svg.map{height:300px}
}

/* ---------- 深色模式 ---------- */
@media(prefers-color-scheme:dark){
  :root{
    color-scheme:dark;
    --bg:#16131a;--bg-tint-a:#2a1a26;--bg-tint-b:#152430;
    --surface:#211c25;--surface-2:#1b171f;--glass:rgba(30,25,34,.78);
    --line:#352d3a;--line-strong:#463b4c;
    --text:#ece6ef;--muted:#b0a5b6;
    --accent:#f0a3c7;--accent-strong:#f7bfd8;--accent-2:#cc638e;
    --soft:#33232f;--soft-line:#4f3245;--focus:#7cbcd3;
    --shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px -12px rgba(0,0,0,.5);
  }
  button:hover{background:#2a2230}
  nav button{color:#d4cad9}
  nav button:hover{background:rgba(51,35,47,.7)}
  .tabs{background:rgba(33,28,37,.7)}
  .tabs>button{color:#cfc4d4}
  button.primary{background:linear-gradient(135deg,#c95b8d,#a8407a);color:#fff}
  tbody tr:hover>td{background:#272029}
  .intro{background:linear-gradient(120deg,#211c25 0%,#2a1f29 60%,#3a2433 100%)}
  #notice:not(:empty){color:#f6c3da}
  .empty{background:rgba(33,28,37,.5)}
  svg.map{background:linear-gradient(#f8f6fa,#efecf2)}
  .map text{fill:#3f414a}
  ::selection{background:#6b3553;color:#fff}
}
@media(prefers-reduced-transparency:reduce){
  aside{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--surface)}
  dialog::backdrop{backdrop-filter:none}
}
@media print{
  aside,#signout{display:none}
  #app{display:block}
  body{background:#fff}
  .panel{box-shadow:none}
}

/* Shared finishing rules: retain real states and actions on every module. */
#app>main{min-width:0}
#content :is(section,article,form,details){min-width:0;max-width:100%}
#content p{overflow-wrap:anywhere}
#content :is([role=status],[role=alert]):empty{display:none}
#content [role=status]:not(:empty){overflow-wrap:anywhere}
.panel form:last-child{margin-bottom:0}
.actions{row-gap:10px}
.actions>label{flex:1 1 180px;min-width:0;max-width:100%}
.tabs>button[aria-selected=true],button[aria-pressed=true]{background:var(--soft);color:var(--accent-strong);border-color:var(--soft-line)}
button{max-width:100%}
button:disabled{opacity:.65}
input::placeholder,textarea::placeholder{color:#778396}
th,td{font-variant-numeric:tabular-nums}
td{max-width:34rem;white-space:normal;overflow-wrap:anywhere}
.table-wrap th{white-space:nowrap}
td .actions{min-width:150px}
summary{overflow-wrap:anywhere}
dialog{width:min(560px,calc(100vw - 32px));overscroll-behavior:contain}
dialog .actions{justify-content:flex-end;margin-top:20px}
@media(min-width:761px){
  #app>aside{padding-top:30px}
  #app>main{padding-top:30px}
  #app:has(#signout[hidden]) #content:has(input[autocomplete=current-password]):not(:has(input[name=displayName])){max-width:680px}
}
@media(max-width:760px){
  #app>aside{padding-top:max(10px,env(safe-area-inset-top));box-shadow:0 1px 5px rgba(28,45,68,.04)}
  #app>aside>nav button{min-height:44px}
  main{padding-bottom:max(32px,env(safe-area-inset-bottom))}
  .actions>label{flex-basis:100%}
  .actions>button{min-height:44px}
  .fields{grid-template-columns:minmax(0,1fr)}
  #content table:not(.table-wrap table){display:block;max-width:100%;overflow-x:auto}
  th,td{padding:11px 12px}
  td{min-width:100px;max-width:240px}
  dialog{padding:20px;max-height:calc(100dvh - 24px)}
}
@media(prefers-color-scheme:dark){
  :root{--bg:#151b23;--bg-tint-a:#211e29;--bg-tint-b:#17252e;--surface:#202833;--surface-2:#19212b;--glass:rgba(29,37,48,.88);--line:#344051;--line-strong:#536176;--text:#edf1f7;--muted:#abb8ca}
  input::placeholder,textarea::placeholder{color:#9ba9bd}
  nav button:hover,button:hover,tbody tr:hover>td{background:#2c3341}
  .intro{background:linear-gradient(110deg,#202833,#242936)}
}
@media(forced-colors:active){
  .brand{background:none;color:LinkText;-webkit-text-fill-color:LinkText}
  button.primary,nav button.active,.tabs>button.active{border:2px solid Highlight}
}

/* ERP workspace: compact navigation, flat sections, data-first lists. */
.import-steps{display:flex;flex-wrap:wrap;gap:10px 32px;padding-left:22px;font-size:14px;font-weight:600}
.import-intro>details{margin-top:14px;font-size:13px;color:var(--muted)}
.import-intro>details>summary{font-weight:500}
.proxy-settings{margin:16px 0;padding:14px 18px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.proxy-settings>summary{font-weight:600;font-size:14px}
.proxy-settings[open]>summary{margin-bottom:16px}
.proxy-customers .table-wrap{margin-top:14px}
.proxy-create .fields{max-width:600px}
.proxy-settings .panel:last-child{margin-bottom:0}
.activity-workspace-heading{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:12px}
.activity-workspace-heading h2{margin:0;font-size:20px;overflow-wrap:anywhere}
.activity-context{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0 8px;font-size:13px}
.activity-workspace-heading>p{margin:8px 0 0;font-size:12px}
.activity-workspace-body{display:grid;grid-template-columns:168px minmax(0,1fr);gap:20px;align-items:start}
.activity-workspace-body>.activity-tabs{display:flex;flex-direction:column;align-items:stretch;width:100%;margin:0;padding:0;background:transparent;border:0;gap:3px}
.activity-tabs>button{text-align:left;white-space:normal;padding:9px 12px;border:1px solid transparent;background:transparent;font-size:13px}
.activity-tabs>button.active{background:var(--surface);border-color:var(--soft-line);color:var(--accent-strong);box-shadow:none}
.activity-workspace-content{min-width:0}
.activity-item-entry fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.activity-item-entry h2{font-size:15px}
.activity-item-entry form>button{margin:0 8px 0 0}
@media(max-width:1050px){
 .activity-workspace-body{grid-template-columns:minmax(0,1fr);gap:14px}
 .activity-workspace-body>.activity-tabs{flex-direction:row;overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}
 .activity-tabs>button{flex:0 0 auto;white-space:nowrap}
}
@media(max-width:760px){.activity-item-entry fieldset{grid-template-columns:minmax(0,1fr)}}
:root{--radius-lg:10px;--shadow:0 1px 2px rgba(28,45,68,.03)}
body{background:var(--bg)}
#app{grid-template-columns:216px minmax(0,1fr)}
#app>aside{background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none;padding:24px 16px}
#app>main{padding:24px 28px 48px}
header{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}
header .eyebrow{display:none}
h1{font-size:24px;letter-spacing:-.4px}
h2{font-size:17px}
nav button{border-radius:6px;min-height:38px}
nav button.active{box-shadow:none}
.panel,.intro,#content section:not([class]):has(>:is(h2,h3):first-child):not(.panel section){padding:18px 20px;border-radius:10px;box-shadow:none}
.panel .panel{padding:14px 16px}
button,input,select,textarea{border-radius:6px}
button{padding:8px 14px;min-height:36px;box-shadow:none}
.tabs{border-radius:6px;box-shadow:none;padding:4px;gap:4px}
.tabs>button{border-radius:4px}
th{background:var(--surface-2);font-size:12px;font-weight:600;color:var(--muted)}
th,td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left}
table{border-radius:0}
.activity-register{background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.register-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}
.register-heading h2{margin:0}
.register-heading .muted{font-size:13px}
.register-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px}
.register-toolbar input{width:min(360px,100%);min-width:0}
.register-toolbar button{flex-shrink:0;background:var(--accent);color:white;border-color:var(--accent)}
.activity-register .table-wrap{margin:0;border:0;border-radius:0}
.activity-register table{width:100%;margin:0}
.activity-name{font-weight:600}
.status-badge{display:inline-block;padding:3px 8px;border:1px solid var(--line);border-radius:4px;background:var(--surface-2);font-size:12px;white-space:nowrap}
.activity-register>.empty{margin:0;padding:32px 20px;border:0;border-top:1px solid var(--line);border-radius:0;text-align:center;background:var(--surface)}
.activity-create{border-top:1px solid var(--line);padding:12px 20px}
.activity-create>summary{font-size:13px;color:var(--muted)}
.activity-create>.panel{margin:14px 0 0;background:var(--surface-2)}
[hidden]{display:none!important}
@media(max-width:760px){
 #app{grid-template-columns:minmax(0,1fr)}
 #app>aside{padding:10px 14px}
 #app>main{padding:18px 14px 36px}
 header{margin-bottom:16px;padding-bottom:12px}
 h1{font-size:22px}
 .panel,.intro,#content section:not([class]):has(>:is(h2,h3):first-child):not(.panel section){padding:16px;border-radius:8px}
 .register-heading,.register-toolbar,.activity-create{padding:12px 14px}
 .register-toolbar button,button{min-height:44px}
 .activity-register table{min-width:560px}
}

/* Reimbursement workspace: compact ERP form and separate history. */
.reimbursement-heading {display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.reimbursement-heading h2,.reimbursement-toolbar h3 {margin:0}
.reimbursement-heading p {margin:0;color:var(--muted)}
.reimbursement-rules {margin:0 0 16px;padding:10px 14px;border:1px solid var(--border);border-radius:8px}
.reimbursement-rules p {max-width:80ch;font-size:13px}
.reimbursement-request form {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.reimbursement-request form>label {min-width:0;margin:0}
.reimbursement-request form>label:nth-child(n+4) {grid-column:1/-1}
.reimbursement-request form>label:has(input[type="checkbox"]) {display:flex;align-items:center;gap:8px}
.reimbursement-request form>button {justify-self:start}
.reimbursement-toolbar {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.reimbursement-toolbar button {margin:0}
@media(max-width:640px){.reimbursement-request form {grid-template-columns:minmax(0,1fr)}.reimbursement-heading {gap:6px}}

/* Entitlements overview: aligned ERP summary panels rather than a long stack. */
.billing-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.billing-title h1{margin:0 0 6px}
.billing-title p{margin:0;font-size:13px;color:var(--muted)}
.billing-heading>button{flex-shrink:0;margin:0}
.billing-overview{display:grid;grid-template-columns:minmax(0,1.35fr) repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.billing-overview>.billing-summary{margin:0;min-width:0}
.billing-summary h2{margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:15px}
.billing-summary p{margin:10px 0;font-size:13px;line-height:1.6;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.billing-token-expiry{margin-top:16px;padding-top:10px;border-top:1px solid var(--line)}
.billing-summary .billing-expiry-label{color:var(--muted);font-size:12px;margin-bottom:4px}
.billing-summary .billing-expiry-date{display:flex;flex-wrap:wrap;gap:4px 8px;margin-top:0}
.billing-expiry-date span{white-space:nowrap}
.billing-workspace>[role="status"]:empty{display:none}
.billing-workspace>section:empty{display:none}
.billing-overview+section{margin-top:20px}
@media(max-width:1200px){.billing-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-entitlements{grid-column:1/-1}}
@media(max-width:640px){.billing-heading{align-items:flex-start;flex-direction:column}.billing-overview{grid-template-columns:minmax(0,1fr)}.billing-entitlements{grid-column:auto}}

/* Customer order work area; keep every form mounted when a disclosure closes. */
.proxy-order-detail{margin-top:24px;padding-top:20px;border-top:2px solid var(--line)}
.proxy-order-detail:empty{display:none}
.proxy-order-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.proxy-order-heading h2{margin:3px 0 0;font-size:19px;overflow-wrap:anywhere}
.proxy-order-heading p{margin:0;font-size:12px}
.proxy-order-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;align-items:start}
.proxy-order-tools>details{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:var(--surface-2);min-width:0}
.proxy-order-tools>details>summary{font-size:13px;font-weight:600}
.proxy-order-tools>details[open]{grid-column:1/-1}
.proxy-order-detail .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.proxy-order-detail .fields>label{margin:0;min-width:0}
.proxy-order-detail .fields>label:has(textarea){grid-column:1/-1}
.proxy-order-detail .price{padding:12px 14px;background:var(--surface-2);border:1px solid var(--line);border-radius:6px;font-size:14px;font-variant-numeric:tabular-nums}
@media(max-width:640px){.proxy-order-tools,.proxy-order-detail .fields{grid-template-columns:minmax(0,1fr)}.proxy-order-heading{align-items:flex-start;flex-wrap:wrap}}

.customer-workspace{max-width:1280px;margin:0 auto}
.customer-workspace>button{margin:0 0 16px}
.customer-workspace>[role="status"]:empty{display:none}
.customer-order-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.customer-order-heading h2{margin:0;overflow-wrap:anywhere}
.customer-balance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:var(--surface-2);border-radius:6px;overflow:hidden;margin:16px 0}
.customer-balance-item{padding:14px 16px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:5px;min-width:0}
.customer-balance-item:last-child{border-right:0}
.customer-balance-item span,.customer-balance-item small{color:var(--muted);font-size:12px}
.customer-balance-item strong{font-size:22px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.customer-ledger{padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:16px}
.customer-ledger>summary{font-size:13px;font-weight:600}
.customer-workspace .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.customer-workspace .fields>label{min-width:0;margin:0}
.customer-workspace .fields>label:has(textarea){grid-column:1/-1}
@media(max-width:640px){.customer-balance{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-balance-item:nth-child(2){border-right:0}.customer-balance-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.customer-order-heading{flex-wrap:wrap}.customer-workspace .fields{grid-template-columns:minmax(0,1fr)}}

.catalog-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}
.catalog-toolbar>button{margin:0}
.catalog-toolbar>button:last-child{margin-left:auto}
.catalog-admin>fieldset{min-width:0}
.catalog-admin>fieldset:disabled{opacity:.65}
.catalog-register{margin:16px 0}
.catalog-register table{width:100%;min-width:620px}
.catalog-register th:nth-child(3),.catalog-register th:nth-child(4),.catalog-register td:nth-child(3),.catalog-register td:nth-child(4){text-align:right;font-variant-numeric:tabular-nums}
.catalog-register td:first-child{overflow-wrap:anywhere;min-width:160px}
.catalog-register td:last-child>button{max-width:240px;white-space:normal;overflow-wrap:anywhere}
.catalog-admin pre{max-height:320px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:640px){.catalog-toolbar>button:last-child{margin-left:0}}

.ai-profile-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}
.ai-profile-title h2{margin:0 0 6px}
.ai-profile-title p,.ai-profile-editor>p{margin:0;color:var(--muted);font-size:13px}
.ai-profile-heading>button{flex-shrink:0;margin:0}
.ai-profile-workspace{display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,1.6fr);gap:24px;align-items:start}
.ai-profile-workspace h3{margin:0 0 16px;font-size:15px}
.ai-profile-directory,.ai-profile-editor{min-width:0}
.ai-profile-editor{padding-left:24px;border-left:1px solid var(--line)}
.ai-profile-list>section{padding:12px 0;border-bottom:1px solid var(--line)}
.ai-profile-list p{font-size:13px;overflow-wrap:anywhere}
.ai-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:18px 0}
.ai-profile-fields>label{margin:0;min-width:0}
.ai-profile-fields>label:first-child,.ai-profile-fields>label:nth-child(n+4){grid-column:1/-1}
.ai-profile-fields>label:has(input[type="checkbox"]){display:flex;gap:8px;align-items:center}
.ai-profile-actions,.ai-profile-recovery{display:flex;gap:8px;flex-wrap:wrap}
.ai-profile-actions>button,.ai-profile-recovery>button{margin:0}
.ai-profile-actions>button:first-child{background:var(--accent);color:white;border-color:var(--accent)}
.ai-profile-recovery{padding-top:12px;margin-top:12px;border-top:1px solid var(--line)}
@media(max-width:1000px){.ai-profile-workspace{grid-template-columns:minmax(0,1fr)}.ai-profile-editor{padding:20px 0 0;border-left:0;border-top:1px solid var(--line)}}
@media(max-width:640px){.ai-profile-heading{align-items:flex-start;flex-direction:column}.ai-profile-fields{grid-template-columns:minmax(0,1fr)}}

.offline-portal-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.offline-portal-heading h2{margin:0 0 6px}
.offline-portal-heading p{margin:0;color:var(--muted);font-size:13px}
.offline-portal-heading>button{margin:0;flex-shrink:0;background:var(--accent);color:white;border-color:var(--accent)}
.offline-portal-setup{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:16px;align-items:start}
.offline-portal-setup h3{margin:0 0 14px;font-size:15px}
.offline-portal-options{display:grid;gap:12px;margin:18px 0}
.offline-portal-options>label{align-items:flex-start;line-height:1.65;min-height:0}
.offline-portal-options input[type="checkbox"]{margin-top:3px}
.offline-portal-options>section{padding:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:6px}
.offline-portal-tools>button{display:block;max-width:100%;margin:10px 0}
.offline-portal-help,.offline-portal-rules{border-top:1px solid var(--line);padding-top:14px;font-size:13px}
.offline-portal-rules{margin:0 0 18px;color:var(--muted)}
.offline-portal>[role="status"]:empty{display:none}
.offline-portal-help a{overflow-wrap:anywhere}
@media(max-width:900px){.offline-portal-setup{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){.offline-portal-heading{align-items:flex-start;flex-direction:column}}

.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.account-form-grid>.panel{margin:0}
.account-security,.account-team-actions{padding:16px 20px;border:1px solid var(--line);border-radius:8px;background:var(--surface);min-width:0}
.account-security>summary,.account-team-actions>summary{font-size:15px;font-weight:600}
.account-security>.panel{margin:16px 0 0;padding:14px 0;border:0;box-shadow:none}
.account-team-actions{margin:16px 0}
.account-team-actions>.account-form-grid{margin:16px 0}
.account-team-actions>.panel{margin-bottom:0}
.account-workspace>.panel>.actions{padding:12px 0;border-bottom:1px solid var(--line);gap:8px}
.account-workspace>.panel>.actions>p{width:100%;margin:0 0 6px;font-weight:600;overflow-wrap:anywhere}
.operator-navigation-group{padding:12px 0;border-top:1px solid var(--line)}
.operator-navigation-group>summary{font-size:14px;font-weight:600}
.operator-navigation-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:12px}
.operator-navigation-actions>button{margin:0;text-align:left;white-space:normal}
@media(max-width:900px){.account-form-grid{grid-template-columns:minmax(0,1fr)}.operator-navigation-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.operator-navigation-actions{grid-template-columns:minmax(0,1fr)}}

.feedback-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.feedback-columns h2{font-size:16px;margin:0 0 16px}
.feedback-composer>.muted{font-size:13px;margin-bottom:18px}
.feedback-composer>button{margin-top:14px;background:var(--accent);color:white;border-color:var(--accent)}
.feedback-composer textarea{min-height:180px}
.feedback-composer>[role="status"]:empty{display:none}
.feedback-history article{padding:12px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.feedback-history article p,.feedback-admin-list article>p{white-space:pre-wrap;overflow-wrap:anywhere}
.feedback-history article small{display:inline-block;color:var(--muted);font-size:12px}
.feedback-admin-gate:empty,.feedback-admin-list:empty{display:none}
.feedback-admin-gate:not(:empty){padding:18px 20px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.feedback-admin-gate>input{max-width:360px;display:block}
@media(max-width:900px){.feedback-columns{grid-template-columns:minmax(0,1fr)}}

/* Guest shell: show account entry first; retain the explicit offline recovery door.
   Visibility follows the existing sign-out state, not a separate auth decision. */
#app:has(#signout[hidden]) nav [data-view]:not([data-view="offline"]){display:none}
#app:has(#signout[hidden]) .sidebar-bottom{display:none}
#app:has(#signout[hidden]) nav [data-view="offline"]{font-size:13px;color:var(--muted)}
/* Product register: compact controls, optional entry, table-first workspace. */
.item-register-toolbar{align-items:end}
.item-register-toolbar>input{flex:1;min-width:160px}
.item-register-toolbar>label{margin:0;min-width:160px}
.item-register-entry{margin:12px 0}
.item-register-entry:not([open]){display:none}
.item-register-entry>summary{cursor:pointer;font-weight:600;margin-bottom:10px}
.item-register-entry fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.item-register>.table-wrap{margin-top:10px}
@media(max-width:640px){.item-register-entry fieldset{grid-template-columns:1fr}.item-register-toolbar>input,.item-register-toolbar>label{width:100%}}

/* 2026-10-29 · Refined workspace. Presentation only; keep existing controls and guards. */
:root{
 --bg:#f6f7f9;--surface:#fff;--surface-2:#f8f9fb;
 --text:#292b36;--muted:#707482;--line:#eceef2;--line-strong:#dce0e7;
 --accent:#b74878;--accent-strong:#96365f;--accent-2:#ce7198;
 --soft:#fbedf3;--soft-line:#f1dbe5;--focus:#aa4876;
 --radius-lg:18px;--radius:12px;--radius-sm:9px;
 --shadow:0 4px 24px -12px rgba(28,31,48,.13);
 font-size:15px;
}
#app{grid-template-columns:238px minmax(0,1fr)}
#app>aside{padding:34px 18px 22px;background:var(--surface);border-right:1px solid var(--line)}
.brand{font-size:30px;letter-spacing:2px;padding:0 18px;background:none;color:var(--accent);-webkit-text-fill-color:currentColor}
.brand span{font-size:9px;letter-spacing:5px;margin-top:7px;color:var(--muted)}
.caption{margin:18px 18px 38px;font-size:11px;color:var(--muted)}
#app>aside nav{gap:7px}
#app>aside nav button{min-height:46px;padding:12px 18px;border-radius:11px;font-size:14px;color:var(--muted);font-weight:500}
#app>aside nav button:hover{background:var(--surface-2);color:var(--text)}
#app>aside nav button.active{background:var(--soft);color:var(--accent-strong);font-weight:650;box-shadow:none}
#app>aside nav button.active::before{display:none}
.sidebar-bottom{padding:18px;font-size:11px;border-top:1px solid var(--line)}
#app>main{max-width:1640px;padding:36px clamp(24px,3.2vw,56px) 64px}
#app>main>header{align-items:center;margin:0 0 34px;padding:0;border:0;min-height:52px}
#app>main>header h1{font-size:30px;letter-spacing:-.8px;font-weight:700;margin:0}
#signout{font-size:13px;min-height:36px;border-color:transparent;background:transparent;color:var(--muted);padding:8px 12px}
#signout:hover{color:var(--accent);background:var(--soft)}
h2{font-size:18px;letter-spacing:-.3px}
h3{font-size:16px}
button{border-radius:9px;min-height:40px;padding:10px 16px;font-size:14px;font-weight:550;box-shadow:0 1px 2px rgba(20,24,40,.025)}
button.primary,.register-toolbar button{background:var(--accent);border-color:transparent;color:white;box-shadow:0 3px 8px -3px rgba(153,50,98,.32)}
button.primary:hover,.register-toolbar button:hover{background:var(--accent-strong);color:white}
input,select,textarea{font-size:14px;border-radius:9px;min-height:44px;border-color:var(--line-strong);box-shadow:none}
input::placeholder,textarea::placeholder{color:#898d98}
input[type=checkbox],input[type=radio]{min-height:18px;border-radius:4px}
input[type=hidden]{display:none}
.panel,.intro,#content section:not([class]):has(>:is(h2,h3):first-child):not(.panel section){padding:24px;border-radius:16px;border-color:var(--line);box-shadow:var(--shadow)}
.panel .panel{box-shadow:none;border-color:transparent;border-radius:10px}
.panel details{border-color:var(--line);box-shadow:none}
.activity-register{border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}
.register-heading{padding:25px 28px 8px;border:0;min-height:62px}
.register-heading h2{font-size:19px;font-weight:650;letter-spacing:-.4px}
.register-heading>.muted{background:var(--surface-2);color:var(--muted);padding:4px 11px;border-radius:20px;font-size:12px;font-variant-numeric:tabular-nums}
.register-toolbar{padding:18px 28px 24px;gap:16px}
.register-toolbar input{width:min(360px,100%);background:var(--surface-2);border-color:transparent;min-height:44px}
.register-toolbar input:focus{background:var(--surface);border-color:var(--accent-2)}
.register-toolbar button{min-height:42px;padding:11px 22px}
.activity-register .table-wrap{padding:0 12px 12px}
.activity-register th{background:var(--surface-2);border:0;padding:13px 16px;font-size:12px;font-weight:550;letter-spacing:.2px}
.activity-register th:first-child{border-radius:8px 0 0 8px}
.activity-register th:last-child{border-radius:0 8px 8px 0}
.activity-register td{padding:22px 16px;font-size:14px;border-bottom:1px solid var(--line);color:var(--muted);font-variant-numeric:tabular-nums}
.activity-register tr:last-child td{border-bottom:0}
.activity-register td.activity-name{font-size:16px;font-weight:650;color:var(--text);min-width:200px;width:32%}
.activity-register th:last-child,.activity-register td:last-child{text-align:right;width:160px}
.activity-register td:last-child button{color:var(--accent-strong);background:var(--soft);border-color:transparent;min-height:36px;padding:8px 16px;font-size:13px}
.activity-register tbody tr:hover>td{background:var(--surface-2)}
.status-badge{border:0;border-radius:6px;background:var(--surface-2);color:var(--text);padding:5px 10px;font-size:12px;font-weight:500}
.activity-register .status-badge{background:var(--soft);color:var(--accent-strong)}
.activity-create:not([open]){display:none}
.activity-create[open]{border:0;border-top:1px solid var(--line);border-radius:0;margin:0;padding:22px 28px;box-shadow:none;background:var(--surface)}
.activity-create[open]>.panel{background:var(--surface-2);padding:22px;border:0}
.activity-register+.panel{padding:0;margin-top:20px;border:0;box-shadow:none;background:transparent}
.activity-register+.panel>details{background:transparent;border:0;box-shadow:none;margin:0;padding:0}
.activity-register+.panel>details>summary{padding:10px 4px;color:var(--muted);font-size:13px;font-weight:500}
.activity-register+.panel>details[open]{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px}
.activity-workspace-heading{padding:0 0 24px;margin-bottom:24px}
.activity-workspace-heading h2{font-size:24px;letter-spacing:-.5px}
.activity-workspace-body{gap:28px;grid-template-columns:180px minmax(0,1fr)}
.activity-workspace-body>.activity-tabs{gap:5px}
.activity-tabs>button{padding:11px 14px;border-radius:9px;min-height:42px;color:var(--muted)}
.activity-tabs>button.active{background:var(--surface);border-color:var(--line);box-shadow:0 2px 7px -4px rgba(30,35,50,.2);color:var(--accent-strong)}
.billing-summary h2{font-size:16px;border-bottom:0;padding-bottom:2px}
.billing-summary p{font-size:14px}
@media(max-width:1050px){
 #app{grid-template-columns:210px minmax(0,1fr)}
 #app>main{padding:28px 24px 48px}
 .activity-workspace-body{grid-template-columns:minmax(0,1fr);gap:18px}
}
@media(max-width:760px){
 #app{grid-template-columns:minmax(0,1fr)}
 #app>aside{padding:14px 16px 8px;border-right:0;background:var(--surface)}
 .brand{padding:0 4px;font-size:24px}
 #app>aside nav{gap:4px}
 #app>aside nav button{min-height:44px;padding:10px 14px;font-size:13px}
 #app>main{padding:24px 16px 40px}
 #app>main>header{margin-bottom:24px}
 #app>main>header h1{font-size:26px}
 .register-heading{padding:21px 18px 6px}
 .register-toolbar{padding:16px 18px 20px;flex-wrap:wrap}
 .register-toolbar input{flex:1;min-width:140px;width:auto}
 .register-toolbar button{min-height:44px;padding:10px 16px}
 .activity-register .table-wrap{padding:0 6px 8px}
 .activity-register table{min-width:580px}
 .activity-register td{padding:18px 12px}
 .activity-create[open]{padding:18px}
 .panel,.intro,#content section:not([class]):has(>:is(h2,h3):first-child):not(.panel section){padding:18px}
 .activity-register+.panel{padding:0}
}
@media(prefers-color-scheme:dark){
 :root{--bg:#191b23;--surface:#22252f;--surface-2:#2b2e39;--text:#f0eff4;--muted:#b1b2c1;--line:#343744;--line-strong:#4a4f5e;--soft:#3a2935;--soft-line:#583749;--accent:#b74878;--accent-strong:#ec9dbc;--accent-2:#cf7b9d}
 button.primary:hover,.register-toolbar button:hover{background:#a33b68}
}

/* Activity navigation: business groups, optional subgroups, stable leaf actions. */
.activity-content-column{min-width:0}
.activity-location{margin:0 0 18px;color:var(--muted);font-size:12px;line-height:1.6}
.activity-workspace-body{grid-template-columns:220px minmax(0,1fr)}
.activity-workspace-body>.activity-navigation{display:flex;flex-direction:column;align-items:stretch;gap:7px;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0;width:100%}
.activity-navigation .activity-nav-group,.activity-navigation .activity-nav-subgroup{border:0;background:transparent;box-shadow:none;padding:0;margin:0;border-radius:8px}
.activity-navigation summary{margin:0;border:0;padding:12px 9px;font-size:14px;line-height:1.5;font-weight:600;color:var(--text);border-radius:8px}
.activity-navigation summary:hover{background:var(--surface-2)}
.activity-navigation summary::before{width:6px;height:6px;border-color:var(--muted);flex-shrink:0}
.activity-navigation .has-current>summary{color:var(--accent-strong)}
.activity-navigation .activity-nav-group+.activity-nav-group{border-top:1px solid var(--line);padding-top:6px}
.activity-navigation .activity-nav-children{display:grid;gap:3px;padding:0 0 6px 12px;margin:0 0 0 12px;border-left:1px solid var(--line)}
.activity-navigation .activity-nav-subgroup>summary{font-size:13px;color:var(--muted);font-weight:550;padding:10px 8px}
.activity-navigation .activity-nav-subgroup.has-current>summary{color:var(--accent-strong)}
.activity-navigation .activity-nav-subgroup>.activity-nav-children{padding-left:7px;margin-left:8px}
.activity-navigation .activity-nav-leaf{display:flex;justify-content:flex-start;width:100%;min-height:38px;margin:0;padding:9px 10px;text-align:left;white-space:normal;overflow-wrap:anywhere;font-size:13px;font-weight:400;border:1px solid transparent;border-radius:7px;color:var(--muted);background:transparent;box-shadow:none}
.activity-navigation .activity-nav-leaf:hover{background:var(--surface-2);color:var(--text)}
.activity-navigation .activity-nav-leaf.active{background:var(--soft);color:var(--accent-strong);font-weight:600;border-color:transparent;box-shadow:none}
@media(max-width:1050px){
 .activity-workspace-body{grid-template-columns:minmax(0,1fr)}
 .activity-workspace-body>.activity-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px;overflow:visible}
 .activity-navigation .activity-nav-group+.activity-nav-group{border-top:0;padding-top:0}
 .activity-location{margin-top:2px}
}
@media(max-width:540px){
 .activity-workspace-body>.activity-navigation{grid-template-columns:minmax(0,1fr);padding:8px}
 .activity-navigation summary,.activity-navigation .activity-nav-leaf{min-height:44px}
 .activity-navigation .activity-nav-group+.activity-nav-group{border-top:1px solid var(--line);padding-top:4px}
}

/* Shared confirmations and editor overlays. Native dialog handles focus and background inertness. */
.confirmation-dialog{width:min(480px,calc(100vw - 32px));padding:28px;border:1px solid var(--line);border-radius:18px;max-height:calc(100dvh - 48px);box-shadow:0 24px 80px -24px rgba(25,28,43,.4)}
.confirmation-dialog h2{font-size:20px;letter-spacing:-.4px;margin:0 0 16px}
.confirmation-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;color:var(--muted);font-size:14px;margin:0 0 24px}
.confirmation-actions{display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;background:var(--surface);padding-top:8px}
.confirmation-actions>button+button{margin-left:0}
.confirmation-actions button{min-width:88px;min-height:42px}
.confirmation-danger{background:#b53b54;border-color:transparent;color:white}
.confirmation-danger:hover{background:#922b41;color:white}
.editor-dialog{width:min(640px,calc(100vw - 32px));padding:26px;border-radius:18px;max-height:calc(100dvh - 48px);overscroll-behavior:contain}
.editor-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 10px}
.editor-dialog-heading h2{margin:0;font-size:22px}
.editor-dialog-heading>button{margin:0;min-height:40px}
.editor-dialog-note{font-size:12px;color:var(--muted);margin:0 0 24px}
.editor-dialog .panel{margin:0;padding:0;border:0;box-shadow:none;background:transparent}
.editor-dialog .panel>h2:first-child{display:none}
.editor-dialog form>button{margin-top:18px}
.editor-drawer{inset:0 0 0 auto;margin:0;width:min(620px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border-radius:18px 0 0 18px;padding:30px}
.editor-drawer .fields,.editor-drawer fieldset{grid-template-columns:minmax(0,1fr)}
.editor-dialog .activity-item-entry fieldset{grid-template-columns:minmax(0,1fr)}
body:has(dialog[open]){overflow:hidden}
@media(max-width:640px){.confirmation-dialog{padding:22px}.editor-dialog{padding:22px}.editor-drawer{border-radius:0;width:100vw}.confirmation-actions button{min-height:44px}}
@media(prefers-reduced-motion:no-preference){.confirmation-dialog[open],.editor-dialog[open]{animation:dialog-enter .16s ease-out}@keyframes dialog-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}

/* Product list contrast: clear input boundaries and a distinct data surface. */
.item-register{background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;padding-bottom:22px;box-shadow:var(--shadow)}
.item-register>.register-heading{padding:22px 24px 14px;border-bottom:1px solid var(--line)}
.item-register>.register-heading h2{font-size:20px;color:var(--text)}
.item-register>.register-toolbar{padding:18px 24px;background:transparent}
.item-register-toolbar>input,.item-register-toolbar>label>select{background-color:var(--surface);border:1px solid #8791a3;min-height:46px;box-shadow:0 1px 2px rgba(30,40,60,.04)}
.item-register-toolbar>input::placeholder{color:#626e81;opacity:1}
.item-register-toolbar>input:hover,.item-register-toolbar>label>select:hover{border-color:var(--accent)}
.item-register-toolbar>input:focus,.item-register-toolbar>label>select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--soft)}
.item-register-toolbar>label{color:var(--text);font-size:13px;font-weight:600}
.item-register>.muted{display:block;margin:0 24px 12px;font-size:13px;font-weight:500}
.item-register>.table-wrap{margin:0 24px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);min-height:84px}
.item-register th{background:#edf0f5;color:#3e485a;font-size:13px;font-weight:650;padding:14px 16px;border-bottom:1px solid #ccd3df}
.item-register td{background:var(--surface);padding:15px 16px}
.item-register tbody tr:hover>td{background:var(--surface-2)}
@media(max-width:640px){.item-register>.register-heading,.item-register>.register-toolbar{padding-left:16px;padding-right:16px}.item-register>.muted{margin-left:16px;margin-right:16px}.item-register>.table-wrap{margin-left:16px;margin-right:16px}}
@media(prefers-color-scheme:dark){.item-register th{background:#333947;color:#e5e8ef;border-bottom-color:#596274}.item-register-toolbar>input::placeholder{color:#b1b9c9}}

/* Billing pages keep one task visible, with stable secondary navigation. */
.billing-navigation-layout{display:grid;grid-template-columns:190px minmax(0,1fr);align-items:start;gap:24px}
.billing-navigation{display:grid;align-content:start;gap:18px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0}
.billing-navigation .billing-nav-group{display:grid;gap:4px;padding:0;margin:0;border:0;background:transparent;box-shadow:none}
.billing-nav-parent{grid-column:1/-1;display:grid;gap:3px;padding:2px 10px 14px;border-bottom:1px solid var(--line)}
.billing-nav-parent>span{font-size:11px;color:var(--muted)}
.billing-nav-parent>strong{font-size:15px;color:var(--text)}
.billing-navigation .billing-nav-group{padding-left:10px;border-left:2px solid var(--line)}
.billing-nav-group h2{font-size:12px;letter-spacing:.04em;color:var(--muted);margin:0;padding:5px 10px 8px;font-weight:600}
.billing-nav-group button{justify-content:flex-start;text-align:left;width:100%;min-height:42px;padding:10px 12px;margin:0;border:1px solid transparent;border-radius:8px;background:transparent;box-shadow:none;font-size:14px;font-weight:450;color:var(--muted);white-space:normal;overflow-wrap:anywhere}
.billing-nav-group button+button{margin-inline-start:0}
.billing-nav-group button:hover{background:var(--surface-2);color:var(--text)}
.billing-nav-group button[data-active="true"]{background:var(--soft);color:var(--accent-strong);font-weight:650;border-color:var(--soft-line)}
.billing-navigation-content,.billing-page,.billing-operator-area{min-width:0}
.billing-location{margin:0 0 18px;padding:2px 0 12px;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.6}
.billing-page{margin:0;padding:0}
.billing-page>h2,.billing-page>h3{margin-top:0}
.billing-page>p[role="status"]:empty{display:none}
.billing-plan-toolbar,.billing-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px}
.billing-plan-toolbar :is(h2,h3),.billing-editor-toolbar :is(h2,h3){margin:0;font-size:20px;line-height:1.4}
.billing-plan-toolbar>button,.billing-editor-toolbar>button{margin:0;flex-shrink:0}
.billing-plan-list{display:grid;gap:12px}
.billing-plan-list>h3{margin:0 0 4px}
.billing-plan-list article{margin:0;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:none;min-width:0}
.billing-plan-list article>strong{display:block;font-size:16px;overflow-wrap:anywhere}
.billing-plan-list article>p{margin:6px 0 12px;color:var(--muted);font-size:13px}
.billing-plan-list article>button{min-height:38px;padding:8px 12px;margin-top:0;margin-bottom:0;font-size:13px}
.billing-plan-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0}
.billing-plan-editor>:is(h2,h3,p,label){grid-column:1/-1;margin:0}
.billing-plan-editor>h3{font-size:19px}
.billing-plan-editor>p{font-size:13px;line-height:1.7;color:var(--muted)}
.billing-plan-editor>fieldset{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:12px;min-width:0;margin:0;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.billing-plan-editor>fieldset>legend{padding:0 6px;font-size:14px;font-weight:650;color:var(--text)}
.billing-plan-editor>button{justify-self:start;align-self:end;margin:0}
.billing-plan-editor>button+button{margin-inline-start:0}
.billing-plan-editor label{font-size:13px;color:var(--muted)}
.billing-plan-editor label:has(>input[type="checkbox"]){display:flex;align-items:center;gap:8px;color:var(--text)}
.billing-operation-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0}
.billing-operation-page>:not(label){grid-column:1/-1;min-width:0;margin-top:0;margin-bottom:0}
.billing-operation-page>h3{font-size:19px}
.billing-operation-page>p{font-size:13px;line-height:1.7;color:var(--muted)}
.billing-operation-page>p:empty{display:none}
.billing-operation-page>label{margin:0;min-width:0;font-size:13px;color:var(--muted)}
.billing-operation-page>div:has(>label){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.billing-operation-page>div>label{margin:0;min-width:0;font-size:13px;color:var(--muted)}
.billing-operation-page label:has(>input[type="checkbox"]){display:flex;align-items:center;gap:8px;color:var(--text)}
.billing-operation-page>button{grid-column:auto;justify-self:start;align-self:end;margin:0;max-width:100%;white-space:normal}
.billing-operation-page>button+button{margin-inline-start:0}
.billing-operation-page :is(input:not([type="checkbox"]),select),.billing-plan-editor :is(input:not([type="checkbox"]),select){width:100%;min-width:0;margin-bottom:0;background:var(--surface)}
.billing-operator-area input[type="password"]{display:block;width:100%;max-width:420px}
@media(max-width:1150px){
 .billing-navigation-layout{grid-template-columns:170px minmax(0,1fr);gap:18px}
 .billing-navigation-content .billing-overview{grid-template-columns:minmax(0,1fr)}
 .billing-navigation-content .billing-entitlements{grid-column:auto}
}
@media(max-width:850px){
 .billing-navigation-layout{grid-template-columns:minmax(0,1fr);gap:20px}
 .billing-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px}
 .billing-nav-group button{min-height:44px}
 .billing-location{margin-bottom:16px}
}
@media(max-width:580px){
 .billing-navigation{gap:8px}
 .billing-nav-group h2{padding-left:8px}
 .billing-nav-group button{font-size:13px;padding:10px 8px}
 .billing-plan-toolbar,.billing-editor-toolbar{align-items:flex-start;flex-wrap:wrap;gap:10px}
 .billing-plan-toolbar :is(h2,h3),.billing-editor-toolbar :is(h2,h3){font-size:18px}
 .billing-plan-editor,.billing-operation-page{grid-template-columns:minmax(0,1fr);padding:16px;gap:14px}
 .billing-operation-page>div:has(>label){grid-template-columns:minmax(0,1fr)}
 .billing-plan-list article{padding:16px}
 .billing-plan-list article>button{min-height:42px;margin:4px 4px 0 0}
 .billing-plan-list article>button+button{margin-inline-start:0}
}

/* Consistent module ownership, grouped navigation and preserved form subpages. */
.section-nav-layout{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:start;gap:24px}
.section-nav-menu{display:grid;align-content:start;gap:18px;min-width:0;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:14px}
.section-nav-parent{display:grid;gap:3px;padding:2px 8px 12px;border-bottom:1px solid var(--line);grid-column:1/-1}
.section-nav-parent>span{font-size:11px;color:var(--muted)}
.section-nav-parent>strong{font-size:15px;overflow-wrap:anywhere}
.section-nav-menu .section-nav-group{display:grid;gap:4px;margin:0;padding:0 0 0 8px;border:0;border-left:2px solid var(--line);box-shadow:none;background:transparent}
.section-nav-group>h2{font-size:12px;font-weight:650;color:var(--muted);margin:0;padding:5px 8px 8px}
.section-nav-group>button{display:block;text-align:left;width:100%;min-height:42px;margin:0;padding:9px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);box-shadow:none;font-size:14px;font-weight:450;white-space:normal;overflow-wrap:anywhere}
.section-nav-group>button+button{margin-inline-start:0}
.section-nav-group>button:hover{background:var(--surface-2);color:var(--text)}
.section-nav-group>button[data-active="true"]{background:var(--soft);border-color:var(--soft-line);color:var(--accent-strong);font-weight:650}
.section-nav-content,.section-nav-page{min-width:0}
.section-nav-path{font-size:13px;color:var(--muted);margin:0 0 18px;padding:2px 0 12px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.section-nav-page>.panel:first-child{margin-top:0}
.section-nav-page .ai-profile-editor{border:0;padding:0}
.feedback-admin-list>details{margin:12px 0;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.feedback-admin-list>details>summary{font-weight:600;overflow-wrap:anywhere}
.feedback-admin-list>details[open]>summary{margin-bottom:16px}
@media(max-width:1100px){
 .section-nav-layout{grid-template-columns:minmax(0,1fr);gap:18px}
 .section-nav-menu{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
}
@media(max-width:580px){.section-nav-menu{padding:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.section-nav-group>button{font-size:13px;padding:10px 8px}.section-nav-path{font-size:12px}}
/* Inner task navigation uses a compact row to avoid squeezing the work area. */
.section-nav-content .section-nav-layout{grid-template-columns:minmax(0,1fr)}
.section-nav-content .section-nav-menu{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}

/* Standalone account entry: one form, with secondary links below it. */
body:has(.auth-links){background:var(--bg)}
#app:has(.auth-links){display:flex;flex-direction:column;min-height:100vh;min-height:100svh}
#app:has(.auth-links)>aside{display:contents}
#app:has(.auth-links)>aside>:not(nav){display:none}
#app:has(.auth-links)>aside>nav{order:2;position:static;display:flex;justify-content:center;width:auto;max-width:none;margin:0;padding:0 20px 24px;overflow:visible;background:transparent;border:0;box-shadow:none}
#app:has(.auth-links)>aside>nav [data-view="offline"]{width:auto;min-height:32px;padding:6px 10px;border:0;background:transparent;box-shadow:none;font-size:12px;color:var(--muted)}
#app:has(.auth-links)>main{order:1;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:none;padding:48px 20px 24px}
#app:has(.auth-links)>main>header{display:none}
#app:has(.auth-links) #content{width:100%;max-width:420px!important;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 30px rgba(30,40,60,.05)}
#app:has(.auth-links) #content .panel{padding:0;margin:0;border:0;border-radius:0;box-shadow:none;background:transparent}
#app:has(.auth-links) #content h2{margin:0 0 28px;text-align:center;font-size:26px;letter-spacing:0}
#app:has(.auth-links) #content form{gap:18px}
#app:has(.auth-links) #content label{margin:0;font-size:14px;color:var(--text)}
#app:has(.auth-links) #content input{margin-top:7px;min-height:46px;background:var(--surface)}
#app:has(.auth-links) #content button[type="submit"]{width:100%;min-height:46px;margin:6px 0 0;justify-self:stretch}
#app:has(.auth-links) #notice:not(:empty){width:100%;max-width:420px;margin:0 0 12px}
.auth-links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}
.auth-links>button{min-height:32px;margin:0;padding:5px 0;border:0;border-radius:4px;background:transparent;box-shadow:none;color:var(--muted);font-size:13px;font-weight:400}
.auth-links>button+button{margin-inline-start:0}
.auth-links>button:hover{background:transparent;color:var(--accent)}
.auth-links>button.active{display:none}
@media(max-width:480px){#app:has(.auth-links)>main{padding:24px 16px 16px}#app:has(.auth-links) #content{padding:26px 22px}}

.two-factor-panel{max-width:760px}
.two-factor-panel>section{margin-top:20px}
.two-factor-panel label{display:block;margin:12px 0}
.two-factor-panel input:not([type="checkbox"]),.two-factor-panel textarea{max-width:540px}
.two-factor-panel input[readonly],.two-factor-panel textarea[readonly]{font-family:ui-monospace,monospace;letter-spacing:.025em;overflow-wrap:anywhere}
.two-factor-panel label:has(>input[type="checkbox"]){display:flex;align-items:center;gap:8px}
.two-factor-dialog form{display:grid;gap:18px}
.two-factor-dialog input{margin-top:8px;font-size:20px;letter-spacing:.08em}
.authenticator-qr{display:block;max-width:100%;height:auto;image-rendering:pixelated;margin:16px 0;background:#fff;border-radius:8px}
