:root {
  --bg:        #03060b;
  --bg2:       #070d18;
  --bg3:       #0c1525;
  --amber:     #e8a020;
  --amber-dim: #a06a10;
  --amber-glow:rgba(232,160,32,0.15);
  --blue:      #1a7fff;
  --red:       #e03030;
  --green:     #1acc6c;
  --muted:     #4a6080;
  --text:      #c8d8e8;
  --text-dim:  #6a8aaa;
  --border:    rgba(232,160,32,0.2);
  --border-hi: rgba(232,160,32,0.5);
}
*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { background:var(--bg); color:var(--text); font-family:'Exo 2',sans-serif; overflow-x:hidden; }

body::before {
  content:''; position:fixed; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");
  background-size:200px; pointer-events:none; z-index:9999; opacity:0.5;
}
body::after {
  content:''; position:fixed; inset:0;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,0.06) 2px,rgba(0,0,0,0.06) 4px);
  pointer-events:none; z-index:9998;
}

/* ══ NAVBAR ══ */
#navbar {
  position:fixed; top:0; left:0; right:0; height:60px;
  background:rgba(3,6,11,0.85);
  border-bottom:1px solid var(--border);
  display:flex; align-items:center; justify-content:space-between;
  padding:0 28px; z-index:100;
  backdrop-filter:blur(20px);
  transition:background .3s, border-color .3s;
}
#navbar.scrolled {
  background:rgba(3,6,11,0.98);
  border-bottom-color:var(--border-hi);
}

.nav-left { display:flex; align-items:center; gap:14px; }

.nav-logo {
  font-family:'Black Ops One',cursive;
  font-size:24px; letter-spacing:4px; color:var(--text);
  text-shadow:0 0 30px rgba(232,160,32,0.15);
}
.nav-logo span { color:var(--amber); }

.nav-divider { width:1px; height:22px; background:var(--border); }

.nav-sub {
  font-family:'Share Tech Mono',monospace;
  font-size:9px; letter-spacing:4px; color:var(--muted);
  padding:3px 10px;
  border:1px solid var(--border);
  background:rgba(232,160,32,0.04);
}

.nav-links { display:flex; align-items:center; gap:0; }
.nav-links a {
  font-family:'Share Tech Mono',monospace; font-size:11px; letter-spacing:2px;
  color:var(--muted); text-decoration:none;
  padding:0 16px; height:60px; display:flex; align-items:center;
  border-left:1px solid rgba(232,160,32,0.08);
  transition:all .2s; position:relative;
}
.nav-links a::after {
  content:''; position:absolute; bottom:0; left:16px; right:16px; height:2px;
  background:var(--amber); transform:scaleX(0); transition:transform .2s;
}
.nav-links a:hover { color:var(--amber); background:rgba(232,160,32,0.03); }
.nav-links a:hover::after { transform:scaleX(1); }

.nav-right { display:flex; align-items:center; gap:16px; }
.nav-status {
  display:flex; align-items:center; gap:6px;
  font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:2px; color:var(--green);
}
.status-dot-green {
  width:6px; height:6px; border-radius:50%;
  background:var(--green); box-shadow:0 0 8px var(--green);
  animation:blink 1.4s ease-in-out infinite;
}
@keyframes blink { 50%{opacity:.3} }

.nav-play-btn {
  font-family:'Black Ops One',cursive; font-size:12px; letter-spacing:3px;
  color:var(--bg); background:var(--amber); text-decoration:none;
  padding:8px 18px; transition:all .2s;
  position:relative; overflow:hidden;
}
.nav-play-btn::after {
  content:''; position:absolute; inset:0; background:rgba(255,255,255,0.2);
  transform:translateX(-101%); transition:transform .2s;
}
.nav-play-btn:hover::after { transform:translateX(0); }
.nav-play-btn:hover { box-shadow:0 0 20px rgba(232,160,32,0.4); }

/* ══ HERO ══ */
#hero {
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  position:relative; overflow:hidden; padding-top:60px;
}
.hero-grid {
  position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(232,160,32,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(232,160,32,0.03) 1px, transparent 1px);
  background-size:60px 60px;
}
.hero-radar { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; pointer-events:none; }
.radar-ring {
  position:absolute; border-radius:50%;
  border:1px solid rgba(232,160,32,0.07);
  animation:ring-pulse 5s ease-in-out infinite;
}
@keyframes ring-pulse { 0%,100%{opacity:.3} 50%{opacity:1;border-color:rgba(232,160,32,0.18)} }
.radar-sweep {
  position:absolute; width:900px; height:900px; border-radius:50%;
  background:conic-gradient(from 0deg,transparent 85%,rgba(232,160,32,0.04) 92%,rgba(232,160,32,0.14) 100%);
  animation:sweep 6s linear infinite;
}
@keyframes sweep { to{transform:rotate(360deg)} }

