html[data-theme="light"] {
  --bg-abyss: #e8eef7;
  --bg-deep: #f6f8fc;
  --bg-midnight: #edf2f8;
  --bg-surface: #ffffff;
  --bg-elevated: #ffffff;
  --goal-page-bg: #f5f9ff;
  --dashboard-bg-deep: #f6f8fc;

  --text-primary: rgba(15, 23, 42, 0.95);
  --text-secondary: rgba(15, 23, 42, 0.68);
  --text-tertiary: rgba(15, 23, 42, 0.55);
  --text-ghost: rgba(15, 23, 42, 0.28);

  --glass-bg: rgba(15, 23, 42, 0.04);
  --glass-bg-hover: rgba(15, 23, 42, 0.08);
  --glass-border: rgba(15, 23, 42, 0.10);
  --glass-border-hover: rgba(15, 23, 42, 0.18);

  --bg: #f6f8fc;
  --surface: #ffffff;
  --card: var(--bg-elevated);
  --border: var(--glass-border);
  --col-border: rgba(15, 23, 42, 0.12);
  --text: rgba(15, 23, 42, 0.95);
  --text-mid: var(--text-secondary);
  --text-dim: var(--text-secondary);
  --text-faint: var(--text-secondary);
  --accent: #0891b2;
  --accent-hover: var(--cyan-bright);
  --accent-glow: rgba(8, 145, 178, 0.24);
  --accent-cyan: #0891b2;
  --cyan: #0891b2;
  --cyan-bright: #0e7490;
  --cyan-glow: rgba(8,145,178,0.26);
  --teal: #0f766e;
  --amber-dim: #92400e;
  --magenta-dim: #86198f;
  --green: #047857;
  --green-glow: rgba(16,185,129,0.12);

  --cd-pattern-label: rgba(0,0,0,0.85);
  --cd-pattern-count: rgba(0,0,0,0.62);
  --cd-pattern-shadow: 0 1px 2px rgba(255,255,255,0.72);
  --cd-title-shadow: 0 1px 0 rgba(255,255,255,0.95), 0 0 12px rgba(255,255,255,0.85);
  --cd-column-separator: rgba(15,23,42,0.08);
}

html[data-theme="light"] .nav,
html[data-theme="light"] .nav.scrolled {
  background: var(--bg-surface);
  border-color: var(--glass-border);
  box-shadow: 0 4px 30px var(--glass-border);
}

html[data-theme="light"] .nav-links .help-btn,
html[data-theme="light"] .editor-theme-toggle,
html[data-theme="light"] .nav-settings-gear {
  color: var(--text-secondary);
  background: var(--glass-bg);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] .nav-links .help-btn:hover,
html[data-theme="light"] .editor-theme-toggle:hover,
html[data-theme="light"] .nav-settings-gear:hover {
  color: var(--text-primary);
  background: var(--glass-bg-hover);
  border-color: var(--cyan-dim);
}

html[data-theme="light"] .nav-links .signin {
  color: var(--cyan-bright);
}

html[data-theme="light"] .nav-user-pill {
  background: rgba(255,255,255,0.72);
  border-color: var(--glass-border);
}

html[data-theme="light"] .nav-user-pill:hover,
html[data-theme="light"] .nav-user-menu-wrap.open .nav-user-pill {
  background: var(--bg-surface);
  border-color: var(--glass-border-hover);
  box-shadow: 0 0 24px rgba(6,182,212,0.10);
}

html[data-theme="light"] .nav-user-avatar {
  border-color: var(--glass-border);
}

html[data-theme="light"] .nav-user-menu {
  background: rgba(255,255,255,0.98);
  border-color: var(--glass-border);
  box-shadow: 0 18px 48px rgba(15,23,42,0.16), 0 0 20px rgba(6,182,212,0.06);
}

html[data-theme="light"] .nav-user-menu-header {
  border-color: var(--glass-border);
}

html[data-theme="light"] .nav-user-menu-name {
  color: var(--text-primary);
}

html[data-theme="light"] .nav-user-menu-email {
  color: var(--text-secondary);
}

html[data-theme="light"] .nav-tier-badge {
  color: var(--cyan-bright);
  border-color: rgba(14,116,144,0.28);
  background: var(--cyan-subtle);
}

html[data-theme="light"] .nav-user-menu-item {
  color: var(--text-secondary);
}

html[data-theme="light"] .nav-user-menu-item:hover {
  background: var(--glass-bg-hover);
  color: var(--text-primary);
}

html[data-theme="light"] .nav-menu-sign-out {
  color: color-mix(in srgb, var(--danger) 68%, black);
}

html[data-theme="light"] .nav-menu-sign-out:hover {
  background: rgba(190,18,60,0.08);
}

html[data-theme="light"] .form-col-left,
html[data-theme="light"] .preview-col-panel {
  background: var(--bg-surface);
  border-color: var(--glass-border);
  box-shadow: 0 18px 48px var(--glass-border);
}

html[data-theme="light"] .edit-footer {
  border-color: var(--glass-border);
}

html[data-theme="light"] .compose-scroll {
  scrollbar-color: var(--glass-border-hover) transparent;
}

html[data-theme="light"] .compose-scroll::-webkit-scrollbar-thumb {
  background: var(--glass-border-hover);
}

html[data-theme="light"] .preview-panel-header,
html[data-theme="light"] .preview-col-label-item {
  color: var(--text-secondary);
}

html[data-theme="light"] .viz-picker-hint,
html[data-theme="light"] .add-col-card,
html[data-theme="light"] .col-add-choice,
html[data-theme="light"] .btn-launch--subtle {
  color: var(--text-secondary);
}

html[data-theme="light"] .question-input,
html[data-theme="light"] .locale-icon-btn {
  color: var(--text-primary);
  background: var(--glass-bg);
  border-color: var(--glass-border);
}

