/* Design tokens: the dark default and the full light set. */
/* ───────── Tokens ───────── dark is the default; light is a full alternate set */
:root {
  color-scheme: dark;
  --rail:#181817; --side:#1f1f1e; --stage:#262624; --raised:#302f2d; --hover:#2c2c2a;
  --sel:#46443f; --sel-off:#383733; --line:#3d3c39; --line-soft:#30302d; --guide:#3a3a37;
  --text:#e8e6df; --muted:#b9b6ad; --faint:#a3a097;
  --accent:#d97757; --accent-ink:#1c120d; --accent-soft:rgba(217,119,87,.16);
  --crit:#f07b7b; --high:#e6a54f; --med:#86a9e3; --low:#a3a097;
  --ok:#7dc58f; --ok-ink:#12241a; --danger:#f07b7b; --warn:#e6a54f;
  --shadow:0 8px 28px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.05);
  --r1:4px; --r2:6px; --r3:8px; --r4:12px; --caps:.07em; --rowh:34px;
  --font:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI Variable","Segoe UI",Inter,Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
:root[data-theme="light"] {
  color-scheme: light;
  --rail:#e6e4dc; --side:#efede6; --stage:#faf9f5; --raised:#ffffff; --hover:#e7e5dd;
  --sel:#d9d6cb; --sel-off:#e3e0d6; --line:#cfccc0; --line-soft:#e2dfd5; --guide:#d6d3c8;
  --text:#1f1e1b; --muted:#57544c; --faint:#68655c;
  --accent:#b04a25; --accent-ink:#ffffff; --accent-soft:rgba(176,74,37,.12);
  --crit:#b3261e; --high:#96520a; --med:#2f5fa8; --low:#68655c;
  --ok:#27703f; --ok-ink:#ffffff; --danger:#b3261e; --warn:#96520a;
  --shadow:0 8px 28px rgba(30,25,15,.18), 0 0 0 1px rgba(0,0,0,.06);
}

*{box-sizing:border-box}
[hidden]{display:none!important}
.scrim{display:none}
html,body{height:100%;margin:0}
body{background:var(--stage);color:var(--text);font:13px/1.4 var(--font);-webkit-font-smoothing:antialiased;overflow:hidden}
.tree,.sbody,dialog,.side,.menu{scrollbar-width:thin;scrollbar-color:var(--line) transparent}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0;text-align:inherit}
kbd{font:11px var(--mono);background:var(--raised);border:1px solid var(--line);border-bottom-width:2px;border-radius:var(--r1);padding:0 5px;color:var(--muted)}
.ic{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ic.sm{width:12px;height:12px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.tree:focus-visible,.sbody:focus-visible{outline:none}
::selection{background:var(--accent-soft)}
mark{background:var(--accent-soft);color:inherit;border-radius:2px;box-shadow:0 0 0 1px var(--accent-soft)}
