.npdw-weather{box-sizing:border-box;width:100%;font-family:inherit;color:var(--npdw-text,#fff)}
.npdw-weather *{box-sizing:border-box}
.npdw-weather--compact{position:relative;overflow:hidden;max-width:420px;padding:16px 17px 13px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--npdw-panel,#173b4b) 92%,transparent),rgba(9,31,43,.85));box-shadow:0 14px 36px rgba(5,23,32,.22),inset 0 1px 0 rgba(255,255,255,.11);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.npdw-weather--compact:before{content:"";position:absolute;inset:-80% auto -80% -40%;width:34%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);pointer-events:none}
.npdw-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.npdw-compact-day{min-width:0;padding:0 14px;text-align:center}
.npdw-compact-day+ .npdw-compact-day{border-left:1px solid rgba(255,255,255,.16)}
.npdw-compact-day h3{margin:0 0 6px;color:inherit;font-size:14px;font-weight:800;letter-spacing:.02em}
.npdw-icon{display:block;width:48px;height:48px;margin:0 auto 4px;object-fit:contain;border-radius:10px}
.npdw-condition{min-height:2.65em;margin:3px 0 5px;color:inherit;font-size:11px;line-height:1.3}
.npdw-temperature{margin:0;color:inherit;font-size:15px;font-weight:800;letter-spacing:.01em}
.npdw-forecast-link{display:inline-flex;align-items:center;gap:5px;margin-top:11px;color:var(--npdw-accent,#20c7cf)!important;text-decoration:none!important;font-size:11px;font-weight:800;letter-spacing:.02em}
.npdw-forecast-link:hover,.npdw-forecast-link:focus{text-decoration:underline!important}
.npdw-source{position:absolute;right:13px;bottom:9px;color:rgba(255,255,255,.48);font-size:8px;letter-spacing:.03em}
.npdw-weather--full{overflow:hidden;padding:24px;border:1px solid #dce8eb;border-radius:22px;background:#f7fbfc;color:#17313d;box-shadow:0 16px 44px rgba(16,40,56,.09)}
.npdw-full-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid #dbe7ea}
.npdw-full-header h2{margin:0 0 3px;color:#102838;font-size:clamp(24px,3vw,34px)}
.npdw-full-header p{margin:0;color:#60747d}
.npdw-updated{color:#6b7d84;font-size:12px}
.npdw-full-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.npdw-full-day{min-width:0;padding:17px 14px;border:1px solid #dde8ea;border-radius:15px;background:#fff;text-align:center;box-shadow:0 5px 15px rgba(16,40,56,.05)}
.npdw-day-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.npdw-day-heading h3{margin:0;color:#17313d;font-size:15px}
.npdw-day-heading span{color:#788a91;font-size:10px}
.npdw-icon--large{width:62px;height:62px;margin-top:11px}
.npdw-weather--full .npdw-condition{min-height:2.7em;color:#405861;font-size:12px}
.npdw-temperature--large{color:#102838;font-size:20px}
.npdw-details{display:grid;gap:5px;margin:12px 0 0;font-size:10px}
.npdw-details div{display:flex;justify-content:space-between;gap:8px;padding-top:5px;border-top:1px solid #edf2f3}
.npdw-details dt{color:#74878f}.npdw-details dd{margin:0;color:#263f49;font-weight:700;text-align:right}
.npdw-full-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:17px;color:#74878f;font-size:11px}
.npdw-weather--error{padding:13px 15px;border:1px solid #f1c7c4;border-radius:10px;background:#fff1f0;color:#8a302a}
@media(max-width:600px){.npdw-weather--compact{max-width:none}.npdw-compact-day{padding:0 8px}.npdw-full-header,.npdw-full-footer{align-items:flex-start;flex-direction:column}.npdw-weather--full{padding:17px}.npdw-full-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:no-preference){.npdw-weather--compact:before{animation:npdw-glare 13s ease-in-out infinite}@keyframes npdw-glare{0%,72%{transform:translateX(-260%) rotate(18deg);opacity:0}76%{opacity:.8}88%{transform:translateX(620%) rotate(18deg);opacity:.35}100%{transform:translateX(620%) rotate(18deg);opacity:0}}}
