/* Dark mode for the non-guest public pages (hotel list, privacy, terms, contribute, request). Follows the guest choice (localStorage hc-theme) or the system setting. */
html[data-theme="dark"] { color-scheme: dark; background: #0e1a21; }
html[data-theme="dark"] body { background: linear-gradient(180deg, #11262f 0, #0e1a21 360px); color: #e7eff3; }
html[data-theme="dark"] {
  --paper: #16262f; --ink: #e7eff3; --muted: #a2b5bf; --limestone: #0e1a21; --sky: #1d3643;
  --line: #2b404c; --aegean: #7cc0f0; --aegean-dark: #bfe0f7; --accent: #2b86c8; --accent-dark: #8ccaf5;
  --cream: #0e1a21; --navy: #e7eff3; --blue: #7cc0f0; --shadow: 0 15px 38px rgba(0,0,0,.45);
}
html[data-theme="dark"] :is(.policy-card, .hotel-card, .local-intro, .place-choice, .attribute-group, .admin-link, .hotel-count, .directory-status, .card, section:not(.hotel-directory), article, .panel, dialog) { background-color: #16262f; color: #e7eff3; border-color: #2b404c; }
html[data-theme="dark"] :is(.attribute-group summary, .choice-tabs, .overall-fieldset, .hotel-action-qr) { background: #1d3643; color: #e7eff3; }
html[data-theme="dark"] :is(input, select, textarea) { background: #1a2d38; color: #e7eff3; border-color: #36505e; }
html[data-theme="dark"] :is(.overall-options span, .attribute-options span) { background: #1a2d38; color: #e7eff3; border-color: #36505e; }
html[data-theme="dark"] :is(.overall-options input:checked + span, .attribute-options input:checked + span, .choice-tab.active, .button.primary, .hotel-action-primary) { background: var(--accent); color: #fff; }
html[data-theme="dark"] .button.secondary { background: #1d3643; color: #e7eff3; border-color: #36505e; }
html[data-theme="dark"] .notice { background: #17332a; color: #bfe8d6; border-color: #2d5d4b; }
html[data-theme="dark"] :is(.notice.error, .directory-status.error) { background: #3b1f1f; color: #f2c4c4; border-color: #6b3535; }
html[data-theme="dark"] a { color: #8ccaf5; }
html[data-theme="dark"] :is(.button.primary, .hotel-action-primary) { color: #fff; }
html[data-theme="dark"] :is(h1, h2, h3, strong, label, legend, summary) { color: #e7eff3; }
html[data-theme="dark"] :is(.eyebrow, [class*="kicker"]) { color: #8ccaf5; }
html[data-theme="dark"] :is(.hotel-card-location, .hotel-card-arrow) { color: #8ccaf5; }
html[data-theme="dark"] :is(.directory-brand-mark, .local-logo) { background: #1c6aa5; color: #fff; }
html[data-theme="dark"] .hotel-action-primary { filter: brightness(.82); }
html[data-theme="dark"] :is(.rating-count, .candidate-count) { color: #8ccaf5; }
html[data-theme="dark"] :is(.choice-tab.active, .button.primary, .overall-options input:checked + span, .attribute-options input:checked + span) { background: #1c6aa5; color: #fff; }
