* { box-sizing: border-box; }
body { margin:0; color:var(--paper); background:radial-gradient(circle at top, var(--raised), var(--night) 42rem); font:16px/1.65 Arial, sans-serif; }
main { width:min(900px, calc(100% - 32px)); margin:40px auto; padding:clamp(24px,5vw,58px); border:1px solid var(--line); border-radius:12px; background:var(--panel); box-shadow:0 24px 80px #0006; }
a { color:var(--gold); }
h1,h2 { font-weight:600; line-height:1.2; overflow-wrap:anywhere; }
h1 { margin-top:0; color:var(--paper); font-size:clamp(30px,6vw,44px); }
h2 { margin-top:34px; color:var(--paper); font-size:24px; }
p,li { color:var(--muted); overflow-wrap:anywhere; }
.version { padding:12px 16px; border-left:3px solid var(--gold); border-radius:0 8px 8px 0; background:var(--night); }
.draft { padding:14px 16px; border:1px solid var(--enemy); border-radius:8px; color:var(--enemy); background:var(--night); }
.legal-header { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.legal-header nav { margin:0; }
.language-picker { display:flex; padding:4px; border:1px solid var(--line); border-radius:8px; background:var(--night); }
.language-picker button { min-width:43px; min-height:40px; border:0; border-radius:5px; color:var(--muted); background:transparent; cursor:pointer; font:700 12px/1 Arial,sans-serif; letter-spacing:.08em; }
.language-picker button:hover { color:var(--paper); }
.language-picker button.is-active { color:var(--ink); background:var(--gold); }
a:focus-visible,button:focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
@media (max-width:560px) { .legal-header { align-items:flex-start; flex-direction:column; } main { margin:16px auto; } }
