body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:#172b3b; background:#f7f9fa; max-width:1260px; margin:30px auto; padding:0 20px; }
.wind-intro { margin-bottom:22px; }
.wind-intro h1 { margin:0 0 5px; font-size:2rem; letter-spacing:-.04em; }
.wind-intro p { margin:0; color:#526877; }
.wind-panel { background:#fff; border:1px solid #dce4e9; border-radius:14px; margin:20px 0; overflow:hidden; box-shadow:0 3px 12px #19304705; }
.wind-panel.table-container { box-sizing:border-box; max-width:100%; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; touch-action:pan-x pan-y; overscroll-behavior-x:contain; }
.wind-panel.table-container:focus-visible { outline:3px solid #d66b12; outline-offset:3px; }
.wind-table { margin:0; min-width:520px; }
.wind-table td,.wind-table th { white-space:nowrap; }
.wind-table th { background:#edf2f5; color:#405768; font-size:.8rem; letter-spacing:.03em; border:0; padding:13px 18px; }
.wind-table td { border:0; border-top:1px solid #edf1f4; padding:14px 18px; background:#fff; }
.wind-table tr:nth-child(even) { background:#fff; }
.wind-table .wind-value { font-size:1.25rem; font-weight:750; font-variant-numeric:tabular-nums; }
.wind-table .station-name { font-weight:650; }
.wind-table .wind-station-error { display:inline-block; margin-left:8px; padding:2px 5px; border-radius:4px; background:#fff0f0; color:#b42318; font-size:.65rem; font-weight:750; line-height:1.4; letter-spacing:.03em; vertical-align:middle; }
.station-dot { display:inline-block; width:9px; height:9px; border-radius:50%; margin-right:9px; background:var(--station-color); }
.wind-table .stale { color:#9b4900; }
.wind-chart-head { display:flex; flex-wrap:wrap; gap:16px; align-items:center; justify-content:space-between; padding:22px 24px 6px; }
.wind-chart-head h2 { margin:0; font-size:1.1rem; }
.wind-ranges { display:flex; background:#f0f3f5; padding:4px; border-radius:9px; gap:3px; }
.wind-ranges button { border:0; background:transparent; color:#506574; padding:8px 13px; border-radius:6px; cursor:pointer; font-size:.85rem; font-weight:600; font-family:inherit; }
.wind-ranges button[aria-pressed="true"] { background:#193f59; color:#fff; box-shadow:0 2px 4px #1232; }
.wind-stations { display:flex; flex-wrap:wrap; gap:8px; padding:12px 24px; }
.wind-stations button { font:inherit; font-size:.84rem; border:1px solid #dbe3e9; background:#fff; border-radius:20px; padding:7px 11px; color:#243f50; cursor:pointer; }
.wind-stations button[aria-pressed="false"] { opacity:.45; background:#f4f6f7; }
.wind-stations button:focus-visible,.wind-ranges button:focus-visible { outline:3px solid #f2963e; outline-offset:3px; }
.wind-chart-footer { margin:0; padding:10px 24px 18px; color:#6b7e8b; font-size:.8rem; }
.wind-status { color:#607581; font-size:.85rem; padding:0 4px; }
.wind-source { color:#607581; font-size:.8rem; line-height:1.6; margin:20px 0 28px; }
.wind-source a { color:inherit; text-decoration:underline; }
.wind-error { color:#9b360d; }
[hidden] { display:none !important; }
.wind-history-link { margin:20px 0 28px; }
.wind-history-link a { display:inline-flex; align-items:center; gap:20px; padding:13px 18px; border-radius:9px; color:#193f59; background:#e7eff4; font-weight:650; text-decoration:none; }
.wind-history-link a:hover { background:#dce9f1; }
.wind-history-link a:focus-visible { outline:3px solid #e17519; outline-offset:3px; }
@media(max-width:600px) { body{padding:0 12px;margin:20px auto}.wind-chart-head{padding:18px 14px 6px}.wind-stations{padding:10px 14px;gap:6px}.wind-stations button{padding:8px 10px}.wind-chart-footer{padding:10px 14px 16px}.wind-ranges{width:100%;justify-content:space-between}.wind-ranges button{flex:1}.wind-table td,.wind-table th{padding:12px} }

@media(max-width:600px){.wind-table .wind-value{font-size:1rem;font-weight:650}}
