.stmw {
    --stmw-blue:#0869bc;
    --stmw-text:#102b49;
    --stmw-muted:#5d7290;
    --stmw-border:rgba(18,68,110,.12);
    width:100%;
    max-width:520px;
    margin:0 auto;
    color:var(--stmw-text);
    font:inherit;
}
.stmw,.stmw *{box-sizing:border-box}
.stmw__current{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding:15px 16px;border:1px solid rgba(20,125,210,.18);border-radius:14px;
    background:linear-gradient(120deg,rgba(223,241,255,.88),rgba(255,247,220,.82));
}
.stmw__eyebrow{font-size:.82rem;font-weight:700;color:var(--stmw-blue);margin-bottom:3px}
.stmw__temp{font-size:3.35rem;line-height:.95;font-weight:700;letter-spacing:-.045em}
.stmw__temp span{font-size:.38em;vertical-align:top;margin-left:2px;letter-spacing:0}
.stmw__subline{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:9px;font-size:.76rem;color:var(--stmw-muted)}
.stmw__subline strong{color:var(--stmw-text);font-weight:500}
.stmw__condition{width:58px;height:58px;color:#d59a19;flex:0 0 auto}
.stmw__condition svg,.stmw__day-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.stmw__measured{text-align:right;padding:7px 3px 2px;font-size:.68rem;color:var(--stmw-muted)}
.stmw__quickgrid,.stmw__detailgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px}
.stmw__tile{min-height:72px;padding:11px 12px;border:1px solid var(--stmw-border);border-radius:11px;background:rgba(235,247,255,.75)}
.stmw__tile:nth-child(2){background:rgba(237,251,252,.8)}
.stmw__tile:nth-child(3){background:rgba(239,247,255,.85)}
.stmw__tile:nth-child(4){background:rgba(255,248,226,.9)}
.stmw__tile-label{display:block;margin-bottom:4px;font-size:.71rem;color:var(--stmw-muted)}
.stmw__tile strong{display:block;font-size:1.02rem;line-height:1.15}
.stmw__tile small{display:block;margin-top:3px;font-size:.66rem;color:var(--stmw-muted)}
.stmw__details{margin-top:10px}
.stmw__details summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:10px;background:var(--stmw-blue);color:#fff;font-size:.75rem;font-weight:700;box-shadow:0 4px 10px rgba(0,80,145,.12)}
.stmw__details summary::-webkit-details-marker{display:none}
.stmw__hide{display:none}.stmw__details[open] .stmw__show{display:none}.stmw__details[open] .stmw__hide{display:inline}
.stmw__chev{font-size:1.05rem;line-height:1;transition:transform .2s ease}.stmw__details[open] .stmw__chev{transform:rotate(180deg)}
.stmw__detailgrid{margin-top:8px}
.stmw__detail{padding:9px 10px;border:1px solid var(--stmw-border);border-radius:9px;background:rgba(248,250,252,.85)}
.stmw__detail span{display:block;font-size:.67rem;color:var(--stmw-muted)}
.stmw__detail strong{display:block;margin-top:2px;font-size:.83rem;line-height:1.2}
.stmw__forecast-title{margin-top:15px;padding-top:12px;border-top:1px solid var(--stmw-border);font-size:.82rem;font-weight:700}
.stmw__forecast{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px}
.stmw__day{min-width:0;padding:9px 4px 8px;text-align:center;border:1px solid var(--stmw-border);border-radius:10px;background:rgba(246,250,253,.92)}
.stmw__day>strong{font-size:.7rem}
.stmw__day-icon{width:31px;height:31px;margin:5px auto 2px;color:#0876d6}
.stmw__day-label{height:2.1em;overflow:hidden;font-size:.57rem;line-height:1.05;color:var(--stmw-muted)}
.stmw__day-temp{margin-top:5px;font-size:.77rem}.stmw__day-temp b{color:#e3482d}.stmw__day-temp span{color:#0b5caf}
.stmw__day small{display:block;margin-top:4px;font-size:.54rem;color:var(--stmw-muted);white-space:nowrap}
.stmw__source{text-align:right;margin-top:5px;font-size:.57rem;color:var(--stmw-muted)}
.stmw__footer{margin-top:11px;padding-top:9px;border-top:1px solid var(--stmw-border);font-size:.62rem;color:var(--stmw-muted)}
.stmw__offline{display:grid;gap:4px;padding:14px;border:1px solid var(--stmw-border);border-radius:12px;background:rgba(246,250,253,.9)}
.stmw__offline span{font-size:.78rem;color:var(--stmw-muted)}
@media (max-width:360px){.stmw__temp{font-size:2.9rem}.stmw__current{padding:13px}.stmw__condition{width:50px;height:50px}.stmw__forecast{gap:4px}.stmw__day{padding-left:2px;padding-right:2px}.stmw__day small{font-size:.5rem}}
