/* ==========================================================================
   Nebula Games - brand tokens
   The one place colour, type and spacing are defined for every site in
   this repo. Sites override the --accent-* family and the --ink/--panel
   family to take on their own identity; everything else stays shared.
   ========================================================================== */

:root {
  /* --- studio palette (Nebula Games) ------------------------------------
     Sampled from the studio key art, shared/img/nebula-games-background.jpg,
     rather than invented: the grounds are that image's darkest corner and
     mid-navy, and --nebula-haze is its star field. If the studio rebrands,
     this block is what changes.

     Only the hub reads these. All three game sites override every surface,
     text and accent token in their own site.css, so retuning this block
     cannot leak into them - check that this is still true before you widen
     it. The exception to watch is --nebula-cyan: Superposition does not
     override --accent-2, so that one does reach it. */
  --nebula-void:   #0a0e1c;  /* page ground - the art's darkest corner */
  --nebula-deep:   #0f1426;  /* band */
  --nebula-card:   #161d35;  /* raised surface - the art's mid navy */
  --nebula-haze:   #9caacb;  /* the star field */
  --nebula-purple: #b388ff;  /* primary accent - lifted from the clouds */
  --nebula-magenta:#d07ad8;  /* the flank clouds at their warmest */
  --nebula-cyan:   #45e5ff;  /* secondary accent */
  --nebula-ink:    #ffffff;
  --nebula-muted:  #dde4f2;

  /* --- surfaces (a site may retint these) ------------------------------- */
  --ink:        var(--nebula-void);     /* page background */
  --ink-2:      var(--nebula-deep);     /* band background */
  --panel:      var(--nebula-card);     /* card background */
  --panel-2:    #1e2745;                /* card hover */
  --line:       rgba(156, 170, 203, .18); /* hairlines, tinted off the haze */

  /* --- type colours ------------------------------------------------------ */
  --text:       var(--nebula-ink);
  --text-dim:   var(--nebula-muted);
  --text-faint: #7e8aa8;

  /* --- accents (a site MUST retint these) -------------------------------- */
  --accent:      var(--nebula-purple);  /* primary call to action */
  --accent-2:    var(--nebula-cyan);    /* secondary accent */
  /* Eyebrows and small type, so it has to clear 4.5:1 on --panel-2 (the card
     hover state), not just on --panel. #9a74f5 looked right and missed at
     4.33. Check both surfaces if you retune it. */
  --accent-deep: #a681f7;
  --accent-warm: #f2a73b;               /* notices, early access, ticks */
  --accent-ink:  #0a0718;               /* text placed on --accent */

  /* --- brand art ----------------------------------------------------------
     Deliberately NOT stored as url() custom properties. A url() inside a
     custom property resolves against the stylesheet that USES the variable,
     not the one that declares it, so a shared --brand-bg silently 404s from
     every site. Reference these by relative path from your own site.css:
       shared/img/nebula-games-logo.png
       shared/img/nebula-games-background.jpg
     -------------------------------------------------------------------- */

  /* --- typography -------------------------------------------------------- */
  --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  /* Each site points --display at its own face; Inter is the safe default. */
  --display: var(--sans);

  /* --- layout ------------------------------------------------------------ */
  --shell: 1150px;
  --gutter: clamp(1.25rem, 4vw, 3rem);
  --radius: 18px;  /* the studio's shape; game sites override for their own look */
  --head-h: 68px;
}
