:root{color-scheme:light;--ink:#183c4d;--muted:#637680;--paper:#f5f6f3;--line:#e0e6e3;--blue:#287b9c;--green:#2c7b5a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}.page{max-width:1240px;padding:0 44px;margin:auto}.header{display:flex;justify-content:space-between;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font-size:25px;letter-spacing:-1px;font-weight:750;line-height:1}.brand-light{font-weight:400;margin-left:4px}.brand small{display:block;font-size:9px;letter-spacing:3px;margin-top:8px;color:var(--muted);font-weight:600}.brand svg{width:43px;height:43px;overflow:visible}.brand svg circle{fill:#dfb64d}.brand svg path{fill:var(--paper);stroke:var(--ink);stroke-width:2}.place{font-size:14px;font-weight:550}.place span{font-size:24px;vertical-align:-2px;margin-right:7px;color:var(--blue)}.intro{padding:46px 0 26px;display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--blue);margin:0 0 13px}h1{font-size:clamp(33px,4vw,47px);font-weight:620;letter-spacing:-1.7px;line-height:1.12;margin:0 0 12px}.lead{font-size:15px;color:var(--muted);margin:0;line-height:1.6}.date{color:var(--muted);font-size:13px;text-align:right;line-height:1.7;margin:0 0 3px}.status-row{display:flex;justify-content:space-between;align-items:center;margin:0 0 19px}.status{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:600}.status i{display:block;width:7px;height:7px;border-radius:50%;background:#8b989e}.status[data-state=online]{color:var(--green)}.status[data-state=online] i{background:#39976b;box-shadow:0 0 0 4px #39976b12}.status[data-state=stale],.status[data-state=error]{color:#95612a}.status[data-state=stale] i,.status[data-state=error] i{background:#b9823e}button{font:inherit;font-size:12px;font-weight:600;border:1px solid #d5dedb;border-radius:8px;background:transparent;color:var(--ink);padding:8px 13px;cursor:pointer}button span{font-size:17px;margin-right:4px}button:hover{background:#e8efeb}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible{outline:3px solid #64adc9;outline-offset:5px}.dashboard{display:grid;grid-template-columns:1.17fr 1fr 1fr;gap:17px}.card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:25px 26px;min-width:0;box-shadow:0 3px 9px #163d4e03}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.card h2{margin:0;font-size:13px;font-weight:550}.card-head svg{width:25px;height:25px;fill:none;stroke:#7d9aa4;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.temperature{grid-row:span 2;background:var(--ink);color:white;position:relative;overflow:hidden;padding:28px 29px;display:flex;flex-direction:column}.temperature:after{content:"";position:absolute;right:-130px;top:64px;width:290px;height:290px;border:1px solid #ffffff0e;border-radius:50%;box-shadow:0 0 0 24px #ffffff05,0 0 0 50px #ffffff04;pointer-events:none}.temperature .card-head{position:relative;z-index:1}.temperature .card-head svg{stroke:#a6c9d5}.temperature h2{color:#d0e0e6}.temperature-value{font-size:clamp(58px,6.1vw,85px);font-weight:350;letter-spacing:-5px;margin:31px 0 0;line-height:1.2;position:relative;z-index:1;white-space:nowrap;font-variant-numeric:tabular-nums}.temperature-unit{font-size:30px;letter-spacing:-1px;vertical-align:top;display:inline-block;margin-top:12px;margin-left:5px;color:#b9d3de}.temperature-caption{font-size:12px;color:#b6cbd4;margin:8px 0 36px}.temperature-detail{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #ffffff24;padding-top:17px;font-size:12px;color:#bed0d9;margin-top:auto;position:relative;z-index:1}.temperature-detail strong{font-size:14px;font-weight:550;color:#fff}.station-caption{font-size:9px;font-weight:550;letter-spacing:.8px;color:#a5bdc7;margin-top:26px;display:flex;align-items:center;gap:7px}.station-line{width:13px;height:1px;background:#81aab9}.metric{min-height:180px}.value{font-variant-numeric:tabular-nums;font-size:36px;font-weight:500;line-height:1.2;letter-spacing:-1.4px;white-space:nowrap;margin:23px 0 8px}.unit{font-size:15px;letter-spacing:0;color:#71868f;font-weight:450;margin-left:7px}.caption{font-size:11px;line-height:1.5;color:var(--muted);margin:0}.caption strong{font-weight:550;color:#506c78}.wind-direction{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);margin-top:11px}.direction-arrow{display:inline-block;font-size:17px;color:var(--blue);transform:rotate(0deg);line-height:1}.reading-footer{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:10px;margin-top:16px}.reading-footer p{margin:0}.reading-footer strong{font-weight:550;color:#526c77}.about{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:26px 0;margin-top:34px}.about-mark{font-size:34px;color:#8ba6ae}.about h2{font-size:13px;font-weight:600;margin:0 0 5px}.about p{font-size:11px;line-height:1.8;color:var(--muted);margin:0;max-width:540px}.about a{margin-left:auto;white-space:nowrap;font-size:11px;font-weight:600;color:var(--blue);text-decoration:none}.about a span{margin-left:4px}.about a:hover{text-decoration:underline}.footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;padding:22px 0 28px;font-size:10px;color:#73858c}.footer a{color:inherit;text-decoration:none}.footer a:hover{text-decoration:underline}.footer-dot{padding:0 6px;color:#a9b6b9}.notice{background:#fff4df;border:1px solid #ecd6ab;color:#795321;padding:13px 16px;border-radius:10px;font-size:12px;line-height:1.7;margin:0 0 18px}.notice[hidden]{display:none}@media(min-width:1400px){.intro{padding-top:55px}.metric{min-height:194px}}@media(max-width:820px){.page{padding:0 25px}.dashboard{grid-template-columns:1fr 1fr}.temperature{grid-column:span 2;grid-row:auto;min-height:280px;display:block}.temperature-value{font-size:82px;margin:17px 0 0}.temperature-caption{margin:3px 0 19px}.temperature-detail{position:absolute;right:29px;bottom:65px;width:180px}.station-caption{margin-top:15px}.temperature:after{right:25px;top:35px}.date{max-width:130px}.about{gap:13px;flex-wrap:wrap}.about>div:nth-child(2){flex:1}.about a{margin-left:46px}.footer{flex-wrap:wrap}.intro{padding-top:32px}.metric{min-height:183px}}@media(max-width:480px){.page{padding:0 18px}.header{padding:23px 0}.brand{font-size:20px;gap:8px}.brand svg{width:34px;height:34px}.brand small{font-size:8px;letter-spacing:2px}.place{font-size:11px}.place span{display:none}.intro{display:block;padding:30px 0 22px}.eyebrow{font-size:9px;letter-spacing:1.4px}h1{font-size:35px}.lead{font-size:13px;max-width:290px}.date{text-align:left;max-width:none;margin-top:14px;font-size:11px}.dashboard{gap:11px}.card{padding:19px 17px;border-radius:13px}.temperature{padding:24px;min-height:284px}.temperature-value{font-size:79px}.temperature-detail{position:static;width:auto;margin-top:22px;padding-top:13px}.temperature-caption{margin-bottom:0}.temperature-unit{margin-top:10px}.station-caption{font-size:8px}.metric{min-height:163px}.card h2{font-size:12px}.card-head svg{width:21px;height:21px}.value{font-size:30px;margin-top:23px;letter-spacing:-1.1px}.unit{font-size:12px;margin-left:4px}.caption{font-size:10px}.wind-direction{font-size:9px}.reading-footer{font-size:9px;flex-direction:column;gap:7px}.about{margin-top:27px;padding:23px 0}.about h2{font-size:12px}.about p{font-size:10px}.about-mark{align-self:flex-start}.about a{font-size:10px}.footer{font-size:9px;padding-bottom:23px;gap:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
