/* Local OFL fonts. Full source glyph coverage; see assets/fonts/README.md. */
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/barlow-400.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/barlow-600.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/barlow-700.woff2') format('woff2');}
@font-face{font-family:'Rajdhani';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/rajdhani-600.woff2') format('woff2');}
@font-face{font-family:'Rajdhani';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/rajdhani-700.woff2') format('woff2');}
@font-face{font-family:'Silkscreen';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/silkscreen-400.woff2') format('woff2');}
@font-face{font-family:'Silkscreen';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/silkscreen-700.woff2') format('woff2');}
/* Inherit typography on standalone pages and native controls as well as the HUD.
   Low specificity lets semantic components retain their display/label roles. */
:where(body){font-family:var(--hud-font-body);}
:where(button,input,select,textarea){font-family:inherit;}
:where(code,kbd,samp,pre){font-family:var(--hud-font-label);}
/* Space Wars HUD design system. Load before style.css. See docs/hud-design-system.md. */
:root{
  /* Neon São Paulo (docs/cyberpunk-rebuild.md, Checklist B): warm charcoal metal surfaces
     with the concept's magenta edge. Accent, launch, health, resource, danger, focus and team stay. */
  --hud-surface-canvas:#0b0a0d;
  --hud-surface-control:#1c191f;
  --hud-surface-panel:#161318;
  --hud-surface-raised:#262128;
  --hud-surface-inset:#0d0b0f;
  --hud-surface-overlay:#141116;
  --hud-surface-glass:rgba(20,17,23,.92);
  --hud-surface-slot:rgba(13,11,15,.94);
  --hud-border:#b8457f;
  --hud-border-subtle:#4a2a3d;
  --hud-edge-glow:#ff4fae;
  --hud-text:#e8e6f0;
  --hud-text-muted:#b7c8df;
  --hud-text-on-accent:#1a1400;
  --hud-accent:#f2c14e;
  --hud-accent-hover:#ffd66b;
  --hud-focus:#6fe3ff;
  --hud-notice-ink:#a9d7ff;
  --hud-notice-tracking:.08em;
  --hud-event-scale:1.4;
  --hud-danger:#ff9eae;
  --hud-status-online:#7ee787;
  --hud-danger-border:#7b3344;
  --hud-health:#5ad46a;
  --hud-resource:#7a8cff;
  --hud-team-0:#6fe3ff;
  --hud-team-1:#ff6b6b;
  --hud-team-2:#7ee787;
  --hud-space-1:4px;
  --hud-space-2:8px;
  --hud-space-3:12px;
  --hud-space-4:16px;
  --hud-space-6:24px;
  --hud-font-display:'Rajdhani','Arial Narrow',sans-serif;
  --hud-font-label:'Barlow',Arial,sans-serif;
  --hud-font-pixel:'Silkscreen',ui-monospace,monospace;
  --hud-font-body:'Barlow',Arial,sans-serif;
  --hud-weight-regular:400;
  --hud-weight-label:600;
  --hud-weight-strong:700;
  --hud-leading-title:1.15;
  --hud-tracking-label:.04em;
  --hud-text-xs:10px;
  /* Glanceable captions on touch controls (skill role tags); never for body copy. */
  --hud-text-caption:8px;
  --hud-text-sm:12px;
  --hud-text-body:14px;
  --hud-leading:1.5;
  --hud-border-width:2px;
  --hud-border-hairline:1px;
  /* Dark brushed-metal gradient with a faint warm sheen. */
  --hud-panel-fill:linear-gradient(160deg,#211c23 0%,var(--hud-surface-panel) 45%,var(--hud-surface-inset) 100%);
  --hud-hangar-image:url('../assets/ui/orbital-hangar.png');
  --hud-hangar-shade:linear-gradient(90deg,transparent 35%,rgba(11,9,13,.45) 70%,rgba(11,9,13,.85));
  /* Art-deco corner marks: a double magenta step instead of the single gold chevron. */
  --hud-chrome-corner:linear-gradient(135deg,transparent 5px,var(--hud-edge-glow) 5px,var(--hud-edge-glow) 7px,transparent 7px,transparent 9px,var(--hud-border) 9px,var(--hud-border) 10px,transparent 10px);
  --hud-chrome-corner-end:linear-gradient(315deg,transparent 5px,var(--hud-edge-glow) 5px,var(--hud-edge-glow) 7px,transparent 7px,transparent 9px,var(--hud-border) 9px,var(--hud-border) 10px,transparent 10px);
  --hud-chrome-highlight:inset 0 1px 0 #ff7fc21f,inset 0 -1px 0 #0009;
  --hud-title-lg:32px;
  --hud-title-xl:40px;
  --hud-title-shadow:0 2px 8px #02060b;
  --hud-launch-light:#ffe6a0;
  --hud-launch-edge:#d5a548;
  --hud-launch-rim:#91621f;
  --hud-launch-top:#76521d;
  --hud-launch-bottom:#30220f;
  --hud-launch-fill:linear-gradient(180deg,var(--hud-launch-top),var(--hud-launch-bottom));
  --hud-launch-shadow:inset 0 0 0 1px var(--hud-launch-light),inset 0 0 0 4px var(--hud-launch-rim),inset 0 0 0 5px var(--hud-launch-edge),0 4px 12px #0006;
  --hud-launch-pressed:inset 0 0 0 1px var(--hud-launch-edge),inset 0 0 0 4px var(--hud-launch-rim),inset 0 2px 12px #0008;
  --hud-launch-icon:24px;
  --hud-launch-height:56px;
  --hud-focus-offset:3px;
  --hud-radius:4px;
  --hud-target:44px;
  --hud-disabled-opacity:.45;
  --hud-shadow:0 8px 24px #0006,inset 0 1px 0 #ff7fc20c;
  --hud-motion-fast:100ms;
  --hud-text-count:18px;
  --hud-control-comfortable:48px;
  --hud-control-compact:44px;
  --hud-control-gap:8px;
  --hud-orbital-fill:linear-gradient(160deg,#1f1a21 0%,var(--hud-surface-panel) 40%,var(--hud-surface-canvas) 100%);
  --hud-launch-bright:linear-gradient(180deg,var(--hud-launch-light),var(--hud-accent) 48%,var(--hud-launch-edge));
  --hud-orbital-clip:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px);
  /* Punk sticker (direction B, 2026-09-24): the UI takes the dogs' own drawing rules from
     docs/hero-icon-art-direction.md: one uniform black keyline, flat fills, a hard drop instead of
     glow. Yellow is the one launch action per screen, magenta one secondary call, cyan a selected
     state; everything else is a charcoal sticker. Applied through .hud-theme-sticker. */
  --hud-sticker-wall:#17121c;
  --hud-sticker-dots:radial-gradient(circle,#ffffff09 1px,transparent 1.5px) 0 0/8px 8px;
  --hud-sticker-fill:#2e2539;
  --hud-sticker-raised:#3b3048;
  --hud-sticker-raised-hover:#4a3d5a;
  --hud-sticker-keyline:#050308;
  --hud-sticker-keyline-width:3px;
  --hud-sticker-radius:8px;
  --hud-sticker-drop:0 4px 0 var(--hud-sticker-keyline);
  --hud-sticker-drop-pressed:0 1px 0 var(--hud-sticker-keyline);
  --hud-sticker-press:3px;
  --hud-sticker-ink:#0d0a10;
  --hud-sticker-go:#ffdf3d;
  --hud-sticker-go-hover:#fff06e;
  --hud-sticker-hot:#ff4fae;
  --hud-sticker-cool:#4fe3ff;
  --hud-sticker-tape:#efe4c8;
  --hud-sticker-scrim:rgba(8,6,11,.82);
  /* Over the game world a black keyline vanishes into the night streets, so floating stickers
     get a die-cut rim outside it, then the drop. */
  --hud-sticker-cut:#efe6d6;
  --hud-sticker-float:0 0 0 2px var(--hud-sticker-cut),0 5px 0 2px var(--hud-sticker-keyline);
  --hud-sticker-lift-far:0 6px 0 var(--hud-sticker-keyline);
  /* Third-party sign-in keeps its brand fill inside the sticker keyline. */
  --hud-brand-discord:#5865f2;
}
