/* Public legal documents only. No account/admin or player styles are changed. */
:root { color-scheme:dark; --bg:#050b16; --text:#edf3fc; --muted:#b5c3d8; --line:#26364b; --accent:#79e8e2; }
* { box-sizing:border-box; }
html { scroll-padding-top:24px; }
body { margin:0; background:var(--bg); color:var(--text); font:17px/1.8 system-ui,-apple-system,"Segoe UI",sans-serif; }
a { color:var(--accent); text-underline-offset:.22em; text-decoration-thickness:1px; overflow-wrap:anywhere; }
a:hover { color:#fff; }
a:focus-visible { outline:3px solid var(--accent); outline-offset:5px; border-radius:2px; }
.legal-skip { position:absolute; top:12px; left:16px; z-index:10; padding:10px 16px; background:#fff; color:#07111f; transform:translateY(-160%); }
.legal-skip:focus { transform:none; }
.legal-header,.legal-footer,.legal-main { width:min(1180px,calc(100% - 64px)); margin-inline:auto; }
.legal-header { display:flex; justify-content:space-between; align-items:center; gap:24px; padding-block:24px; border-bottom:1px solid var(--line); }
.legal-brand { display:flex; align-items:center; gap:12px; color:var(--text); text-decoration:none; font-size:15px; line-height:1.4; }
.legal-brand img { width:52px; height:52px; object-fit:contain; }
.legal-brand strong,.legal-brand small { display:block; }
.legal-brand small { color:var(--muted); font-size:11px; }
.legal-nav { display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; font-size:14px; }
.legal-nav a[aria-current=page] { color:#fff; text-decoration-thickness:2px; }
.legal-main { padding-block:62px 80px; }
.legal-main:focus { outline:none; }
.legal-intro { max-width:850px; margin-bottom:46px; }
.legal-eyebrow { margin:0 0 18px; color:var(--accent); font:600 11px/1.6 ui-monospace,Consolas,monospace; letter-spacing:.12em; text-transform:uppercase; }
h1 { margin:0 0 24px; font-size:clamp(32px,4vw,55px); letter-spacing:-.045em; line-height:1.15; font-weight:700; overflow-wrap:anywhere; }
h1 span { display:block; color:var(--muted); font-weight:500; }
.legal-updated { margin:0 0 22px; font-size:14px; color:var(--muted); }
.legal-summary { margin:0; color:var(--muted); max-width:69ch; }
.legal-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:66px; align-items:start; border-top:1px solid var(--line); padding-top:36px; }
.legal-contents { display:block; position:sticky; top:24px; font-size:13px; line-height:1.6; }
.legal-contents h2 { margin:0 0 16px; color:var(--text); font-size:14px; }
.legal-contents ol { margin:0; padding-left:20px; color:var(--muted); }
.legal-contents li { padding-left:2px; margin-bottom:9px; }
.legal-contents a { color:var(--muted); text-decoration:none; }
.legal-contents a:hover,.legal-contents a:focus-visible { color:var(--accent); text-decoration:underline; }
article { min-width:0; max-width:74ch; }
article section { margin-bottom:36px; padding-bottom:30px; border-bottom:1px solid var(--line); }
article section:last-child { margin-bottom:0; }
article h2 { margin:0 0 16px; font-size:23px; line-height:1.4; letter-spacing:-.02em; }
article h3 { margin:24px 0 10px; font-size:18px; }
article p { margin:0 0 18px; color:var(--muted); }
article p:last-child { margin-bottom:0; }
article ul { margin:0 0 18px; padding-left:23px; color:var(--muted); }
article li { margin-bottom:8px; }
article strong { color:var(--text); font-weight:650; }
article code { color:var(--text); font-size:.9em; overflow-wrap:anywhere; }
.legal-footer { border-top:1px solid var(--line); padding-block:30px 38px; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:20px 32px; font-size:13px; }
.legal-footer p { color:var(--muted); margin:0; }
.legal-footer small { display:block; color:var(--muted); }
@media(max-width:900px) {
  .legal-layout { grid-template-columns:190px minmax(0,1fr); gap:32px; }
}
@media(max-width:700px) {
  .legal-header,.legal-footer,.legal-main { width:calc(100% - 36px); }
  .legal-header { flex-wrap:wrap; gap:20px; }
  .legal-nav { gap:14px 22px; font-size:13px; }
  .legal-main { padding-block:38px 50px; }
  .legal-intro { margin-bottom:30px; }
  .legal-layout { display:block; padding-top:24px; }
  .legal-contents { position:static; border-bottom:1px solid var(--line); padding-bottom:24px; margin-bottom:32px; }
  .legal-contents ol { columns:2; column-gap:28px; }
  .legal-contents li { break-inside:avoid; }
  article h2 { font-size:22px; }
  .legal-footer { align-items:flex-start; }
}
@media(max-width:360px) { .legal-contents ol { columns:1; } }
@media print {
  :root { color-scheme:light; --text:#111; --muted:#333; --bg:#fff; --line:#bbb; --accent:#111; }
  .legal-header,.legal-footer,.legal-contents,.legal-skip { display:none; }
  .legal-main { width:100%; padding:0; }
  .legal-layout { display:block; border:0; }
  article { max-width:none; } article section { break-inside:avoid; }
}
