/* Supplied palette with the requested muted green. Neutral backgrounds and white/light-gray text are retained. */
:root {
  --brand-green:#14261f;
  --brand-brown:#a55704;
  --brand-apricot:#f3d2af;
  --brand-cream:#f8eadc;
  --education-ink:var(--brand-green);
  --intro-label:#102019;
  --source-link:var(--brand-green);
  color-scheme:light;
  --bg:#f0ede6;
  --ground:var(--bg);
  --paper:var(--brand-cream);
  --surface:var(--brand-apricot);
  --ink:var(--brand-green);
  --muted:var(--brand-green);
  --frame:var(--brand-green);
  --line:var(--brand-apricot);
  --blue:var(--brand-green);
  --violet:var(--brand-green);
  --orange:var(--brand-brown);
  --lime:var(--brand-apricot);
  --accent:var(--brand-apricot);
  --accent-ink:var(--brand-brown);
  --on-accent:var(--brand-green);
  --shadow-ink:var(--brand-green);
  --shadow:7px 7px 0 var(--shadow-ink);
  --button-bg:var(--brand-green);
  --button-ink:var(--brand-cream);
  --stamp-bg:var(--brand-green);
  --stamp-ink:var(--brand-cream);
  --selected-bg:var(--brand-apricot);
  --selected-ink:var(--brand-green);
  --selected-muted:var(--brand-green);
}
:root[data-theme="dark"] {
  color-scheme:dark;
  --education-ink:#dad7d0;
  --intro-label:#dad7d0;
  --source-link:var(--brand-cream);
  --bg:#1c1c1a;
  --ground:var(--bg);
  --paper:var(--brand-green);
  --surface:var(--brand-green);
  --ink:#ffffff;
  --muted:#f2f2f2;
  --frame:var(--brand-apricot);
  --line:var(--brand-brown);
  --blue:var(--brand-apricot);
  --violet:var(--brand-apricot);
  --orange:var(--brand-brown);
  --lime:var(--brand-apricot);
  --accent:var(--brand-apricot);
  --accent-ink:var(--brand-apricot);
  --on-accent:var(--brand-green);
  --shadow-ink:var(--brand-green);
  --shadow:6px 6px 0 var(--shadow-ink);
  --button-bg:var(--brand-apricot);
  --button-ink:var(--brand-green);
  --stamp-bg:var(--brand-apricot);
  --stamp-ink:var(--brand-green);
  --selected-bg:var(--brand-brown);
  --selected-ink:#ffffff;
  --selected-muted:#f2f2f2;
}
@media (prefers-color-scheme:dark) {
  :root:not([data-theme="light"]):not([data-theme="dark"]) {
  color-scheme:dark;
  --education-ink:#dad7d0;
  --intro-label:#dad7d0;
  --source-link:var(--brand-cream);
  --bg:#1c1c1a;
  --ground:var(--bg);
  --paper:var(--brand-green);
  --surface:var(--brand-green);
  --ink:#ffffff;
  --muted:#f2f2f2;
  --frame:var(--brand-apricot);
  --line:var(--brand-brown);
  --blue:var(--brand-apricot);
  --violet:var(--brand-apricot);
  --orange:var(--brand-brown);
  --lime:var(--brand-apricot);
  --accent:var(--brand-apricot);
  --accent-ink:var(--brand-apricot);
  --on-accent:var(--brand-green);
  --shadow-ink:var(--brand-green);
  --shadow:6px 6px 0 var(--shadow-ink);
  --button-bg:var(--brand-apricot);
  --button-ink:var(--brand-green);
  --stamp-bg:var(--brand-apricot);
  --stamp-ink:var(--brand-green);
  --selected-bg:var(--brand-brown);
  --selected-ink:#ffffff;
  --selected-muted:#f2f2f2;
  }
}
body::before { display:none; }
.intro-copy .eyebrow { font-size:10px; color:var(--intro-label); }
@media (max-width:800px) { .intro-copy .eyebrow { font-size:9px; } }
.site-header { background:var(--bg); backdrop-filter:none; }
::selection,.skip-link { background:var(--brand-apricot); color:var(--brand-green); }
.header-actions>a,.icon-button,.identity img { border-color:var(--frame); }
.header-actions>a:hover,.icon-button:hover { background:var(--button-bg); color:var(--button-ink); }
.download-note { background:var(--brand-cream); color:var(--brand-green); }
:root .start-btn { --button-bg:var(--brand-green); --button-ink:var(--brand-cream); transition:background-color .2s,color .2s,border-color .2s; }
:root .start-btn,:root .action,.work-filters>button {
  background:var(--button-bg);
  color:var(--button-ink);
  border-color:var(--button-bg);
}
:root .action { box-shadow:4px 4px 0 var(--shadow-ink); }
:root .action:hover { box-shadow:1px 1px 0 var(--shadow-ink); }
:root .start-btn,:root .start-btn:hover { box-shadow:none; transform:none; border-color:var(--accent-ink); justify-content:center; text-align:center; }
:root .start-btn:hover,:root .start-btn:focus-visible { background:var(--brand-brown); color:#ffffff; border-color:var(--brand-brown); }
:root .capability.selected {
  --ink:var(--selected-ink);
  --muted:var(--selected-muted);
  background:var(--selected-bg);
}
.capability { transition:padding .25s; }
.source-row { flex-wrap:nowrap; gap:5px; }
.source-row>span { width:auto; flex:none; font-size:10px; margin-bottom:0; white-space:nowrap; }
.source-row button { flex:none; white-space:nowrap; font-size:10px; font-weight:700; min-height:28px; padding:4px 2px; background:transparent; color:var(--source-link); border:0; border-radius:0; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.source-row button:hover,.source-row button:focus-visible { background:transparent; color:var(--source-link); text-decoration-thickness:2px; }
@media (max-width:560px) {
  .source-row { margin-left:0; gap:4px; }
  .source-row>span { font-size:9px; }
  .source-row button { min-height:32px; padding:4px 2px; }
}
.platforms span { background:var(--brand-apricot); color:var(--brand-green); border-color:var(--brand-green); }
.composer-tracks span { background:var(--brand-green); color:#ffffff; }
.composer-tracks span:nth-child(2) { background:var(--brand-brown); color:#ffffff; }
.composer-tracks span:nth-child(3) { background:var(--brand-apricot); color:var(--brand-green); }
.tool-chip:nth-child(4),.tool-chip:nth-child(5) { --ink:#ffffff; --muted:#f2f2f2; background:var(--brand-brown); color:var(--ink); }
.tool-chip:nth-child(6) { --ink:var(--brand-green); --muted:var(--brand-green); background:var(--brand-cream); color:var(--ink); }
.tool-chip:hover { --ink:var(--brand-green); --muted:var(--brand-green); background:var(--brand-apricot); color:var(--ink); transition:transform .2s; }
.tool-chip:hover span { color:var(--brand-green); }
:root .contact-stamp { background:var(--stamp-bg); color:var(--stamp-ink); border-color:var(--stamp-bg); }
.job-select:hover,.text-link:hover,.chapter-nav>a:hover,.contact-link:hover { color:var(--accent-ink); }
.chapter-id strong { color:var(--accent-ink); }
.education-entry { --ink:var(--education-ink); --muted:var(--education-ink); color:var(--ink); }
.chapter-nav>a::after { border-color:var(--frame); }
.chapter-toggle { background:var(--brand-green); color:var(--brand-cream); border-color:var(--frame); box-shadow:3px 3px 0 var(--brand-brown); }
.chapter-toggle>span { color:inherit; }
.chapter-nav,.work-card,.work-art,.tool-board,.workflow,.principle-detail,.source-preview,dialog,.work-row,.work-filters { border-color:var(--frame); }
.media-pending { border-color:var(--frame); }
.chapter-nav.open { box-shadow:4px 4px 0 var(--shadow-ink); }
.work-filters select,.work-filters input { background:var(--paper); color:var(--ink); border-color:var(--frame); }
.work-filters input::placeholder { color:var(--muted); opacity:1; }
.project-composer .workflow { border-top-color:var(--brand-brown); }
.principle-detail { box-shadow:4px 4px 0 var(--shadow-ink); }
.source-preview,dialog { box-shadow:6px 6px 0 var(--shadow-ink); }
.work-card:hover { box-shadow:5px 5px 0 var(--shadow-ink); }
dialog::backdrop { background:var(--bg); backdrop-filter:none; }
.art-orange { background:var(--brand-brown); }
.art-blue { background:var(--brand-green); }
.art-lime { background:var(--brand-apricot); }
.art-purple { background:var(--brand-cream); }
.work-art::before { background:var(--brand-apricot); opacity:1; mix-blend-mode:normal; }
.work-art::after { background:var(--brand-green); opacity:1; mix-blend-mode:normal; }
.art-blue::before { background:var(--brand-apricot); }
.art-blue::after { background:var(--brand-brown); }
.art-lime::before { background:var(--brand-brown); }
.art-lime::after { background:var(--brand-green); }
.art-purple::before { background:var(--brand-brown); }
.art-purple::after { background:var(--brand-apricot); }
@media print {
  :root,:root[data-theme="dark"],:root:not([data-theme="light"]):not([data-theme="dark"]) {
    --education-ink:var(--brand-green);
    --intro-label:var(--brand-green);
    --source-link:var(--brand-green);
    --bg:white; --ground:white; --paper:white; --surface:white; --ink:var(--brand-green); --muted:var(--brand-green); --line:var(--brand-green); --blue:var(--brand-green); --orange:#a55704; --accent-ink:#a55704;
  }
  body { background:white; color:var(--brand-green); }
}