html[data-theme="light"] .axis-pair-label {
  color: var(--text-secondary);
}

html[data-theme="light"] .axis-tag {
  color: var(--text-secondary);
  background: var(--glass-bg);
  border-color: var(--glass-border);
}

html[data-theme="light"] .axis-input {
  background: var(--glass-bg);
  border-color: var(--glass-border);
}

html[data-theme="light"] .axis-input:focus,
html[data-theme="light"] .axis-input:focus-visible {
  border-color: var(--magenta-dim);
  box-shadow: 0 0 0 3px rgba(134,25,143,0.12);
}

html[data-theme="light"] .locale-popover,
html[data-theme="light"] select.question-input option {
  color: var(--text-primary);
  background: var(--bg-surface);
  border-color: var(--glass-border);
}

html[data-theme="light"] body.wizard-active {
  --wizard-abyss: var(--bg-deep);
  --wizard-bg-surface: var(--bg-surface);
  --wizard-glass-border: var(--glass-border-hover);
  --wizard-text-primary: var(--text-primary);
  --wizard-text-secondary: var(--text-secondary);
  --wizard-text-tertiary: var(--text-secondary);
  --wizard-cyan: var(--cyan-bright);
  --wizard-cyan-glow: var(--cyan-glow);
  --wizard-magenta: var(--magenta-dim);
  --wizard-magenta-glow: var(--magenta-glow);
  --wizard-amber: var(--amber-dim);
  --wizard-amber-glow: var(--amber-glow);
}

html[data-theme="light"] body.wizard-active .chooser-overlay {
  background:
    radial-gradient(circle at 18% 0%, var(--cyan-subtle), transparent 55%),
    radial-gradient(circle at 86% 100%, var(--glass-bg-hover), transparent 55%),
    var(--bg-deep);
}

html[data-theme="light"] body.wizard-active .ai-input {
  background: var(--bg-midnight);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] body.wizard-active .ai-input:focus {
  background: var(--bg-surface);
  border-color: var(--wizard-cyan);
}

html[data-theme="light"] body.wizard-active .prompt-pills::before,
html[data-theme="light"] body.wizard-active .pill-meta {
  opacity: 1;
}

html[data-theme="light"] body::before {
  background:
    radial-gradient(ellipse 80% 60% at 20% 50%, rgba(6,182,212,0.08) 0%, transparent 55%),
    radial-gradient(ellipse 70% 50% at 80% 20%, rgba(217,70,239,0.05) 0%, transparent 55%),
    radial-gradient(ellipse 90% 70% at 50% 85%, rgba(245,158,11,0.05) 0%, transparent 50%);
}

html[data-theme="light"] .header::after {
  background: linear-gradient(
    to right,
    transparent,
    rgba(15,23,42,0.16) 20%,
    rgba(15,23,42,0.16) 80%,
    transparent
  );
}

html[data-theme="light"] .controls.bar-v2 {
  background: rgba(255,255,255,0.88);
  border-color: rgba(15,23,42,0.12);
  box-shadow: 0 12px 36px rgba(15,23,42,0.14);
}

html[data-theme="light"] .bar-v2 .ctx__sep {
  color: rgba(15,23,42,0.28);
}

html[data-theme="light"] .ghost-v2,
html[data-theme="light"] .iconbtn-v2 {
  border-color: rgba(15,23,42,0.14);
}

html[data-theme="light"] .ghost-v2:hover,
html[data-theme="light"] .iconbtn-v2:hover,
html[data-theme="light"] .iconbtn-v2[aria-expanded="true"] {
  background: rgba(15,23,42,0.06);
  border-color: rgba(15,23,42,0.24);
}

html[data-theme="light"] .menu-v2 {
  background: rgba(255,255,255,0.97);
  border-color: rgba(15,23,42,0.12);
  box-shadow: 0 18px 48px rgba(15,23,42,0.18);
}

html[data-theme="light"] .menu-v2__group-label,
html[data-theme="light"] .menu-v2__hint {
  color: rgba(15,23,42,0.52);
}

html[data-theme="light"] .menu-v2__item:hover {
  background: rgba(15,23,42,0.06);
}

html[data-theme="light"] .menu-v2__sep {
  background: rgba(15,23,42,0.10);
}

html[data-theme="light"] .ctrl-group {
  background: rgba(255,255,255,0.84);
  border-color: rgba(15,23,42,0.10);
  box-shadow: 0 8px 24px rgba(15,23,42,0.10);
}

html[data-theme="light"] .ctrl-group-label {
  color: rgba(15,23,42,0.48);
}

html[data-theme="light"] .ctrl-sep {
  background: rgba(15,23,42,0.10);
}

html[data-theme="light"] .ctrl-btn:hover {
  background: rgba(15,23,42,0.06);
}

html[data-theme="light"] #tour-banner {
  background: var(--bg-surface);
  color: var(--text-primary);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] #tour-banner .tour-banner__badge,
html[data-theme="light"] #tour-banner .tour-banner__title,
html[data-theme="light"] #tour-banner .tour-step__num,
html[data-theme="light"] #tour-banner .tour-step__hint strong,
html[data-theme="light"] #tour-banner .tour-ctrl-btn.is-pulse {
  color: var(--amber-dim);
}

html[data-theme="light"] #tour-banner .tour-banner__skip,
html[data-theme="light"] #tour-banner .tour-ctrl-btn {
  color: var(--text-primary);
  background: var(--glass-bg);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] #tour-banner .tour-banner__skip:hover,
html[data-theme="light"] #tour-banner .tour-ctrl-btn:hover {
  color: var(--text-primary);
  background: var(--glass-bg-hover);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] #tour-banner .tour-step {
  background: var(--glass-bg);
}

