/* Account settings page (account.html). Nav, buttons, glass, segmented control, select, toast and the
   checkout dialog shell come from pricing.css; the menu from src/shared/account-menu.css. */
.acc{padding:128px 0 40px}
.acc section{padding:0}
.acc-head{margin-bottom:28px}
.acc-head h1{font-size:clamp(34px,5vw,52px);line-height:1.05;letter-spacing:-.03em;margin:10px 0 8px}
.acc-head .lede{margin:0;max-width:60ch}
.acc svg{width:18px;height:18px;flex:none}

/* sign-in gate */
.acc-gate{max-width:520px;margin:40px auto;padding:40px 36px;text-align:center;border-radius:var(--r-xl)}
.acc-gate h2{margin:14px 0 8px;font-size:26px;letter-spacing:-.02em}
.acc-gate p{color:var(--ink-2);margin:0 0 22px}
.gate-ico{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:18px;color:var(--accent-ink);background:linear-gradient(135deg,#ffe3bd,#ffc98a)}
.gate-ico svg{width:26px;height:26px}
.acc-gate[hidden],.acc-shell[hidden],.acc-panel[hidden]{display:none}

/* shell */
.acc-shell{display:grid;grid-template-columns:268px minmax(0,1fr);gap:26px;align-items:start}
.acc-side{position:sticky;top:96px;padding:18px;border-radius:var(--r-lg)}
.acc-id{display:flex;align-items:center;gap:12px;padding:6px 6px 16px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.acc-id div{min-width:0}
.acc-id strong,.acc-id span:not(.chip):not(.acc-avatar){display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-id strong{font-size:15px}
.acc-id div>span:not(.chip){font-size:12.5px;color:var(--muted)}
.acc-id .chip{margin-top:6px}
.acc-avatar{position:relative;display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;flex:none;overflow:hidden;font-weight:800;font-size:18px;color:#fff;
  background:linear-gradient(135deg,#ffb347,#f28a17 60%,#e2690c);box-shadow:inset 0 0 0 2px rgba(255,255,255,.55),0 6px 16px -6px rgba(242,138,23,.6)}
.acc-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.acc-avatar.xl{width:96px;height:96px;font-size:38px}
.acc-nav{display:flex;flex-direction:column;gap:2px}
.acc-nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;font-weight:600;font-size:14.5px;color:var(--ink-2);transition:background .2s,color .2s}
.acc-nav a svg{color:var(--muted)}
.acc-nav a:hover{background:rgba(255,255,255,.7);color:var(--ink)}
.acc-nav a[aria-current="page"]{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(12,20,36,.1),0 6px 14px -8px rgba(12,20,36,.2)}
.acc-nav a[aria-current="page"] svg{color:var(--accent)}

/* panels */
.acc-main{min-width:0;display:flex;flex-direction:column;gap:18px}
.acc-panel{display:flex;flex-direction:column;gap:18px}
.acc-ph h2{font-size:28px;letter-spacing:-.02em;margin:0 0 4px}
.acc-ph p{margin:0;color:var(--ink-2)}
.acc-ph a,.acc-note a,.acc-lock a,.acc-card a:not(.btn){color:var(--accent-ink);text-decoration:underline}
.acc-banner{display:flex;align-items:center;gap:10px;margin:0;padding:10px 14px;border-radius:14px;font-size:13.5px;color:var(--accent-ink);background:rgba(242,138,23,.1);box-shadow:inset 0 0 0 1px rgba(242,138,23,.25)}
.acc-banner[hidden]{display:none}
.acc-card{padding:24px 26px;border-radius:var(--r-lg)}
.acc-card.danger{box-shadow:var(--shadow),inset 0 0 0 1px rgba(232,86,107,.35)}
.acc-card-h{margin-bottom:16px}
.acc-card-h h3{margin:0 0 3px;font-size:18px;letter-spacing:-.01em}
.acc-card-h p{margin:0;font-size:14px;color:var(--muted)}
.acc-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.acc-btns{display:flex;gap:8px;flex-wrap:wrap}
.acc-state{font-size:13px;color:var(--muted)}
.acc-state.dirty{color:var(--accent-ink);font-weight:600}
.acc-state.ok{color:#127a55;font-weight:600}
.acc-note,.acc-lock{display:flex;gap:10px;align-items:flex-start;margin:16px 0 0;font-size:13.5px;color:var(--ink-2)}
.acc-note svg,.acc-lock svg{margin-top:2px;color:var(--muted)}

/* forms */
.acc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
.acc-f{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--ink-2)}
.acc-f.wide{grid-column:1/-1}
.acc-f small{font-weight:500;font-size:12.5px;color:var(--muted)}
.acc-in{width:100%;height:46px;padding:0 14px;border:0;border-radius:14px;font-size:15px;font-weight:500;color:var(--ink);background:rgba(255,255,255,.75);
  box-shadow:inset 0 0 0 1px rgba(12,20,36,.12),inset 0 1px 2px rgba(12,20,36,.05);transition:box-shadow .2s,background .2s}
.acc-in:hover{background:#fff}
.acc-in:focus{outline:none;background:#fff;box-shadow:inset 0 0 0 2px var(--accent),0 0 0 4px rgba(242,138,23,.18)}
.acc-in[readonly]{color:var(--ink-2);background:rgba(12,20,36,.04);cursor:default}
.acc-in.bad{box-shadow:inset 0 0 0 2px var(--rose)}
.acc-err{font-style:normal;font-weight:600;font-size:12.5px;color:#b4233a}
.acc-lockin{position:relative;display:block}
.acc-lockin .acc-in{padding-right:40px}
.acc-lockin svg{position:absolute;right:14px;top:14px;width:18px;height:18px;color:var(--muted)}
.acc .select select{width:100%;height:46px;font-size:15px;font-weight:500;background:rgba(255,255,255,.75);box-shadow:inset 0 0 0 1px rgba(12,20,36,.12)}
.acc .select{display:block}
.acc-static{display:flex;align-items:center;gap:10px;min-height:46px;flex-wrap:wrap}

/* photo and logo */
.acc-photo{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.acc-photo-c{display:flex;flex-direction:column;gap:10px;min-width:0}
.acc-photo-c small{color:var(--muted);font-size:12.5px;max-width:42ch}
.acc-logo{display:grid;place-items:center;width:168px;height:96px;border-radius:18px;overflow:hidden;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);
  background:repeating-conic-gradient(rgba(12,20,36,.05) 0 25%,rgba(255,255,255,.7) 0 50%) 0 0/16px 16px;box-shadow:inset 0 0 0 1px rgba(12,20,36,.12)}
.acc-logo img{max-width:88%;max-height:80%;object-fit:contain}

/* rows */
.acc-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--line)}
.acc-card-h+.acc-row{border-top:0;padding-top:4px}
.acc-l{min-width:0}
.acc-l b{display:block;font-size:15px}
.acc-l small{display:block;margin-top:2px;font-size:13px;color:var(--muted);max-width:56ch}
.acc-c{flex:none}
.acc-c .select select{min-width:200px}
.acc-dl{display:grid;grid-template-columns:max-content 1fr;gap:10px 28px;margin:0;font-size:14.5px}
.acc-dl dt{color:var(--muted);font-weight:600}
.acc-dl dd{margin:0;color:var(--ink)}

/* chips */
.chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.01em;color:var(--ink-2);background:rgba(12,20,36,.07)}
.chip.ok{color:#0e6b49;background:rgba(34,176,125,.15)}
.chip.warn{color:var(--accent-ink);background:rgba(242,138,23,.16)}
.chip.bad{color:#b4233a;background:rgba(232,86,107,.14)}
.chip.sky{color:#2a56b8;background:rgba(91,140,240,.15)}

/* switches and the notification matrix */
.switch{position:relative;width:46px;height:28px;padding:0;border:0;border-radius:999px;cursor:pointer;background:rgba(12,20,36,.18);transition:background .2s;flex:none}
.switch::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(12,20,36,.3);transition:transform .22s var(--ease)}
.switch[aria-checked="true"]{background:linear-gradient(180deg,#ffa53d,#f28a17)}
.switch[aria-checked="true"]::after{transform:translateX(18px)}
.switch:disabled{cursor:not-allowed;opacity:.55}
.acc-nrow{display:grid;grid-template-columns:minmax(0,1fr) 84px 84px;align-items:center;gap:12px;padding:15px 0;border-top:1px solid var(--line)}
.acc-nrow.head{border-top:0;padding:0 0 10px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.acc-nrow>span{display:flex;justify-content:center}
.acc-nrow.head>span:first-child{justify-content:flex-start}

/* meters */
.acc-meters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px;margin-top:18px}
.acc-meter .readline{margin-bottom:7px;font-family:var(--font);font-size:13px;letter-spacing:0}
.acc-meter .readline span{color:var(--muted);font-weight:600}
.acc-meter-bar{height:8px;border-radius:8px;background:rgba(12,20,36,.08);overflow:hidden}
.acc-meter-bar i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#ffb347,#f28a17)}
.acc-meter-bar.warn i{background:linear-gradient(90deg,#f28a17,#e8566b)}
.acc-meter small{display:block;margin-top:6px;font-size:12.5px;color:var(--muted)}
.acc-planline{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.acc-planline h4{margin:0;font-size:24px;letter-spacing:-.02em}
.acc-planline p{margin:4px 0 0;font-size:14px;color:var(--ink-2)}
.acc-planico{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#ffb347,#f28a17);flex:none}

/* tables and lists */
.tbl-wrap{overflow-x:auto;margin:0 -8px;padding:0 8px}
.acc-table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.acc-table th{padding:0 10px 10px;text-align:left;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.acc-table td{padding:13px 10px;border-top:1px solid var(--line);vertical-align:middle;color:var(--ink-2)}
.acc-table .r{text-align:right}
.acc-table td.r{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}
.acc-table td.mono{font-family:var(--mono);font-size:12.5px}
.acc-empty{margin:6px 0 0;padding:22px;text-align:center;border-radius:14px;color:var(--muted);background:rgba(12,20,36,.035)}
.acc-empty[hidden],.acc-note[hidden],.acc-lock[hidden]{display:none}
.acc-list{list-style:none;margin:0;padding:0}
.acc-list li{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--line)}
.acc-list li:first-child{border-top:0}
.acc-list .ico{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(12,20,36,.06);color:var(--ink-2);flex:none}
.acc-list .t{min-width:0;flex:1}
.acc-list .t b{display:block;font-size:14.5px}
.acc-list .t small{display:block;font-size:12.5px;color:var(--muted)}
.acc-list.log li{padding:10px 0}
.acc-list.log time{flex:none;font-family:var(--mono);font-size:12px;color:var(--muted)}

/* checkboxes */
.acc-checks{display:grid;gap:4px}
.acc-checks label{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:14px;cursor:pointer;transition:background .2s}
.acc-checks label:hover{background:rgba(255,255,255,.6)}
.acc-checks input{margin-top:3px;width:18px;height:18px;accent-color:#f28a17;flex:none}
.acc-checks b{display:block;font-size:14.5px}
.acc-checks small{display:block;font-size:12.5px;color:var(--muted)}

/* modal */
.acc-modal h3{font-size:24px}
.acc-modal .acc-f{margin-top:16px}
.acc-modal .ck-acts{margin-top:20px}
.btn-primary.is-danger{background:linear-gradient(180deg,#f0657a,#d4374e);box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 10px 24px -10px rgba(212,55,78,.7)}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}

@media (max-width:980px){
  .acc-shell{grid-template-columns:1fr}
  .acc-side{position:static;padding:14px}
  .acc-id{border-bottom:0;margin-bottom:0;padding-bottom:12px}
  .acc-nav{flex-direction:row;overflow-x:auto;gap:4px;padding-bottom:4px;scrollbar-width:none}
  .acc-nav a{flex:none;padding:10px 14px}
}
@media (max-width:640px){
  .acc{padding-top:108px}
  .acc-card{padding:20px 18px}
  .acc-grid,.acc-meters{grid-template-columns:1fr}
  .acc-row{flex-direction:column;align-items:stretch;gap:12px}
  .acc-c .select select{min-width:0;width:100%}
  .acc-nrow{grid-template-columns:minmax(0,1fr) 56px 56px;gap:8px}
  .acc-dl{grid-template-columns:1fr;gap:2px}
  .acc-dl dd{margin-bottom:10px}
  .acc-gate{padding:32px 22px}
}
@media (prefers-reduced-motion:reduce){.switch,.switch::after,.acc-nav a{transition:none}}
.acc-dl-gap{margin-top:16px}
