/* Neon Casino — default pack. Palette values here are the authoritative
   source; theme.css's bare :root fallback block just mirrors these as a
   pre-boot-script fallback so there's never an undefined-token flash.
   See: circuitforge-plans/vaportrade-clone/superpowers/specs/
   2026-08-13-ui-redesign-design.md §3. */
/* Beon (2026-09-01, swapped in same day from an initial Monoton pick that
   Alan flagged as not working): --font-display was still "Segoe UI"/
   system-ui, the only 2 of 13 packs (this one + neon-casino-light) never
   given a real display face -- every other pack self-hosts its own (see
   archnix-catboi/hollywood-lanes/etc). Beon is a bold, blocky neon/casino-
   marquee face -- SIL OFL, single weight. Self-hosted under
   static/fonts/beon/ (with its own OFL.txt, same as every other pack's
   font dir), same @font-face pattern as every other pack, no Google Fonts
   runtime dependency. */
@font-face{
  font-family:"Beon";
  src:url("/vaportrade/static/fonts/beon/Beon-Regular.woff2") format("woff2");
  font-weight:400;
  font-display:swap;
}
/* Bitcount (2026-09-02, --font-mono only -- --font-display stays Beon):
   picked via the font-gallery-generator drag-and-drop tool's exported
   picks. SIL OFL, shared @font-face with solarpunk.css's own Bitcount
   pick (same duplicated-per-pack convention as VT323/Cairopixel). */
/* Cairopixel (2026-09-02, --font-mono, superseding Bitcount via a later
   drag-and-drop export round). SIL OFL, shared with 8bit.css/archnix-
   catboi.css's own Cairopixel picks. Bitcount stays self-hosted,
   solarpunk.css still uses it. */
@font-face{
  font-family:"Cairopixel";
  src:url("/vaportrade/static/fonts/cairopixel/Cairopixel.woff2") format("woff2");
  font-weight:400;
  font-display:swap;
}
/* Digital Numbers (2026-09-02, --font-h2, the new 3rd font role): a real
   LCD-readout face, SIL OFL, self-hosted under static/fonts/digital-
   numbers/. Shared with neon-casino-light.css's own Digital Numbers
   pick. */
/* --font-size-mono bumped 1.2rem -> 1.4rem (2026-09-02, live feedback:
   "neon casino's text sizing seems small"). Cairopixel is a pixel-art
   face -- its glyphs read visually smaller/cramped than a normal
   monospace face at the same declared rem size, even though 1.2rem
   (~19.2px) was already larger than theme.css's app-wide 15px default.
   This is the default pack (every user's first read), so body-text
   legibility gets priority over matching Cairopixel's exact retro scale
   -- 8bit.css/archnix-catboi.css share the same font pick but keep their
   own font-size tokens, this change is neon-casino-scoped only. */
@font-face{
  font-family:"Digital Numbers";
  src:url("/vaportrade/static/fonts/digital-numbers/DigitalNumbers-Regular.woff2") format("woff2");
  font-weight:400;
  font-display:swap;
}
[data-theme="neon-casino"]{
  --bg:#12101c; --bg2:#1a1727; --bg3:#231e35; --border:#746a9e;
  --text:#ece8fa; --text-2:#a79fc4; --muted:#8f87ab;
  --accent-1:#8b5cf6; --accent-2:#0891b2; --accent-3:#ec4899;
  --success:#34d399; --danger:#fb7185; --danger-dark:#350a0e; --warning:#d97706;
  --font-display:"Beon","Segoe UI",system-ui,sans-serif;
  --font-mono:"Cairopixel",monospace;
  --font-h2:"Digital Numbers",monospace;
  --font-size-display:1.75rem; --font-size-mono:1.438rem; --font-size-h2:1rem;
}
/* Ambient vaporwave glow — pack-specific decorative touch, not expressed
   as tokens since a future pack (Lisa Frank, Matrix Terminal, ...) may not
   want an ambient glow at all, or want a totally different shape/color. */
[data-theme="neon-casino"] body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(ellipse at 20% -10%,rgba(139,92,246,.18),transparent 55%),
             radial-gradient(ellipse at 90% 110%,rgba(236,72,153,.12),transparent 55%);
}
[data-theme="neon-casino"] h1 .grad{
  background:linear-gradient(90deg,#22d3ee,#ec4899,#8b5cf6);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
/* :not(.ghost):not(.danger) is load-bearing, not decoration: this
   selector's specificity (0,1,1 -- one attribute + one type) exactly ties
   with button.ghost/button.danger's own (0,1,1 -- one class + one type).
   Since this pack file loads AFTER theme.css, an equal-specificity tie
   goes to whichever rule comes later in the cascade -- without the
   :not()s, this rule would silently win and repaint ghost/danger buttons
   with the gradient, even though button.ghost/button.danger already set
   their own backgrounds. Excluding them here means cascade order never
   matters for this pair. :not(.dice-roll):not(.app-nav-toggle) added 2026-08-26 for the same
   reason -- the die-key "force a decision" button (theme.css) also paints
   its own background and was getting this gradient painted over its dark
   bezel, which read as a bright pink ring around the grey key. */
/* 2026-08-28 button glow-up (Alan: "our default button themes need a
   glow-up in general. they look too much like every other first-pass
   AI app" -- the report that started this): removed this pack's own
   flat 2-color gradient fill -- theme.css's base button{} rule now
   gives every pack an animated gradient-border CTA via --accent-1/2/3
   (purple/cyan/pink here, this pack's own default token trio), no
   per-pack override needed. This is the flagship/default pack, the one
   the glow-up was built against directly. */
