@import url('https://fonts.googleapis.com/css2?family=Press+Start+2P&family=VT323&display=swap');

:root{
  --bg:#0c0f14;
  --panel:#141a22;
  --panel-2:#0e1420;
  --ink:#e9f0ff;
  --muted:#96a0b5;
  --line:#1f2631;
  --line-2:#2a3446;
  --accent:#ff2d55;
  --accent-2:#ff2d55;
  --good:#51f07b;
  --ok:#ffd15e;
  --bad:#ff7a5a;
  --scanline:linear-gradient(rgba(255,255,255,.055) 1px, transparent 2px);
  --shadow:#05070b;
  --radius:18px;
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg);}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 16% -10%, rgba(255,45,85,.22), transparent 30%),
    radial-gradient(circle at 88% 6%, rgba(255,45,85,.14), transparent 32%),
    linear-gradient(180deg,#0c0f14 0%,#07090d 100%);
  font-family:'VT323', monospace;
  font-size:23px;
  line-height:1.25;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:var(--scanline);
  background-size:100% 3px;
  opacity:.32;
  z-index:30;
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.025) 0 2px, transparent 2px 18px);
  opacity:.55;
  z-index:-1;
}

a{color:inherit}
img{max-width:100%;display:block}

.pixel-font,
.nav-link,
.btn,
.kicker,
.section-label,
.card h3,
.shot-label,
.stat-value,
.footer-brand,
.policy-title{
  font-family:'Press Start 2P', system-ui, sans-serif;
  letter-spacing:.02em;
}