html[data-theme="light"] #tour-banner .tour-step.is-active {
  background: var(--amber-glow);
  border-color: var(--amber-dim);
}

html[data-theme="light"] #tour-banner .tour-step.is-done .tour-step__num {
  color: var(--green);
  background: var(--green-glow);
}

html[data-theme="light"] #tour-banner .tour-step.is-done {
  opacity: 1;
}

html[data-theme="light"] #tour-banner .tour-ctrl-btn.is-pulse {
  background: var(--glass-bg-hover);
  border-color: var(--amber-dim);
}

html[data-theme="light"] #tour-banner .tour-banner__golive {
  color: var(--cyan-bright);
  background: var(--cyan-subtle);
  border-color: var(--cyan-bright);
}

html[data-theme="light"] #tour-banner .tour-banner__golive:hover {
  background: var(--glass-bg-hover);
  border-color: var(--cyan-bright);
}

html[data-theme="light"] #tour-banner .tour-banner__golive-hint {
  color: var(--text-secondary);
}

html[data-theme="light"] #practice-toast {
  color: var(--amber-dim) !important;
  background: var(--bg-surface) !important;
  border-color: var(--amber-dim) !important;
}

html[data-theme="light"] .columns {
  z-index: auto;
}

html[data-theme="light"] .cd-col-label {
  z-index: 14;
}

html[data-theme="light"] #presenter-header-brand img,
html[data-theme="light"] .projector-watermark-logo {
  border-radius: var(--r-sm);
}

html[data-theme="light"] #presenter-header-brand.logo--needs-dark-pill {
  background: transparent;
  padding: 0;
  box-shadow: none;
}

html[data-theme="light"] #presenter-header-brand.logo--needs-dark-pill img {
  background: var(--brand-frame-bg);
  padding: var(--sp-xs);
  border-radius: var(--r-sm);
  box-shadow: 0 4px 14px rgba(15,23,42,0.18);
}

html[data-theme="light"] .qr-corner {
  background: rgba(255,255,255,0.92);
  border-color: rgba(15,23,42,0.12);
  box-shadow: 0 14px 40px rgba(15,23,42,0.14);
}

html[data-theme="light"] .qr-corner__url {
  color: var(--text-secondary);
  text-shadow: 0 1px 0 rgba(255,255,255,0.9);
}

html[data-theme="light"] #share-pop,
html[data-theme="light"] .remote-popover,
html[data-theme="light"] .welcome-dialog,
html[data-theme="light"] .coachmark-tooltip,
html[data-theme="light"] .confirm-modal__card,
html[data-theme="light"] .settings-dialog.presenter-confirm-dialog {
  background: rgba(255,255,255,0.97);
  color: var(--text);
  border-color: rgba(15,23,42,0.12);
  box-shadow: 0 18px 48px rgba(15,23,42,0.16);
}

html[data-theme="light"] .share-pop__close,
html[data-theme="light"] .remote-popover__close,
html[data-theme="light"] .presenter-confirm-dialog .btn-close {
  color: var(--text-dim);
  border-color: rgba(15,23,42,0.10);
}

html[data-theme="light"] .share-pop__close:hover,
html[data-theme="light"] .remote-popover__close:hover,
html[data-theme="light"] .presenter-confirm-dialog .btn-close:hover {
  color: var(--text);
  background: rgba(15,23,42,0.06);
}

html[data-theme="light"] .share-pop__section {
  border-color: rgba(15,23,42,0.10);
}

html[data-theme="light"] .share-pop__label {
  color: var(--text-tertiary);
}

html[data-theme="light"] .share-pop__url,
html[data-theme="light"] .remote-popover__url-row {
  color: var(--text);
  background: rgba(15,23,42,0.04);
  border-color: rgba(15,23,42,0.10);
}

html[data-theme="light"] .remote-popover__url {
  color: var(--text);
}

html[data-theme="light"] .share-pop__btn,
html[data-theme="light"] .remote-popover__copy-btn,
html[data-theme="light"] .welcome-btn-secondary,
html[data-theme="light"] .confirm-modal__btn--secondary {
  color: var(--text);
  background: rgba(15,23,42,0.06);
  border-color: rgba(15,23,42,0.12);
}

html[data-theme="light"] .share-pop__btn:hover,
html[data-theme="light"] .remote-popover__copy-btn:hover,
html[data-theme="light"] .welcome-btn-secondary:hover,
html[data-theme="light"] .confirm-modal__btn--secondary:hover {
  background: rgba(15,23,42,0.10);
}

html[data-theme="light"] .share-pop__btn--primary {
  color: #0e7490;
  background: rgba(6,182,212,0.12);
  border-color: rgba(8,145,178,0.34);
}

html[data-theme="light"] .welcome-overlay {
  background: rgba(15,23,42,0.38);
}

html[data-theme="light"] .coachmark-spotlight {
  box-shadow: 0 0 0 9999px rgba(15,23,42,0.46);
}

html[data-theme="light"] .coachmark-prev {
  border-color: rgba(15,23,42,0.16);
}

html[data-theme="light"] .confirm-modal__backdrop,
html[data-theme="light"] .settings-backdrop.presenter-confirm-backdrop {
  background: rgba(15,23,42,0.38);
}

html[data-theme="light"] .confirm-modal__title,
html[data-theme="light"] .confirm-modal__body {
  color: var(--text);
}

html[data-theme="light"] .ended-overlay {
  background: rgba(226,232,240,0.82);
}

html[data-theme="light"] .ended-content {
  border-color: rgba(15,23,42,0.12);
  box-shadow: 0 18px 54px rgba(15,23,42,0.14);
}

html[data-theme="light"] .btn-back-dashboard {
  color: var(--text-secondary);
  border-color: rgba(15,23,42,0.16);
}

