/* Theme overrides. Load after shared and page-specific styles. */

html[data-theme="dark"] {
  color-scheme: dark;
}

html[data-theme="dark"] body {
  --paper: #0b1423;
  --soft: #142239;
  --ink: #edf3ff;
  --muted: #b2bfd3;
  --line: #30425d;
  --accent: #91bdff;
}

html[data-theme="dark"] .brand-light,
html[data-theme="dark"] .theme-moon {
  display: none;
}

html[data-theme="dark"] .brand .brand-dark,
html[data-theme="dark"] .theme-sun {
  display: block;
}

html[data-theme="dark"] .site-header {
  background: #0b1423f5;
  border-color: var(--line);
}

html[data-theme="dark"] .desktop-nav {
  color: var(--muted);
}

html[data-theme="dark"] .skip-link {
  background: var(--soft);
}

html[data-theme="dark"] :focus-visible {
  outline-color: #91bdff;
}

html[data-theme="dark"] :is(h1 span, h2 span, .eyebrow, .signature, .check-list li::before, .faq-list summary span, .document-note svg, .step-number, .hero-note svg, .note-icon, .hospitality-copy h1 em, .hospitality-summary .understated-link, .hospitality-rates .editorial-list article > span) {
  color: var(--accent);
}

html[data-theme="dark"] :is(.desktop-nav a:hover, .understated-link:hover) {
  color: var(--accent);
}

html[data-theme="dark"] .feature-card,
html[data-theme="dark"] :is(.floating-note, .price-card, .hospitality-rates .editorial-list article) {
  background: #132139;
  border-color: var(--line);
}

html[data-theme="dark"] .hospitality-benefits .feature-grid {
  padding: clamp(20px, 2.2vw, 32px);
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #132139;
}

html[data-theme="dark"] .hospitality-benefits .feature-card {
  background: transparent;
}

html[data-theme="dark"] .hospitality-benefits .feature-card:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

html[data-theme="dark"] .feature-card:hover {
  border-color: #91bdff;
}

html[data-theme="dark"] :is(.product-section, .hospitality-onboarding) {
  background: #111f34;
}

html[data-theme="dark"] .hospitality-hero {
  background: linear-gradient(160deg, #0d1b30, #142a49);
}

html[data-theme="dark"] .hospitality-summary > p {
  color: var(--muted);
}

html[data-theme="dark"] :is(.ribbon, .dark-section, .site-footer) {
  background: #0e1d32;
  border-color: var(--line);
}

html[data-theme="dark"] .ribbon .container > span {
  color: #e1ebfb;
}

html[data-theme="dark"] .ribbon .container > span + span {
  border-color: var(--line);
}

html[data-theme="dark"] .ribbon svg {
  background: #204782;
  color: #fff;
}

html[data-theme="dark"] .note-icon {
  background: #203654;
}

html[data-theme="dark"] :is(.item-number, .visual-caption, .product-caption, .flow-buttons button) {
  color: var(--muted);
}

html[data-theme="dark"] .flow-buttons button.active {
  background: var(--blue);
  color: white;
}

html[data-theme="dark"] .flow-buttons button:hover:not(.active) {
  background: #263c5a;
}

html[data-theme="dark"] :is(.product-window, .hospitality-onboarding .steps li, .step-number, .steps li::after) {
  border-color: var(--line);
}

html[data-theme="dark"] .window-bar {
  color: var(--muted);
  background: #18283f;
  border-color: var(--line);
}

html[data-theme="dark"] .window-dots {
  color: #8b9cb6;
}

html[data-theme="dark"] .price-badge {
  color: #23380e;
}

html[data-theme="dark"] .button.primary {
  background: #235bcb;
}

html[data-theme="dark"] .button.primary:hover {
  background: #194cae;
}

html[data-theme="dark"] .organizer-hero {
  background: #0d1d35;
}

html[data-theme="dark"] .organizer-preview {
  background: #172e4e;
}

html[data-theme="dark"] .page-promotor .organizer-copy h1 span {
  color: var(--lime);
}

html[data-theme="dark"] :is(.organizer-copy .eyebrow, .preview-label) {
  color: #b8ceef;
}

html[data-theme="dark"] :is(.final-cta .eyebrow, .dark-section .eyebrow, .dark-section h2 span) {
  color: var(--lime);
}

html[data-theme="dark"] .footer-grid address,
html[data-theme="dark"] .footer-bottom {
  color: #a7b6cb;
}

html:not([data-theme="dark"]) .organizer-hero {
  background: #f4f7fd;
  color: #14243c;
}

html:not([data-theme="dark"]) .organizer-copy h1 span {
  color: #1543a6;
}

html:not([data-theme="dark"]) .organizer-copy .eyebrow {
  color: #1543a6;
}

html:not([data-theme="dark"]) .organizer-copy .status-dot {
  background: #1543a6;
  box-shadow: 0 0 0 5px #1543a612;
}

html:not([data-theme="dark"]) .organizer-copy > p {
  color: #52647d;
}

html:not([data-theme="dark"]) .organizer-copy .understated-link {
  color: #1543a6;
}

html:not([data-theme="dark"]) .organizer-copy .button.white {
  background: #1543a6;
  color: #fff;
}

html:not([data-theme="dark"]) .organizer-copy .button.white:hover {
  background: #0c3286;
}

html:not([data-theme="dark"]) .organizer-free span {
  color: #1543a6;
}

html:not([data-theme="dark"]) .event-types span {
  color: #52647d;
  border-color: #bdcbe3;
}

html:not([data-theme="dark"]) .organizer-preview {
  background: #e5edf9;
  border-color: #bdcbe3;
}

html:not([data-theme="dark"]) .preview-label {
  color: #1543a6;
}

html:not([data-theme="dark"]) .preview-label > :last-child,
html:not([data-theme="dark"]) .organizer-workflow > div > span {
  color: #1543a6;
}

html:not([data-theme="dark"]) .organizer-workflow p {
  color: #52647d;
}
