/* FENRIS site design system — one accent family, dark brand */
:root{--bg:#00010b;--panel:#070d1d;--panel2:#0a1226;--line:#12203c;--txt:#e8eef8;
--dim:#93a4c3;--faint:#5a6a85;--blue:#39a7ff;--ice:#7fd0ff;--ok:#39d98a;--err:#ff6b6b}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);color:var(--txt);font-family:'Segoe UI',system-ui,-apple-system,sans-serif;line-height:1.6;min-height:100vh}
a{color:var(--ice);text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
nav{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;
border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(0,1,11,.92);backdrop-filter:blur(8px);z-index:10}
nav .logo{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:1px;color:var(--txt);font-size:1.05rem}
nav .logo img{height:34px}
nav .links{display:flex;gap:22px;align-items:center}
nav .links a{color:var(--dim);font-size:.95rem;font-weight:600}
nav .links a:hover,nav .links a.on{color:var(--ice)}
.btn{display:inline-block;background:linear-gradient(135deg,#1b6dd6,#39a7ff);color:#fff;
font-weight:700;padding:12px 28px;border-radius:10px;border:0;font-size:1rem;cursor:pointer;letter-spacing:.3px}
.btn:hover{filter:brightness(1.12)}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--ice)}
h1{font-size:2rem;letter-spacing:.4px}
h2{font-size:1.5rem;color:var(--ice);letter-spacing:.4px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}
footer{border-top:1px solid var(--line);padding:30px 0;text-align:center;color:var(--faint);font-size:.88rem;margin-top:60px}
input{width:100%;background:var(--panel2);border:1px solid var(--line);border-radius:9px;
color:var(--txt);padding:13px 14px;font-size:1rem;margin-bottom:12px}
input:focus{outline:none;border-color:var(--blue)}
.err-msg{color:var(--err);font-size:.9rem;min-height:1.4em}
.ok-msg{color:var(--ok);font-size:.9rem}

/* v2: typography + a11y */
p{text-wrap:pretty}
h1,h2,h3{text-wrap:balance}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--ice);outline-offset:2px}
.legal-links{margin-bottom:8px}
.legal-links a{color:var(--dim);margin:0 2px}
.legal-links a:hover{color:var(--ice)}
.doc{max-width:760px;margin:0 auto;padding:40px 24px 20px}
.doc h1{margin-bottom:4px}
.doc .updated{color:var(--faint);font-size:.9rem;margin-bottom:26px}
.doc h2{font-size:1.12rem;margin:26px 0 8px}
.doc h2 span{color:var(--faint);font-size:.8rem;letter-spacing:2px;display:block}
.doc p,.doc li{color:var(--dim);font-size:.97rem}
.doc ul{padding-left:22px;margin:6px 0}

/* v3: mobile nav breathing room */
nav{flex-wrap:wrap;gap:10px 18px}
nav .logo{margin-right:14px}
@media (max-width:520px){
  nav{padding:12px 14px}
  nav .links{gap:14px;flex-wrap:wrap}
}
