/* Generated from tokens.json. */
@media (prefers-color-scheme: dark) {
  html[data-vh-theme-fallback]:not([data-theme]) {
  --vh-color-accent-text: #a78bfa;
  --vh-color-accent-text-secondary: #a78bfa;
  --vh-color-text: #f3f3f7;
  --vh-color-text-secondary: #c4c4d0;
  --vh-color-text-muted: #a0a0b2;
  --vh-color-border-subtle: #383845;
  --vh-color-bg: #151519;
  --vh-color-surface: #1d1d26;
  --vh-color-surface-raised: #252530;
  --vh-color-action-bg: #7c3aed;
  --vh-color-action-hover: #6a2fdb;
  --vh-color-action-active: #5a26c7;
  --vh-color-on-action: #ffffff;
  --vh-color-focus: #a78bfa;
  --vh-color-secondary-bg: #252530;
  --vh-color-secondary-text: #a78bfa;
  --vh-color-secondary-border: #737386;
  --vh-color-secondary-hover: #30303d;
  --vh-color-secondary-active: #34264b;
  --vh-color-field-bg: #1d1d26;
  --vh-color-border-control: #737386;
  --vh-color-field-text: #f3f3f7;
  --vh-color-field-placeholder: #a0a0b2;
  --vh-color-field-focus: #a78bfa;
  --vh-color-destructive-bg: #dc2626;
  --vh-color-destructive-text: #ffffff;
  --vh-color-destructive-hover: #b91c1c;
  --vh-color-destructive-active: #9f1818;
  --vh-color-destructive-focus: #fca5a5;
  --vh-color-constructive-bg: #1d7f4d;
  --vh-color-constructive-text: #ffffff;
  --vh-color-constructive-hover: #196b41;
  --vh-color-constructive-active: #155b37;
  --vh-color-constructive-focus: #6ee7b7;
  --vh-color-disabled-text: #858594;
  --vh-color-disabled-bg: #202029;
  --vh-color-disabled-border: #383845;
  --vh-color-menu-bg: #252530;
  --vh-color-menu-border: #383845;
  --vh-color-menu-divider: #383845;
  --vh-color-menu-item-hover: #30303d;
  --vh-color-menu-item-active: #34264b;
  --vh-color-menu-shadow: 0 24px 52px rgba(0, 0, 0, 0.45);
  --vh-color-overlay-scrim: rgba(6, 7, 11, 0.64);
  --vh-color-accent-text-hover: #c4b5fd;
  --vh-color-status-success: #6ee7b7;
  --vh-color-status-error: #fca5a5;
  --vh-color-status-warning: #f6ce77;
  --vh-color-skeleton: #30303d;
  --vh-color-skeleton-shine: rgb(255 255 255 / 8%);
  --vh-color-kalshi-brand: #00DD94;
  --vh-dark-accent-text: var(--vh-color-accent-text);
  --vh-dark-accent-text-secondary: var(--vh-color-accent-text-secondary);
  --vh-dark-text: var(--vh-color-text);
  --vh-dark-text-secondary: var(--vh-color-text-secondary);
  --vh-dark-text-muted: var(--vh-color-text-muted);
  --vh-dark-border-subtle: var(--vh-color-border-subtle);
  --vh-dark-bg: var(--vh-color-bg);
  --vh-dark-surface: var(--vh-color-surface);
  --vh-dark-surface-raised: var(--vh-color-surface-raised);
  --vh-dark-action-bg: var(--vh-color-action-bg);
  --vh-dark-action-hover: var(--vh-color-action-hover);
  --vh-dark-action-active: var(--vh-color-action-active);
  --vh-dark-on-action: var(--vh-color-on-action);
  --vh-dark-focus: var(--vh-color-focus);
  --vh-dark-secondary-bg: var(--vh-color-secondary-bg);
  --vh-dark-secondary-text: var(--vh-color-secondary-text);
  --vh-dark-secondary-border: var(--vh-color-secondary-border);
  --vh-dark-secondary-hover: var(--vh-color-secondary-hover);
  --vh-dark-secondary-active: var(--vh-color-secondary-active);
  --vh-dark-field-bg: var(--vh-color-field-bg);
  --vh-dark-border-control: var(--vh-color-border-control);
  --vh-dark-field-text: var(--vh-color-field-text);
  --vh-dark-field-placeholder: var(--vh-color-field-placeholder);
  --vh-dark-field-focus: var(--vh-color-field-focus);
  --vh-dark-destructive-bg: var(--vh-color-destructive-bg);
  --vh-dark-destructive-text: var(--vh-color-destructive-text);
  --vh-dark-destructive-hover: var(--vh-color-destructive-hover);
  --vh-dark-destructive-active: var(--vh-color-destructive-active);
  --vh-dark-destructive-focus: var(--vh-color-destructive-focus);
  --vh-dark-constructive-bg: var(--vh-color-constructive-bg);
  --vh-dark-constructive-text: var(--vh-color-constructive-text);
  --vh-dark-constructive-hover: var(--vh-color-constructive-hover);
  --vh-dark-constructive-active: var(--vh-color-constructive-active);
  --vh-dark-constructive-focus: var(--vh-color-constructive-focus);
  --vh-dark-disabled-text: var(--vh-color-disabled-text);
  --vh-dark-disabled-bg: var(--vh-color-disabled-bg);
  --vh-dark-disabled-border: var(--vh-color-disabled-border);
  --vh-dark-menu-bg: var(--vh-color-menu-bg);
  --vh-dark-menu-border: var(--vh-color-menu-border);
  --vh-dark-menu-divider: var(--vh-color-menu-divider);
  --vh-dark-menu-item-hover: var(--vh-color-menu-item-hover);
  --vh-dark-menu-item-active: var(--vh-color-menu-item-active);
  --vh-dark-menu-shadow: var(--vh-color-menu-shadow);
  --vh-dark-overlay-scrim: var(--vh-color-overlay-scrim);
  --vh-dark-accent-text-hover: var(--vh-color-accent-text-hover);
  --vh-dark-status-success: var(--vh-color-status-success);
  --vh-dark-status-error: var(--vh-color-status-error);
  --vh-dark-status-warning: var(--vh-color-status-warning);
  --vh-dark-skeleton: var(--vh-color-skeleton);
  --vh-dark-skeleton-shine: var(--vh-color-skeleton-shine);
  --vh-dark-kalshi-brand: var(--vh-color-kalshi-brand);
    color-scheme: dark;
    background: var(--vh-color-bg);
    color: var(--vh-color-text);
  }
  html[data-vh-theme-fallback]:not([data-theme]) body {
    background: var(--vh-color-bg);
    color: var(--vh-color-text);
  }
/* Only confirmed UI presets are bridged. Literal white remains literal white. */
html[data-vh-theme-fallback]:not([data-theme]) {
  --wp--preset--color--base: var(--vh-color-bg);
  --wp--preset--color--contrast: var(--vh-color-text);
  --wp--preset--color--primary: var(--vh-color-text);
  --wp--preset--color--light: var(--vh-color-surface);
  --wp--preset--color--accent: var(--vh-color-accent-text);
  --wp--preset--color--secondary: var(--vh-color-accent-text-secondary);
  --wp--preset--color--custom-hover: var(--vh-color-accent-text-hover);
  --wp--preset--color--secondary-950: var(--vh-color-text-secondary);
  --wp--preset--color--secondary-900: var(--vh-color-text-secondary);
  --wp--preset--color--secondary-800: var(--vh-color-text-secondary);
  --wp--preset--color--secondary-700: var(--vh-color-text-secondary);
  --wp--preset--color--secondary-600: var(--vh-color-text-muted);
  --wp--preset--color--secondary-500: var(--vh-color-text-muted);
  --wp--preset--color--secondary-400: var(--vh-color-text-muted);
  --wp--preset--color--secondary-300: var(--vh-color-text-muted);
  --wp--preset--color--secondary-200: var(--vh-color-border-subtle);
  --wp--preset--color--secondary-100: var(--vh-color-border-subtle);
  --wp--preset--color--secondary-50: var(--vh-color-border-subtle);
}
html[data-vh-theme-fallback]:not([data-theme]),
html[data-vh-theme-fallback]:not([data-theme]) body {
  background-color: var(--vh-color-bg);
  color: var(--vh-color-text);
}
html[data-vh-theme-fallback]:not([data-theme]) .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay),
html[data-vh-theme-fallback]:not([data-theme]) .wp-block-navigation .wp-block-navigation__submenu-container {
  background-color: var(--vh-color-menu-bg);
  color: var(--vh-color-text);
  border-color: var(--vh-color-border-subtle);
}
html[data-vh-theme-fallback]:not([data-theme]) :where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 2px solid var(--vh-color-focus);
  outline-offset: 3px;
}
@media (forced-colors: active) {
  .vh-appearance select:focus-visible { outline-color: Highlight; }
}

