.weather-current-card{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:var(--spacing-xl);color:var(--text-primary);margin-bottom:var(--section-gap)}.weather-current-main{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.weather-current-icon img{width:100px;height:100px}.weather-current-temp{display:flex;align-items:flex-start}.weather-current-temp .temp-value{font-size:4rem;font-weight:700;line-height:1}.weather-current-temp .temp-unit{font-size:2rem;font-weight:400;margin-top:.5rem}.weather-current-desc{flex:1}.weather-current-desc .weather-description{font-size:var(--fs-xl);font-weight:600;margin:0 0 var(--spacing-xs) 0}.weather-current-desc .weather-feels-like{font-size:var(--fs-base);color:var(--text-secondary);margin:0}.weather-current-details{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.weather-detail-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-xs)}.weather-detail-item i{font-size:var(--icon-md);color:var(--primary-color)}.weather-detail-item .detail-label{font-size:var(--fs-xs);color:var(--text-muted)}.weather-detail-item .detail-value{font-size:var(--fs-base);font-weight:600}.weather-forecast-card,.weather-section{margin-bottom:var(--section-gap)}.weather-section:last-child{border-bottom:none}.weather-forecast-list{display:flex;flex-direction:column}.weather-day-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs)}.weather-day-header:first-child{margin-top:0}.weather-day-header .day-name{font-weight:600;color:var(--text-primary);font-size:var(--fs-base)}.weather-day-header .day-date{color:var(--text-secondary);font-size:var(--fs-sm)}.weather-forecast-item{display:flex;align-items:center;padding:var(--spacing-sm) 0;gap:var(--spacing-md);border-bottom:1px solid var(--border-light)}.weather-forecast-item:last-child{border-bottom:none;padding-bottom:0}.weather-forecast-item .forecast-time,.weather-forecast-item .forecast-day{flex:0 0 100px;display:flex;flex-direction:column}.weather-forecast-item .forecast-time-value,.weather-forecast-item .forecast-day-name{font-size:var(--fs-base);font-weight:600;color:var(--text-primary)}.weather-forecast-item .forecast-day-date{font-size:var(--fs-xs);color:var(--text-secondary)}.weather-forecast-item .forecast-icon{flex:0 0 44px}.weather-forecast-item .forecast-icon img{width:44px;height:44px}.weather-forecast-item .forecast-desc{flex:1;font-size:var(--fs-sm);color:var(--text-secondary)}.weather-forecast-item .forecast-temp{flex:0 0 50px;font-size:var(--fs-base);font-weight:600;color:var(--text-primary);text-align:right}.weather-forecast-item .forecast-temps{flex:0 0 80px;display:flex;gap:var(--spacing-sm);font-weight:600;font-size:var(--fs-base);justify-content:flex-end}.weather-forecast-item .forecast-temp-max{color:var(--text-primary)}.weather-forecast-item .forecast-temp-min{color:var(--text-secondary)}.weather-forecast-item .forecast-details{flex:0 0 100px;display:flex;gap:var(--spacing-sm);font-size:var(--fs-xs);color:var(--text-secondary);justify-content:flex-end}.weather-forecast-item .forecast-wind{display:flex;align-items:center;gap:4px}.weather-forecast-item .forecast-wind i{color:var(--primary-color)}.weather-forecast-item .forecast-pop{display:flex;align-items:center;gap:4px;color:var(--primary-color)}.weather-alerts{margin-bottom:var(--section-gap)}.weather-alert-item{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);border-left:4px solid}.weather-alert-item.alert-level-1{background-color:color-mix(in srgb,var(--color-alert-yellow) 12%,#fff);border-left-color:var(--color-alert-yellow)}.weather-alert-item.alert-level-2{background-color:color-mix(in srgb,var(--color-warning-dark) 10%,#fff);border-left-color:var(--color-warning-dark)}.weather-alert-item.alert-level-3{background-color:color-mix(in srgb,var(--color-danger) 10%,#fff);border-left-color:var(--color-danger)}.alert-level-1 .alert-level-badge{background-color:var(--color-alert-yellow);color:var(--text-primary)}.alert-level-2 .alert-level-badge{background-color:var(--color-warning-dark)}.alert-level-3 .alert-level-badge{background-color:var(--color-danger)}.weather-alert-item .alert-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);flex-wrap:wrap}.weather-alert-item .alert-level-badge{font-size:var(--fs-2xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-sm);color:#fff}.weather-alert-item .alert-phenomenon{font-weight:600;color:var(--text-primary)}.weather-alert-item .alert-validity{font-size:var(--fs-sm);color:var(--text-secondary);margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.weather-alert-item .alert-probability{color:var(--text-muted);font-style:italic}.weather-alert-item .alert-content{font-size:var(--fs-base);color:var(--text-primary);line-height:1.5}.weather-alerts-attribution{text-align:right;color:var(--text-muted);font-size:var(--fs-xs);padding-top:var(--spacing-sm)}.weather-alerts-attribution a{color:var(--accent-color)}.weather-alerts-attribution a:hover{text-decoration:underline}@media(max-width:767.98px){.weather-current-main{flex-direction:column;text-align:center}.weather-current-details{grid-template-columns:repeat(2,1fr)}.weather-day-header{padding:var(--spacing-xs) var(--spacing-sm);margin-top:var(--spacing-sm)}.weather-day-header .day-name{font-size:var(--fs-sm)}.weather-day-header .day-date{font-size:var(--fs-xs)}.weather-forecast-item{padding:var(--spacing-xs) 0;gap:var(--spacing-sm)}.weather-forecast-item .forecast-time{flex:0 0 50px;flex-direction:row;gap:var(--spacing-xs);align-items:baseline}.weather-forecast-item .forecast-day{flex:0 0 auto;min-width:0}.weather-forecast-item .forecast-day-name{font-size:var(--fs-xs)}.weather-forecast-item .forecast-desc{display:none}.weather-forecast-item .forecast-icon{flex:0 0 36px}.weather-forecast-item .forecast-icon img{width:36px;height:36px}.weather-forecast-item .forecast-temp{flex:0 0 40px;text-align:left;margin-left:auto}.weather-forecast-item .forecast-temps{flex:0 0 70px;margin-left:auto}.weather-forecast-item .forecast-details{flex:0 0 80px}}@media(max-width:575.98px){.weather-current-card{padding:var(--spacing-lg)}.weather-current-temp .temp-value{font-size:3rem}.weather-current-temp .temp-unit{font-size:1.5rem}.weather-current-details{grid-template-columns:repeat(2,1fr)}.weather-alert-item{padding:var(--spacing-sm) var(--spacing-md)}.weather-alert-item .alert-header{flex-direction:column;align-items:flex-start}}
