.av-weather{box-sizing:border-box;max-width:860px;margin:28px auto;padding:22px;border:1px solid #d8e3eb;border-radius:16px;background:#fff;color:#203448;font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.6;box-shadow:0 6px 24px rgba(24,56,82,.07)}
.av-weather *{box-sizing:border-box}
.av-weather__heading h3{font-size:clamp(1.15rem,2.5vw,1.55rem);line-height:1.4;margin:.15em 0 .35em}
.av-weather__heading p{margin:0 0 12px}
.av-weather__eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.09em;color:#277092}
.av-weather__map{display:block;width:100%;height:auto;max-height:480px;border-radius:13px;border:1px solid #dce7ed;background:#f5fafc}
.av-weather__base{fill:#f5fafc}
.av-weather__grid{fill:none;stroke:#e2edf1;stroke-width:1}
.av-weather__warm-sector{fill:rgba(245,179,91,.15)}
.av-weather__warm-rain{fill:rgba(85,169,206,.29)}
.av-weather__cold-rain{fill:rgba(41,103,156,.38)}
.av-weather__isobar{fill:none;stroke:#a5b4bd;stroke-width:1.5;stroke-dasharray:6 6}
.av-weather__circulation path{fill:none;stroke:#697d8c;stroke-width:2;stroke-linecap:round;opacity:.55}
.av-weather__pressure-trough{fill:none;stroke:#86529c;stroke-width:2;stroke-dasharray:4 6;stroke-linecap:round;opacity:.8}
.av-weather__warm-line{fill:none;stroke:#d54b52;stroke-width:5;stroke-linecap:round}
.av-weather__cold-line{fill:none;stroke:#286db3;stroke-width:5;stroke-linecap:round}
.av-weather__occluded-line{fill:none;stroke:#86529c;stroke-width:6;stroke-linecap:round}
.av-weather__warm-symbols{fill:none;stroke:#d54b52;stroke-width:4;stroke-linecap:round}
.av-weather__cold-symbols{fill:none;stroke:#286db3;stroke-width:4;stroke-linejoin:round}
.av-weather__occluded-symbols{fill:none;stroke:#86529c;stroke-width:4;stroke-linejoin:round}
.av-weather__low{fill:#243e5a;stroke:#fff;stroke-width:3}
.av-weather__low-text{fill:#fff;font-size:25px;font-weight:900;font-family:inherit}
.av-weather__wind-arrow{fill:none;stroke:#173f62;stroke-width:4;stroke-linecap:round}
.av-weather__base-wind-arrow{fill:none;stroke:#697d8c;stroke-width:3;stroke-dasharray:5 4;stroke-linecap:round}
.av-weather__correction-arrow{fill:none;stroke:#86529c;stroke-width:4;stroke-linecap:round}
.av-weather__station-halo{fill:#fff;stroke:#173f62;stroke-width:2}
.av-weather__station{fill:#173f62}
.av-weather__station-label,.av-weather__north{fill:#173f62;font-size:16px;font-weight:800;font-family:inherit;paint-order:stroke;stroke:#f5fafc;stroke-width:4}
.av-weather__legend{display:flex;flex-wrap:wrap;gap:6px 15px;margin:12px 0 5px;font-size:.84rem}
.av-weather__legend span{display:inline-flex;align-items:center;gap:6px}
.av-weather__occlusion-status{margin:0 0 12px;color:#6c4d81;font-size:.81rem;font-weight:700}
.av-weather__wind-legend{display:flex;flex-wrap:wrap;gap:7px 17px;margin:0 0 17px;font-size:.8rem;color:#425b6b}
.av-weather__wind-legend span{display:inline-flex;align-items:center;gap:7px}
.av-weather__wind-logic{margin:-7px 0 17px;color:#334e61;font-size:.84rem}
.av-weather__arrow-key{display:inline-block;width:24px;height:0;border-top:3px solid #173f62}
.av-weather__arrow-key--base{border-color:#697d8c;border-top-style:dashed}
.av-weather__arrow-key--difference{border-color:#86529c}
.av-weather__key{display:inline-block;width:18px;height:9px;border-radius:2px}
.av-weather__key--warm{height:0;border-top:4px solid #d54b52}
.av-weather__key--cold{height:0;border-top:4px solid #286db3}
.av-weather__key--occluded{height:0;border-top:4px solid #86529c}
.av-weather__key--trough{height:0;border-top:2px dashed #86529c}
.av-weather__key--wide{background:rgba(85,169,206,.45)}
.av-weather__key--narrow{background:rgba(41,103,156,.58)}
.av-weather__slider-label{display:flex;justify-content:space-between;gap:10px;font-weight:750}
.av-weather__slider-label output{font-weight:800;color:#135f86}
.av-weather__slider{width:100%;margin:12px 0 0;accent-color:#176b95;cursor:pointer}
.av-weather__scale{display:flex;justify-content:space-between;color:#5a6c7b;font-size:.78rem;margin:-3px 0 13px}
.av-weather__buttons{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:17px}
.av-weather__buttons button{font:inherit;font-size:.85rem;font-weight:750;color:#175370;background:#eef7fb;border:1px solid #a9c8d8;border-radius:8px;padding:7px 12px;cursor:pointer}
.av-weather__buttons button:hover,.av-weather__buttons button:focus-visible{background:#dceef7;outline:2px solid #8dc4dd;outline-offset:1px}
.av-weather__buttons [data-role="play"]{background:#16698e;border-color:#16698e;color:#fff}
.av-weather__buttons [data-role="play"]:hover,.av-weather__buttons [data-role="play"]:focus-visible{background:#125777}
.av-weather__readout{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.av-weather__readout div{padding:10px 12px;background:#eef5f8;border-radius:9px}
.av-weather__readout span{display:block;color:#536c7e;font-size:.76rem}
.av-weather__readout strong{display:block;font-size:1rem;line-height:1.45}
.av-weather__vector-zero{fill:#86529c;stroke:#fff;stroke-width:2}
.av-weather__vector-summary{margin:7px 0 0;font-size:.86rem;color:#334e61}
.av-weather__trough-explainer{margin:9px 0 0;padding:10px 13px;border-radius:8px;background:#f8f3fa;color:#463b52;font-size:.84rem}
.av-weather__explanation{margin:13px 0 0;padding:10px 13px;border-left:4px solid #5aa9c9;background:#f0f8fb;font-size:.91rem}
.av-weather__section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin:22px 0 8px;font-size:.92rem}
.av-weather__section-heading span{color:#6c4d81;font-weight:750}
.av-weather__section{display:block;width:100%;height:auto;border:1px solid #dce7ed;border-radius:10px;overflow:hidden}
.av-weather__section-base{fill:#f7fafc}
.av-weather__section-cold{fill:#b9d5e9}
.av-weather__section-cool{fill:#d8e6ef}
.av-weather__section-warm{fill:#f6d39c}
.av-weather__section-cold-front{fill:none;stroke:#286db3;stroke-width:4}
.av-weather__section-warm-front{fill:none;stroke:#d54b52;stroke-width:4}
.av-weather__section-occluded{fill:none;stroke:#86529c;stroke-width:5}
.av-weather__ground{fill:none;stroke:#536a7a;stroke-width:2}
.av-weather__section-label{fill:#354f62;font-family:inherit;font-size:17px;font-weight:800;paint-order:stroke;stroke:#f7fafc;stroke-width:3}
.av-weather__section-caption{margin:7px 0 0;font-size:.8rem;color:#4d6474}
.av-weather__note{margin:12px 0 0;color:#526878;font-size:.78rem}
@media(max-width:760px){.av-weather__readout{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.av-weather{padding:14px;margin:20px 0}.av-weather__map{min-height:230px}.av-weather__readout div{padding:8px 10px}.av-weather__slider-label{display:block}.av-weather__slider-label output{display:block}.av-weather__section-label{font-size:20px}}
