/* Upper Air, Severe and Fire & Air pages: shared controls, image panels, Leaflet maps, lists */
.wp-src{font-size:.75rem;color:var(--color-muted-foreground);line-height:1.5}.wp-src a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}
.wp-head{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}
.wp-kick{font-size:.67rem;text-transform:uppercase;letter-spacing:.3em;color:var(--color-primary)}
.wp-h2{font-family:var(--font-display);font-size:1.5rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-foreground);line-height:1.1}
@media(min-width:768px){.wp-h2{font-size:1.875rem}}
.wp-lead{font-size:.9rem;line-height:1.6;color:var(--color-muted-foreground);max-width:46rem}
.wp-controls{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:flex-end;margin-bottom:1rem}
.wp-ctl{display:flex;flex-direction:column;gap:.25rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:var(--color-muted-foreground)}
.wp-ctl select{font-size:.9rem;letter-spacing:normal;text-transform:none;color:var(--color-foreground);background:var(--color-surface);border:1px solid var(--color-border);border-radius:.375rem;padding:.45rem .6rem;min-width:11rem;max-width:100%}
.wp-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.8rem}
.wp-tabs button,.wp-chip{font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;padding:.45rem .7rem;border:1px solid var(--color-border);border-radius:.25rem;background:var(--color-surface);color:var(--color-muted-foreground);cursor:pointer}
.wp-tabs button:hover,.wp-chip:hover{color:var(--color-foreground)}
.wp-tabs button[aria-selected="true"],.wp-chip[aria-pressed="true"]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-foreground)}
.wp-fig{margin:0;border:1px solid var(--color-border);border-radius:.5rem;overflow:hidden;background:#fff}
.wp-fig img{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain;background:#fff}
.wp-fig figcaption{font-size:.75rem;padding:.5rem .75rem;background:var(--color-surface);color:var(--color-muted-foreground);border-top:1px solid var(--color-border)}
.wp-snd{max-width:900px}
.wp-msg{font-size:.85rem;color:var(--color-muted-foreground);padding:1rem;border:1px dashed var(--color-border);border-radius:.5rem;background:var(--color-surface)}
.wp-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
@media(min-width:900px){.wp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.wp-card{border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);overflow:hidden;display:flex;flex-direction:column}
.wp-card img{display:block;width:100%;height:auto;background:#fff;border-bottom:1px solid var(--color-border)}
.wp-card-b{padding:.8rem .9rem;display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;line-height:1.5;color:var(--color-foreground)}
.wp-card-t{font-weight:700;font-size:.95rem}
.wp-card-m{font-size:.74rem;color:var(--color-muted-foreground)}
.wp-card a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}
.wp-tag{display:inline-block;font-size:.6rem;text-transform:uppercase;letter-spacing:.14em;padding:.15rem .45rem;border-radius:.2rem;color:#fff;margin-right:.35rem;vertical-align:1px}
.wp-map{height:420px;width:100%;border:1px solid var(--color-border);border-radius:.4rem;background:var(--color-surface);z-index:0}
@media(min-width:768px){.wp-map{height:560px}}
.wp-tiles{filter:grayscale(1) brightness(1.06) contrast(.9)}
.dark .wp-tiles{filter:grayscale(1) invert(1) brightness(.85) contrast(.85)}
.wp-legend{display:flex;flex-wrap:wrap;gap:.4rem 1rem;font-size:.74rem;color:var(--color-foreground);margin:.6rem 0}
.wp-legend span{display:inline-flex;align-items:center;gap:.35rem}
.wp-sw{width:.8rem;height:.8rem;border-radius:50%;border:1px solid rgba(0,0,0,.4);display:inline-block}
.wp-sq{border-radius:2px}
.wp-stats{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.8rem}
.wp-stat{border:1px solid var(--color-border);border-radius:.4rem;background:var(--color-surface);padding:.5rem .8rem;min-width:7rem}
.wp-stat b{display:block;font-family:var(--font-display);font-size:1.6rem;line-height:1;color:var(--color-foreground)}
.wp-stat span{font-size:.62rem;text-transform:uppercase;letter-spacing:.16em;color:var(--color-muted-foreground)}
.wp-tablewrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);max-height:28rem;overflow-y:auto}
.wp-table{border-collapse:collapse;width:100%;font-size:.8rem;font-variant-numeric:tabular-nums;color:var(--color-foreground)}
.wp-table th,.wp-table td{padding:.4rem .6rem;text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top}
.wp-table thead th{position:sticky;top:0;font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted-foreground);background:var(--color-muted);font-weight:600}
.wp-table td.n{text-align:right;white-space:nowrap}
.wp-aqi{display:inline-block;min-width:2.4rem;text-align:center;font-weight:700;border-radius:.2rem;padding:.05rem .3rem}
.wp-notes p,.wp-notes li{font-size:.92rem;line-height:1.65;color:var(--color-foreground)}
.wp-notes p{margin:0 0 .9rem}.wp-notes ul{margin:0 0 1rem 1.2rem;list-style:disc}.wp-notes li{margin:.2rem 0}
.wp-notes a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}
.wp-stale{color:var(--color-accent);font-weight:600}
.leaflet-popup-content{font-size:.8rem;line-height:1.45}
