/* KazooWatch shared semantic foundation. Media and output previews are not inverted. */
html[data-kw-theme="dark"]{background:#10131c;color-scheme:dark}
html[data-kw-theme="light"]{color-scheme:light}
:root {
  --kw-theme-canvas:#f7f7fa;
  --kw-theme-surface:#ffffff;
  --kw-theme-raised:#f0f1f6;
  --kw-theme-input:#ffffff;
  --kw-theme-text:#242633;
  --kw-theme-muted:#596174;
  --kw-theme-border:#858c9d;
  --kw-theme-hover:#ece8f8;
  --kw-theme-selected:#e5ddfa;
  --kw-theme-accent:#6244a6;
  --kw-theme-on-accent:#ffffff;
  --kw-theme-pink:#b61576;
  --kw-theme-success:#196838;
  --kw-theme-success-surface:#eaf7ee;
  --kw-theme-warning:#775000;
  --kw-theme-warning-surface:#fff5db;
  --kw-theme-error:#9c2937;
  --kw-theme-error-surface:#ffedf0;
  --kw-theme-info:#245c94;
  --kw-theme-info-surface:#eaf3ff;
  --kw-theme-overlay:rgba(10,12,20,.68);
  --kw-theme-focus:#6244a6;
  --kw-theme-disabled:#737989;
  --kw-theme-surface-rgb:255,255,255;
  --kw-theme-white-rgb:var(--kw-theme-surface-rgb);
  --kw-theme-accent-surface:#eeeafa;
  --kw-theme-pink-surface:#fff0fa;
  --kw-theme-green-surface:#eaf5ed;
}
:root[data-kw-theme="dark"] {
  --kw-theme-canvas:#10131c;
  --kw-theme-surface:#1b2030;
  --kw-theme-raised:#272e40;
  --kw-theme-input:#141a27;
  --kw-theme-text:#f2f4fb;
  --kw-theme-muted:#bdc6db;
  --kw-theme-border:#63708a;
  --kw-theme-hover:#343d54;
  --kw-theme-selected:#443765;
  --kw-theme-accent:#c8b5ff;
  --kw-theme-pink:#ff8ed0;
  --kw-theme-success:#8fe2af;
  --kw-theme-success-surface:#193a2b;
  --kw-theme-warning:#ffdb8f;
  --kw-theme-warning-surface:#40351c;
  --kw-theme-error:#ffabb7;
  --kw-theme-error-surface:#432631;
  --kw-theme-info:#a8d3ff;
  --kw-theme-info-surface:#213650;
  --kw-theme-focus:#d3beff;
  --kw-theme-disabled:#a3adc2;
  --kw-theme-surface-rgb:27,32,48;
  --kw-theme-on-accent:#201637;
  --kw-theme-accent-surface:#302b45;
  --kw-theme-pink-surface:#3b2638;
  --kw-theme-green-surface:#213b32;
  /* Migration tokens: absence in light mode preserves accepted literal values.
     Consumers keep their exact light palette while sharing dark semantics. */
  --kw-adapt-canvas:var(--kw-theme-canvas);
  --kw-adapt-surface:var(--kw-theme-surface);
  --kw-adapt-raised:var(--kw-theme-raised);
  --kw-adapt-input:var(--kw-theme-input);
  --kw-adapt-text:var(--kw-theme-text);
  --kw-adapt-muted:var(--kw-theme-muted);
  --kw-adapt-border:var(--kw-theme-border);
  --kw-adapt-accent:var(--kw-theme-accent);
  --kw-adapt-pink:var(--kw-theme-pink);
  --kw-adapt-focus:var(--kw-theme-focus);
  --kw-adapt-accent-surface:var(--kw-theme-accent-surface);
  --kw-adapt-pink-surface:var(--kw-theme-pink-surface);
  --kw-adapt-green-surface:var(--kw-theme-green-surface);
  --kw-adapt-success:var(--kw-theme-success);
  --kw-adapt-warning:var(--kw-theme-warning);
  --kw-adapt-error:var(--kw-theme-error);
  --kw-adapt-info:var(--kw-theme-info);
  --kw-adapt-success-surface:var(--kw-theme-success-surface);
  --kw-adapt-warning-surface:var(--kw-theme-warning-surface);
  --kw-adapt-error-surface:var(--kw-theme-error-surface);
  --kw-adapt-info-surface:var(--kw-theme-info-surface);
  --kw-adapt-selected:var(--kw-theme-selected);
  --kw-adapt-white-rgb:var(--kw-theme-surface-rgb);
}
.kw-theme-control {display:inline-flex;align-items:center;flex-wrap:wrap;gap:.5rem;font:inherit;color:inherit;max-width:100%}
.kw-theme-control select {font:inherit;color:var(--kw-theme-text);background:var(--kw-theme-input);border:1px solid var(--kw-theme-border);border-radius:6px;padding:7px 9px;min-height:36px;max-width:100%}
.kw-theme-control select:focus-visible {outline:2px solid var(--kw-theme-focus);outline-offset:2px}
.kw-theme-control select:disabled {color:var(--kw-theme-disabled);cursor:not-allowed}
@media (pointer:coarse) {.kw-theme-control select{min-height:44px}}
@media print {html[data-kw-theme]{color-scheme:light}.kw-theme-control{display:none}}
