/* Korbel.ai — Colour tokens
   Silver-and-graphite metallic system. No colour accents in the brand.
   Functional signal colours exist for product UI only — never brand, never logo. */

:root {
  /* ---- Core palette ---- */
  --korbel-silver-hi: #ECEEF1;   /* light bg / highlight */
  --korbel-silver:    #C6CBD2;   /* mark on dark */
  --korbel-steel:     #767C85;   /* .ai accent / mid */
  --korbel-graphite:  #1E2125;   /* ink / mark on light */
  --korbel-void:      #0C0D0F;   /* darkest background */

  /* ---- Neutral spine (11 steps) ---- */
  --neutral-0:   #FFFFFF;
  --neutral-50:  #ECEEF1;  /* Silver Hi */
  --neutral-100: #DCE0E5;
  --neutral-200: #C6CBD2;  /* Silver */
  --neutral-300: #A8AEB7;
  --neutral-400: #8C919B;
  --neutral-500: #767C85;  /* Steel */
  --neutral-600: #565B63;
  --neutral-700: #393D43;
  --neutral-800: #1E2125;  /* Graphite */
  --neutral-900: #0C0D0F;  /* Void */

  /* ---- Functional signals — PRODUCT UI ONLY ---- */
  --signal-ontrack:  #5B8A72;  /* Sage — on track */
  --signal-risk:     #B8923E;  /* Amber — at risk */
  --signal-critical: #B0524B;  /* Brick — critical */
  --signal-info:     #5B7A9A;  /* Slate blue — information */

  /* Signal derivatives — dots & fills keep the base instrument tone above;
     TEXT always uses the -text variant (AAA, ≥7:1 on its surface). */
  --signal-ontrack-text:  #3F5F4F;
  --signal-risk-text:     #6C5524;
  --signal-critical-text: #8D423C;
  --signal-info-text:     #445A72;
  --signal-ontrack-bg:  rgba(91,138,114,0.10);
  --signal-risk-bg:     rgba(184,146,62,0.10);
  --signal-critical-bg: rgba(176,82,75,0.10);
  --signal-info-bg:     rgba(91,122,154,0.10);
  --signal-ontrack-border:  rgba(91,138,114,0.28);
  --signal-risk-border:     rgba(184,146,62,0.28);
  --signal-critical-border: rgba(176,82,75,0.28);
  --signal-info-border:     rgba(91,122,154,0.28);

  /* ---- Semantic aliases — on light (primary surface) ---- */
  --surface-canvas:   #FFFFFF;
  --surface-raised:   #ECEEF1;
  --surface-sunken:   #F4F6F8;
  --border-line:      #DCE0E5;
  --border-strong:    #C6CBD2;
  --text-primary:     #1E2125;
  --text-secondary:   #565B63;
  --text-muted:       #767C85;
  --mark-ink:         #1E2125;
  --accent-dot:       #767C85;  /* the ".ai" colour */
  --focus-ring:       #767C85;
}

/* ---- Dark surface (product UI, focus modes, signage) ---- */
.korbel-dark,
[data-theme="dark"] {
  --surface-canvas:   #0C0D0F;
  --surface-raised:   #141619;
  --surface-sunken:   #0E0F11;
  --border-line:      #23262B;
  --border-strong:    #2C3035;
  --text-primary:     #E9ECF0;
  --text-secondary:   #A8AEB7;
  --text-muted:       #767C85;
  --mark-ink:         #C6CBD2;
  --accent-dot:       #767C85;
  --focus-ring:       #A8AEB7;

  /* Signal text lightens on dark (AAA ≥7:1 on #141619); tints strengthen. */
  --signal-ontrack-text:  #80AB95;
  --signal-risk-text:     #C29D4A;
  --signal-critical-text: #CF938E;
  --signal-info-text:     #8DA4BC;
  --signal-ontrack-bg:  rgba(91,138,114,0.14);
  --signal-risk-bg:     rgba(184,146,62,0.14);
  --signal-critical-bg: rgba(176,82,75,0.14);
  --signal-info-bg:     rgba(91,122,154,0.14);
  --signal-ontrack-border:  rgba(91,138,114,0.32);
  --signal-risk-border:     rgba(184,146,62,0.32);
  --signal-critical-border: rgba(176,82,75,0.32);
  --signal-info-border:     rgba(91,122,154,0.32);
}
