:root{color-scheme:light}
:root[data-theme=dark]{color-scheme:dark;--paper:#121e1b;--white:#192823;--ink:#e5ece7;--green:#a0d4b9;--green-light:#263e33;--line:#40574c;--muted:#b3c4ba;--coral:#ecaa87;--water:#416b70;--soft:#23382e;--surface-2:#23382e;--interaction-ring:#a0d4b9;--interaction-tint:#2a4437;--shadow:0 12px 40px #0004}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:10px;border:1.5px solid var(--line);border-radius:7px;background:var(--white);color:var(--ink);cursor:pointer}
.theme-toggle svg{width:20px;height:20px}.theme-toggle:hover{background:var(--green-light);outline:2px solid var(--green);outline-offset:-2px;border-color:transparent}.page-appearance{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-appearance>.brand{min-width:0}
:root[data-theme=dark] body{background:var(--paper);color:var(--ink)}
:root[data-theme=dark] :is(dialog,.sidebar,.place-detail,.route-detail,.directory-categories,.map-selection,.map-context-toolbar button,.map-controls,.map-language,.map-mode,.language-menu,.more-view-links){background-color:var(--white);color:var(--ink)}
:root[data-theme=dark] :is(#map-credits,#map-credit-details,.maplibregl-popup-content){background:var(--white);color:var(--ink);border-color:var(--line)}
:root[data-theme=dark] .maplibregl-ctrl-attrib a{color:var(--green)}
:root[data-theme=dark] :is(.global-result,.directory-card,.place-card,.route-card){color:var(--ink)}
:root[data-theme=dark] :is(.district-card,.district-feature-card){background:var(--white);color:var(--ink)}
:root[data-theme=dark] :is(.place-category,.place-address,.place-local-name,.eyebrow,.caption){color:var(--muted)}
:root[data-theme=dark] .landuse-card{background:linear-gradient(135deg,#213e2d,#263b30);color:#d9e9d6}
:root[data-theme=dark] .landuse-card :is(.landuse-description,.landuse-source,.landuse-measure strong){color:#c9e1c8}
:root[data-theme=dark] .landuse-botany{color:#b4dca9;opacity:.15}
:root[data-theme=dark] .site-footer::before{opacity:.4;filter:brightness(1.7)}
:root[data-theme=dark] :is(.facts-grid,.metric-card,.place-facilities,.facility-tags li,.directory-scope){border-color:var(--line)}
@media(max-width:740px){.topbar .theme-toggle{width:36px;height:44px;padding:8px}.topbar{column-gap:6px}.page-appearance{gap:10px}}
@media(forced-colors:active){.theme-toggle{border-color:ButtonText}.theme-toggle svg{forced-color-adjust:auto}}

.appearance-controls{display:flex;align-items:center;gap:5px;flex:none}.reading-toggle{width:38px;min-height:44px;padding:6px;border:1.5px solid var(--line);border-radius:7px;background:var(--white);font-size:16px;line-height:1;font-weight:600}.reading-toggle[aria-pressed=true]{background:var(--green-light);border-color:var(--green)}.reading-toggle:hover{outline:2px solid var(--green);outline-offset:-2px;border-color:transparent;background:var(--green-light)}
:root[data-reading=large]{font-size:112.5%}
:root[data-reading=large] :is(.sidebar .place-introduction,.sidebar .route-description,.sidebar .place-address,.sidebar .place-facts dd,.sidebar .place-district,.sidebar .city-intro>p,.directory-card-address,.place-introduction-context){font-size:17px;line-height:1.65}
:root[data-reading=large] :is(.sidebar .place-copy h3,.directory-card strong){font-size:20px;line-height:1.4}
:root[data-reading=large] :is(.sidebar .place-category,.sidebar .list-heading h2,.directory-card-category,.sidebar .sea-section p){font-size:16px}
:root[data-reading=large] .place-local-name{font-size:19px!important}
:root[data-reading=large] .topbar{font-size:16px}:root[data-reading=large] .map-shell{--text-caption:14px}
@media(max-width:740px){.appearance-controls{gap:3px}.topbar .reading-toggle{width:34px}.topbar .appearance-controls{grid-column:auto}}
.place-introduction-source{display:inline-flex;font-size:13px;min-height:28px;align-items:center;color:var(--muted);margin-top:-7px;margin-bottom:5px}.place-introduction-source:hover{text-decoration:underline}

.more-view-links>.appearance-controls{border-top:1px solid var(--line);padding:9px 8px 3px;margin-top:6px;justify-content:flex-end}.more-view-links .appearance-controls button{width:44px;height:44px;padding:10px}.topbar>.topbar-right{gap:8px}
@media(min-width:1101px) and (max-width:1600px){.topbar{grid-template-columns:auto 1fr}.topbar>.view-switcher{grid-column:1/-1;grid-row:2;justify-content:center}.topbar>.topbar-right{grid-column:2;grid-row:1}.topbar>.brand{grid-column:1;grid-row:1}}

.more-view-links .appearance-controls .surprise-place{display:inline-flex;width:44px;height:44px;margin:0;border:1.5px solid var(--line);border-radius:7px}.surprise-place svg{stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
