/* Shared styling for the legal pages (privacy / terms).
   Kept as an external stylesheet so the CSP stays strict and both pages
   can't drift apart visually. */
:root{
  --bg:#0b0410; --ink:#fff2f7; --pink:#ff4fa3; --acid:#ff7a1a; --lime:#c8ff3a;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:'Space Mono',monospace;
  line-height:1.8;font-size:14px;
  background-image:
    radial-gradient(900px 600px at 10% 0%, #25083a 0%, transparent 60%),
    radial-gradient(800px 600px at 90% 20%, #340a26 0%, transparent 55%);
  background-attachment:fixed}

.skip{position:absolute;left:-9999px;top:0;z-index:500;background:var(--lime);color:#000;
  padding:14px 22px;font-family:'Bungee',sans-serif;font-size:13px;letter-spacing:2px;text-decoration:none}
.skip:focus{left:8px;top:8px}
a:focus-visible,button:focus-visible,summary:focus-visible{
  outline:3px solid var(--lime);outline-offset:3px;border-radius:2px}

.wrap{max-width:820px;margin:0 auto;padding:44px 24px 90px}

header.top{display:flex;justify-content:space-between;align-items:center;gap:20px;
  flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid rgba(255,79,163,.25)}
header.top .brand{font-family:'Bungee',sans-serif;font-size:18px;letter-spacing:3px;
  color:var(--pink);text-decoration:none;text-shadow:0 0 16px var(--pink)}
header.top a.back{color:rgba(255,242,247,.75);font-size:11px;letter-spacing:2px;
  text-transform:uppercase;text-decoration:none}
header.top a.back:hover,header.top a.back:focus-visible{color:var(--lime)}

h1{font-family:'Bungee',sans-serif;font-size:clamp(28px,5vw,46px);line-height:1.1;
  margin:44px 0 10px;color:var(--ink)}
.updated{font-size:11px;letter-spacing:3px;color:var(--acid);text-transform:uppercase;
  margin-bottom:36px}
h2{font-family:'Bungee',sans-serif;font-size:clamp(17px,2.6vw,22px);line-height:1.3;
  margin:44px 0 12px;color:var(--lime)}
h3{font-size:14px;letter-spacing:1px;margin:26px 0 8px;color:var(--pink)}
p{margin-bottom:16px;color:rgba(255,242,247,.86)}
ul,ol{margin:0 0 18px 22px;color:rgba(255,242,247,.86)}
li{margin-bottom:9px}
strong{color:var(--ink)}
a{color:var(--lime)}

.toc{border:1px solid rgba(255,79,163,.3);border-radius:8px;padding:20px 24px;
  background:rgba(18,7,28,.5);margin-bottom:20px}
.toc h2{margin:0 0 12px;font-size:13px;color:var(--acid);letter-spacing:2px}
.toc ol{margin:0 0 0 20px;font-size:13px}
.toc li{margin-bottom:5px}

.notice{border:1px solid rgba(255,122,26,.5);border-left-width:4px;border-radius:6px;
  background:rgba(255,122,26,.07);padding:18px 22px;margin:28px 0;font-size:13px}
.notice strong{color:var(--acid);display:block;margin-bottom:6px;letter-spacing:1px}

.ph{background:rgba(255,79,163,.16);border:1px dashed rgba(255,79,163,.65);
  border-radius:3px;padding:1px 7px;color:var(--pink);font-weight:700;white-space:nowrap}

/* ---------- FAQ (native <details> — accessible, keyboard-operable, zero JS) --- */
.faq-list{margin-top:8px}
.faq-list details{border:1px solid rgba(255,79,163,.25);border-radius:8px;
  background:rgba(18,7,28,.45);margin-bottom:12px;overflow:hidden}
.faq-list summary{cursor:pointer;padding:19px 22px;font-size:14px;letter-spacing:1px;
  color:var(--ink);list-style:none;display:flex;justify-content:space-between;
  align-items:center;gap:16px;font-weight:700;line-height:1.5}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";font-family:'Bungee',sans-serif;color:var(--lime);
  font-size:20px;flex-shrink:0;transition:transform .25s}
.faq-list details[open] summary::after{transform:rotate(45deg)}
.faq-list summary:hover{background:rgba(255,79,163,.07)}
.faq-list .ans{padding:0 22px 20px;font-size:13px;line-height:1.85;
  color:rgba(255,242,247,.82);letter-spacing:.4px}
.faq-list .ans p{margin-bottom:12px}
.faq-list .ans p:last-child{margin-bottom:0}
.faq-group{font-family:'Bungee',sans-serif;font-size:13px;letter-spacing:3px;
  color:var(--acid);text-transform:uppercase;margin:40px 0 14px}

.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.cta-row a{display:inline-block;background:var(--lime);color:#000;text-decoration:none;
  font-family:'Bungee',sans-serif;font-size:13px;letter-spacing:2px;padding:15px 26px;border-radius:5px}
.cta-row a.alt{background:var(--pink)}

footer{border-top:1px solid rgba(255,79,163,.2);margin-top:60px;padding-top:26px;
  font-size:10px;letter-spacing:3px;color:rgba(255,242,247,.55);text-align:center;line-height:2}
footer a{color:rgba(255,242,247,.75);text-decoration:none;margin:0 9px}
footer a:hover,footer a:focus-visible{color:var(--lime)}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media (max-width:600px){
  .wrap{padding:28px 18px 70px}
  body{font-size:13px}
}
