:root{
  --bg:#0a0a0c; --bg2:#0f0f12; --card:#15151a; --card2:#1b1b22; --line:#26262e;
  --text:#f4f4f6; --dim:#9a9aa6; --accent:#ff9d2e; --accent2:#ffb85c; --green:#3ddc84; --red:#ff5d5d;
  --r:16px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font:16px/1.65 Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{font-weight:800;letter-spacing:-.02em;line-height:1.15}
.wrap{width:min(1120px,100% - 40px);margin-inline:auto}

.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px}
.panel.flat{background:var(--card)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 15px Inter,sans-serif;color:var(--text);background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:12px 22px;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,transform .1s}
.btn:hover{background:#23232c;border-color:#34343f;text-decoration:none}
.btn:active{transform:scale(.98)}
.btn.green{background:var(--accent);border-color:var(--accent);color:#1a1005}
.btn.green:hover{background:var(--accent2);border-color:var(--accent2)}
.btn.big{font-size:16px;padding:16px 28px}

header.top{background:#0a0a0cd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
header.top .wrap{display:flex;align-items:center;gap:24px;height:68px}
.brand{display:flex;align-items:center;gap:12px;color:var(--text);font-weight:800;font-size:19px;letter-spacing:-.02em}
.brand:hover{text-decoration:none}
.brand img{width:34px;height:34px;border-radius:9px}
.brand b{color:var(--accent);font-weight:800}
nav.main{display:flex;gap:4px;margin-left:auto}
nav.main a{color:var(--dim);padding:8px 14px;font-weight:500;font-size:15px;border-radius:10px}
nav.main a:hover,nav.main a.on{color:var(--text);background:var(--card);text-decoration:none}
.burger{display:none;margin-left:auto;background:none;border:0;color:var(--text);font-size:26px;cursor:pointer}

.hero{padding:104px 0 88px;border-bottom:1px solid var(--line);background:radial-gradient(800px 360px at 20% 0,#ff9d2e14,transparent 70%)}
.hero .wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(42px,7vw,76px);margin-bottom:18px;letter-spacing:-.04em}
.hero h1 b{color:var(--accent);font-weight:800}
.hero p.lead{font-size:20px;color:var(--dim);max-width:30em;margin-bottom:32px}
.ipbox{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.ipbox code{display:flex;align-items:center;font:600 19px ui-monospace,"Cascadia Code",Consolas,monospace;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:0 20px;color:var(--text)}
.hero small{display:block;margin-top:16px;color:var(--dim);font-size:14px}

.status h3{font-size:13px;color:var(--dim);font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
.status .row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--dim)}
.status .row b{color:var(--text);font-weight:600}
.status .row:last-child{border:0;padding-bottom:0}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--dim);margin-right:8px;vertical-align:1px}
.dot.on{background:var(--green)} .dot.off{background:var(--red)}

section{padding:80px 0}
section.alt{background:var(--bg2);border-block:1px solid var(--line)}
.sec-title{font-size:clamp(28px,4vw,40px);margin-bottom:12px}
.sec-sub{color:var(--dim);margin-bottom:40px;max-width:56ch;font-size:18px}
.grid{display:grid;gap:18px}
.g2{grid-template-columns:repeat(2,1fr)} .g3{grid-template-columns:repeat(3,1fr)} .g4{grid-template-columns:repeat(4,1fr)}
.mode{padding:32px}
.mode h3{font-size:26px;margin:8px 0 10px}
.mode p{color:var(--dim)}
.mode .tag{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
.feat h3{font-size:18px;margin-bottom:8px;letter-spacing:-.01em}
.feat p{color:var(--dim);font-size:15px}
code{font-family:ui-monospace,"Cascadia Code",Consolas,monospace}
.mode code,.feat code,.prose code,.steps code{background:#ffffff0d;border:1px solid var(--line);border-radius:6px;padding:1px 7px;color:var(--accent2);font-size:.88em}

ol.steps{list-style:none;counter-reset:s;display:grid;gap:22px}
ol.steps li{counter-increment:s;display:flex;gap:18px;align-items:flex-start}
ol.steps li::before{content:counter(s);flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#1a1005;font-weight:800}

.prose{max-width:780px}
.prose h2{font-size:22px;margin:36px 0 12px}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{color:#cfcfd8;margin-bottom:10px}
.prose ul,.prose ol{padding-left:22px}
.rule{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid var(--line);color:#cfcfd8}
.rule:last-child{border:0}
.rule b{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--card2);color:var(--accent);font-weight:700;font-size:14px}
.rule strong{color:var(--text)}
.page-head{padding:64px 0 32px}
.page-head h1{font-size:clamp(34px,5vw,52px)}
.page-head p{color:var(--dim);margin-top:12px;font-size:18px}

.vote{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.vote h3{font-size:20px;margin-bottom:4px}
.vote p{color:var(--dim);font-size:15px}
.soon .btn{opacity:.6;cursor:default}

footer{margin-top:auto;border-top:1px solid var(--line);padding:32px 0;color:var(--dim);font-size:14px}
footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
footer nav{display:flex;gap:20px;flex-wrap:wrap}
footer a{color:var(--dim)} footer a:hover{color:var(--text);text-decoration:none}

.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,120px);background:var(--card2);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:12px 20px;font-weight:600;transition:transform .2s;z-index:50;box-shadow:0 10px 30px #0008}
.toast.show{transform:translate(-50%,0)}

@media(max-width:860px){
  .hero .wrap{grid-template-columns:1fr}
  .g3,.g4{grid-template-columns:repeat(2,1fr)}
  nav.main{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;background:#0a0a0c;border-bottom:1px solid var(--line);padding:8px 20px 14px}
  nav.main.open{display:flex}
  .burger{display:block}
}
@media(max-width:560px){.g2,.g3,.g4{grid-template-columns:1fr}.hero{padding:64px 0 56px}section{padding:56px 0}}