.site-header{
  position:sticky;
  top:0;
  z-index:20;
  border-bottom:2px solid var(--line);
  background:rgba(20,26,34,.94);
  backdrop-filter:blur(10px);
}
.header-inner{
  max-width:var(--max);
  margin:0 auto;
  padding:12px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.brand img{width:min(325px,48vw);height:auto;filter:drop-shadow(0 0 14px rgba(255,45,85,.18))}
.brand-sub{color:var(--muted);font-size:18px;margin-top:2px;white-space:nowrap}
.nav-toggle{display:none}
.site-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.nav-link{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:9px 10px;
  border:2px solid transparent;
  border-radius:12px;
  color:var(--muted);
  text-decoration:none;
  font-size:9px;
  text-transform:uppercase;
}
.nav-link:hover,.nav-link.active{color:var(--ink);border-color:var(--line-2);background:#0e1420}

.container{max-width:var(--max);margin:0 auto;padding:0 18px}
.section{padding:72px 0;position:relative}
.section.compact{padding:44px 0}
.section-head{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;margin-bottom:26px}
.section-label{font-size:10px;color:var(--accent);text-transform:uppercase;margin:0 0 10px}
h1,h2,h3,p{margin-top:0}
h1{
  font-family:'Press Start 2P', system-ui, sans-serif;
  font-size:clamp(30px, 5vw, 66px);
  line-height:1.08;
  margin-bottom:18px;
  text-transform:uppercase;
  text-shadow:5px 5px 0 var(--shadow);
}
h2{
  font-family:'Press Start 2P', system-ui, sans-serif;
  font-size:clamp(20px, 3vw, 34px);
  line-height:1.15;
  margin-bottom:8px;
  text-transform:uppercase;
}
h3{font-size:16px;line-height:1.35;margin-bottom:14px;text-transform:uppercase}
p{color:#cbd4e7;margin-bottom:16px}.lead{font-size:28px;color:#dbe5ff;max-width:760px}.muted{color:var(--muted)}.small{font-size:19px}.tiny{font-size:17px;color:var(--muted)}

.hero{padding:78px 0 52px;position:relative;overflow:hidden}.hero::before{
  content:"";position:absolute;left:-8vw;right:-8vw;top:22px;height:180px;background:linear-gradient(110deg, transparent 0 12%, rgba(255,45,85,.22) 12% 20%, transparent 20% 30%, rgba(255,45,85,.16) 30% 38%, transparent 38% 100%);transform:skewY(-7deg);opacity:.82;pointer-events:none
}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0, 1.06fr) minmax(320px,.74fr);gap:30px;align-items:center}.hero-logo{width:min(560px,90%);margin:0 0 26px}.hero-card{position:relative;overflow:hidden}.hero-card::after{content:"";position:absolute;inset:auto -30px -70px auto;width:230px;height:230px;border:26px solid rgba(255,45,85,.12);border-radius:50%;}
.video-card{padding:18px}.video-card::after{display:none}.video-shell{position:relative;border:3px solid var(--line);border-radius:16px;overflow:hidden;background:#080b10;box-shadow:0 8px 0 rgba(0,0,0,.35)}.preview-video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;background:#080b10}.video-caption{margin:14px 4px 0;color:#cbd4e7;font-size:21px}
.kicker{font-size:10px;color:var(--accent-2);text-transform:uppercase;margin-bottom:14px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.store-note{max-width:620px;color:var(--muted)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:14px 18px;border:3px solid var(--line);border-radius:16px;background:#202838;color:var(--ink);box-shadow:0 5px 0 #05070b;text-decoration:none;text-transform:uppercase;font-size:11px;line-height:1.2;transition:transform .12s ease, box-shadow .12s ease, filter .12s ease;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 7px 0 #05070b;filter:brightness(1.08)}.btn:active{transform:translateY(3px);box-shadow:0 2px 0 #05070b}.btn.primary{background:var(--accent);color:#fff}.btn.pink{background:var(--accent);color:#fff}.btn.ghost{background:#0e1420;color:var(--muted)}

.card{
  position:relative;
  background:linear-gradient(180deg,rgba(20,26,34,.98),rgba(14,20,32,.98));
  border:3px solid var(--line);
  border-radius:var(--radius);
  padding:22px;
  box-shadow:0 10px 0 rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.03) inset;
}
.card.scan::before{content:"";position:absolute;inset:0;background-image:var(--scanline);background-size:100% 3px;opacity:.34;pointer-events:none;border-radius:inherit}.card > *{position:relative}.card.accent{border-color:rgba(255,45,85,.55)}.card.pink{border-color:rgba(255,45,85,.55)}

.race-flow{display:grid;gap:12px}.flow-row{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#0b0f16;border:2px solid var(--line);border-radius:14px;padding:13px 14px}.flow-row strong{font-family:'Press Start 2P';font-size:10px}.flow-row span{color:var(--muted)}.meter{height:12px;background:#080b10;border:2px solid var(--line);border-radius:999px;overflow:hidden}.meter > i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));width:76%}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.mini-stat{background:#0b0f16;border:2px solid var(--line);border-radius:14px;padding:12px;text-align:center}.stat-value{display:block;font-size:15px;color:var(--ok);margin-bottom:6px}.stat-label{display:block;color:var(--muted);font-size:18px}

.summary-grid,.packs-grid,.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.summary-card .icon{font-size:42px;line-height:1;margin-bottom:10px}.summary-card p{margin-bottom:0}.pill-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.pill{display:inline-flex;border:2px solid var(--line-2);background:#0e1420;border-radius:999px;padding:6px 10px;color:var(--muted);font-size:18px}.warning{border-color:rgba(255,209,94,.7);background:rgba(255,209,94,.07)}.warning strong{color:var(--ok)}

.screenshots-grid{display:grid;grid-template-columns:repeat(6, minmax(0,1fr));gap:14px}.shot{appearance:none;-webkit-appearance:none;cursor:pointer;text-align:inherit;position:relative;border:3px solid var(--line);border-radius:18px;overflow:hidden;background:#0b0f16;box-shadow:0 8px 0 rgba(0,0,0,.35);padding:0;color:inherit;font:inherit;transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease}.shot:hover,.shot:focus-visible{transform:translateY(-3px);box-shadow:0 11px 0 rgba(0,0,0,.38);border-color:rgba(255,45,85,.7);outline:none}.shot img{aspect-ratio:9/16;object-fit:cover;width:100%}.shot-label{position:absolute;left:10px;right:10px;bottom:10px;background:rgba(12,15,20,.88);border:2px solid var(--line);border-radius:12px;padding:9px 8px;text-align:center;font-size:8px;text-transform:uppercase;color:var(--ink)}
.image-lightbox{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(5,7,11,.58);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.image-lightbox.open{display:flex}.lightbox-frame{max-width:min(92vw,760px);max-height:90vh;display:grid;gap:12px;justify-items:center}.lightbox-frame img{max-width:100%;max-height:82vh;border:4px solid var(--line);border-radius:20px;background:#080b10;box-shadow:0 16px 0 rgba(0,0,0,.38);object-fit:contain}.lightbox-frame p{margin:0;font-family:'Press Start 2P';font-size:10px;text-transform:uppercase;color:#fff;text-align:center}.lightbox-close{position:fixed;top:18px;right:18px;z-index:101;min-height:44px;padding:12px 15px;border:3px solid var(--line);border-radius:14px;background:var(--accent);color:#fff;box-shadow:0 5px 0 #05070b;font-family:'Press Start 2P';font-size:9px;cursor:pointer}.lightbox-close:hover{filter:brightness(1.08)}

.guide-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;margin-bottom:18px}.guide-tab{white-space:nowrap}.guide-section{display:none}.guide-section.active{display:block}.accordion{display:grid;gap:12px}.accordion details{background:var(--panel);border:3px solid var(--line);border-radius:16px;overflow:hidden}.accordion summary{cursor:pointer;list-style:none;padding:17px 18px;font-family:'Press Start 2P';font-size:10px;text-transform:uppercase;color:var(--ink);background:#101724}.accordion summary::-webkit-details-marker{display:none}.accordion summary::after{content:"+";float:right;color:var(--accent)}.accordion details[open] summary::after{content:"–"}.accordion .detail-body{padding:18px}.accordion ul,.accordion ol{margin:0 0 16px 22px;color:#cbd4e7}.accordion li{margin:5px 0}.two-col{columns:2;column-gap:38px}.guide-callout{border-left:6px solid var(--accent);padding:14px 16px;background:#0e1420;border-radius:10px;color:#dbe5ff;margin:16px 0}.guide-callout.pink{border-color:var(--accent)}

.bug-template{background:#080b10;border:2px dashed var(--line-2);border-radius:14px;padding:16px;color:#cbd4e7}.bug-template code{color:var(--ok);font-family:'VT323';font-size:22px}.contact-list{display:grid;gap:10px}.contact-list a{color:#fff;text-decoration:none;border-bottom:1px dotted var(--accent)}


.official-packs-block{margin-top:22px}
.compact-head{margin-bottom:16px}
.official-packs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.season-pack-card{display:grid;grid-template-rows:auto 1fr auto;gap:14px}
.season-pack-icon{width:100%;aspect-ratio:1/1;object-fit:cover;border:3px solid var(--line);border-radius:16px;background:#080b10;box-shadow:0 7px 0 rgba(0,0,0,.35)}
.season-pack-copy h3{margin-bottom:10px}
.season-pack-copy p{font-size:21px}
.updates-modal{position:fixed;inset:0;z-index:110;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(5,7,11,.62);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.updates-modal.open{display:flex}
.updates-panel{width:min(92vw,840px);max-height:88vh;overflow:auto;padding:26px}
.updates-close{position:sticky;top:0;float:right;z-index:1;min-height:42px;padding:11px 14px;border:3px solid var(--line);border-radius:14px;background:var(--accent);color:#fff;box-shadow:0 5px 0 #05070b;font-family:'Press Start 2P';font-size:9px;cursor:pointer}
.updates-list{margin:0 0 18px 22px;color:#cbd4e7}
.updates-list li{margin:0 0 12px}
body.modal-open{overflow:hidden}

.footer{border-top:2px solid var(--line);background:#090c11;padding:30px 0 40px}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}.footer-brand{font-size:11px;color:#fff}.footer-links{display:flex;gap:14px;flex-wrap:wrap}.footer-links a{color:var(--muted);text-decoration:none}.footer-links a:hover{color:#fff}.legal-note{color:var(--muted);max-width:840px;margin-top:12px}

.policy-page .site-header{position:relative}.policy-wrap{max-width:930px;margin:0 auto;padding:56px 18px}.policy-card{display:grid;gap:18px}.policy-title{font-size:28px;line-height:1.15}.policy-card h2{font-size:18px;margin-top:18px}.policy-card ul{margin:0 0 12px 24px;color:#cbd4e7}.policy-card li{margin-bottom:8px}.last-updated{color:var(--ok)}

@media (max-width: 980px){
  body{font-size:22px}.header-inner{align-items:flex-start}.nav-toggle{display:inline-flex;margin-left:auto;background:#202838;color:#fff;border:2px solid var(--line);border-radius:12px;padding:8px 10px;font-family:'Press Start 2P';font-size:9px}.site-nav{position:absolute;left:18px;right:18px;top:65px;display:none;background:var(--panel);border:3px solid var(--line);border-radius:16px;padding:10px}.site-nav.open{display:grid}.nav-link{justify-content:center}.hero-grid{grid-template-columns:1fr}.summary-grid,.packs-grid,.support-grid,.official-packs-grid{grid-template-columns:1fr 1fr}.screenshots-grid{grid-template-columns:repeat(3,1fr)}.section-head{grid-template-columns:1fr}.two-col{columns:1}.footer-grid{grid-template-columns:1fr}
}
@media (max-width: 620px){
  .container{padding:0 14px}.section{padding:52px 0}.hero{padding-top:48px}.brand-sub{display:none}.brand img{width:min(268px,72vw)}h1{font-size:30px}.lead{font-size:24px}.btn{width:100%;font-size:10px}.hero-actions{display:grid}.summary-grid,.packs-grid,.support-grid,.official-packs-grid{grid-template-columns:1fr}.screenshots-grid{grid-template-columns:repeat(2,1fr);gap:10px}.shot-label{font-size:7px;padding:7px 5px}.mini-grid{grid-template-columns:1fr}.card{padding:17px}.accordion summary{font-size:9px;line-height:1.4}.site-nav{top:59px}.policy-title{font-size:22px}
}