html[data-theme="light"] .btn-back-dashboard:hover {
  color: var(--text);
  border-color: rgba(15,23,42,0.30);
}

html[data-theme="light"] .conn-lost-overlay {
  background: rgba(15,23,42,0.38);
}

html[data-theme="light"] .conn-lost-overlay__card {
  background: rgba(255,255,255,0.98);
  color: var(--text);
  border-color: rgba(220,38,38,0.28);
  box-shadow: 0 24px 64px rgba(15,23,42,0.18), 0 0 48px rgba(248,113,113,0.12);
}

html[data-theme="light"] .poll-nav {
  background: rgba(255,255,255,0.94);
  border-color: rgba(15,23,42,0.12);
  box-shadow: 0 10px 30px rgba(15,23,42,0.14);
}

html[data-theme="light"] .poll-nav-pill:hover {
  background: rgba(15,23,42,0.06);
}

html[data-theme="light"] .poll-nav__label {
  color: var(--text-tertiary);
}

html[data-theme="light"] .poll-nav-select {
  color: var(--text);
  background: rgba(6,182,212,0.08);
  border-color: rgba(8,145,178,0.28);
}

html[data-theme="light"] .closed-session-modal {
  background: rgba(15,23,42,0.38);
}

html[data-theme="light"] .closed-session-modal__card {
  background: rgba(255,255,255,0.98);
  color: var(--text);
  border-color: rgba(15,23,42,0.12);
  box-shadow: 0 24px 64px rgba(15,23,42,0.18);
}

html[data-theme="light"] .closed-session-modal__eyebrow {
  color: var(--text-tertiary);
}

html[data-theme="light"] .closed-session-modal__secondary {
  color: var(--text);
  border-color: rgba(15,23,42,0.16);
}

html[data-theme="light"] .projector-watermark {
  color: var(--text-tertiary);
}

html[data-theme="light"] .projector-watermark-logo {
  opacity: 0.8;
}

html[data-theme="light"] {
  --text-pri: rgba(15,23,42,0.96);
  --text-sec: rgba(15,23,42,0.68);
  --text-ter: rgba(15,23,42,0.50);
  --glass: rgba(15,23,42,0.04);
  --glass-hi: rgba(15,23,42,0.07);
  --border: rgba(15,23,42,0.10);
  --border-hi: rgba(15,23,42,0.18);
}

