/* SpeechRoll design tokens: тёмная тема — родная среда суфлёра */
:root{
  --bg:#0b0d10; --surface:#14181d; --surface2:#1b2129; --fg:#f2f4f6; --muted:#8b949e;
  --line:#262c33; --accent:#ffb703; --accent-fg:#141002; --danger:#ef4444; --ok:#22c55e;
  --font-display:'Archivo',system-ui,sans-serif; --font-ui:'Inter',system-ui,sans-serif;
  --radius:12px; color-scheme:dark;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.55 var(--font-ui)}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
header.site{border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;gap:20px;height:60px}
.logo{font-family:var(--font-display);font-weight:800;font-size:19px;color:var(--fg);letter-spacing:-.02em}
.logo b{color:var(--accent);font-weight:800}
nav.main{margin-left:auto;display:flex;gap:18px;align-items:center}
nav.main a{color:var(--muted);font-weight:500}
nav.main a:hover{color:var(--fg);text-decoration:none}
nav.main a.btn{color:var(--accent-fg)}
nav.main a.btn:hover{color:var(--accent-fg)}
.btn{display:inline-block;background:var(--accent);color:var(--accent-fg);border:none;border-radius:10px;
  padding:11px 20px;font:600 15px var(--font-ui);cursor:pointer;text-decoration:none;white-space:nowrap}
.btn:hover{filter:brightness(1.07);text-decoration:none}
.btn.secondary{background:var(--surface2);color:var(--fg);border:1px solid var(--line)}
.btn.ghost{background:none;color:var(--muted);border:1px solid var(--line)}
.btn:disabled{opacity:.45;cursor:default}
.btn.danger{background:var(--danger);color:#fff}
input,select,textarea{background:var(--surface);border:1px solid var(--line);border-radius:9px;
  color:var(--fg);font:inherit;padding:9px 12px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}
footer.site{border-top:1px solid var(--line);margin-top:70px;color:var(--muted);font-size:13px}
footer.site .wrap{padding:26px 20px;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between}
footer.site a{color:var(--muted)}
.pill{font-size:11.5px;font-weight:700;border-radius:999px;padding:3px 10px;background:var(--surface2);
  color:var(--accent);border:1px solid var(--line);letter-spacing:.03em}
@media(max-width:700px){ nav.main a.hide-m{display:none} }
