:root {
    --bg-void: #05070c; --bg-panel: #0d121e; --bg-card: rgba(16,21,34,0.6);
    --primary: #3d6bff; --primary-light: #7096ff; --mask-cyan: #35e8ff;
    --ink: #eef2fb; --ink-dim: #939eb8; --ink-faint: #545e78;
    --line: rgba(148,168,224,0.10); --line-strong: rgba(148,168,224,0.22);
}
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
    background: var(--bg-void); color: var(--ink); font-family: 'Inter', -apple-system, sans-serif;
    line-height: 1.7; -webkit-font-smoothing: antialiased;
}
.legal-nav {
    padding: 20px 6%; display: flex; align-items: center; gap: 12px;
    border-bottom: 1px solid var(--line); position: sticky; top: 0;
    background: rgba(5,7,12,0.9); backdrop-filter: blur(16px); z-index: 10;
}
.legal-nav img { width: 32px; height: 32px; border-radius: 8px; object-fit: contain; background: #05070c; box-shadow: 0 0 0 1px rgba(53,232,255,0.25); }
.legal-nav a { color: var(--ink); text-decoration: none; font-weight: 700; font-family: 'Space Grotesk', sans-serif; }
.legal-nav .back { margin-left: auto; color: var(--ink-dim); font-size: 13px; font-weight: 500; font-family: 'Inter', sans-serif; }
.legal-wrap { max-width: 760px; margin: 0 auto; padding: 60px 6% 100px; }
.legal-wrap h1 { font-family: 'Space Grotesk', sans-serif; font-size: 34px; margin-bottom: 8px; }
.legal-updated { color: var(--ink-faint); font-size: 13px; font-family: 'JetBrains Mono', monospace; margin-bottom: 40px; }
.legal-wrap h2 { font-family: 'Space Grotesk', sans-serif; font-size: 20px; margin: 36px 0 12px; color: var(--ink); }
.legal-wrap h3 { font-size: 15px; margin: 20px 0 8px; color: var(--ink); }
.legal-wrap p { color: var(--ink-dim); font-size: 14.5px; margin-bottom: 14px; }
.legal-wrap ul, .legal-wrap ol { color: var(--ink-dim); font-size: 14.5px; margin: 0 0 14px 22px; }
.legal-wrap li { margin-bottom: 8px; }
.legal-wrap a { color: var(--mask-cyan); }
.legal-wrap strong { color: var(--ink); }
.legal-callout {
    background: var(--bg-card); border: 1px solid var(--line-strong); border-left: 3px solid var(--mask-cyan);
    padding: 16px 18px; border-radius: 8px; margin: 20px 0; font-size: 14px; color: var(--ink-dim);
}
.legal-toc { background: var(--bg-card); border: 1px solid var(--line); border-radius: 10px; padding: 18px 22px; margin-bottom: 32px; }
.legal-toc a { display: block; font-size: 13.5px; padding: 5px 0; color: var(--ink-dim); }
.legal-toc a:hover { color: var(--mask-cyan); }
footer.legal-footer { border-top: 1px solid var(--line); padding: 30px 6%; text-align: center; color: var(--ink-faint); font-size: 12px; }