html[data-theme="light"] body {
  background:
    radial-gradient(ellipse 88% 66% at 12% 16%, rgba(6,182,212,0.13), transparent 58%),
    radial-gradient(ellipse 74% 62% at 88% 12%, rgba(217,70,239,0.09), transparent 60%),
    radial-gradient(ellipse 78% 30% at 50% 112%, rgba(15,23,42,0.16), transparent 72%),
    linear-gradient(180deg, #f8fbff 0%, #eef4fa 58%, #e7eef6 100%);
  background-color: #eef4fa;
  box-shadow: inset 0 0 180px rgba(100,116,139,0.16);
}

html[data-theme="light"] body.goal-chrome-body {
  background:
    radial-gradient(ellipse 88% 66% at 12% 16%, rgba(6,182,212,0.10), transparent 58%),
    radial-gradient(ellipse 74% 62% at 88% 12%, rgba(217,70,239,0.07), transparent 60%),
    radial-gradient(ellipse 78% 30% at 50% 112%, rgba(15,23,42,0.10), transparent 72%),
    linear-gradient(180deg, #ffffff 0%, var(--goal-page-bg) 52%, var(--bg-midnight) 100%);
  background-color: var(--goal-page-bg);
  box-shadow: inset 0 0 120px rgba(100,116,139,0.10);
}

html[data-theme="light"] .dock,
html[data-theme="light"] body[data-mode="spotlight"] .dock,
html[data-theme="light"] .qa-side-pane,
html[data-theme="light"] .qa-pane-overflow-menu,
html[data-theme="light"] .qa-pane-toast,
html[data-theme="light"] .qa-shortcut-help,
html[data-theme="light"] .qa-welcome-card,
html[data-theme="light"] .qa-mobile-banner-card {
  background: rgba(255,255,255,0.96);
  color: var(--text-pri);
  border-color: rgba(15,23,42,0.12);
  box-shadow: 0 16px 42px rgba(15,23,42,0.16);
}

html[data-theme="light"] .spotlight-scrim {
  background:
    radial-gradient(ellipse 65% 75% at 55% 50%,
      rgba(246,248,252,0.96) 0%,
      rgba(246,248,252,0.82) 45%,
      rgba(246,248,252,0.34) 78%,
      transparent 100%),
    rgba(246,248,252,0.36);
}

html[data-theme="light"] .hero-wrap .prompt,
html[data-theme="light"] .hero-wrap .qtext,
html[data-theme="light"] .hero-wrap .vote-hero .n,
html[data-theme="light"] .hero-wrap .asker {
  text-shadow: 0 1px 0 rgba(255,255,255,0.92), 0 0 18px rgba(255,255,255,0.72);
}

html[data-theme="light"] .qa-side-pane-header button:hover,
html[data-theme="light"] .qa-pane-overflow-item:hover:not(:disabled),
html[data-theme="light"] .qa-mobile-banner-stay:hover {
  background: rgba(15,23,42,0.06);
}

html[data-theme="light"] .qa-pane-overflow-label,
html[data-theme="light"] .qa-pane-overflow-icon {
  color: var(--text-ter);
}

html[data-theme="light"] .qa-mobile-banner,
html[data-theme="light"] .qa-welcome-modal {
  background: rgba(15,23,42,0.38);
}

html[data-theme="light"] .qa-theme-toggle {
  background: rgba(15,23,42,0.06);
  color: var(--text-sec);
  border-color: rgba(15,23,42,0.14);
}

html[data-theme="light"] .qa-lf-orb {
  --orb-edge: #03525f;
}

html[data-theme="light"] .qa-lf-orb[data-tier="warm"] {
  --orb-edge: #09534b;
}

html[data-theme="light"] .qa-lf-orb[data-tier="hot"] {
  --orb-edge: #62206c;
}

html[data-theme="light"] .qa-lf-orb svg {
  filter: drop-shadow(0 4px 12px rgba(var(--orb-glow-rgba), 0.28));
}

html[data-theme="light"] .qa-lf-orb.is-recent svg {
  filter: drop-shadow(0 5px 16px rgba(var(--orb-glow-rgba), 0.38));
}

html[data-theme="light"] .qa-lf-disclosure-content {
  background: rgba(255,255,255,0.97);
  color: var(--text-pri);
  border-color: rgba(var(--disc-glow-rgba), 0.36);
  box-shadow: 0 18px 48px rgba(15,23,42,0.16), 0 8px 24px rgba(var(--disc-glow-rgba), 0.14);
}

html[data-theme="light"] .qa-lf-disc-question {
  color: var(--text-pri);
  text-shadow: none;
}

html[data-theme="light"] .qa-lf-disc-meta,
html[data-theme="light"] .qa-lf-disc-actions button.ghost {
  color: var(--text-sec);
}

html[data-theme="light"] .qa-lf-disc-actions button {
  color: var(--text-pri);
  background: rgba(15,23,42,0.06);
  border-color: rgba(15,23,42,0.14);
}

html[data-theme="light"] .qa-lf-disc-tail path {
  fill: rgba(255,255,255,0.97);
  stroke: rgba(var(--disc-glow-rgba), 0.36);
}

html[data-theme="light"] .qa-moderator {
  --qa-bg-deep: #f6f8fc;
  --qa-bg-surface: #ffffff;
  --qa-bg-elevated: #ffffff;
  --qa-text-pri: rgba(15,23,42,0.95);
  --qa-text-sec: rgba(15,23,42,0.66);
  --qa-text-ter: rgba(15,23,42,0.50);
  --qa-text-ghost: rgba(15,23,42,0.26);
  --qa-glass: rgba(15,23,42,0.04);
  --qa-glass-hi: rgba(15,23,42,0.07);
  --qa-border: rgba(15,23,42,0.10);
  --qa-border-hi: rgba(15,23,42,0.16);
  --qa-border-lo: rgba(15,23,42,0.10);
  --qa-glass-lo: rgba(15,23,42,0.04);
  --qa-cyan: #0891b2;
  --qa-cyan-bright: #0e7490;
  --qa-magenta: #86198f;
  --qa-magenta-bright: #a21caf;
  --qa-violet: #6d28d9;
  --qa-amber: #b45309;
  --qa-amber-bright: #92400e;
  --qa-green: #047857;
}

/* Dashboard shell and production v2 renderer */
html[data-theme="light"] body.dashboard-page {
  --cyan: var(--cyan-bright);
  --cyan-dim: var(--cyan-bright);
  --danger: color-mix(in srgb, #ff6b8a 68%, black);
  --dashboard-action-start: #22d3ee;
  --dashboard-action-end: #e879f9;
  --dashboard-action-text: #04121a;
  --text-tertiary: rgba(15,23,42,0.62);
  --text-ghost: rgba(15,23,42,0.60);
  color: var(--text-primary);
}

html[data-theme="light"] body.dashboard-page .loading-spinner {
  border-color: rgba(15,23,42,0.10);
  border-top-color: var(--cyan);
}

html[data-theme="light"] body.dashboard-page .dash-v2 {
  --bg-deep: var(--dashboard-bg-deep);
  --bg-card: var(--bg-surface);
  --card-hover: var(--bg-midnight);
  --border: var(--glass-border);
  --border-bright: var(--glass-border-hover);
  --text-mid: var(--text-secondary);
  --text-dim: var(--text-secondary);
  --text-faint: var(--text-secondary);
  color: var(--text-primary);
}

html[data-theme="light"] body.dashboard-page .beta-badge {
  color: var(--text-primary);
  box-shadow: 0 4px 18px rgba(217,70,239,0.08);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .search input,
html[data-theme="light"] body.dashboard-page .dash-v2 .title-cell .title,
html[data-theme="light"] body.dashboard-page .dash-v2 .session-title-input,
html[data-theme="light"] body.dashboard-page .dash-v2 .num,
html[data-theme="light"] body.dashboard-page .dash-v2 .recap-cell.ready .recap-link,
html[data-theme="light"] body.dashboard-page .dash-v2 .poll-chip,
html[data-theme="light"] body.dashboard-page .dash-v2 .poll-chip .pq,
html[data-theme="light"] body.dashboard-page .dash-v2 .unrun-hint strong,
html[data-theme="light"] body.dashboard-page .dash-v2 .no-signal strong,
html[data-theme="light"] body.dashboard-page .dash-v2 .hook,
html[data-theme="light"] body.dashboard-page .dash-v2 .unlock-row strong,
html[data-theme="light"] body.dashboard-page .dash-v2 .vote-url,
html[data-theme="light"] body.dashboard-page .dash-v2 .remote-url,
html[data-theme="light"] body.dashboard-page .dash-v2 .meta-line strong,
html[data-theme="light"] body.dashboard-page .dash-v2 .btn-mini,
html[data-theme="light"] body.dashboard-page .dash-v2 .export-menu button,
html[data-theme="light"] body.dashboard-page .dash-v2 .upgrade-banner .ub-copy strong {
  color: var(--text-primary);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .btn-mini.primary {
  color: var(--dashboard-action-text);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .btn-new-v2,
html[data-theme="light"] body.dashboard-page .dash-v2 .icon-btn.primary,
html[data-theme="light"] body.dashboard-page .dash-v2 .btn-mini.primary,
html[data-theme="light"] body.dashboard-page .dash-v2 .upgrade-banner .ub-icon {
  background: linear-gradient(135deg, var(--dashboard-action-start), var(--dashboard-action-end));
  color: var(--dashboard-action-text);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .row.head,
html[data-theme="light"] body.dashboard-page .dash-v2 .chev-btn:hover,
html[data-theme="light"] body.dashboard-page .dash-v2 .title-cell .title:hover,
html[data-theme="light"] body.dashboard-page .dash-v2 .title-cell .title:focus-visible,
html[data-theme="light"] body.dashboard-page .dash-v2 .btn-more:hover,
html[data-theme="light"] body.dashboard-page .dash-v2 .poll-chip,
html[data-theme="light"] body.dashboard-page .dash-v2 .poll-chip .poll-chip-more:hover,
html[data-theme="light"] body.dashboard-page .dash-v2 .unrun-hint,
html[data-theme="light"] body.dashboard-page .dash-v2 .no-signal,
html[data-theme="light"] body.dashboard-page .dash-v2 .hook,
html[data-theme="light"] body.dashboard-page .dash-v2 .side,
html[data-theme="light"] body.dashboard-page .dash-v2 .free-limits {
  background: rgba(15,23,42,0.035);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .detail {
  background: rgba(15,23,42,0.018);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .session-table {
  box-shadow: 0 18px 48px rgba(15,23,42,0.10);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .remote-row,
html[data-theme="light"] body.dashboard-page .dash-v2 .vote-block {
  background: rgba(15,23,42,0.04);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .vote-room {
  color: color-mix(in srgb, var(--cyan) 92%, black);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .status-pill.ended,
html[data-theme="light"] body.dashboard-page .dash-v2 .status-pill.idle {
  background: var(--glass-bg);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .status-pill.live {
  color: color-mix(in srgb, var(--green) 88%, black);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .limit-bar,
html[data-theme="light"] body.dashboard-page .result-bar-track {
  background: rgba(15,23,42,0.08);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .poll-chip-wrap.poll-chip-chosen .poll-chip {
  box-shadow: 0 12px 28px rgba(15,23,42,0.12), 0 0 0 1px rgba(6,182,212,0.24);
}

html[data-theme="light"] body.dashboard-page .dash-v2 .export-menu,
html[data-theme="light"] body.dashboard-page .poll-chip-menu,
html[data-theme="light"] body.dashboard-page .session-menu {
  background: var(--bg-surface);
  border-color: var(--glass-border-hover);
  box-shadow: 0 16px 40px rgba(15,23,42,0.16);
}

html[data-theme="light"] body.dashboard-page .poll-chip-menu button,
html[data-theme="light"] body.dashboard-page .session-menu button {
  color: var(--text-primary);
}

html[data-theme="light"] body.dashboard-page .poll-chip-menu button.danger,
html[data-theme="light"] body.dashboard-page .session-menu button.danger {
  color: var(--danger);
}

html[data-theme="light"] body.dashboard-page .poll-chip-menu button:hover:not([disabled]):not([aria-disabled="true"]),
html[data-theme="light"] body.dashboard-page .session-menu button:hover:not([disabled]):not([aria-disabled="true"]) {
  background: var(--glass-bg-hover);
}

html[data-theme="light"] body.dashboard-page .poll-chip-menu hr,
html[data-theme="light"] body.dashboard-page .session-menu hr {
  border-color: var(--glass-border);
}

/* Shared dashboard cards, result details, links, and transient UI */
html[data-theme="light"] body.dashboard-page .search-input {
  color: var(--text-primary);
  background: var(--glass-bg);
  border-color: var(--glass-border);
}

html[data-theme="light"] body.dashboard-page .search-icon,
html[data-theme="light"] body.dashboard-page .btn-action-sm {
  color: var(--text-secondary);
}

html[data-theme="light"] body.dashboard-page .btn-action-sm,
html[data-theme="light"] body.dashboard-page .poll-row,
html[data-theme="light"] body.dashboard-page .card-expanded-actions,
html[data-theme="light"] body.dashboard-page .recap-teaser__cta-row {
  border-color: var(--glass-border);
}

html[data-theme="light"] body.dashboard-page .btn-action-sm:hover {
  background: var(--glass-bg-hover);
  color: var(--text-primary);
}

html[data-theme="light"] body.dashboard-page .progress-ring .bg {
  stroke: var(--glass-border-hover);
}

html[data-theme="light"] body.dashboard-page .result-bar-synonyms {
  color: var(--text-secondary);
}

html[data-theme="light"] body.dashboard-page .session-links {
  background: var(--glass-bg);
  border-color: var(--glass-border);
}

html[data-theme="light"] body.dashboard-page .session-links .link-label {
  color: var(--text-secondary);
}

html[data-theme="light"] body.dashboard-page .session-links .link-url {
  color: var(--text-primary);
  background: rgba(15,23,42,0.04);
}

html[data-theme="light"] body.dashboard-page .session-links .btn-copy,
html[data-theme="light"] body.dashboard-page .session-links .btn-open,
html[data-theme="light"] body.dashboard-page .session-links .btn-qr,
html[data-theme="light"] body.dashboard-page .inline-confirm-no,
html[data-theme="light"] body.dashboard-page .downgrade-banner .btn-secondary {
  color: var(--text-secondary);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] body.dashboard-page .recap-teaser__skeleton {
  background: linear-gradient(90deg, rgba(15,23,42,0.04) 0%, rgba(15,23,42,0.10) 50%, rgba(15,23,42,0.04) 100%);
  background-size: 200% 100%;
}

html[data-theme="light"] body.dashboard-page .session-card:hover {
  box-shadow: 0 12px 34px rgba(15,23,42,0.12);
}

html[data-theme="light"] body.dashboard-page .dashboard-toast,
html[data-theme="light"] body.dashboard-page #dv3-toast {
  background: rgba(255,255,255,0.97);
  color: var(--text-primary);
  box-shadow: 0 16px 44px rgba(15,23,42,0.16);
}

/* Dashboard Pro settings */
html[data-theme="light"] body.dashboard-page .settings-backdrop {
  background: rgba(15,23,42,0.38);
}

html[data-theme="light"] body.dashboard-page .settings-dialog {
  color: var(--text-primary);
  box-shadow: 0 24px 72px rgba(15,23,42,0.18), 0 0 0 1px rgba(15,23,42,0.04) inset;
}

html[data-theme="light"] body.dashboard-page .settings-dialog .btn-close,
html[data-theme="light"] body.dashboard-page .settings-dialog .radio-option,
html[data-theme="light"] body.dashboard-page .radio-dot,
html[data-theme="light"] body.dashboard-page .logo-preview,
html[data-theme="light"] body.dashboard-page .preview-section,
html[data-theme="light"] body.dashboard-page .preview-label::after,
html[data-theme="light"] body.dashboard-page .btn-manage-sub,
html[data-theme="light"] body.dashboard-page .settings-dialog .btn-cancel {
  border-color: var(--glass-border);
}

html[data-theme="light"] body.dashboard-page .settings-dialog .btn-close:hover,
html[data-theme="light"] body.dashboard-page .settings-dialog .radio-option:hover {
  background: var(--glass-bg-hover);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] body.dashboard-page .radio-icon.hidden-icon,
html[data-theme="light"] body.dashboard-page .custom-branding {
  background: var(--glass-bg);
}

html[data-theme="light"] body.dashboard-page .logo-preview:hover,
html[data-theme="light"] body.dashboard-page .btn-manage-sub:hover,
html[data-theme="light"] body.dashboard-page .settings-dialog .btn-cancel:hover {
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] body.dashboard-page .save-success {
  box-shadow: 0 8px 32px rgba(15,23,42,0.16);
}

html[data-theme="light"] body.dashboard-page .ps-hint {
  color: var(--text-secondary) !important;
}

/* Flag-gated dashboard v3 remains theme-compatible without changing rollout. */
html[data-theme="light"] body.dashboard-page .dash-v3 .dv3-menu {
  box-shadow: 0 18px 48px rgba(15,23,42,0.16);
}

html[data-theme="light"] body.dashboard-page .dash-v3 .dv3-btn-primary,
html[data-theme="light"] body.dashboard-page .dash-v3 .dv3-present {
  color: var(--bg-surface);
}

html[data-theme="light"] body.dashboard-page .dv3-qr-back {
  background: rgba(15,23,42,0.38);
}

html[data-theme="light"] body.dashboard-page .dv3-qr-card {
  box-shadow: 0 24px 64px rgba(15,23,42,0.18);
}

html[data-theme="light"] body.dashboard-page .dv3-qr-card .dv3-btn-primary {
  color: var(--bg-surface);
}

/* Standard and Q&A voter surfaces */
html[data-theme="light"] body.voter-page,
html[data-theme="light"] body.qa-voter-page {
  --text-ter: rgba(15,23,42,0.62);
  --text-ghost: rgba(15,23,42,0.60);
}

html[data-theme="light"] body.voter-page::before {
  background: radial-gradient(circle, rgba(6,182,212,0.12) 0%, transparent 68%);
}

html[data-theme="light"] body.voter-page .spinner {
  border-color: var(--glass-border-hover);
  border-top-color: var(--cyan);
}

html[data-theme="light"] body.voter-page .btn-choice,
html[data-theme="light"] body.voter-page .btn-category,
html[data-theme="light"] body.voter-page .open-text-input,
html[data-theme="light"] body.voter-page .no-code-input {
  background: var(--bg-surface);
  color: var(--text-primary);
  border-color: var(--glass-border);
  box-shadow: 0 10px 26px rgba(15,23,42,0.08);
}

html[data-theme="light"] body.voter-page .btn-choice:hover,
html[data-theme="light"] body.voter-page .btn-category:hover {
  background: var(--bg-midnight);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] body.voter-page .open-text-input::placeholder,
html[data-theme="light"] body.voter-page .no-code-input::placeholder {
  color: var(--text-tertiary);
}

html[data-theme="light"] body.voter-page .no-code-form label,
html[data-theme="light"] body.voter-page .no-code-helper,
html[data-theme="light"] body.voter-page .no-code-footer-text {
  color: var(--text-secondary);
}

html[data-theme="light"] body.voter-page .no-code-footer {
  border-color: var(--glass-border);
}

html[data-theme="light"] body.voter-page .open-text-submit,
html[data-theme="light"] body.voter-page .no-code-btn,
html[data-theme="light"] body.voter-page .idle-reconnect-btn {
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--cyan) 35%, white),
    var(--magenta-bright)
  );
  color: var(--text-on-accent);
}

html[data-theme="light"] body.voter-page .vote-mute-btn,
html[data-theme="light"] body.voter-page .voter-theme-btn,
html[data-theme="light"] body.qa-voter-page .voter-theme-btn {
  background: rgba(255,255,255,0.94);
  color: var(--text-primary);
  border-color: var(--glass-border-hover);
  box-shadow: 0 8px 24px rgba(15,23,42,0.12);
}

html[data-theme="light"] body.voter-page .vote-mute-btn.muted {
  color: var(--text-tertiary);
}

html[data-theme="light"] body.voter-page .idle-overlay {
  background: rgba(246,248,252,0.94);
}

html[data-theme="light"] body.voter-page .idle-content {
  background: var(--bg-surface);
  border: 1px solid var(--glass-border);
  border-radius: var(--r-lg);
  box-shadow: 0 20px 56px rgba(15,23,42,0.16);
}

html[data-theme="light"] body.voter-page .checkmark {
  background: var(--cyan-subtle);
  border-color: rgba(6,182,212,0.32);
}

html[data-theme="light"] body.voter-page .error-icon {
  background: rgba(190,18,60,0.08);
  color: color-mix(in srgb, var(--danger) 68%, black);
}

html[data-theme="light"] body.voter-page #screen-paused .error-icon {
  background: rgba(245,158,11,0.12) !important;
  color: var(--amber-dim) !important;
}

html[data-theme="light"] body.voter-page .voter-cta,
html[data-theme="light"] body.voter-page .no-code-footer-link {
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] body.voter-page .vote-footer-privacy,
html[data-theme="light"] body.voter-page .vote-footer-support {
  opacity: 0.65;
}

/* Shared schema-driven vote forms injected by js/vote-form.js */
html[data-theme="light"] .vf-choice-btn,
html[data-theme="light"] .vf-text-input,
html[data-theme="light"] .vf-rank-item,
html[data-theme="light"] .vf-rank-arrow {
  background: var(--bg-surface);
  color: var(--text-primary);
  border-color: var(--glass-border);
}

html[data-theme="light"] .vf-choice-btn:hover,
html[data-theme="light"] .vf-rank-arrow:hover {
  background: var(--bg-midnight);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] .vf-text-input::placeholder,
html[data-theme="light"] .vf-rank-handle,
html[data-theme="light"] .vf-rank-hint,
html[data-theme="light"] .vf-2d-hint,
html[data-theme="light"] .vf-hint {
  color: var(--text-tertiary);
}

html[data-theme="light"] .vf-rank-item.dragging {
  background: var(--bg-elevated);
  box-shadow: 0 10px 28px rgba(15,23,42,0.18), 0 0 0 1px var(--vf-rank-color, var(--cyan));
}

html[data-theme="light"] .vf-2d-pad {
  background: linear-gradient(135deg, rgba(6,182,212,0.08), rgba(217,70,239,0.06));
  color: var(--text-primary);
  border-color: var(--glass-border-hover);
  box-shadow: 0 12px 30px rgba(15,23,42,0.10);
}

html[data-theme="light"] .vf-2d-grid::before,
html[data-theme="light"] .vf-2d-grid::after {
  background: rgba(15,23,42,0.12);
}

html[data-theme="light"] .vf-2d-axis {
  color: var(--text-secondary);
}

html[data-theme="light"] .vf-submit {
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--cyan) 35%, white),
    var(--magenta-bright)
  );
  color: var(--text-on-accent);
}

html[data-theme="light"] .vf-confirm {
  background: linear-gradient(180deg, var(--bg-surface), var(--bg-midnight));
  color: var(--text-primary);
}

html[data-theme="light"] .vf-confirm p {
  color: var(--text-secondary);
}

html[data-theme="light"] .vf-confirm strong {
  color: var(--cyan-bright);
}

/* Dedicated Q&A voter */
html[data-theme="light"] body.qa-voter-page .topbar,
html[data-theme="light"] body.qa-voter-page .tabs {
  background: rgba(255,255,255,0.94);
  border-color: var(--glass-border);
  box-shadow: 0 8px 24px rgba(15,23,42,0.08);
}

html[data-theme="light"] body.qa-voter-page .join-hero .prompt,
html[data-theme="light"] body.qa-voter-page .ask-pane textarea,
html[data-theme="light"] body.qa-voter-page .ask-pane .name-input,
html[data-theme="light"] body.qa-voter-page .qcard,
html[data-theme="light"] body.qa-voter-page .compose-bar {
  background: var(--bg-surface);
  color: var(--text-primary);
  border-color: var(--glass-border);
  box-shadow: 0 10px 28px rgba(15,23,42,0.10);
}

html[data-theme="light"] body.qa-voter-page .qcard .upvote,
html[data-theme="light"] body.qa-voter-page .ask-head .back,
html[data-theme="light"] body.qa-voter-page .ask-pane .actions .cancel {
  background: var(--glass-bg);
  color: var(--text-primary);
  border-color: var(--glass-border-hover);
}

html[data-theme="light"] body.qa-voter-page .qcard.featured {
  background: rgba(217,70,239,0.10);
  border-color: rgba(134,25,143,0.42);
}

html[data-theme="light"] body.qa-voter-page .qcard .upvote.voted {
  background: var(--cyan-subtle);
  border-color: rgba(14,116,144,0.42);
  color: var(--cyan-bright);
}

html[data-theme="light"] body.qa-voter-page .join-hero .ask-cta,
html[data-theme="light"] body.qa-voter-page .ask-pane .actions .submit,
html[data-theme="light"] body.qa-voter-page .error-state .retry-btn {
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--cyan) 35%, white),
    var(--magenta-bright)
  );
  color: var(--text-on-accent);
}

html[data-theme="light"] body.qa-voter-page .compose-bar {
  backdrop-filter: blur(12px);
}

html[data-theme="light"] body.qa-voter-page .qcard .pending-tag {
  color: var(--amber-dim);
}

html[data-theme="light"] body.qa-voter-page .error-state h2,
html[data-theme="light"] body.qa-voter-page .ask-pane .error {
  color: color-mix(in srgb, var(--danger) 68%, black);
}

html[data-theme="light"] body.qa-voter-page .toast {
  background: rgba(255,255,255,0.96);
  color: var(--cyan-bright);
  box-shadow: 0 12px 32px rgba(15,23,42,0.14);
}

html[data-theme="light"] body.qa-voter-page .toast.error {
  background: rgba(190,18,60,0.08);
  border-color: rgba(190,18,60,0.34);
  color: color-mix(in srgb, var(--danger) 68%, black);
}
