/* Caverio shared token sheet · 2026-09-16
   Palette is SEMANTIC. Green = observed participation / inflow evidence.
   Rose = reduction / outflow / contradiction pressure. Ochre = attention,
   callers, social, and the logo observation dot. Blue = market context.
   Green is never a universal "good token" colour. */
:root{
  color-scheme:dark;

  /* Core palette (MASTER-BRIEF section 26) */
  --cv-field:#0D1110;        /* Field Black · page base */
  --cv-graphite:#181D1B;     /* Raised Graphite · cards, panels, dialogs */
  --cv-bone:#E9EDE7;         /* Bone · primary text */
  --cv-green:#A6D9B6;        /* Observation Green · participation, inflow */
  --cv-ochre:#C7A66B;        /* Cartographic Ochre · attention, callers, logo dot */
  --cv-rose:#D49388;         /* Pressure Rose · reduction, outflow, contradiction */
  --cv-blue:#95B4C7;         /* Attention Blue · market / social context */

  /* Derived from Bone at reduced alpha */
  --cv-bone-70:rgba(233,237,231,.70);  /* muted text */
  --cv-bone-62:rgba(233,237,231,.62);  /* dim labels */
  --cv-bone-40:rgba(233,237,231,.40);  /* placeholder, disabled */
  --cv-bone-18:rgba(233,237,231,.18);  /* strong rule */
  --cv-bone-12:rgba(233,237,231,.12);  /* hairline / card border */
  --cv-bone-06:rgba(233,237,231,.06);  /* hover wash */
  --cv-bone-04:rgba(233,237,231,.04);  /* field motif lines */

  /* Raised surface one step above graphite */
  --cv-raised:#222826;

  /* Semantic tints (colour at low alpha over graphite) */
  --cv-green-tint:rgba(166,217,182,.14);
  --cv-green-line:rgba(166,217,182,.38);
  --cv-ochre-tint:rgba(199,166,107,.14);
  --cv-ochre-line:rgba(199,166,107,.42);
  --cv-rose-tint:rgba(212,147,136,.14);
  --cv-rose-line:rgba(212,147,136,.42);
  --cv-blue-tint:rgba(149,180,199,.14);
  --cv-blue-line:rgba(149,180,199,.42);

  /* Type */
  --cv-font-ui:"Instrument Sans","Inter","Segoe UI",system-ui,sans-serif;
  --cv-font-data:"IBM Plex Mono","SFMono-Regular",ui-monospace,"Cascadia Mono",monospace;
  --cv-font-editorial:"Newsreader",Georgia,"Times New Roman",serif;
  --cv-track-wordmark:.18em;
  --cv-track-label:.13em;

  /* Spacing + radii (unchanged from the approved mockups) */
  --cv-space-1:4px;--cv-space-2:8px;--cv-space-3:12px;--cv-space-4:18px;--cv-space-5:24px;--cv-space-6:28px;
  --cv-radius-card:10px;--cv-radius-panel:12px;--cv-radius-control:5px;--cv-radius-chip:4px;

  /* Legacy names used by the approved mockups, mapped 1:1 onto Caverio tokens */
  --bg:var(--cv-field);
  --panel:var(--cv-graphite);
  --raised:var(--cv-raised);
  --line:var(--cv-bone-12);
  --ink:var(--cv-bone);
  --muted:var(--cv-bone-62);
  --dim:var(--cv-bone-62);
  --green:var(--cv-green);
  --red:var(--cv-rose);
  --amber:var(--cv-ochre);
  --blue:var(--cv-blue);
  --font:var(--cv-font-ui);
}

/* Wordmark + logomark */
.cv-brand{display:flex;align-items:center;gap:10px;color:var(--cv-bone);text-decoration:none}
.cv-brand svg{width:22px;height:22px;flex-shrink:0}
.cv-wordmark{font-family:var(--cv-font-ui);font-weight:500;font-size:13px;letter-spacing:var(--cv-track-wordmark);color:var(--cv-bone);line-height:1}
.cv-tagline{font-family:var(--cv-font-data);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--cv-bone-40);line-height:1;margin-top:5px;white-space:nowrap}
.cv-brand .cv-text{display:flex;flex-direction:column;justify-content:center}
@media(max-width:700px){.cv-tagline{display:none}.cv-wordmark{font-size:11px}}

/* "The Field Resolves" · one subtle motif, header only */
.cv-field{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.cv-field svg{width:100%;height:100%;opacity:.8}
@media(max-width:700px){.cv-field{display:none}}
