.tw-weather{--tw-accent:#256684;--tw-bg:#fff;--tw-ink:#183443;--tw-line:#d6e2e8;background:#f0f5f6;color:var(--tw-ink);padding:clamp(2rem,5vw,4rem) 20px;scroll-margin-top:110px;font-family:Inter,Arial,sans-serif}
.tw-weather.tw-ct{--tw-accent:#4a5240;--tw-bg:#f5f0e8;--tw-ink:#263120;--tw-line:#d5d4c3;background:#e8dfc8}
.tw-weather *{box-sizing:border-box}.tw-weather .tw-inner{max-width:1160px;margin:0 auto}.tw-weather .tw-header{margin-bottom:24px}.tw-weather h2{font-size:clamp(1.8rem,3.5vw,2.5rem);color:var(--tw-ink);margin:0 0 12px;line-height:1.15}.tw-weather h3{font-size:1.05rem;margin:0 0 10px;color:var(--tw-ink)}.tw-weather h4{font-size:1rem;margin:0 0 12px;color:var(--tw-ink)}.tw-weather p{margin:0 0 10px;line-height:1.55}.tw-weather .tw-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px}.tw-weather .tw-layout>div{min-width:0}.tw-weather .tw-map{height:350px;border-radius:12px;border:1px solid var(--tw-line);isolation:isolate;z-index:0}.tw-weather .tw-map img{max-width:none}.tw-weather .tw-panel{background:var(--tw-bg);border:1px solid var(--tw-line);border-radius:12px;padding:24px}.tw-weather .tw-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-top:12px}.tw-weather .tw-form label{font-size:.85rem;flex:1;min-width:100px;display:block}.tw-weather input{display:block;width:100%;min-height:44px;font:inherit;color:var(--tw-ink);background:var(--tw-bg);border:1px solid #809397;border-radius:6px;padding:8px;margin-top:4px}.tw-weather button{min-height:44px;font:600 .9rem Inter,Arial,sans-serif;border-radius:6px;border:1px solid var(--tw-accent);padding:10px 16px;background:var(--tw-accent);color:#fff;cursor:pointer}.tw-weather button:hover{filter:brightness(.92)}.tw-weather :focus-visible{outline:3px solid #267fa3;outline-offset:3px}.tw-weather .tw-refresh{margin:0 0 16px}.tw-weather [hidden]{display:none!important}.tw-weather .tw-pin{font-weight:600;font-size:.9rem;overflow-wrap:anywhere}.tw-weather .tw-status{font-size:.95rem}.tw-weather dl{display:grid;grid-template-columns:1fr auto;gap:5px 12px;margin:12px 0}.tw-weather dt,.tw-weather dd{margin:0}.tw-weather dd{font-weight:600}.tw-weather .tw-model-time,.tw-weather .tw-grid,.tw-weather .tw-time,.tw-weather .tw-note,.tw-weather .tw-source,.tw-weather .tw-map-status{font-size:.8rem;overflow-wrap:anywhere}.tw-weather .tw-sea{padding-top:16px;border-top:1px solid var(--tw-line);margin-top:16px}.tw-weather .tw-sea-temp{font-weight:700;font-size:1.4rem}.tw-weather .tw-daily{margin-top:24px}.tw-weather .tw-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:0;padding:0;gap:10px}.tw-weather .tw-day{border:1px solid var(--tw-line);border-radius:10px;padding:16px;background:var(--tw-bg);overflow-wrap:anywhere}.tw-weather .tw-day p{font-size:.85rem}.tw-weather .tw-range{font-weight:700}.tw-weather .tw-time{margin-top:18px}.tw-weather a{color:var(--tw-accent);text-decoration:underline}.tw-weather .tw-marker{background:none;border:0}.tw-weather .tw-marker span{display:block;width:24px;height:30px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#b02e25;border:3px solid #fff;box-shadow:0 1px 5px #333}.tw-weather .leaflet-control-attribution{font:11px/1.5 Arial,sans-serif}.tw-weather .leaflet-control-attribution a{color:#176080}
@media(max-width:760px){.tw-weather .tw-layout{grid-template-columns:1fr;gap:16px}.tw-weather .tw-map{height:290px}.tw-weather .tw-days{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-weather .tw-panel{padding:18px}.tw-weather .tw-form button{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.tw-weather *{scroll-behavior:auto!important;transition:none!important}}
.tw-weather .tw-waves{padding-top:16px;border-top:1px solid var(--tw-line);margin-top:16px}.tw-weather .tw-age{font-size:.78rem;line-height:1.45;overflow-wrap:anywhere}.tw-weather .tw-stale{color:#794500;background:#fff0d2;padding:8px;border-radius:5px}.tw-weather .tw-note{margin-top:10px}.tw-weather .tw-source{margin-top:14px}

.tw-weather .tw-landing{display:grid;grid-template-columns:1.4fr .7fr;align-items:center;gap:35px;padding:25px 0 45px}.tw-weather .tw-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:700;color:var(--tw-accent)}.tw-weather .tw-landing h2{font-size:clamp(2rem,4.4vw,3.6rem);max-width:760px;line-height:1.08;letter-spacing:-.035em}.tw-weather .tw-landing p{max-width:650px}.tw-weather .tw-start{display:inline-flex;gap:32px;align-items:center;background:var(--tw-accent);color:#fff;padding:14px 22px;border-radius:9px;margin:10px 0 15px;text-decoration:none;font-weight:700;min-height:48px}.tw-weather .tw-landing-note{font-size:.8rem;color:var(--tw-accent)}.tw-weather .tw-globe{position:relative;aspect-ratio:1;border:1px solid var(--tw-line);border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff9,transparent 65%),repeating-linear-gradient(0deg,transparent 0 34px,var(--tw-line) 35px 36px),var(--tw-bg);max-width:270px;width:100%;box-shadow:inset -18px -12px 50px #25668418}.tw-weather .tw-globe:after,.tw-weather .tw-globe:before{content:'';position:absolute;inset:0 28%;border:1px solid var(--tw-line);border-radius:50%}.tw-weather .tw-globe:before{inset:30% 0}.tw-weather .tw-globe span{position:absolute;inset:40% 40%;border-radius:50%;background:var(--tw-accent);box-shadow:0 0 0 15px #25668415,0 0 0 35px #25668408}.tw-weather .tw-globe i{position:absolute;inset:15% 15%;border:1px dashed var(--tw-accent);border-radius:50%;transform:rotate(-25deg)}
.tw-weather .tw-layout>div:first-child{display:flex;flex-direction:column}.tw-weather .tw-picker{order:-2;scroll-margin-top:130px}.tw-weather .tw-form{order:-1;margin:0 0 18px}.tw-weather .tw-modes{display:flex;border:1px solid var(--tw-line);border-radius:10px;padding:4px;background:var(--tw-bg);margin-bottom:16px;gap:4px}.tw-weather .tw-modes button{flex:1;background:transparent;color:var(--tw-ink);border:0;padding:10px}.tw-weather .tw-modes button[aria-pressed=true]{background:var(--tw-accent);color:white;box-shadow:0 2px 6px #0001}.tw-weather .tw-place-form{display:flex;align-items:end;gap:10px;margin-bottom:12px}.tw-weather .tw-place-form label{flex:1;min-width:0;font-size:.85rem}.tw-weather .tw-place-form input{width:100%;font:inherit;padding:11px;border:1px solid #809397;border-radius:7px;min-height:46px}.tw-weather .tw-place-form button{white-space:nowrap}.tw-weather .tw-place-results{list-style:none;padding:0;margin:0 0 12px;max-height:300px;overflow-y:auto}.tw-weather .tw-place-results button{width:100%;text-align:left;background:var(--tw-bg);color:var(--tw-ink);border:1px solid var(--tw-line);font-weight:400;margin:3px 0}.tw-weather .tw-area-note,.tw-weather .tw-coverage,.tw-weather .tw-place-status{font-size:.8rem}.tw-weather .tw-coverage{opacity:.8}.tw-weather .tw-map{flex-shrink:0}
body.tw-weather-page main{padding-top:0!important}body.tw-weather-page>header{background:#183443;position:relative!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important;margin:12px auto!important;width:calc(100% - 24px)!important;max-width:1200px}body.tw-weather-page>nav{position:relative!important;top:auto!important;transform:none!important}.tw-weather .tw-sea:empty,.tw-weather .tw-waves:empty,.tw-weather .tw-current:empty{display:none}.tw-weather .tw-panel{align-self:start}
@media(max-width:760px){.tw-weather .tw-landing{grid-template-columns:1fr;padding:0 0 25px;gap:0}.tw-weather .tw-globe{display:none}.tw-weather .tw-place-form{flex-direction:column;align-items:stretch}.tw-weather .tw-place-form button{width:100%}.tw-weather .tw-landing h2{font-size:2.1rem}.tw-weather .tw-modes button{font-size:.83rem;padding:10px 4px}}

.tw-weather .tw-full-page{display:inline-block;margin:0 0 15px 18px;font-size:.85rem}
.tw-weather .tw-place-results button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;border-left:3px solid var(--tw-accent);cursor:pointer}.tw-weather .tw-place-results button span{min-width:0;overflow-wrap:anywhere}.tw-weather .tw-place-results button small{color:var(--tw-accent);font-size:.72rem;font-weight:700;flex-shrink:0;max-width:35%;text-align:right}.tw-weather .tw-place-results button[aria-selected=true]{outline:2px solid var(--tw-accent);outline-offset:-2px}.tw-weather .tw-panel{scroll-margin-top:135px}
