/* Surface and text colors are independent of the brand's dark background token. */
:root { --text-muted: #526575; --text-accent: #a92a32; color-scheme: light; }
body.pwa-dark { --ink: #102a43; --paper: #f8f7f2; --line: #102a4326; background: var(--paper); color: var(--ink); }
/* The native app supports dark surfaces; editorial/store pages keep their own palette. */
.pwa-dark .pwa-screen { background: #0d202d; color: #edf5f7; }
.pwa-dark .pwa-screen :is(.pwa-app-header a,.pwa-page-head>a,.pwa-feed article,.pwa-recent a,.pwa-region-grid article,.pwa-chips a,.pwa-suggestion span:first-child,.pwa-tabs button,.pwa-settings-list,.pwa-settings-list>a,.pwa-settings-list>button,.pwa-saved-item) { background: #122a38; color: #edf5f7; border-color: #526575; }
.pwa-dark .pwa-screen :is(.pwa-native-search>header,.pwa-offline-summary,.pwa-empty>span,.pwa-search-empty>span,.pwa-settings-list>a>span,.pwa-settings-list>button>span,.pwa-chips small) { color: #102a43; }
.pwa-dark .pwa-screen :is(.pwa-page-head>button,.pwa-recent button,.pwa-search-recents button,.pwa-saved-item button) { color: #edf5f7; }
.pwa-dark .pwa-screen .pwa-region-grid article>span { color: #ffb5b5; }
.pwa-dark .pwa-tabs button.active { background: #ffd447; color: #102a43; }
.story-article { color: var(--ink); }
.story-meta small,.story-route-head small,.story-share small,.story-toc a,.story-rule small { color: var(--text-muted); opacity: 1; }
.story-toc a:hover,.story-toc a.is-active { color: var(--ink); }
body .section-label,.post-card .eyebrow,.pwa-region-grid article>span,.language-switch>a.is-active,.language-switch>a:hover { color: var(--text-accent); }
body .page-head .section-label { color: var(--text-accent); }
.pwa-dark .pwa-screen .section-label { color: #ffb5b5; }
.pwa-dark .pwa-screen :is(.pwa-store-entry,.pwa-load-more>a) { color: #102a43; }
.pwa-dark .pwa-screen .pwa-load-more>a { background: #fff; }
.season .section-label { color: #ffd447; }
.install-features>header .section-label { color: #ffd447; }
.story-article .pg-gallery__label { color: var(--text-accent); }
.story-article .pg-gallery__meta { color: var(--text-muted); }
.card-index { color: #102a43; }
.story-cover figcaption { background: linear-gradient(#08141ec7,#08141ee8); }
.story-body .prose a:not(.ad-link):not(.cta):not(.outline-cta) { text-decoration: underline; text-underline-offset: .18em; }
input,textarea,select { color: #102a43; }
input::placeholder,textarea::placeholder { color: #526575; opacity: 1; }
.newsletter input::placeholder { color: #c8dce5; }
.newsletter input { color: #fff; }
.checklist input:checked+span { opacity: .75; }
.search-suggestions small { color: var(--text-muted); opacity: 1; }
.login .brand span { color: #c93636; }
.pwa-store-entry>span { color: #102a43; opacity: .8; }
.pwa-bottom-nav a.active { color: #a92a32; }
html.pwa-standalone .pwa-bottom-nav { background: #fff; }
/* A minimum scrim keeps white editorial copy readable even over bright photographs. */
.hero:not(.hero-text-dark) { background-image: linear-gradient(90deg,rgba(8,20,30,max(.68,var(--hero-overlay,.45))),rgba(8,20,30,.58)),var(--hero); }
@media(max-width:800px) { .hero:not(.hero-text-dark) { background-image: linear-gradient(0deg,rgba(8,20,30,max(.68,var(--hero-overlay,.45))),rgba(8,20,30,.58)),var(--hero-mobile,var(--hero)); } }
.country-hero { background-image: linear-gradient(0deg,#08141ed9,#08141e99),var(--hero); }
.pwa-country-row a { background-image: linear-gradient(#06131da6,#06131ddd),var(--country-image); }
.hero-side-number { color: #c8dce5; }
.pwa-register-form { color: #102a43; }
.pwa-register-form>div>small { color: #a92a32; }
