/* The classic workbench palette also applies before saved settings load. */
:root {
  --ed-bg:#101c2c; --ed-ink:#d0deec; --ed-dim:#9ab0c9; --ed-line:#35475c;
  --ed-bar:#152337; --ed-field:#1c2e44; --ed-hover:#263e59; --ed-accent:#a5c6ec;
  --ed-active:#48cbb4; --ed-pc:#16493e; --ed-pc-ink:#8ef4d6;
  --ed-break:#49283a; --ed-break-ink:#ffa2ac; --ed-caret:#f4f9fc; --ed-selection:#355579;
  --ed-comment:#86a897; --ed-keyword:#c0a9ef; --ed-type:#84cbd1; --ed-number:#eec281;
  --ed-string:#b4d797; --ed-directive:#ef9da7; --ed-function:#89bcf2; --ed-constant:#eeb38f;
  --ed-scheme:dark;
}
:root[data-editor-theme="light"] {
  --ed-bg:#ffffff; --ed-ink:#24374c; --ed-dim:#506479; --ed-line:#cbd7e1;
  --ed-bar:#f1f5f8; --ed-field:#fff; --ed-hover:#e3edf5; --ed-accent:#265b83;
  --ed-active:#3575a4; --ed-pc:#d3ece2; --ed-pc-ink:#114934;
  --ed-break:#ffe1e7; --ed-break-ink:#842c45; --ed-caret:#182c40; --ed-selection:#286293;
  --ed-comment:#526e60; --ed-keyword:#6735a1; --ed-type:#075a74; --ed-number:#974a06;
  --ed-string:#25612d; --ed-directive:#8c334e; --ed-function:#15549b; --ed-constant:#8c391d;
  --ed-scheme:light;
}
:root[data-editor-theme="graphite"] {
  --ed-bg:#23242b; --ed-ink:#ece8df; --ed-dim:#bbb7ba; --ed-line:#50525d;
  --ed-bar:#2c2d35; --ed-field:#363740; --ed-hover:#464851; --ed-accent:#dbc7ad;
  --ed-active:#f2bf81; --ed-pc:#29453d; --ed-pc-ink:#b1e7cf;
  --ed-break:#532c3b; --ed-break-ink:#ffc3c9; --ed-caret:#faf5e8; --ed-selection:#5e5365;
  --ed-comment:#aba9a5; --ed-keyword:#e0a3c9; --ed-type:#93d8cc; --ed-number:#edb28f;
  --ed-string:#d7d998; --ed-directive:#c3afe8; --ed-function:#f2d198; --ed-constant:#abd0ef;
  --ed-scheme:dark;
}
.editor-panel :is(.tabbar,.sourcewrap,.machinewrap,.follow,.editorfoot), #editorTools {
  color-scheme:var(--ed-scheme); border-color:var(--ed-line); background:var(--ed-bar); color:var(--ed-ink);
}
.editor-panel .tabbar { align-items:center; flex-wrap:wrap; gap:0 12px; }
.editor-panel .tab { align-self:stretch; background:transparent; color:var(--ed-dim); }
.editor-panel .tab:is(:hover,.active) { color:var(--ed-ink); background:transparent; }
.editor-panel .tab.active { border-bottom-color:var(--ed-active); }
#byteCount, .editor-panel .follow span, .editor-panel .editorfoot button { color:var(--ed-accent); }
.editor-panel .editorfoot button:hover { background:var(--ed-hover); }
.editor-theme-choice {
  display:inline-flex; align-items:center; flex-wrap:nowrap; gap:5px; margin-inline-start:auto;
  padding:3px 0; color:var(--ed-dim); font-size:11px; white-space:nowrap;
}
.editor-theme-choice select, #editorTools :is(input,button,select), #sourceNavTools button {
  background:var(--ed-field); border-color:var(--ed-line); color:var(--ed-ink);
}
.editor-theme-choice select { font:600 11px/1.35 var(--sans,system-ui); padding:3px 4px; max-width:14em; min-height:26px; }
.editor-panel #sourceNavTools { margin-inline-start:0; }
#editorTools input::placeholder { color:var(--ed-dim); }
#editorTools button:hover:enabled, #editorTools button:is([aria-pressed="true"],[aria-expanded="true"]),
#editorTools .ed-result-list button:focus-visible, #sourceNavTools button:is(:hover,:focus-visible) {
  color:var(--ed-ink); border-color:var(--ed-accent); background:var(--ed-hover);
}
#editorTools button:disabled { color:var(--ed-dim); opacity:.68; }
#editorTools :focus-visible, #sourceNavTools button:focus-visible, .editor-theme-choice select:focus-visible { outline-color:var(--ed-accent); }
#editorTools .ed-matches { border-color:var(--ed-line); }
#editorTools .ed-result-list button { color:var(--ed-ink); background:var(--ed-bg); border-color:var(--ed-line); }
#editorTools .ed-result-list button:hover { background:var(--ed-hover); }
#editorTools .ed-result-list span { color:var(--ed-dim); }
#sourcePane, #sourcePane :is(.code-surface, #lines), #sourcePane textarea#source, #machinePane {
  background:var(--ed-bg); color:var(--ed-ink); caret-color:var(--ed-caret);
}
#sourcePane .code-color-layer { color:var(--ed-ink); }
#sourcePane .colored textarea#source { background:transparent; color:transparent; -webkit-text-fill-color:transparent; }
#sourcePane textarea#source::selection { background:var(--ed-selection); color:#fff; -webkit-text-fill-color:#fff; }
#sourcePane .source-line { color:var(--ed-dim); }
#sourcePane .source-line:hover { color:var(--ed-ink); background:var(--ed-hover); }
#sourcePane .source-line.executing, #machinePane .asmrow.current { background:var(--ed-pc); color:var(--ed-pc-ink); }
#sourcePane .source-line.has-bp, #machinePane .asmrow.bp button { color:var(--ed-break-ink); background:var(--ed-break); }
#sourcePane .tok-comment { color:var(--ed-comment); }
#sourcePane .tok-keyword { color:var(--ed-keyword); }
#sourcePane .tok-type { color:var(--ed-type); }
#sourcePane .tok-number { color:var(--ed-number); }
#sourcePane .tok-string { color:var(--ed-string); }
#sourcePane .tok-directive { color:var(--ed-directive); }
#sourcePane .tok-function { color:var(--ed-function); }
#sourcePane .tok-constant { color:var(--ed-constant); }
#machinePane .asmrow { color:var(--ed-ink); }
#machinePane .asmrow :is(button,.bytes), #machinePane .hint { color:var(--ed-dim); border-color:var(--ed-line); }
#sourceState[data-compiler="busy"] { color:var(--ed-accent); }
::highlight(lab-source-definition) { color:var(--ed-accent); text-decoration:underline; }
@media (forced-colors:active) {
  #sourcePane .colored textarea#source { color:CanvasText; -webkit-text-fill-color:CanvasText; }
  #sourcePane .code-color-layer { display:none; }
}