.hero-content { position:relative; z-index:2; text-align:center; animation:hero-in .8s ease both; }
@keyframes hero-in { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:none} }

.hero-eyebrow {
  font-family:'Share Tech Mono',monospace; font-size:11px; letter-spacing:5px;
  color:var(--amber-dim); margin-bottom:16px;
  animation:hero-in .8s ease .1s both;
}
.hero-title {
  font-family:'Black Ops One',cursive;
  font-size:clamp(64px,12vw,120px); letter-spacing:6px; line-height:1; color:var(--text);
  text-shadow:0 0 80px rgba(232,160,32,0.2),0 0 160px rgba(232,160,32,0.08);
  animation:hero-in .8s ease .2s both, logo-flicker 10s ease-in-out 2s infinite;
}
.hero-title span { color:var(--amber); }
@keyframes logo-flicker { 0%,96%,100%{opacity:1} 97%{opacity:.85} 98%{opacity:1} 99%{opacity:.9} }
.hero-sub {
  font-family:'Share Tech Mono',monospace; font-size:13px; letter-spacing:6px;
  color:var(--muted); margin-top:10px; animation:hero-in .8s ease .3s both;
}
.hero-desc {
  margin:32px auto 0; font-size:16px; line-height:1.7; color:var(--text-dim); max-width:520px;
  animation:hero-in .8s ease .4s both;
}
.hero-cta-row {
  margin-top:40px; display:flex; align-items:center; justify-content:center; gap:16px;
  animation:hero-in .8s ease .5s both;
}
.btn-primary {
  font-family:'Black Ops One',cursive; font-size:14px; letter-spacing:4px;
  color:var(--bg); background:var(--amber); border:none; padding:14px 36px;
  cursor:pointer; text-decoration:none; transition:all .2s;
  position:relative; overflow:hidden; display:inline-block;
}
.btn-primary::after { content:''; position:absolute; inset:0; background:rgba(255,255,255,0.15); transform:translateX(-101%); transition:transform .2s; }
.btn-primary:hover::after { transform:translateX(0); }
.btn-primary:hover { box-shadow:0 0 30px rgba(232,160,32,0.4); }
.btn-ghost {
  font-family:'Share Tech Mono',monospace; font-size:12px; letter-spacing:3px;
  color:var(--muted); background:transparent; border:1px solid var(--border);
  padding:13px 28px; cursor:pointer; text-decoration:none; transition:all .2s; display:inline-block;
}
.btn-ghost:hover { border-color:var(--amber); color:var(--amber); background:rgba(232,160,32,0.05); }

.hero-stats {
  margin-top:64px; display:flex; align-items:center; justify-content:center;
  animation:hero-in .8s ease .6s both;
}
.hero-stat { padding:0 40px; border-left:1px solid var(--border); text-align:center; }
.hero-stat:first-child { border-left:none; }
.hero-stat-val { font-family:'Black Ops One',cursive; font-size:32px; color:var(--amber); line-height:1; }
.hero-stat-label { font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:3px; color:var(--muted); margin-top:4px; }

.scroll-hint {
  position:absolute; bottom:32px; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:8px;
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:3px; color:var(--muted);
  animation:hero-in .8s ease .8s both;
}
.scroll-arrow { width:1px; height:32px; background:linear-gradient(var(--amber),transparent); animation:scroll-drop 1.8s ease-in-out infinite; }
@keyframes scroll-drop { 0%,100%{opacity:0;transform:translateY(-8px)} 50%{opacity:1;transform:none} }

/* ══ SECTIONS ══ */
section { padding:100px 32px; max-width:1200px; margin:0 auto; position:relative; }
#about { border-top:1px solid var(--border); }
#guide { border-top:1px solid var(--border); }
#changelog { border-top:1px solid var(--border); }
#leaderboard-section { border-top:1px solid var(--border); }

.section-header { display:flex; align-items:flex-end; gap:20px; margin-bottom:56px; }
.section-eyebrow { font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:4px; color:var(--amber-dim); margin-bottom:6px; }
.section-title { font-family:'Black Ops One',cursive; font-size:clamp(28px,4vw,44px); letter-spacing:3px; color:var(--text); line-height:1; }
.section-title span { color:var(--amber); }
.section-line { flex:1; height:1px; background:linear-gradient(90deg,var(--amber-dim),transparent); margin-bottom:6px; }

