:root {
      --bg: #06071c;
      --text: #fff4dd;
      --muted: #b9b1ca;
      --dim: #77738e;
      --green: #ff3cac;
      --violet: #9a4dff;
      --blue: #19d9ff;
      --line: rgba(63, 224, 255, .16);
      --panel: rgba(10, 11, 38, .84);
      --heading: "Arial Black", "Franklin Gothic Heavy", Impact, system-ui, sans-serif;
      --mono: "Lucida Console", "Courier New", ui-monospace, monospace;
      --arcade-magenta: var(--green, #ff3cac);
      --arcade-cyan: #19d9ff;
      --arcade-ultraviolet: #9a4dff;
      --arcade-cream: var(--text, #fff4dd);
      --arcade-navy: #06071c;
      --arcade-panel: #0c0d2b;
    }

    html { background: var(--arcade-navy); }
    body {
      color: var(--arcade-cream);
      background:
        radial-gradient(ellipse at 18% 12%, rgba(25,217,255,.075), transparent 30%),
        radial-gradient(ellipse at 82% 10%, rgba(255,60,172,.09), transparent 31%),
        linear-gradient(180deg, #06071c 0%, #080724 45%, #06071c 100%);
      font-family: "Trebuchet MS", Inter, ui-sans-serif, system-ui, sans-serif;
    }
    body::before {
      background:
        radial-gradient(ellipse at 50% 8%, rgba(154,77,255,.13), transparent 42%),
        linear-gradient(180deg, rgba(6,7,28,.12), rgba(6,7,28,.74));
    }
    body::after {
      content: "";
      position: fixed;
      inset: 0;
      z-index: 9998;
      pointer-events: none;
      opacity: .038;
      background: repeating-linear-gradient(180deg, transparent 0 3px, rgba(255,244,221,.48) 4px);
      mix-blend-mode: screen;
    }

    ::selection { color: #06071c; background: var(--arcade-cyan); }
    :focus-visible { outline: 2px solid var(--arcade-cyan); outline-offset: 3px; }

    .topbar[data-stuck] {
      background: rgba(6,7,28,.91);
      border-color: rgba(25,217,255,.18);
      box-shadow: 0 1px 0 rgba(255,60,172,.12), 0 16px 46px rgba(1,2,15,.42);
    }
    .brand img {
      filter: sepia(.08) brightness(1.1) drop-shadow(2px 0 0 rgba(255,60,172,.32)) drop-shadow(-2px 0 0 rgba(25,217,255,.25));
    }
    .navlinks > a, .nav-dropdown-trigger {
      color: #bcb6cb;
      border-radius: 5px;
      font: 700 12px/1.2 var(--mono);
      letter-spacing: .055em;
      text-transform: uppercase;
    }
    .navlinks > a:hover, .nav-dropdown-trigger:hover {
      color: var(--arcade-cream);
      background: rgba(25,217,255,.065);
      box-shadow: inset 0 -2px 0 var(--arcade-cyan);
      transform: none;
    }
    .nav-dropdown-menu, .download-picker-menu, .theme-panel {
      border-color: rgba(25,217,255,.25);
      border-radius: 8px;
      background: rgba(8,9,34,.97);
      box-shadow: 6px 6px 0 rgba(154,77,255,.12), 0 24px 70px rgba(0,0,0,.52);
    }
    .nav-dropdown-menu a, .download-picker-menu a {
      border-radius: 4px;
      color: #c8bfd5;
      font-family: var(--mono);
    }
    .nav-dropdown-menu a:hover, .download-picker-menu a:hover {
      color: #071021;
      background: var(--arcade-cyan);
    }
    .theme-trigger {
      border-color: rgba(25,217,255,.31);
      border-radius: 5px;
      background: linear-gradient(135deg, rgba(255,60,172,.16), rgba(25,217,255,.09));
    }

    .hero {
      isolation: isolate;
      background:
        linear-gradient(180deg, transparent 58%, rgba(6,7,28,.82) 94%),
        radial-gradient(ellipse at 50% 70%, rgba(154,77,255,.10), transparent 44%);
    }
    .hero::before {
      content: "";
      position: absolute;
      z-index: 0;
      left: -15%; right: -15%; bottom: 0;
      height: 39%;
      opacity: .15;
      pointer-events: none;
      background-image:
        linear-gradient(rgba(25,217,255,.56) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,60,172,.48) 1px, transparent 1px);
      background-size: 54px 35px;
      transform: perspective(360px) rotateX(58deg) scale(1.18);
      transform-origin: center bottom;
      mask-image: linear-gradient(to bottom, transparent, #000 38%, #000 100%);
    }
    .hero .wrap { position: relative; z-index: 4; }
    .hero h1 {
      color: var(--arcade-cream);
      font-family: var(--heading);
      font-weight: 900;
      letter-spacing: -.045em;
      text-transform: uppercase;
      text-shadow: 3px 3px 0 rgba(255,60,172,.20), -2px -1px 0 rgba(25,217,255,.11);
    }
    .hero .sub { color: #c3bad0; }
    .mono, .foot-note, .media-label, .roadmap-number, .compare-note, .copyright {
      font-family: var(--mono);
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .mono, .media-label, .roadmap-number { color: var(--arcade-cyan); }

    .btn {
      border-radius: 7px;
      font-family: var(--mono);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: .025em;
      text-transform: uppercase;
    }
    .btn-green {
      color: #15071b;
      border-color: #ff71c3;
      background: linear-gradient(180deg, #ff67c0, #ff3cac 58%, #d82491);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.38), inset 0 -3px 0 rgba(96,0,61,.30), 0 8px 24px rgba(255,60,172,.21);
    }
    .btn-green:hover {
      color: #08091d;
      background: linear-gradient(180deg, #51e9ff, #19d9ff 62%, #0ab2d6);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.50), inset 0 -3px 0 rgba(0,71,101,.28), 0 8px 24px rgba(25,217,255,.22);
      transform: translateY(1px);
    }
    .btn-outline {
      color: var(--arcade-cream);
      border-color: rgba(25,217,255,.42);
      background: rgba(7,9,31,.72);
      box-shadow: inset 3px 0 0 rgba(154,77,255,.55);
    }
    .btn-outline:hover {
      color: var(--arcade-cyan);
      border-color: var(--arcade-cyan);
      background: rgba(25,217,255,.065);
      box-shadow: inset 3px 0 0 var(--arcade-magenta);
    }
    .download-picker-toggle {
      border-radius: 0 7px 7px 0;
      border-color: rgba(255,255,255,.24);
      background: #df2c96;
    }
    .foot-note a { color: var(--arcade-cyan); }

    .strip {
      border-color: rgba(25,217,255,.16);
      background: rgba(8,9,32,.84);
    }
    .strip-track { color: #a8a2bd; font-family: var(--mono); }
    .strip-track b { color: var(--arcade-cyan); }

    .row, .evidence-section, .close { border-color: rgba(25,217,255,.13); }
    .copy h2, .section-head h2, .close h2 {
      font-family: var(--heading);
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: -.035em;
      text-shadow: 2px 2px 0 rgba(154,77,255,.18);
    }
    .copy p, .section-head p, .close p:not(.foot-note) { color: #b8afc7; }
    .shot, .compare-shell {
      border-color: rgba(25,217,255,.23);
      border-radius: 10px;
      background: linear-gradient(145deg, rgba(14,14,48,.94), rgba(6,7,28,.92));
      box-shadow: 8px 8px 0 rgba(255,60,172,.055), -1px -1px 0 rgba(25,217,255,.10), 0 34px 90px rgba(0,0,0,.34);
    }
    .mock-shell { background: #080921; }
    .mock-line { background: rgba(255,244,221,.13); }
    .mock-line.cyan { background: var(--arcade-cyan); box-shadow: 0 0 12px rgba(25,217,255,.34); }
    .mock-line.green { background: var(--arcade-magenta); box-shadow: 0 0 12px rgba(255,60,172,.31); }

    .compare-table thead th { color: var(--arcade-cream); background: #111239; font-family: var(--mono); text-transform: uppercase; }
    .compare-table thead th.nox-col, .compare-table td.nox-col { background: color-mix(in srgb, var(--arcade-magenta) 8%, #090a27); }
    .compare-table thead th.nox-col, .compare-good { color: var(--arcade-cyan); }
    .compare-table td, .compare-table th { border-color: rgba(25,217,255,.11); }

    .roadmap-card {
      border-color: rgba(25,217,255,.20);
      border-radius: 10px;
      background: linear-gradient(145deg, rgba(17,17,56,.93), rgba(7,8,28,.96));
      box-shadow: inset 3px 0 0 rgba(255,60,172,.46), 7px 7px 0 rgba(25,217,255,.035);
    }
    .roadmap-card::before { background: radial-gradient(circle at 88% 10%, rgba(25,217,255,.15), transparent 38%); }
    .roadmap-card h3 { font-family: var(--heading); text-transform: uppercase; }
    .roadmap-status {
      color: var(--arcade-cyan);
      border-color: rgba(25,217,255,.35);
      border-radius: 4px;
      background: rgba(25,217,255,.055);
    }
    .section-link { color: var(--arcade-cyan); font-family: var(--mono); text-transform: uppercase; }

    .mystery-smoke {
      filter: hue-rotate(286deg) saturate(.73) brightness(.68) contrast(1.32);
      opacity: .84;
    }
    .apparition-stage::before {
      background: radial-gradient(closest-side, rgba(154,77,255,.18), rgba(25,217,255,.055) 44%, transparent 76%);
    }
    .apparition-stage img {
      filter: blur(var(--figure-blur, 3.5px)) brightness(.68) saturate(.56) contrast(.92)
        drop-shadow(0 0 94px rgba(154,77,255,.19));
    }
    footer { background: #050619; border-color: rgba(25,217,255,.15); }
    footer .links a:hover { color: var(--arcade-cyan); }

    @media (max-width: 760px) {
      .hero::before { height: 31%; background-size: 40px 30px; opacity: .12; }
      .hero h1 { letter-spacing: -.035em; }
    }
    @media (prefers-reduced-motion: reduce) {
      body::after { opacity: .018; }
      .btn, .btn:hover { transform: none; }
    }
