:root{
  --bg:#000000; --surface:#1C1C1C; --ink:#FFFFFF; --muted:#B3B3B3; --line:#333333; --soft:#2A2A2A;
  --accent:#1DB954; --accent-ink:#000000; --live:#F15E6C; --ok:#1DB954; --warn:#E8A93B; --focus:#1ED760;
  color-scheme:dark;
  box-sizing:border-box; padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme:dark){ :root:not([data-theme="light"]){ color-scheme:dark; } }
:root[data-theme="dark"]{ color-scheme:dark; }
*,*::before,*::after{box-sizing:inherit}
[hidden]{display:none!important}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Inter Tight","Helvetica Neue",Arial,sans-serif;font-size:15px;line-height:1.45}
button,select,input,textarea{font:inherit;color:inherit}
button{cursor:pointer;border:1.5px solid var(--line);background:var(--surface);border-radius:10px;padding:8px 14px;font-weight:600;line-height:1.2}
button:hover:not(:disabled){border-color:var(--muted)}
button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);border-radius:999px}
button.primary:hover:not(:disabled){background:#1ED760;border-color:#1ED760}
button.danger{color:var(--live)}
button.on{background:var(--ink);border-color:var(--ink);color:var(--bg)}
button.link,a.link{border:0;background:none;padding:2px 4px;color:var(--accent);font-weight:600;text-decoration:none}
button:disabled{opacity:.45;cursor:not-allowed}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
select,input[type=text],input:not([type]){border:1.5px solid var(--line);background:var(--surface);border-radius:10px;padding:8px 10px}
a{color:var(--accent)}
.pill{font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--soft);color:var(--muted);border:1px solid var(--line);white-space:nowrap}
.pill.ok{background:rgba(47,158,118,.12);color:var(--ok);border-color:rgba(47,158,118,.35)}
.pill.live{background:rgba(226,72,61,.12);color:var(--live);border-color:rgba(226,72,61,.35)}
.pill.warn{background:rgba(201,138,18,.12);color:var(--warn);border-color:rgba(201,138,18,.35)}
.card{background:var(--surface);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:14px}
.card h2{font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 10px;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:8px}
.hint{font-size:13px;color:var(--muted);margin:0}
.hint code{font-family:inherit;font-weight:700;color:var(--ink)}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.spacer{flex:1}
.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 20px);transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:10px;font-weight:600;font-size:14px;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;z-index:60;max-width:90vw;text-align:center}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
dialog{border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);padding:0;width:min(640px,94vw);max-height:88vh}
dialog::backdrop{background:rgba(0,0,0,.45)}
.dlg-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}
.dlg-head h3{margin:0;font-size:18px}
.dlg-body{padding:16px 18px;overflow:auto;max-height:calc(88vh - 64px);display:grid;gap:16px}
.dlg-body h4{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.list{display:grid;gap:8px}
.item{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--soft);flex-wrap:wrap}
.item .grow{flex:1;min-width:160px}
.item b{display:block}
.item small{color:var(--muted)}
.avatar{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:12px;font-weight:800;color:#fff;flex:none}
.copybox{display:flex;gap:8px;align-items:center}
.copybox input{flex:1;min-width:0;font-size:13px}