/* FEATURES */
.features-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:2px; }
.feat-card {
  background:var(--bg2); border:1px solid var(--border); padding:32px 28px;
  position:relative; overflow:hidden; transition:all .25s;
}
.feat-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:var(--amber); transform:scaleX(0); transform-origin:left; transition:transform .3s;
}
.feat-card:hover { border-color:var(--border-hi); background:var(--bg3); }
.feat-card:hover::before { transform:scaleX(1); }
.feat-card-icon { font-size:28px; color:var(--amber); margin-bottom:16px; display:block; }
.feat-card-title { font-family:'Black Ops One',cursive; font-size:16px; letter-spacing:2px; color:var(--text); margin-bottom:10px; }
.feat-card-desc { font-size:13px; line-height:1.7; color:var(--text-dim); }
.feat-card-tag { margin-top:16px; font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:3px; color:var(--amber); background:rgba(232,160,32,0.08); border:1px solid var(--border); padding:2px 8px; display:inline-block; }

.highlight-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1px; margin-top:40px; border:1px solid var(--border); }
.hl-cell { padding:28px 24px; background:var(--bg2); text-align:center; transition:background .2s; }
.hl-cell:hover { background:var(--bg3); }
.hl-val { font-family:'Black Ops One',cursive; font-size:36px; color:var(--amber); }
.hl-label { font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:3px; color:var(--muted); margin-top:4px; }