/* Explicit variant of the verified black-only VoteHub wordmark (header and
   the footer's site logo block). */
html[data-vh-theme-fallback]:not([data-theme]) .wp-header-image img[src$="/votehub-logo.svg"],
html[data-vh-theme-fallback]:not([data-theme]) img.custom-logo[src$="/votehub-logo.svg"] {
  content: url("../images/votehub-logo-dark.svg");
}
/* Text roles are separate from black cover overlays and white button labels. */
html[data-vh-theme-fallback]:not([data-theme]) .has-black-color,
html[data-vh-theme-fallback]:not([data-theme]) .has-black-color a:where(:not(.wp-element-button)) {
  color: var(--vh-color-text) !important;
}
/* Core paints the "button inside" search wrapper white with a gray border. */
html[data-vh-theme-fallback]:not([data-theme]) .wp-block-search__inside-wrapper {
  background: var(--vh-color-field-bg);
  border-color: var(--vh-color-border-control);
}
html[data-vh-theme-fallback]:not([data-theme]) .wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper {
  background: transparent;
}
html[data-vh-theme-fallback]:not([data-theme]) .wp-block-search__input {
  background-color: var(--vh-color-field-bg);
  color: var(--vh-color-text);
  border-color: var(--vh-color-border-control);
}

/* Datawrapper charts render their own dark variant (embed-theme.js); no white canvas around them. */
html[data-vh-theme-fallback]:not([data-theme]) iframe[src*="datawrapper.dwcdn.net/"],
html[data-vh-theme-fallback]:not([data-theme]) iframe[src*="datawrapper.de/"] {
  background-color: transparent;
  color-scheme: dark;
}

/* Redistricting tracker: its saved script paints a white notice chip over the
   map with inline styles, so only !important can reach it. */
html[data-vh-theme-fallback]:not([data-theme]) #mapWrapper > div[style*="rgba(255, 255, 255, 0.95)"] {
  background: var(--vh-color-surface-raised) !important;
  color: var(--vh-color-text) !important;
}

}
