/* 01-settings/_semantic.css — ROLE aliases. Components reference ONLY these, never raw pigment.
   Swap the palette file and this whole layer re-themes (that's how B reuses these components). */
:root {
  /* grounds */
  --surface:        var(--field);
  --surface-raised: var(--panel);
  --surface-hi:     var(--panel-hi);
  --surface-sunken: #0a0a0a;

  /* strokes (box-drawing + the rare CSS rule) */
  --line:           var(--rule);
  --line-strong:    var(--rule-hi);

  /* text roles */
  --text:           var(--gray-text);
  --text-dim:       var(--gray-dim);
  --text-muted:     var(--gray-muted);
  --text-bright:    var(--gray-bright);
  --text-on-accent: #0c0c0c;          /* dark ink on an amber fill */

  /* the one live highlight + states (color is RESERVED for these) */
  --accent:         var(--amber);       /* live / active / link / focus / lit hotkey */
  --accent-bright:  var(--amber-bright);
  --accent-soft:    color-mix(in oklab, var(--amber) 14%, var(--surface));
  --good:           var(--green);
  --bad:            var(--red);
  --warn:           var(--gold);

  /* status-band locals' default (the component-API trick) */
  --bk-fill: var(--surface-raised);
  --bk-line: var(--line);
  --bk-ink:  var(--text-muted);

  /* focus ring */
  --focus: var(--accent);
}
