:root { --bg:#071426; --panel:#0d2038; --text:#f4f7fb; --muted:#afbdd0; --accent:#21c3f3; --line:rgba(33,195,243,.22); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font-family:Inter,Segoe UI,Arial,sans-serif; background:var(--bg); color:var(--text); line-height:1.7; }
a { color:var(--accent); }
.legal-header { position:sticky; top:0; z-index:10; display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1rem max(5vw,20px); background:rgba(7,20,38,.94); border-bottom:1px solid var(--line); backdrop-filter:blur(16px); }
.legal-header img { width:min(270px,55vw); height:50px; object-fit:contain; object-position:left; }
.legal-header a:last-child { text-decoration:none; font-weight:700; }
.legal-main { width:min(920px,calc(100% - 36px)); margin:0 auto; padding:72px 0 90px; }
.eyebrow { color:var(--accent); font-size:.78rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
h1 { max-width:800px; margin:.6rem 0 1rem; font-size:clamp(2.4rem,6vw,4.8rem); line-height:1.02; }
.lead { max-width:760px; color:var(--muted); font-size:1.12rem; }
.version { display:inline-block; margin:1.2rem 0 2.4rem; padding:.45rem .8rem; border:1px solid var(--line); border-radius:999px; color:var(--accent); font-size:.86rem; }
.toc { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.6rem 1rem; margin:0 0 2rem; padding:1.35rem; border-radius:18px; background:rgba(255,255,255,.04); }
.toc a { color:var(--muted); text-decoration:none; }
.legal-section-block { margin:1rem 0; padding:1.6rem; border:1px solid var(--line); border-radius:20px; background:var(--panel); scroll-margin-top:90px; }
.legal-section-block h2 { margin:0 0 .65rem; font-size:1.35rem; }
.legal-section-block p, .legal-section-block li { color:var(--muted); }
.legal-section-block ul, .legal-section-block ol { padding-left:1.25rem; }
.callout { border-color:rgba(33,195,243,.5); background:linear-gradient(135deg,rgba(33,195,243,.12),rgba(255,255,255,.04)); }
.action { display:inline-flex; padding:.85rem 1.1rem; border-radius:999px; background:var(--accent); color:#061631; text-decoration:none; font-weight:800; }
.legal-footer { padding:2rem max(5vw,20px); border-top:1px solid var(--line); color:var(--muted); text-align:center; }
.legal-footer nav { display:flex; justify-content:center; flex-wrap:wrap; gap:.6rem 1.2rem; margin-bottom:1rem; }
@media(max-width:650px){.toc{grid-template-columns:1fr}.legal-header a:last-child{font-size:.85rem}.legal-section-block{padding:1.2rem}}
