:root{color:#242824;font-synthesis:none;background:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.65}*{box-sizing:border-box}body{margin:0}a{color:#155b83;text-underline-offset:3px;overflow-wrap:anywhere}a:hover{text-decoration-thickness:2px}button{font:inherit;cursor:pointer;min-height:44px}button,a,summary{-webkit-tap-highlight-color:transparent}:is(button:focus-visible,a:focus-visible,summary:focus-visible){outline-offset:4px;outline:3px solid #986100}button:disabled{color:#666;cursor:wait}h1,h2,h3,p{overflow-wrap:anywhere}h1{letter-spacing:-.025em;margin:3px 0;font-size:clamp(22px,3vw,29px);font-weight:700;line-height:1.35}h2{margin:0 0 14px;font-size:20px;line-height:1.4}h3{font-size:16px}p{margin:10px 0}.shell{max-width:1000px;margin:auto;padding:0 28px 28px}.skipLink{z-index:5;background:#fff;padding:10px 16px;position:absolute;top:-80px}.skipLink:focus{top:8px}.header{border-bottom:2px solid #283d32;justify-content:space-between;align-items:center;gap:24px;padding:26px 0 20px;display:flex}.brand{align-items:center;gap:13px;min-width:0;display:flex}.logoMark{flex-shrink:0}.logoMark img{width:36px;height:36px;display:block}.eyebrow{letter-spacing:.1em;color:#465b4d;margin:0;font-size:11px;font-weight:650}.muted{color:#555e56;margin:3px 0 0;font-size:14px}.headerActions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.langSwitch{flex-wrap:wrap;gap:10px;display:flex}.langSwitch button{color:#47504a;background:#fff;border:0;border-bottom:2px solid #0000;padding:6px 2px;font-size:14px}.langSwitch .active{color:#202d24;border-bottom-color:#283d32;font-weight:700}.badge{color:#555e56;font-size:12px}.updateBar{color:#555e56;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;font-size:14px;display:flex}.updateBar button{color:#24372b;background:#fff;border:1px solid #a7afa9;border-radius:2px;flex-shrink:0;padding:6px 12px}.quickActions{border-top:1px solid #d2d7d2;border-bottom:1px solid #d2d7d2;flex-wrap:wrap;gap:8px 24px;padding:12px 0;display:flex}.quickActions a{align-items:center;gap:6px;min-height:44px;font-size:15px;display:inline-flex}.quickActions a:nth-child(n+3){color:#9c2424}.quickActions b{font-size:19px}.independentNote{color:#555e56;margin:14px 0 22px;font-size:14px;line-height:1.6}.card{background:#fff;border:0;border-top:1px solid #d2d7d2;min-width:0;padding:22px 0}.card h2{color:#242824}.card p{line-height:1.7}.source{color:#555e56;margin:16px 0 0;font-size:14px;line-height:1.7}.grid{gap:28px;display:grid}.lowerGrid{grid-template-columns:1fr 1fr;margin:24px 0 0}.weatherGrid{margin-top:12px}.weatherTop{align-items:center;gap:18px;display:flex}.temperature{letter-spacing:-2px;font-size:48px;font-weight:650;line-height:1.15}.weatherEmoji{font-size:34px}.weatherName{margin:8px 0 14px;font-size:18px;font-weight:600}.metrics{flex-wrap:wrap;gap:8px 24px;font-size:15px;display:flex}.quakeMain{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.quakeMain p{margin:4px 0;font-size:14px}.quakeIntensity{border:1px solid #b9bfb9;flex-shrink:0;padding:6px 10px;font-weight:700}.localInfo{margin-top:14px;font-size:15px}.officialLink{padding:8px 0;font-weight:600;display:inline-block}.forecastDetails{border-top:1px solid #d2d7d2;border-bottom:1px solid #d2d7d2;margin:4px 0 24px}.forecastDetails>summary{padding:14px 0}.forecastDetails .card{border-top:1px solid #e4e7e4}summary{cursor:pointer;min-height:44px;font-weight:650;line-height:1.6}details[open]>summary{margin-bottom:12px}.hourly{grid-template-columns:repeat(6,minmax(100px,1fr));display:grid;overflow-x:auto}.hour{text-align:center;border-right:1px solid #e0e4e0;flex-direction:column;gap:7px;padding:12px 8px;display:flex}.hour:last-child{border-right:0}.hour strong{font-size:21px}.hourDate,.hour small{color:#555e56;font-size:14px}.weekly{display:block}.dayForecast{border-bottom:1px solid #e0e4e0;grid-template-columns:110px 42px minmax(80px,1fr) 100px 65px;align-items:center;gap:12px;padding:12px 0;display:grid}.dayForecast>div{align-items:baseline;gap:8px;display:flex}.dayForecast small,.dayForecast>div span{color:#555e56;font-size:14px}.dayCondition,.dayTemps{font-size:15px}.dayTemps b{color:#242824}.preparednessPromo{border-top:1px solid #d2d7d2;margin:24px 0;padding:20px 0}.preparednessPromo span{display:none}.preparednessPromo h2{margin-bottom:6px;font-size:18px}.preparednessPromo p{margin:0 0 10px;font-size:15px}.preparednessPromo a{padding:6px 0;font-size:15px;display:inline-block}.officialHeader>span{display:none}.officialHeader p{color:#555e56;font-size:15px}.sourceGroups{grid-template-columns:1fr 1fr;gap:28px;display:grid}.sourceType{font-size:15px;font-weight:700}.sourceLinks{display:grid}.sourceLinks a{border-bottom:1px solid #e0e4e0;flex-direction:column;gap:2px;padding:12px 0;font-size:15px;display:flex}.sourceLinks strong{font-weight:600}.sourceLinks span{color:#555e56;font-size:14px}.disclaimer{color:#555e56;margin:24px 0;font-size:14px;line-height:1.7}footer{color:#555e56;border-top:1px solid #aeb8af;flex-direction:column;gap:4px;padding:20px 0;font-size:13px;display:flex}footer strong{color:#283d32;font-size:14px}.errorBox{color:#624500;background:#fff8e7;border-left:4px solid #956600;margin:16px 0;padding:12px 16px}[id]{scroll-margin-top:16px}.weatherEmoji,.hourIcon,.dayIcon{font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-style:normal}.hourIcon,.dayIcon{font-size:28px;line-height:1.3}.hourCondition{min-height:42px;line-height:1.45}@media (max-width:700px){.shell{padding:0 18px 24px}.header{flex-direction:column;align-items:flex-start;gap:10px;padding:20px 0 16px}.headerActions{align-items:flex-start}.langSwitch{gap:22px}.langSwitch button{font-size:15px}.badge{display:none}.quickActions{grid-template-columns:1fr 1fr;gap:4px 16px;display:grid}.quickActions a{font-size:14px}.quickActions b{font-size:18px}.lowerGrid,.sourceGroups{grid-template-columns:1fr;gap:0}.updateBar{align-items:center;font-size:13px}.dayForecast{grid-template-columns:68px 30px minmax(60px,1fr) 70px 44px;gap:6px}.dayForecast>div{flex-direction:column;gap:0}.dayCondition,.dayTemps,.dayForecast small,.dayForecast>div span{font-size:13px}.dayIcon{font-size:24px}}@media (max-width:370px){.shell{padding-left:14px;padding-right:14px}.dayForecast{grid-template-columns:58px 26px minmax(48px,1fr) 64px 38px;gap:4px}}
