/* Shared public legal-page and legal-link presentation. */
.site-footer{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:min(1320px,calc(100% - 40px));
  margin:0 auto;
  padding:22px 0 76px;
  border-top:1px solid var(--st-border,#294663);
  color:var(--st-muted,#91a4bd);
  font-size:.72rem;
}
.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 16px}
.site-footer a,.auth-gateway__legal a{color:var(--st-cyan,#63dff3);font-weight:800;text-underline-offset:3px}
.site-footer a:focus-visible,.auth-gateway__legal a:focus-visible{outline:3px solid var(--st-gold,#ffe166);outline-offset:4px;border-radius:3px}

.legal-page{
  min-height:100%;
  margin:0;
  background:
    radial-gradient(circle at 12% 4%,rgba(77,213,234,.13),transparent 28%),
    radial-gradient(circle at 90% 2%,rgba(152,93,194,.18),transparent 30%),
    linear-gradient(155deg,#09111e,#100d1c 56%,#21162b);
  color:#f4f5fb;
  font-family:var(--ui-font,Inter,system-ui,sans-serif);
}
html[data-theme="light"] .legal-page{
  background:
    radial-gradient(circle at 12% 4%,rgba(38,151,171,.16),transparent 28%),
    radial-gradient(circle at 90% 2%,rgba(157,101,202,.16),transparent 30%),
    linear-gradient(155deg,#f4f6f1,#eeeaf4 58%,#f4ead8);
  color:#252534;
}
.legal-shell{width:min(900px,calc(100% - 32px));margin:0 auto;padding:22px 0 64px}
.legal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:34px}
.legal-brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none;font-weight:900}
.legal-brand img{width:46px;height:46px;object-fit:contain}
.legal-theme{min-height:44px;padding:0 14px;border:1px solid rgba(141,207,219,.35);border-radius:999px;background:rgba(11,20,39,.72);color:#f8f3ff;font:inherit;font-weight:800;cursor:pointer}
html[data-theme="light"] .legal-theme{border-color:rgba(70,94,104,.25);background:rgba(255,255,255,.72);color:#2f3340}
.legal-theme:focus-visible,.legal-brand:focus-visible,.legal-back:focus-visible,.legal-content a:focus-visible{outline:3px solid #f1c76b;outline-offset:4px}
.legal-hero{margin-bottom:22px;padding:clamp(24px,5vw,48px);border:1px solid rgba(139,215,229,.28);border-radius:22px;background:linear-gradient(145deg,rgba(20,35,59,.88),rgba(31,19,51,.8));box-shadow:0 24px 70px rgba(0,0,0,.28)}
html[data-theme="light"] .legal-hero{border-color:rgba(93,92,123,.18);background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(242,230,250,.78));box-shadow:0 24px 70px rgba(74,55,91,.12)}
.legal-eyebrow{margin:0;color:#7fe2ef;font-size:.7rem;font-weight:950;letter-spacing:.18em;text-transform:uppercase}
html[data-theme="light"] .legal-eyebrow{color:#336f83}
.legal-hero h1{margin:9px 0 12px;font-family:var(--display-font,Georgia,serif);font-size:clamp(2.4rem,8vw,4.8rem);line-height:.94;color:#f4ca74;letter-spacing:-.045em}
html[data-theme="light"] .legal-hero h1{color:#77539a}
.legal-hero p{max-width:680px;margin:0;color:#c0bfd0;line-height:1.65}
html[data-theme="light"] .legal-hero p{color:#55566a}
.legal-updated{display:block;margin-top:14px;color:#9094aa;font-size:.72rem}
.legal-content{display:grid;gap:14px}
.legal-section{padding:clamp(20px,4vw,32px);border:1px solid rgba(141,207,219,.2);border-radius:16px;background:rgba(10,19,34,.78)}
html[data-theme="light"] .legal-section{border-color:rgba(74,71,100,.14);background:rgba(255,255,255,.78)}
.legal-section h2{margin:0 0 12px;font-family:var(--display-font,Georgia,serif);font-size:1.5rem;color:#d7b4ef}
html[data-theme="light"] .legal-section h2{color:#654384}
.legal-section h3{margin:20px 0 7px;font-size:1rem;color:#f2ce7d}
html[data-theme="light"] .legal-section h3{color:#76551c}
.legal-section p,.legal-section li{color:#c4c6d3;line-height:1.7}
html[data-theme="light"] .legal-section p,html[data-theme="light"] .legal-section li{color:#4f5260}
.legal-section ul{padding-left:1.25rem}
.legal-section a{color:#7fe2ef;font-weight:800;text-underline-offset:3px}
html[data-theme="light"] .legal-section a{color:#286d82}
.legal-callout{border-left:3px solid #f0c66c;padding:2px 0 2px 15px}
.legal-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:24px;padding:20px 0;color:#9699aa;font-size:.72rem}
.legal-footer nav{display:flex;gap:16px}
.legal-footer a,.legal-back{color:#7fe2ef;font-weight:800;text-underline-offset:3px}
html[data-theme="light"] .legal-footer a,html[data-theme="light"] .legal-back{color:#286d82}
@media(max-width:620px){.site-footer{width:calc(100% - 22px);padding-bottom:96px}.legal-shell{width:min(100% - 20px,900px)}.legal-header{align-items:flex-start}.legal-brand span{max-width:130px}.legal-section{padding:19px}.legal-footer{display:grid}}
@media(prefers-reduced-motion:reduce){.legal-page *{scroll-behavior:auto!important}}