/* GUIDE */
.guide-layout { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
@media(max-width:768px) { .guide-layout{grid-template-columns:1fr} }
.guide-steps { display:flex; flex-direction:column; }
.guide-step { display:flex; gap:20px; padding:24px 0; border-bottom:1px solid rgba(232,160,32,0.08); }
.guide-step:last-child { border-bottom:none; }
.gs-num { font-family:'Black Ops One',cursive; font-size:28px; color:rgba(232,160,32,0.15); line-height:1; flex-shrink:0; width:40px; text-align:center; transition:color .2s; }
.guide-step:hover .gs-num { color:var(--amber); }
.gs-title { font-family:'Black Ops One',cursive; font-size:15px; letter-spacing:2px; color:var(--text); margin-bottom:6px; }
.gs-desc { font-size:13px; line-height:1.7; color:var(--text-dim); }
.gs-tip { margin-top:10px; font-family:'Share Tech Mono',monospace; font-size:11px; letter-spacing:1px; color:var(--amber); background:rgba(232,160,32,0.06); border-left:2px solid var(--amber); padding:6px 10px; }

.guide-sidebar { display:flex; flex-direction:column; gap:16px; }
.info-box { background:var(--bg2); border:1px solid var(--border); padding:24px; position:relative; }
.corner { position:absolute; width:10px; height:10px; border-color:var(--amber); border-style:solid; }
.corner.tl{top:-1px;left:-1px;border-width:2px 0 0 2px}
.corner.tr{top:-1px;right:-1px;border-width:2px 2px 0 0}
.corner.bl{bottom:-1px;left:-1px;border-width:0 0 2px 2px}
.corner.br{bottom:-1px;right:-1px;border-width:0 2px 2px 0}
.info-box-title { font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:3px; color:var(--amber-dim); margin-bottom:16px; }
.controls-list { display:flex; flex-direction:column; gap:8px; }
.ctrl-row { display:flex; align-items:center; gap:10px; }
.ctrl-key { font-family:'Share Tech Mono',monospace; font-size:11px; background:rgba(232,160,32,0.08); border:1px solid var(--border-hi); color:var(--amber); padding:3px 8px; min-width:90px; text-align:center; flex-shrink:0; }
.ctrl-desc { color:var(--text-dim); font-size:11px; font-family:'Share Tech Mono',monospace; }
.ratio-table { display:flex; flex-direction:column; gap:6px; }
.rt-row { display:flex; align-items:center; gap:10px; }
.rt-val { font-family:'Black Ops One',cursive; font-size:13px; color:var(--amber); width:55px; }
.rt-bar-wrap { flex:1; height:4px; background:rgba(232,160,32,0.08); }
.rt-bar { height:100%; background:var(--amber); }
.rt-desc { font-family:'Share Tech Mono',monospace; font-size:10px; color:var(--muted); width:90px; }

/* CHANGELOG */
.timeline { position:relative; padding-left:32px; }
.timeline::before { content:''; position:absolute; left:0; top:0; bottom:0; width:1px; background:linear-gradient(var(--amber-dim),transparent); }
.tl-entry { position:relative; padding-bottom:48px; }
.tl-entry:last-child { padding-bottom:0; }
.tl-dot { position:absolute; left:-36px; top:6px; width:8px; height:8px; border-radius:50%; background:var(--amber); box-shadow:0 0 10px var(--amber); }
.tl-dot.dim { background:var(--muted); box-shadow:none; }
.tl-meta { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.tl-version { font-family:'Black Ops One',cursive; font-size:18px; letter-spacing:2px; color:var(--amber); }
.tl-date { font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:2px; color:var(--muted); }
.tl-tag { font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:2px; padding:2px 8px; border:1px solid; }
.tl-tag.new { color:var(--green); border-color:rgba(26,204,108,0.3); background:rgba(26,204,108,0.07); }
.tl-tag.fix { color:var(--blue); border-color:rgba(26,127,255,0.3); background:rgba(26,127,255,0.07); }
.tl-tag.hot { color:var(--amber); border-color:var(--border); background:var(--amber-glow); }
.tl-items { display:flex; flex-direction:column; gap:8px; }
.tl-item { display:flex; gap:10px; font-size:13px; line-height:1.6; color:var(--text-dim); }
.tl-item::before { content:'▸'; color:var(--amber-dim); flex-shrink:0; margin-top:1px; }

/* LEADERBOARD */
.lb-board { background:var(--bg2); border:1px solid var(--border); overflow:hidden; }
.lb-board-header { display:grid; grid-template-columns:50px 1fr 140px 110px; padding:10px 20px; background:rgba(232,160,32,0.05); border-bottom:1px solid var(--border); font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:3px; color:var(--muted); }
.lb-board-row { display:grid; grid-template-columns:50px 1fr 140px 110px; padding:14px 20px; border-bottom:1px solid rgba(232,160,32,0.05); transition:background .15s; align-items:center; }
.lb-board-row:last-child { border-bottom:none; }
.lb-board-row:hover { background:rgba(232,160,32,0.04); }
.lb-rank { font-family:'Black Ops One',cursive; font-size:16px; color:var(--muted); }
.lb-rank.gold   { color:#ffd700; text-shadow:0 0 12px rgba(255,215,0,0.4); }
.lb-rank.silver { color:#c0c0c0; }
.lb-rank.bronze { color:#cd7f32; }
.lb-player { display:flex; align-items:center; gap:10px; }
.lb-player-dot { width:8px; height:8px; border-radius:50%; box-shadow:0 0 6px currentColor; flex-shrink:0; }
.lb-player-name { font-family:'Share Tech Mono',monospace; font-size:13px; color:var(--text); }
.lb-cells { font-family:'Share Tech Mono',monospace; font-size:13px; color:var(--amber); display:flex; align-items:center; gap:6px; }
.lb-cells-bar { width:60px; height:3px; background:rgba(232,160,32,0.1); }
.lb-cells-fill { height:100%; background:var(--amber); }
.lb-status { font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:2px; }
.lb-status.online { color:var(--green); }
.lb-status.offline { color:var(--muted); }
.lb-note { margin-top:16px; font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:2px; color:var(--muted); text-align:center; }
.lb-note span { color:var(--amber); }

/* FOOTER */
footer {
  border-top:1px solid var(--border);
  padding:40px 32px;
  display:grid; grid-template-columns:1fr auto 1fr;
  align-items:center; gap:32px;
  background:rgba(7,13,24,0.8);
}
.footer-left {}
.footer-brand { font-family:'Black Ops One',cursive; font-size:22px; letter-spacing:4px; color:var(--text); }
.footer-brand span { color:var(--amber); }
.footer-tagline { font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:3px; color:var(--muted); margin-top:4px; }

.footer-center {}
.footer-links { display:flex; gap:0; }
.footer-links a {
  font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:2px;
  color:var(--muted); text-decoration:none;
  padding:8px 16px; border-left:1px solid var(--border);
  transition:color .2s;
}
.footer-links a:first-child { border-left:none; }
.footer-links a:hover { color:var(--amber); }

.footer-right { text-align:right; }
.footer-version-badge {
  font-family:'Black Ops One',cursive; font-size:20px; letter-spacing:3px;
  color:var(--amber); opacity:0.5;
}
.footer-copy { font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:2px; color:var(--muted); opacity:.4; margin-top:4px; }

/* UTILS */
.full-sep { width:100%; height:1px; background:linear-gradient(90deg,transparent,var(--amber-dim),transparent); opacity:.4; }

@media(max-width:768px) {
  nav { padding:0 16px; }
  .nav-links a { padding:0 10px; font-size:10px; }
  .nav-sub { display:none; }
  section { padding:60px 20px; }
  .hero-stats { flex-direction:column; gap:20px; }
  .hero-stat { border-left:none; border-top:1px solid var(--border); padding:16px 0 0; }
  footer { grid-template-columns:1fr; text-align:center; }
  .footer-right { text-align:center; }
  .footer-links { justify-content:center; flex-wrap:wrap; }
}