:root{--meteo-ink:#f5f8ff;--meteo-muted:#bdcedd;--meteo-accent:#76dcf4;--meteo-panel:#101c2f;--meteo-line:#ffffff26;--meteo-clear-start:#154877;--meteo-clear-end:#242e68;--meteo-cloud-start:#425366;--meteo-cloud-end:#192634;--meteo-rain-start:#232c38;--meteo-rain-end:#071c31;--meteo-snow-start:#35647d;--meteo-snow-end:#152d45;--meteo-error:#fff0c4}.meteo-viewport{background:var(--meteo-panel);width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.meteo-canvas{transform-origin:50%;width:1920px;height:1080px;color:var(--meteo-ink);background:linear-gradient(115deg,var(--meteo-cloud-start),var(--meteo-cloud-end));font-family:Arial,sans-serif;position:absolute;top:50%;left:50%;overflow:hidden}.meteo-clear{background:linear-gradient(115deg,var(--meteo-clear-start),var(--meteo-clear-end))}.meteo-cloud{background:linear-gradient(115deg,var(--meteo-cloud-start),var(--meteo-cloud-end))}.meteo-rain{background:linear-gradient(115deg,var(--meteo-rain-start),var(--meteo-rain-end))}.meteo-snow{background:linear-gradient(115deg,var(--meteo-snow-start),var(--meteo-snow-end))}.meteo-header{border-bottom:1px solid var(--meteo-line);justify-content:space-between;align-items:center;height:208px;padding:34px 64px;display:flex;position:relative}.meteo-brand{letter-spacing:4px;font-size:25px;font-weight:700}.meteo-brand span{color:var(--meteo-accent);border-left:2px solid var(--meteo-line);margin-left:20px;padding-left:20px}.meteo-header h1{margin:14px 0 0;font-size:56px;font-weight:700}.meteo-header small{color:var(--meteo-muted);margin-left:24px;font-size:28px}.meteo-clock{text-align:right;gap:10px;display:grid}.meteo-clock strong{font-variant-numeric:tabular-nums;font-size:45px}.meteo-clock span{color:var(--meteo-muted);font-size:23px}.meteo-body{grid-template-columns:1fr 440px;gap:52px;height:790px;padding:36px 64px 24px;display:grid;position:relative}.meteo-body main{min-width:0}.meteo-section-title{color:var(--meteo-accent);border-bottom:1px solid var(--meteo-line);justify-content:space-between;padding-bottom:18px;font-size:22px;font-weight:700;display:flex}.meteo-section-title span{color:var(--meteo-ink);font-weight:400}.meteo-current{justify-content:space-between;align-items:center;height:410px;padding-right:70px;display:flex}.meteo-temperature{font-size:270px;font-weight:700;line-height:1}.meteo-temperature sup{vertical-align:top;margin-top:36px;font-size:70px;display:inline-block}.meteo-body h2{margin:0 0 22px;font-size:28px}.meteo-glance{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.meteo-glance>div{border-top:2px solid var(--meteo-accent);background:var(--meteo-panel);grid-template-columns:40px 1fr;gap:12px;padding:25px 30px;display:grid}.meteo-glance svg{width:34px;height:34px;color:var(--meteo-accent)}.meteo-glance span{color:var(--meteo-muted);align-self:center;font-size:20px}.meteo-glance strong{grid-column:1/-1;font-size:52px}.meteo-glance small{font-size:26px;font-weight:400}.meteo-body aside{border-left:1px solid var(--meteo-line);padding-left:40px}.meteo-body aside h2{margin:0 0 22px;font-size:30px}.meteo-day{border-bottom:1px solid var(--meteo-line);justify-content:space-between;align-items:center;height:88px;font-size:29px;display:flex}.meteo-day>strong{width:72px}.meteo-day span{text-align:right;width:122px;font-weight:700}.meteo-day small{color:var(--meteo-muted);margin-left:20px;font-size:24px;font-weight:400}.meteo-day svg{color:var(--meteo-accent)}.meteo-footer{border-top:1px solid var(--meteo-line);height:82px;color:var(--meteo-muted);justify-content:space-between;align-items:center;padding:0 64px;font-size:18px;display:flex;position:relative}.meteo-progress{gap:8px;display:flex}.meteo-progress i{background:var(--meteo-line);width:24px;height:4px}.meteo-progress i.active{background:var(--meteo-accent)}.meteo-status{background:var(--meteo-panel);color:var(--meteo-error);z-index:2;padding:7px 12px;font-size:17px;position:absolute;top:210px;left:64px;right:64px}.meteo-status+.meteo-body{padding-top:54px}.meteo-hour-grid{grid-template-columns:repeat(8,1fr);gap:14px;padding-top:35px;display:grid}.meteo-hour-grid>div{background:var(--meteo-panel);border-bottom:2px solid var(--meteo-line);justify-items:center;gap:18px;padding:20px 8px;display:grid}.meteo-hour-grid span{color:var(--meteo-muted);font-size:21px}.meteo-hour-grid strong{font-size:33px}.meteo-hour-grid svg,.meteo-week-grid svg{color:var(--meteo-accent)}.meteo-week-grid{grid-template-columns:repeat(4,1fr);gap:18px;padding-top:38px;display:grid}.meteo-week-grid>div{background:var(--meteo-panel);justify-items:center;gap:10px;padding:20px;display:grid}.meteo-week-grid span{font-size:24px}.meteo-week-grid strong{font-size:46px}.meteo-week-grid small{color:var(--meteo-muted);font-size:25px}.meteo-week-grid p{margin:0;font-size:16px}.meteo-unavailable{color:var(--meteo-muted);grid-column:1/-1;margin-top:100px;font-size:32px}.meteo-precipitation{pointer-events:none;opacity:.12;position:absolute;inset:-100px}.meteo-rain .meteo-precipitation{background:repeating-linear-gradient(110deg,transparent 0 100px,var(--meteo-muted) 101px 102px,transparent 103px 200px);animation:3s linear infinite meteo-rain}.meteo-snow .meteo-precipitation{background-image:radial-gradient(circle,var(--meteo-ink) 2px,transparent 3px);background-size:80px 100px;animation:14s linear infinite meteo-snow}@keyframes meteo-rain{to{transform:translate(-36px,100px)}}@keyframes meteo-snow{to{transform:translate(80px,100px)}}@media (prefers-reduced-motion:reduce){.meteo-precipitation{animation:none!important}}.meteo-body aside .meteo-day{height:76px}.meteo-stream-logo{pointer-events:none;z-index:3;width:220px;height:auto;position:absolute;bottom:96px;right:48px}
