/* Incident Weather Intelligence · v7.2, light default / dark compatible */
.wx-dashboard{--wx-text:var(--app-ink,#1b2d44);--wx-muted:var(--app-muted,#687a8c);--wx-border:var(--app-line,#dde5ed);--wx-surface:var(--app-surface,#fff);--wx-soft:var(--app-soft,#f6f9fd);--wx-blue:var(--app-blue,#3169bb);color:var(--wx-text);display:grid;gap:16px;min-width:0;margin:0 0 20px;font-family:Inter,system-ui,-apple-system,sans-serif}
.wx-dashboard *{box-sizing:border-box}
.wx-feature-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.wx-feature-head h2{color:var(--wx-text);font-size:23px;line-height:1.2;letter-spacing:-.04em;margin:2px 0 6px}
.wx-feature-head p{margin:0;color:var(--wx-muted);font-size:12px}
.wx-eyebrow{font-size:10px;font-weight:850;letter-spacing:.14em;color:var(--wx-blue)}
.wx-head-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}
.wx-fetch-indicator{font-size:11px;font-weight:750;color:var(--wx-muted)}
.wx-primary{border:1px solid #2964b3;background:#2964b3;color:#fff;border-radius:9px;padding:10px 13px;font-weight:800;font-size:11px;cursor:pointer;min-height:39px;white-space:normal}
.wx-primary:hover:not(:disabled){background:#1f4d8c}.wx-primary:disabled{opacity:.5;cursor:not-allowed}
.wx-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.wx-metric{background:var(--wx-surface);border:1px solid var(--wx-border);border-top:3px solid #3e84bd;border-radius:13px;box-shadow:var(--app-cardshadow);padding:14px 16px;display:flex;flex-direction:column;min-height:111px;gap:4px;min-width:0}
.wx-metric:nth-child(2){border-top-color:#20a3a0}.wx-metric:nth-child(3){border-top-color:#e7a749}.wx-metric:nth-child(4){border-top-color:#9873ca}
.wx-metric>span{text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:750;color:var(--wx-muted)}
.wx-metric strong{font-size:23px;line-height:1.25;letter-spacing:-.04em;color:var(--wx-text);overflow-wrap:anywhere}
.wx-metric small{font-size:10px;color:var(--wx-muted);line-height:1.45}
.wx-attention{color:#b35d1c!important}
.wx-grid{display:grid;grid-template-columns:minmax(0,1.84fr) minmax(290px,0.83fr);gap:14px;align-items:start}
.wx-main,.wx-aside{display:grid;gap:14px;min-width:0}
.wx-card,.wx-map-card{border:1px solid var(--wx-border);background:var(--wx-surface);border-radius:14px;box-shadow:var(--app-shadow);min-width:0;overflow:hidden}
.wx-card{padding:19px}
.wx-card-head,.wx-map-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.wx-card-head{margin:0 0 15px}.wx-card-head h3{color:var(--wx-text);font-size:13px;font-weight:850;margin:0}.wx-card-head span{font-size:10px;color:var(--wx-muted);font-weight:750}
.wx-map-head{padding:12px 15px;border-bottom:1px solid var(--wx-border)}
.wx-map-head strong{font-size:13px;font-weight:850;display:block}.wx-map-head small{color:var(--wx-muted);font-size:10px;font-weight:600;display:block;margin-top:3px}
.wx-map-actions{display:flex;align-items:center;gap:6px}.wx-map-actions button{background:var(--wx-soft);border:1px solid var(--wx-border);border-radius:7px;color:var(--wx-text);font-size:11px;font-weight:850;min-height:31px;min-width:33px;padding:5px 9px;cursor:pointer}
.wx-map-panel{position:relative;aspect-ratio:16/9;overflow:hidden;background-color:#e6eff8;background-image:linear-gradient(90deg,#b9cfe440 1px,transparent 1px),linear-gradient(#b9cfe440 1px,transparent 1px);background-size:48px 48px}
.wx-map-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block}
.wx-map-underlay{background:transparent}
.wx-map-underlay img{width:100%;height:100%;object-fit:fill;display:block;position:relative;z-index:2}
.wx-map-fallback{position:absolute;inset:0;display:grid;place-content:center;text-align:center;font-size:16px;color:#5d718b;font-weight:700;gap:5px;z-index:1}.wx-map-fallback small{font-size:11px;font-weight:500}
.wx-radar-layer{z-index:3;pointer-events:none}.wx-map-geometry{z-index:4;pointer-events:none}.wx-map-geometry circle{filter:drop-shadow(0 1px 4px #121c3188)}
.wx-alert-poly{fill:#f5515b15;stroke:#df3348;stroke-width:3;stroke-dasharray:9 4}.wx-alert-poly.wx-extreme{fill:#cc235144;stroke:#c51636}.wx-alert-poly.wx-severe{fill:#df752d33;stroke:#df5724}.wx-alert-poly.wx-moderate{fill:#edb54433;stroke:#bb8423}.wx-alert-poly.wx-minor{fill:#7496d022;stroke:#5782a8}
.wx-map-nw,.wx-map-bottom{z-index:5;position:absolute;color:#fff;text-shadow:0 1px 4px #071629bb;font-size:11px;font-weight:900;display:flex;align-items:center;gap:10px}.wx-map-nw{top:13px;left:14px}.wx-map-nw span{background:#132b42b5;border-radius:6px;padding:5px 8px;font-weight:750}
.wx-map-bottom{left:12px;bottom:10px;right:12px;justify-content:space-between;flex-wrap:wrap}
.wx-observed-flag,.wx-future-warning{border-radius:5px;padding:5px 8px;background:#143f73db;font-size:9px;letter-spacing:.08em}.wx-future-warning{background:#a16816e8}
.wx-map-credit{background:#132b42a8;padding:4px 7px;border-radius:4px;font-size:9px}
.wx-radar-controls{padding:14px 16px;display:grid;gap:12px}
.wx-radar-modes{display:flex;gap:6px;border:1px solid var(--wx-border);border-radius:9px;background:var(--wx-soft);padding:4px;max-width:360px}
.wx-radar-modes button{border:0;background:transparent;color:var(--wx-muted);border-radius:7px;padding:8px 12px;cursor:pointer;font-size:11px;font-weight:800;flex:1}
.wx-radar-modes .is-active{background:var(--wx-surface);color:var(--wx-blue);box-shadow:var(--app-cardshadow)}
.wx-radar-time{display:grid;gap:3px}.wx-radar-time strong{font-size:12px;color:var(--wx-text)}.wx-radar-time small{font-size:10px;color:var(--wx-muted)}
.wx-timeline{display:flex;align-items:center;gap:12px}.wx-timeline input{flex:1;min-width:60px;accent-color:#3375c7}.wx-timeline span{font-size:10px;color:var(--wx-muted);font-weight:750;min-width:88px;text-align:right}
.wx-play{border:1px solid var(--wx-border);background:var(--wx-soft);color:var(--wx-text);border-radius:8px;min-width:38px;min-height:34px;font-size:13px;cursor:pointer}
.wx-overlay-settings{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--wx-muted)}.wx-overlay-settings label{display:flex;align-items:center;gap:7px}.wx-overlay-settings input{accent-color:#3375c7;max-width:100px}
.wx-status{border-top:1px solid var(--wx-border);padding-top:10px;font-size:10px;color:var(--wx-muted);line-height:1.55}
.wx-alert{border:1px solid var(--wx-border);border-left:4px solid #90a6bd;border-radius:8px;padding:10px;margin-bottom:8px;background:var(--wx-soft)}
.wx-alert.wx-extreme{border-left-color:#d33149}.wx-alert.wx-severe{border-left-color:#da653a}.wx-alert.wx-moderate{border-left-color:#d3a135}
.wx-alert summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none}.wx-alert summary::-webkit-details-marker{display:none}.wx-alert summary strong{font-size:12px;flex:1;color:var(--wx-text)}.wx-alert summary span:last-child{font-size:9px;text-transform:uppercase;color:var(--wx-muted)}.wx-alert-dot{width:9px;height:9px;border-radius:50%;background:#c76c36;flex:0 0 9px}.wx-extreme .wx-alert-dot{background:#d22b4b}
.wx-alert>div{padding:10px 0 1px;font-size:11px;color:var(--wx-text);line-height:1.55}.wx-alert>div p{color:var(--wx-muted);white-space:pre-line;overflow-wrap:anywhere}.wx-alert>div small{color:var(--wx-muted)}
.wx-alert-none{border:1px solid #a8d8be;background:#eaf9f0;color:#1f7252;padding:12px 13px;border-radius:9px;font-size:11px;line-height:1.6}
[data-ui-theme="dark"] .wx-alert-none{background:#1a3b33;color:#8fe2b7;border-color:#397d61}
.wx-source-error{font-size:11px;line-height:1.5;color:#aa3d4e;border:1px solid #e5b3b8;border-radius:8px;padding:10px;background:var(--app-redwash)}
.wx-inline-link{font-size:11px;color:var(--app-link,#2b64be);font-weight:800;text-decoration:none}
.wx-muted{color:var(--wx-muted);font-size:11px;line-height:1.55}
.wx-days,.wx-hours{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(115px,1fr);overflow:auto;gap:9px;padding-bottom:7px;scroll-snap-type:x proximity}
.wx-days{grid-auto-columns:minmax(133px,1fr)}.wx-day,.wx-hours>div{display:grid;gap:6px;border:1px solid var(--wx-border);border-radius:10px;background:var(--wx-soft);padding:12px;scroll-snap-align:start;align-content:start}
.wx-day>span,.wx-hours span{font-size:11px;color:var(--wx-text);font-weight:850}.wx-day strong,.wx-hours strong{font-size:23px;color:var(--wx-text);font-weight:850;letter-spacing:-.04em}.wx-day small,.wx-hours small{font-size:10px;color:var(--wx-muted);line-height:1.4}
.wx-links{display:grid;gap:9px}.wx-links a{color:var(--app-link,#2768b2);text-decoration:none;font-size:11px;font-weight:750;line-height:1.5}.wx-links a:hover,.wx-inline-link:hover{text-decoration:underline}
.wx-footnotes{background:var(--wx-surface);border:1px solid var(--wx-border);border-radius:12px;padding:14px 16px;font-size:10px;line-height:1.55;color:var(--wx-muted)}.wx-footnotes strong{color:var(--wx-text)}.wx-footnotes p{margin:7px 0 0}.wx-source-chips{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.wx-source-chips span{padding:4px 8px;border-radius:6px;background:var(--wx-soft);border:1px solid var(--wx-border)}.wx-source-chips .wx-source-down{border-color:#ebc2ba;background:var(--app-redwash)}.wx-source-chips .wx-source-ok{border-color:#abdbc9;background:var(--app-greenwash)}
@media(max-width:1120px){.wx-grid{grid-template-columns:1fr}.wx-aside{grid-template-columns:repeat(2,minmax(0,1fr))}.wx-aside .wx-alerts-card{grid-column:1/-1}}
@media(max-width:800px){.wx-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.wx-feature-head{align-items:flex-start}.wx-map-head{padding:10px}.wx-map-bottom{gap:5px}}
@media(max-width:600px){.wx-dashboard{gap:11px}.wx-feature-head h2{font-size:20px}.wx-metrics{gap:8px}.wx-metric{padding:11px 12px;min-height:96px}.wx-metric strong{font-size:19px}.wx-metric>span{font-size:9px}.wx-aside{grid-template-columns:1fr}.wx-aside .wx-alerts-card{grid-column:1}.wx-card{padding:14px}.wx-map-head{flex-direction:column;align-items:stretch;gap:7px}.wx-map-actions{justify-content:flex-end}.wx-map-panel{aspect-ratio:1.35}.wx-radar-controls{padding:12px}.wx-overlay-settings{display:grid;gap:5px}.wx-timeline{gap:7px}.wx-timeline span{min-width:65px;font-size:9px}.wx-map-credit{font-size:7px}.wx-days{grid-auto-columns:minmax(120px,1fr)}.wx-hours{grid-auto-columns:minmax(95px,1fr)}}
