/* SPECTER desktop — design tokens.
   Identical palette/glass values to design_handoff_specter_ink §4.
   Never hardcode a colour outside this file. */

:root {
  /* --- surfaces --- */
  --ink: #08090b;
  --stage: #08090b;
  --shell: #0a0b0e;
  --plate: #0b0d10;
  --land: #171a1e;
  --panel: #101115;
  --thumb: #12161b;

  /* --- bone (text) --- */
  --bone: #edebe6;
  --bone76: rgba(237, 235, 230, 0.76);
  --bone72: rgba(237, 235, 230, 0.72);
  --bone62: rgba(237, 235, 230, 0.62);
  --bone60: rgba(237, 235, 230, 0.6);
  --bone55: rgba(237, 235, 230, 0.55);
  --bone50: rgba(237, 235, 230, 0.5);
  --bone45: rgba(237, 235, 230, 0.45);
  --bone42: rgba(237, 235, 230, 0.42);
  --bone40: rgba(237, 235, 230, 0.4);
  --bone32: rgba(237, 235, 230, 0.32);

  /* --- accents --- */
  --live: #ff4d4d;
  --live-light: #ff8080;
  --live-pale: #ffc9c9;
  --live-deep: #e63a3a;
  --standby: #4fe39c;
  --standby-light: #7bf0b8;
  --standby-deep: #3fce87;
  --credit: #f5a524;
  --credit-light: #ffc061;
  --cam: #6ba8ff;
  --cam-light: #a8ccff;
  --offline: rgba(237, 235, 230, 0.42);

  /* --- chassis lines --- */
  --divider: rgba(237, 235, 230, 0.08);
  --rowline: rgba(237, 235, 230, 0.07);
  --hairline: rgba(237, 235, 230, 0.06);
  --flat-border: rgba(237, 235, 230, 0.11);

  /* --- glass recipe (four layers + specular) --- */
  --glass-blur: blur(30px) saturate(180%);
  --glass-blur-panel: blur(34px) saturate(180%);
  --glass-blur-chip: blur(26px) saturate(180%);
  --glass-fill: rgba(237, 235, 230, 0.06);
  --glass-fill-pill: rgba(237, 235, 230, 0.07);
  --glass-rim: rgba(255, 255, 255, 0.17);
  --glass-rim-soft: rgba(255, 255, 255, 0.13);
  --glass-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.35);
  --glass-lift-pill: 0 12px 26px rgba(0, 0, 0, 0.42);
  --glass-lift-panel: 0 24px 52px rgba(0, 0, 0, 0.55);
  --glass-specular: linear-gradient(150deg, rgba(255, 255, 255, 0.16), transparent 40%);
  --glass-specular-pill: linear-gradient(140deg, rgba(255, 255, 255, 0.2), transparent 42%);

  /* --- layout --- */
  --rail-w: 82px;
  --topbar-h: 64px;
  --list-w: 352px;
  --inspector-w: 396px;
  --meter-w: 400px;
  --side-w: 420px;
  --map-chrome-inset: 20px;

  /* --- radii (glass only; flat content keeps 0) --- */
  --r-chip: 11px;
  --r-pill: 14px;
  --r-card: 16px;
  --r-rail-item: 18px;
  --r-row: 20px;
  --r-panel: 26px;
  --r-sheet: 32px;

  /* --- type --- */
  --font-display: Archivo, "Archivo Fallback", system-ui, -apple-system, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  /* --- motion --- */
  --dur-hover: 140ms;
  --dur-state: 220ms;
  --ease-out: cubic-bezier(0.22, 0.7, 0.24, 1);
  --sheen-dur: 5.2s;
  --breathe-dur: 1.8s;
  --pulse-dur: 2.8s;

  /* --- focus --- */
  --focus-ring: 0 0 0 2px var(--stage), 0 0 0 4px var(--standby);
}

/* Severity tint indirection — one variable drives dot, rail, label and row wash. */
[data-severity="critical"] { --tint: var(--live); --tint-light: var(--live-light); }
[data-severity="high"] { --tint: var(--credit); --tint-light: var(--credit-light); }
[data-severity="moderate"] { --tint: var(--bone72); --tint-light: var(--bone); }
[data-severity="cam"] { --tint: var(--cam); --tint-light: var(--cam-light); }
[data-severity="agent-live"] { --tint: var(--live); --tint-light: var(--live-light); }
[data-severity="agent-standby"] { --tint: var(--standby); --tint-light: var(--standby-light); }
