/* Appearance preferences are local to this browser. Default daylight retains the original palette. */
:root{--theme-accent:#315c45;--theme-on-accent:white;--surface:#fffdf7;--soft-surface:#eef0e5}
.settings-ready #info-open{display:none}.settings-ready .topbar{gap:12px}
#appearance-open{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:12px;background:var(--surface);flex-shrink:0}
#appearance-open svg{transform:translateX(1px)}
.city-skyline{display:block;color:var(--theme-accent);width:100%;max-width:240px;height:auto;pointer-events:none}
.show-intro>.city-skyline{float:right;width:44%;max-width:150px;margin:14px -4px 0 7px;opacity:.85}
.show-intro:after{content:'';display:block;clear:both}.show-intro>.primary{clear:both}
#show-reading-page{inset:0;width:min(720px,calc(100% - 32px));height:min(760px,82dvh);max-height:82dvh;margin:auto;border:1px solid var(--line);border-radius:24px;box-shadow:0 24px 90px #0005;background:var(--paper)}
.reading-header{justify-content:space-between;padding:18px 22px;gap:16px;background:var(--paper)}
.reading-header button{font-size:26px;line-height:1;width:36px;height:36px;padding:0;background:var(--surface)}
.reading-content{padding:18px 22px 28px}
#show-reading-page::backdrop,#appearance-dialog::backdrop{background:#0d15246b;backdrop-filter:blur(3px)}
#appearance-dialog{width:min(440px,calc(100% - 32px));padding:24px;max-height:84dvh;overflow:auto}
.settings-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.settings-heading small{font-size:8px;letter-spacing:1.6px;color:var(--muted)}.settings-heading h2{font-size:23px;margin:6px 0 0}.settings-heading button{width:36px;height:36px;font-size:26px;border-radius:12px;background:var(--soft-surface)}
.appearance-preview{margin:20px 0;padding:20px 16px 14px;border:1px solid var(--line);border-radius:18px;background:var(--surface);text-align:center}.appearance-preview .city-skyline{margin:auto;max-width:270px}.appearance-preview>span{display:block;font-size:11px;margin-top:10px;color:var(--muted)}
.night-setting{display:flex;align-items:center;gap:12px;padding:6px 0 22px;cursor:pointer;position:relative}.night-setting>span:first-child{flex:1}.night-setting strong{display:block;font-size:14px}.night-setting small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.night-setting input{position:absolute;right:0;opacity:0;width:46px;height:28px;margin:0}.switch-track{width:46px;height:27px;background:#c4cbc2;border-radius:20px;pointer-events:none;position:relative}.switch-track:after{content:'';position:absolute;left:4px;top:4px;width:19px;height:19px;background:white;border-radius:50%;transition:transform .15s}.night-setting input:checked+.switch-track{background:var(--theme-accent)}.night-setting input:checked+.switch-track:after{transform:translateX(19px);background:var(--theme-on-accent)}.night-setting input:focus-visible+.switch-track{outline:3px solid var(--theme-accent);outline-offset:3px}
.theme-picker{border:0;border-top:1px solid var(--line);padding:18px 0 0;margin:0}.theme-picker legend{padding:0 10px 0 0;font-weight:600;font-size:13px}.theme-picker>div{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.theme-picker label{position:relative;display:flex;align-items:center;flex-direction:column;gap:9px;font-size:10px;text-align:center;cursor:pointer;padding:10px 0}.theme-picker input{position:absolute;opacity:0;width:40px;height:40px;margin:0;top:5px}.theme-dot{width:30px;height:30px;border-radius:50%;background:var(--swatch);border:1px solid #0002;box-shadow:0 0 0 4px var(--paper)}.theme-picker input:checked+.theme-dot{outline:2px solid var(--theme-accent);outline-offset:4px}.theme-picker input:focus-visible+.theme-dot{outline:3px dashed var(--theme-accent);outline-offset:4px}
.appearance-note{font-size:10px;color:var(--muted);line-height:1.8;margin:16px 0 22px}#settings-account-slot{border-top:1px solid var(--line);padding-top:14px}#settings-info{display:flex;justify-content:space-between;width:100%;padding:8px 0;font-size:12px}
html:not([data-accent=default]){--green:var(--theme-ink,var(--theme-accent))}
html:not([data-accent=default]) .primary,html:not([data-accent=default]) nav button.active,html:not([data-accent=default]) .map-filters button.active,html:not([data-accent=default]) .atlas-toolbar button:first-child{background:var(--theme-accent);color:var(--theme-on-accent)}
html:not([data-accent=default]) .show-intro h1 span{color:var(--theme-ink,var(--theme-accent))}
html:not([data-accent=default]) .brand-icon{background:color-mix(in srgb,var(--theme-accent) 24%,var(--surface));border-color:color-mix(in srgb,var(--theme-accent) 45%,var(--line))}
html[data-appearance=night]{color-scheme:dark;--paper:#121722;--ink:#e7edf6;--muted:#a8b5c8;--line:#303b4e;--green:var(--theme-accent);--surface:#1c2534;--soft-surface:#253147;--yellow:#e5ca84;--lime:#344136;--shadow:0 12px 40px #0005}
html[data-appearance=night] :is(.place-card,.mobile-sheet-head,.show-tabs,.mobile-details-toggle,.search-box,.map-action,.map-filters button,.map-filters,.map-switches button,.map-controls button,.atlas-toolbar button,.transport-option,.secondary,.preset,.card-metrics>div,.food-picks,.notice,.mark-editor,.official-tools,.map-caption,#atlas-map-status,.reading-header button,#mobile-header-toggle,.mobile-sheet-head button,.atlas-menu button,.atlas-card-actions button,.atlas-admin-row button,nav){background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-appearance=night] :is(.primary,nav button.active,.map-filters button.active,.atlas-toolbar button:first-child,#atlas-pickbar button,.event-card){background:var(--theme-accent);color:var(--theme-on-accent)}
html[data-appearance=night] :is(.field input,.field select,#atlas-dialog input,#atlas-dialog select,#atlas-dialog textarea,.mark-editor input){background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-appearance=night] :is(.transport-option p,.transport-option ol,.atlas-public-notes p,.card-desc,.community-note,.pin-label,.list-place small,.small-note){color:var(--muted)}
html[data-appearance=night] :is(.show-callout,.show-callout.compact,#atlas-pickbar){background:var(--soft-surface);color:var(--ink);border-color:var(--line)}
html[data-appearance=night] :is(.tags span,.list-icon,.card-symbol,.show-tabs button.active,.area-chips button.active,.transport-option header span,.map-switches button[aria-pressed=true]){background:var(--soft-surface);color:var(--theme-accent);border-color:var(--theme-accent)}
html[data-appearance=night] .brand-icon{background:#2b3444;border-color:#4b5362}html[data-appearance=night] .show-intro h1 span{color:var(--theme-accent)}
html[data-appearance=night] .pin-label{background:#192333ed;border-color:#3a4658;color:#e7edf6}html[data-appearance=night] .pin-bubble{border-color:#29374b}
html[data-appearance=night] .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.7) saturate(.55)}
html[data-appearance=night] .leaflet-gl-layer{filter:none}
html[data-appearance=night] .atlas-base-label{color:#c4d2e4;text-shadow:0 1px 2px #101825,0 -1px 2px #101825,1px 0 2px #101825,-1px 0 2px #101825}
html[data-appearance=night] .map-space,html[data-appearance=night] #map{background:#101923}
html[data-appearance=night] .sidebar{background:var(--paper);color:var(--ink)}
html[data-appearance=night] .show-tabs button{background:var(--surface);color:var(--muted);border-color:var(--line)}
html[data-appearance=night] .show-tabs button.active{background:var(--soft-surface);color:var(--theme-accent)}
html[data-appearance=night] .place-card.action-go>.nav-options a{background:var(--surface);border-color:var(--line)}
html[data-appearance=night] .leaflet-control-attribution{background:#172130ef!important;color:var(--muted)}html[data-appearance=night] .event-card :is(small,span,.tiny-link){color:var(--theme-on-accent)}
@media(max-width:760px){.settings-ready .topbar{gap:7px}.settings-ready .brand{font-size:14px}.settings-ready #mobile-header-toggle{margin-left:auto}.settings-ready #appearance-open{width:30px;height:30px;border-radius:9px}.mobile-header-folded #appearance-open{height:26px;width:28px}.reading-header{padding:14px 16px}.reading-content{padding:12px 18px 22px}.show-intro>.city-skyline{width:39%;margin:0 0 5px 6px;max-width:115px}.show-intro h1{min-height:45px;display:flex;flex-wrap:wrap;align-content:center;font-size:18px}.show-intro>.primary{width:100%}#appearance-dialog{padding:20px}}
@media(prefers-reduced-motion:reduce){.switch-track:after{transition:none}}
.theme-picker>div{grid-template-columns:repeat(3,1fr);gap:5px 8px}.theme-picker label{font-size:11px}.palette-note{font-size:10px;line-height:1.8;color:var(--muted);margin:12px 0 0}
.theme-picker .theme-love{grid-column:span 2;flex-direction:row;justify-content:center;gap:14px}.theme-love .theme-dot{width:58px;border-radius:20px}.theme-love input{left:calc(50% - 84px);width:58px}
html[data-accent=love]{--love-gradient:linear-gradient(120deg,#8068ad,#d688b1,#ff9a7d)}
html[data-accent=love] .appearance-preview{background:linear-gradient(135deg,#eee7f7,#fae3ec,#ffe7d9)}
html[data-accent=love] .city-skyline path:nth-child(3n+1){stroke:#8e65ab}html[data-accent=love] .city-skyline path:nth-child(3n+2){stroke:#c26996}html[data-accent=love] .city-skyline path:nth-child(3n){stroke:#dd795e}
html[data-accent=love] :is(nav button.active,.atlas-toolbar button:first-child,.primary){background:var(--love-gradient);color:#251b32}
html[data-accent=love][data-appearance=night] .appearance-preview{background:linear-gradient(135deg,#2b243c,#392738,#49302e)}
html[data-accent=love][data-appearance=night] .city-skyline path:nth-child(3n+1){stroke:#b99ae0}html[data-accent=love][data-appearance=night] .city-skyline path:nth-child(3n+2){stroke:#e5a1c0}html[data-accent=love][data-appearance=night] .city-skyline path:nth-child(3n){stroke:#ffab91}
html[data-accent=white] .appearance-preview{background:#4c6576}html[data-accent=white] .appearance-preview>span{color:#e8f2f6}html[data-accent=white] .show-intro>.city-skyline{filter:drop-shadow(0 1px 1px #476879)}
