/* Shared Artifactured tokens. Dark accents use the approved Foundation palette.
   Dark paper/source and quiet shades provide readable nested surfaces, not effects. */
:root {
  color-scheme: light;
  --concrete: #e3e5e0;
  --ivory: #e3e5e0;
  --paper: #eff0ec;
  --ink: #1b211e;
  --quiet: #4f5751;
  --line: #7d837c;
  --ochre: #af3a03;
  --teal: #2b5754;
  --source: #d9dcd5;
  --button-ink: #eff0ec;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --concrete: #1b211e;
  --ivory: #1b211e;
  --paper: #252d28;
  --ink: #e3e5e0;
  --quiet: #b5bdb5;
  --line: #7d837c;
  --ochre: #e58a54;
  --teal: #8fb8b2;
  --source: #303a33;
  --button-ink: #1b211e;
}
.site-head { flex-wrap: wrap; gap: 8px 20px; padding-block: 8px; }
.site-head .wordmark { margin-right: auto; }
.wordmark img { display: block; width: 190px; height: auto; }
/* The outlined variant has exactly the same geometry and intrinsic dimensions.
   This also covers asynchronously loaded, authenticated Company logo images. */
[data-theme="dark"] img[src$="artifactured-wordmark.svg"] { content: url('/artifactured-wordmark-dark.svg'); }
/* A sun inside the moving circular thumb identifies the icon-only theme switch. */
button.theme-switch {
  display: inline-flex; align-items: center; justify-content: center;
  width: 60px; min-height: 44px; flex-shrink: 0; margin: 0;
  padding: 5px 0; border: 0; background: transparent; color: var(--quiet);
  cursor: pointer;
}
button.theme-switch:hover { background: transparent; color: var(--ink); }
.theme-track { display: inline-flex; align-items: center; width: 60px; height: 34px; padding: 3px; border: 1px solid var(--line); border-radius: 20px; background: var(--paper); }
.theme-thumb { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--teal); color: var(--button-ink); transition: transform 140ms ease; }
.theme-thumb svg { display: block; width: 18px; height: 18px; }
[aria-checked="true"] .theme-thumb { transform: translateX(26px); }
.theme-controls { display: flex; justify-content: flex-end; margin-bottom: 24px; }
@media (prefers-reduced-motion: reduce) { .theme-thumb { transition: none; } }
@media print {
  :root[data-theme] { color-scheme: light; --concrete: #fff; --ivory: #fff; --paper: #fff; --ink: #1b211e; --quiet: #4f5751; --ochre: #af3a03; --teal: #2b5754; --source: #eff0ec; }
  button.theme-switch { display: none; }
  [data-theme="dark"] img[src$="artifactured-wordmark.svg"] { content: normal; }
}
