/* Uncropped, right aligned illustration beside a readable forecast. */
.weatherPage[data-season] .weatherSky .weatherMoodImage{inset:0;background-size:contain;background-position:right center;background-color:var(--panel)}
.weatherPage .weatherMoodImage[data-night-art="dim"]{filter:brightness(.53) saturate(.78) hue-rotate(12deg)}
.weatherPage[data-time="night"] .weatherSky:after{background:linear-gradient(90deg,#f5f2edf5 0%,#f5f2ede0 34%,#f5f2ed7a 53%,transparent 78%)}
.weatherPage .weatherSky{background:var(--panel)}
.versionFooter{display:flex;justify-content:center;align-items:center;gap:16px;opacity:1}
.versionFooter a{font-size:.875rem;color:var(--forest);text-underline-offset:3px;letter-spacing:0}
.sourcesPage{max-width:1020px;margin:0 auto 60px;padding:20px clamp(14px,3vw,40px);color:var(--ink)}
.sourcesPage header{padding:26px 0 20px;border-bottom:1px solid var(--line)}
.sourcesPage h1{font:400 clamp(2rem,4vw,3rem)/1.18 var(--font-heading);margin:10px 0}
.sourcesPage header p{font-size:1rem;line-height:1.7;max-width:65ch}
.sourcesPage section{padding:24px 0;border-bottom:1px solid var(--line)}
.sourcesPage h2{font:400 1.55rem/1.3 var(--font-heading);margin:0 0 12px}
.sourcesPage ul{margin:0;padding-left:24px;line-height:1.8;overflow-wrap:anywhere}
.sourcesPage a{color:var(--forest);text-underline-offset:4px}
.sourcesPage .sourceSearchLabel{display:block;max-width:390px;margin:12px 0 20px;font-size:.9rem}
.sourcesPage input{display:block;box-sizing:border-box;margin-top:7px;width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);font:inherit}
.sourcesPage input:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.sourceEntry{border:1px solid var(--line);border-radius:12px;background:var(--panel);margin:8px 0;padding:0 16px}
.sourceEntry[hidden]{display:none}
.sourceEntry summary{cursor:pointer;padding:13px 0;font-size:1rem}
.sourceEntry summary small{color:var(--muted);font-size:.8rem;margin-left:6px}
.sourceEntry ul{padding:0 10px 14px 24px}
[data-theme="natural"] .sourceEntry,[data-theme="natural"] .sourcesPage input{border-radius:4px}
[data-theme="meadow"] .sourceEntry{border-radius:17px 17px 17px 5px}
@media(max-width:600px){.weatherPage .weatherSky{min-height:295px}.weatherPage[data-season] .weatherSky .weatherMoodImage{background-position:right center}.weatherPage .weatherSky:after{background:linear-gradient(90deg,#f5f2edf0,#f5f2edba 50%,transparent 95%)}}
