/* Shared color roles keep the calendar and curator workspace in one app. */
:root {
  color-scheme: light;
  --wb-bg: var(--paper);
  --wb-surface: #fffefa;
  --wb-raised: #e9ede2;
  --wb-line: #cbd3c5;
  --wb-lime: #365c37;
  --wb-teal: #286b59;
  --wb-rose: #a0473e;
  --wb-dim: #7c8877;
  --on-accent: #fffef5;
  --accent-hover: #294a2c;
  --warning: #87601e;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  /* Neutral surfaces; one warm accent for interaction, muted semantic colors for status. */
  --ink: #f1eeeb;
  --muted: #b4afab;
  --line: #343233;
  --green: #eea18d;
  --paper: #171719;
  --orange: #eea18d;
  --wb-surface: #1e1e21;
  --wb-raised: #29282b;
  --wb-line: #3c393c;
  --wb-lime: #eea18d;
  --wb-teal: #a9c5bc;
  --wb-rose: #e7a3a0;
  --wb-dim: #8d8785;
  --on-accent: #291b18;
  --accent-hover: #f6b5a4;
  --warning: #dec398;
  color: var(--ink);
  background: var(--paper);
}
.header nav { align-items: center; }
.theme-select { width: auto; padding: 7px 9px; font-size: 11px; background: var(--wb-surface); color: var(--ink); border-color: var(--wb-line); }
[data-theme="dark"] :is(input,select,textarea,dialog) { background: var(--wb-surface); color: var(--ink); border-color: var(--wb-line); }
[data-theme="dark"] :is(input,textarea)::placeholder { color: var(--muted); }
[data-theme="dark"] :is(.filter-bar,.calendar-workspace .month-panel,.calendar-workspace .month-heading,.calendar-workspace .weekday,.day-agenda .event-row,.newsletter-preview,.provenance,.admin-card,.crawl-panel,.month-panel) { background: var(--wb-surface); border-color: var(--wb-line); }
[data-theme="dark"] :is(.newsletter,.day-agenda,.agenda-day .agenda-date,.calendar-workspace .calendar-blank,.date-tile,.empty-state,.values-strip,.submit-strip,.detail-facts,.provenance-missing) { background: var(--wb-raised); border-color: var(--wb-line); }
[data-theme="dark"] :is(.calendar-workspace .month-day,.calendar-workspace .calendar-blank,.day-agenda .event-side,.agenda-heading,.footer,.header,.calendar-section .filter-bar,.month-heading .icon-button) { border-color: var(--wb-line); }
[data-theme="dark"] :is(.calendar-section .section-copy,.section-heading .eyebrow,.event-description,.event-meta,.event-facts,.event-link,.event-side,.footer-location,.footer p,.footer-bottom,.fine-print,.consent,.newsletter-copy > p,.submit-strip,.results-bar,.results-bar .text-button,.agenda-heading .eyebrow,.calendar-workspace .weekday,.calendar-workspace .month-day small,.agenda-day .agenda-date,.agenda-empty,.agenda-empty h3,.detail-description,.detail-location,.provenance-text,.provenance-head,.provenance-trail,.free-label,.date-tile small,.save-button,.event-title svg) { color: var(--muted); }
[data-theme="dark"] :is(.button,.calendar-section .view-switch,.calendar-section .chip,.agenda-count,.event-price,.category-label,.calendar-workspace .month-day .calendar-event-preview,.month-day em,.sibling-chip) { background: var(--wb-raised); color: var(--ink); border-color: var(--wb-line); }
[data-theme="dark"] :is(.calendar-section .view-switch .active,.calendar-section .chip.selected,.button.primary,.month-day.today > span:first-child) { background: var(--wb-lime); color: var(--on-accent); border-color: var(--wb-lime); }
[data-theme="dark"] :is(.button:hover,.calendar-workspace .month-day:hover,.chip:hover,.save-button:hover) { background: var(--wb-raised); color: var(--ink); }
[data-theme="dark"] .button.primary:hover { background: var(--accent-hover); color: var(--on-accent); }
[data-theme="dark"] .calendar-workspace .month-day.chosen { background: #362927; box-shadow: inset 0 0 0 1.5px var(--orange); }
[data-theme="dark"] .calendar-workspace .month-day.chosen > span:first-child { background: var(--orange); color: var(--on-accent); }
[data-theme="dark"] :is(.text-button:hover,.clear-button,.agenda-day.is-selected .agenda-date,.accent-dot) { color: var(--orange); }
[data-theme="dark"] :is(.error,.button.danger,.danger) { background: #35231f; color: #f4bdb4; border-color: #75493e; }
[data-theme="dark"] .success { background: #23311e; color: #d9ebbd; border-color: #405c36; }
[data-theme="dark"] dialog::backdrop { background: #09090bc4; }
@media (max-width: 640px) {
  .header, .admin-shell .header { height: auto; min-height: 72px; padding-block: 14px; gap: 12px; flex-wrap: wrap; }
  .header nav, .admin-shell .header nav { gap: 12px; flex-wrap: wrap; }
  .theme-select { font-size: 10px; max-width: 125px; }
}
[data-theme="dark"] .calendar-workspace .month-day { background: var(--wb-surface); }
[data-theme="dark"] .calendar-workspace .month-day:hover { background: var(--wb-raised); }
[data-theme="dark"] .calendar-workspace .month-day.chosen { background: #362927; }
[data-theme="dark"] :is(.select-filter,.search-input) { border-color: var(--wb-line); }
[data-theme="dark"] .calendar-workspace .month-day.past { background: #19191b; color: #96908d; }
[data-theme="dark"] .analytics-panel { --traffic-accent: var(--wb-lime); --traffic-soft: var(--wb-raised); color: var(--ink); }
[data-theme="dark"] :is(.analytics-overview,.analytics-breakdown,.analytics-periods) { background: var(--wb-surface); border-color: var(--wb-line); }
[data-theme="dark"] .analytics-periods a[aria-current="true"] { background: var(--wb-raised); color: var(--ink); }
[data-theme="dark"] :is(.analytics-periods a,.analytics-metrics span,.analytics-legend,.analytics-chart-dates,.analytics-empty,.analytics-table-head > span,.analytics-breakdown thead th,.analytics-breakdown td:last-child,.analytics-table-empty,.analytics-notes) { color: var(--muted); }
[data-theme="dark"] .analytics-row-bar { background: var(--wb-raised); }
[data-theme="dark"] .analytics-breakdown tbody tr:hover .analytics-row-bar { background: var(--wb-line); }
[data-theme="dark"] .newsletter-admin .notice { background: #362927; color: var(--warning); }
@media (max-width: 640px) {
  [data-theme] body:has(#calendar) .header { height: auto; padding-block: 14px; }
}

[data-theme="dark"] .save-button.is-saved svg { color: var(--orange); }

[data-theme="dark"] .calendar-workspace .day-agenda { background: var(--wb-surface); }
[data-theme="dark"] .day-agenda .event-row { background: #242326; }
[data-theme="dark"] .calendar-workspace .calendar-blank { background: var(--paper); }
[data-theme="dark"] :is(.search-input > svg,.clear-button) { color: var(--muted); }
[data-theme="dark"] :is(button,a,input,select,textarea,summary):focus-visible { outline-color: var(--orange); }
[data-theme="dark"] #calendar .event-row.keyboard-selected { outline-color: var(--orange); }
[data-theme="dark"] .analytics-gridline { stroke: var(--wb-line); }
[data-theme="dark"] .analytics-axis { fill: var(--muted); }
[data-theme="dark"] .filter-bar :is(.select-filter,.search-input):focus-within { outline-color: var(--orange); }
