/* ============================================================================
   COLD CARGO — demo-facade token sheet (FACADE-1)
   One part library, one genre pack. Slot names follow the mockup _ds convention
   (surface/text/rule/accent semantic aliases over base ramps); the FILL is the
   sci_fi genre pack (GenreDefaults.BuildSciFi + deep-space horror push).
   This file is the only place a colour is defined. Parts read tokens only.
   ========================================================================== */

:root {
  /* ---- base ramps (steel = gunmetal blues, higher = lighter) ---- */
  --steel-950: #030710;
  --steel-900: #050A12;   /* deep space — shell ground        */
  --steel-850: #0A1220;
  --steel-800: #0B1522;   /* raised chrome                    */
  --steel-700: #0D1826;   /* panel                            */
  --steel-650: #0E2230;   /* panel-alt                        */
  --steel-600: #12293B;
  --steel-500: #1E3346;   /* border line                      */
  --steel-400: #2E4A63;

  --ice-100: #D8EEF5;     /* primary ink on dark              */
  --ice-300: #A9C3CD;
  --ice-500: #91A3AC;     /* muted ink                        */
  --ice-700: #5E707A;     /* disabled / ghost ink             */

  --cyan-500: #29C6DC;    /* primary accent (holographic)     */
  --cyan-300: #5FE0F0;    /* accent bright                    */
  --cyan-900: #0A3D46;

  --amber-500: #FBBF24;   /* terminal amber — working accent  */
  --amber-700: #B58415;
  --green-500: #14A874;   /* terminal green — affirmative     */
  --green-300: #2BD497;
  --red-500:  #F43F5E;    /* danger                           */
  --red-800:  #571B2B;    /* wine edge for quiet-destructive  */
  --red-200:  #F0A9B7;    /* warm-pink ink on the quiet key   */

  /* ---- semantic aliases (the reskin surface — parts read THESE) ---- */
  --surface-shell-deep: var(--steel-900);
  --surface-shell:      var(--steel-850);
  --surface-raised:     var(--steel-800);
  --surface-panel:      var(--steel-700);
  --surface-panel-alt:  var(--steel-650);
  --well-on-dark:       var(--steel-950);

  --text-on-dark:        var(--ice-100);
  --text-on-dark-muted:  var(--ice-500);
  --text-body:           var(--ice-100);
  --text-muted:          var(--ice-500);
  --text-ghost:          var(--ice-700);

  --accent:        var(--cyan-500);
  --accent-bright: var(--cyan-300);
  --accent-soft:   rgba(41, 198, 220, 0.12);
  --on-accent:     #041018;

  --amber:       var(--amber-500);
  --amber-soft:  rgba(251, 191, 36, 0.12);
  --positive:       var(--green-500);
  --positive-bright:var(--green-300);
  --positive-soft:  rgba(20, 168, 116, 0.12);
  --danger:      var(--red-500);
  --danger-soft: rgba(244, 63, 94, 0.12);
  --warning:     var(--amber-500);

  /* quiet-destructive (END SESSION): dark key edged in wine, warm-pink ink */
  --quiet-danger-edge: var(--red-800);
  --quiet-danger-ink:  var(--red-200);

  --rule-accent:       rgba(41, 198, 220, 0.45);
  --rule-accent-faint: rgba(41, 198, 220, 0.16);
  --rule-amber:        rgba(251, 191, 36, 0.45);
  --rule-amber-faint:  rgba(251, 191, 36, 0.16);
  --border-dark:  var(--steel-500);
  --border-light: var(--steel-400);

  /* GM-secret treatment (garnet band) */
  --gm-secret-band: #3A1220;
  --gm-secret-edge: #7A2740;
  --gm-secret-ink:  #F0A9B7;

  /* ---- geometry ---- */
  --radius:      4px;
  --radius-sm:   2px;
  --radius-pill: 99px;

  /* ---- type (system stacks only — nothing bundled, nothing fetched) ---- */
  --font-display: "Segoe UI", "Helvetica Neue", Arial, system-ui, sans-serif;
  --font-sans:    "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-mono:    Consolas, "Cascadia Mono", "Courier New", monospace;

  --track-caps: 0.14em;
  --type-label-caps: 600 9.5px/1.4 var(--font-display);
  --type-panel-title: 700 12px/1.3 var(--font-display);
  --type-screen-title: 300 22px/1.2 var(--font-display);
  --type-body: 400 13px/1.55 var(--font-sans);
  --type-ui:   500 12px/1.4 var(--font-sans);
  --type-mono: 400 12px/1.5 var(--font-mono);
  --type-stat: 600 20px/1.1 var(--font-mono);
}

/* ---- base reset / page ground ---- */
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; }
body {
  background: var(--surface-shell-deep);
  color: var(--text-body);
  font: var(--type-body);
  -webkit-font-smoothing: antialiased;
}
button { font-family: inherit; cursor: pointer; }
input, textarea, select { font-family: inherit; }
a { color: var(--accent-bright); text-decoration: none; }
::-webkit-scrollbar { width: 9px; height: 9px; }
::-webkit-scrollbar-thumb { background: var(--steel-500); border-radius: 9px; }
::-webkit-scrollbar-track { background: transparent; }

/* ---- the one CRT restraint: a subtle scanline wash on chrome headers only ---- */
.crt {
  background-image: repeating-linear-gradient(
    to bottom,
    rgba(216, 238, 245, 0.022) 0px,
    rgba(216, 238, 245, 0.022) 1px,
    transparent 1px,
    transparent 3px
  );
}
