/* Admin settings: tolvasi.com's exact tokens (colors and fonts from the website's :root), scoped to .adm so no other screen changes.
   Fonts Chakra Petch / Barlow / IBM Plex Mono are already loaded by index.html. Logo: assets/tolva-logo-sm.webp (same file as tolvasi.com). */
.adm{--bg:#0b0e12;--surface:#12161b;--card:#171c22;--line:#2c343c;--text:#f2efe9;--muted:#a3a8ad;--cyan:#ffa11a;--green:#00e6b0;--amber:#ff6a1f;--red:#ff676b;
  --f-display:'Chakra Petch','Arial Narrow',system-ui,sans-serif;--f-body:'Barlow',system-ui,-apple-system,'Segoe UI',sans-serif;--f-mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;
  background:var(--bg);color:var(--text);font:400 16px/1.5 var(--f-body);border:1px solid var(--line);border-radius:14px;padding:clamp(16px,3vw,28px);color-scheme:dark}
.adm *{box-sizing:border-box}
.adm h2,.adm h3{font-family:var(--f-display);margin:0;line-height:1.1;letter-spacing:-.005em}
.adm h2{font-size:clamp(26px,3.4vw,36px);font-weight:600}.adm h3{font-size:18px;font-weight:600}
.adm-head{display:flex;gap:16px;align-items:center;margin-bottom:20px}.adm-logo{height:40px;width:auto;display:block}
.adm-eyebrow{font:500 12px/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);margin-bottom:8px}
.adm-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:20px}
.adm-tabs button{font:600 15px/1 var(--f-body);letter-spacing:.02em;color:var(--muted);background:none;border:0;border-bottom:2px solid transparent;padding:12px 14px;cursor:pointer}
.adm-tabs button:hover{color:var(--text)}.adm-tabs button.on{color:var(--text);border-bottom-color:var(--cyan)}
.adm :focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:4px}
.adm-card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:18px 20px;margin-bottom:16px}
.adm-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.adm-cards .adm-card{margin:0}
.adm-scroll{overflow-x:auto;padding:0}
.adm-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 14px}.adm-card .adm-bar:last-child{margin-bottom:0}.adm-sp{flex:1}
.adm-mute{color:var(--muted);font-size:14px}.adm-ok{color:var(--green);font-weight:600}.adm-warn{color:var(--amber);font-weight:600}.adm-err{color:var(--red)}
.adm-t{width:100%;border-collapse:collapse;font-size:15px}.adm-t th{font:500 12px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);white-space:nowrap}
.adm-t td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.adm-t tr:last-child td{border-bottom:0}.adm-actions{text-align:right;white-space:nowrap}
.adm-btn{display:inline-flex;align-items:center;font:600 15px/1 var(--f-body);letter-spacing:.02em;padding:12px 18px;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer}
.adm-btn:hover{border-color:var(--cyan)}.adm-btn.p{background:var(--cyan);border-color:var(--cyan);color:var(--bg)}.adm-btn.p:hover{filter:brightness(1.06)}
.adm-btn.d{color:var(--red);border-color:var(--red);background:transparent}.adm-btn.sm{padding:8px 12px;font-size:13.5px;margin-left:6px}.adm-btn:disabled{opacity:.5;cursor:default}
.adm-l{display:grid;gap:6px;font:500 12px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.adm input:not([type=checkbox]):not([type=file]),.adm select{font:400 16px/1.2 var(--f-body);letter-spacing:0;text-transform:none;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:12px 14px;width:100%}
.adm input[type=file]{color:var(--muted);font-size:14px;max-width:100%}
.adm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-bottom:18px}
.adm-logobox{display:grid;place-items:center;min-height:84px;background:var(--surface);border:1px dashed var(--line);border-radius:6px;padding:10px}.adm-logobox img{max-height:64px;max-width:100%}
.adm-pill,.adm-badge,.adm-role{display:inline-block;font:500 12px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;padding:6px 9px;border-radius:999px;border:1px solid var(--line);color:var(--text)}
.adm-pill.active,.adm-badge.ok{color:var(--green);border-color:var(--green)}.adm-pill.invited,.adm-badge.warn{color:var(--cyan);border-color:var(--cyan)}.adm-pill.disabled,.adm-badge.bad{color:var(--red);border-color:var(--red)}
.adm dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:12px 0 0}.adm dt{color:var(--muted);font-size:14px}.adm dd{margin:0}
.adm-switch{position:relative;display:inline-block;width:52px;height:30px}.adm-switch input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.adm-switch span{position:absolute;inset:0;background:var(--surface);border:1px solid var(--line);border-radius:999px;transition:background .15s}
.adm-switch span::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--muted);transition:transform .15s,background .15s}
.adm-switch input:checked+span{background:rgba(255,161,26,.18);border-color:var(--cyan)}.adm-switch input:checked+span::after{transform:translateX(22px);background:var(--cyan)}
.adm-switch input:focus-visible+span{outline:2px solid var(--cyan);outline-offset:3px}
.adm-modal{background:#171c22!important;color:#f2efe9;border:1px solid #2c343c!important;border-radius:10px;width:min(520px,94vw);padding:22px;font-family:'Barlow',system-ui,sans-serif}
.adm-modal h3{font-family:'Chakra Petch',system-ui,sans-serif;margin:0 0 12px}.adm-modal .adm-l{margin:12px 0}.adm-modal .adm-mute{color:#a3a8ad}
.adm-modal input,.adm-modal select{font:400 16px/1.2 'Barlow',system-ui,sans-serif;color:#f2efe9;background:#12161b;border:1px solid #2c343c;border-radius:6px;padding:12px 14px;width:100%;text-transform:none;letter-spacing:0}
.adm-modal .adm-btn{font:600 15px/1 'Barlow',system-ui,sans-serif;padding:12px 18px;border-radius:6px;border:1px solid #2c343c;background:#12161b;color:#f2efe9;cursor:pointer}
.adm-modal .adm-btn.p{background:#ffa11a;border-color:#ffa11a;color:#0b0e12}.adm-modal .adm-btn.d{color:#ff676b;border-color:#ff676b;background:transparent}
.adm-modal .adm-bar{display:flex;gap:10px;align-items:center;margin-top:16px}.adm-modal .adm-sp{flex:1}
@media (max-width:640px){.adm-head{flex-direction:column;align-items:flex-start}.adm-t th,.adm-t td{padding:10px 12px}}
@media (prefers-reduced-motion:reduce){.adm *{transition:none!important}}
