/* Applied by the stylesheet media query or the saved theme preference. */
:root {
  color-scheme: dark;
  --paper: #111c18;
  --ink: #f1eee6;
  --green: #30694f;
  --muted: #b3bfb5;
  --line: #34463d;
  --orange: #eca476;
  --surface: #1b2c23;
  --surface-raised: #23362b;
  --sage: #b8c9ad;
  --accent-text: #bdd9ac;
  --warm-surface: #302a22;
  --warm-text: #d6c1a8;
}

::selection { background: #516b48; color: #fff9e9; }
:focus-visible { outline-color: var(--orange); }
input { color: var(--ink); }
input::placeholder { color: var(--muted); opacity: 1; }
.button:hover { background: #3c7b60; }
.button-cream { background: var(--cream); color: #243c34; }
.button-cream:hover { background: #fff7e9; }
.icon-button:hover, .filter:hover { background: var(--surface-raised); }
.text-link { border-color: #667b68; }
.text-link:hover,
.main-nav a:hover,
.main-nav a[aria-current],
.story-card h3 a:hover,
.article-sidebar nav > a:hover,
.search-result:hover strong,
.email-field button:hover { color: var(--orange); }
.text-link:hover { border-color: var(--orange); }
.saved-count { color: #1b251c; }

.intro-thai,
.intro-thai > span,
.section-heading .eyebrow,
.story-meta,
.slow-copy > .eyebrow,
.page-heading > .eyebrow,
.page-heading h1 em,
.destination-intros .eyebrow,
.destination-detail > .eyebrow,
.article-header > .eyebrow,
.article-sidebar > .eyebrow,
.article-sidebar nav span,
.plan-layout > div > .eyebrow,
.itinerary-stop .eyebrow,
.search-dialog-head .eyebrow,
.stop-number,
.empty-state > .icon { color: var(--sage); }

.story-meta > span + span,
.slow-copy > p,
.footer-bottom,
.breadcrumb,
.article-byline > span > span,
.article-cover > figcaption,
.search-result small { color: var(--muted); }
.article-body p { color: #cad2c8; }

.filter { border-color: var(--line); }
.filter.active { background: var(--green); border-color: var(--green); }
.story-image { background: var(--surface); }
.image-label, .save-button { background: #1b2c23f0; color: var(--ink); }
.save-button:hover { background: #344c3e; }
.save-button[aria-pressed=true] { background: #b8cfa5; color: #17251c; }

.slow-banner,
.checklist-panel,
.empty-state,
.article-body .source-note { background: var(--surface); }
.slow-copy > .brand-star { color: #a8bd97; }
.planning-card:hover { background: var(--surface); }
.planning-icon { background: var(--surface-raised); color: var(--sage); }
.author-avatar { background: #343329; }
.highlight-list .icon,
.article-save[aria-pressed=true],
.text-page a,
.form-status { color: var(--accent-text); }
.form-status.error { color: #ffad9f; }

.newsletter, .postmark { background: var(--warm-surface); }
.newsletter-copy > .eyebrow,
.newsletter-art > .icon,
.postmark { color: #e3b18a; }
.postmark { border-color: #bb8c64; }
.newsletter-copy > p, .consent { color: var(--warm-text); }
.email-field { border-color: #87765f; }
.newsletter input::placeholder { color: var(--warm-text); }
.consent input, .checklist input, progress { accent-color: #b8cfa5; }
.checklist label { border-color: var(--line); }
.checklist label:has(input:checked) span { color: #a3b39b; }
progress::-webkit-progress-bar { background: #34483a; }
progress::-webkit-progress-value { background: #b8cfa5; }
progress::-moz-progress-bar { background: #b8cfa5; }
.tiny-dot { background: #b8cfa5; }

.search-dialog { box-shadow: 0 30px 100px #0009; }
.search-dialog::backdrop { background: #030907c9; }
.search-form { border-color: #667b68; }
.main-nav { box-shadow: none; }
.toast { background: #314e3c; color: #fff9ed; box-shadow: 0 10px 35px #0005; }

@media (max-width: 700px) {
  .article-sidebar { background: var(--surface); }
  .main-nav { box-shadow: 0 12px 20px #0004; }
}
