/* Scoped wind-map controls, meteorological markers and station panels. */
.hfw-weather .hfw-wind-panel{padding:20px;overflow:hidden}
.hfw-wind-panel .hfw-wind-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:7px 0 12px;font:inherit}
.hfw-wind-panel :is(input,select,button){box-sizing:border-box;max-width:100%;font:400 15px/1.3 "Myriad Pro Regular","Myriad Pro",Arial,sans-serif;letter-spacing:0;text-transform:none;text-shadow:none}
.hfw-wind-panel .hfw-wind-search{display:block;flex:1 1 190px;margin:0}
.hfw-wind-panel input[type=search],.hfw-wind-panel .hfw-wind-select{width:100%;height:41px;min-width:0;padding:8px 11px;margin:0;border:1px solid #c7d6de;border-radius:5px;background:#fff;color:#294654;box-shadow:none}
.hfw-wind-panel .hfw-wind-select{flex:1 1 220px;width:auto}
.hfw-wind-panel .hfw-wind-toggles{display:flex;gap:12px;align-items:center}
.hfw-wind-panel .hfw-wind-toggle{display:inline-flex;align-items:center;gap:6px;margin:0;white-space:nowrap;cursor:pointer;color:#35576a;font-size:15px}
.hfw-wind-panel .hfw-wind-toggle input{appearance:auto;width:17px;height:17px;margin:0;accent-color:#2b8ab1}
.hfw-wind-panel button{appearance:none;-webkit-appearance:none;display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:8px 12px;margin:0;border:1px solid #aac5d4;border-radius:5px;background:#fff;color:#246d91!important;box-shadow:none;cursor:pointer}
.hfw-wind-panel button:hover{background:#edf6fa;border-color:#3186ac}
.hfw-wind-panel :is(button,input,select,a):focus-visible{outline:3px solid #328bb2;outline-offset:2px}
.hfw-wind-panel [hidden]{display:none!important}
.hfw-wind-panel .hfw-wind-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 12px;color:#536d7a;font-size:13px;line-height:1.4}
.hfw-wind-panel .hfw-wind-legend-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.hfw-wind-panel .hfw-wind-legend-item i{display:block;width:16px;height:8px;border-radius:2px}
.hfw-wind-panel .hfw-wind-legend-note{font-size:12px}
.hfw-wind-panel .hfw-wind-stage{position:relative;isolation:isolate;min-width:0;border:1px solid #cbdbe3;border-radius:7px;overflow:hidden;background:#e9edef}
.hfw-wind-panel .hfw-wind-canvas{width:100%;height:560px;min-width:0;background:#e8edef;font:13px/1.4 Arial,sans-serif;touch-action:pan-x pan-y}
/* Gentle terrain color; keep measurements and marker palette unfiltered. */
.hfw-wind-panel .hfw-wind-terrain-pane{filter:grayscale(.35) saturate(.65) brightness(1.035);z-index:190}
.hfw-wind-panel .leaflet-container{color:#263e49}
.hfw-wind-panel .leaflet-pane.leaflet-marker-pane{z-index:600}
.hfw-wind-panel .leaflet-control-attribution{max-width:min(95%,750px);font-size:10px;line-height:1.25;background:rgb(255 255 255 / 90%)}
.hfw-wind-panel .leaflet-control-attribution a{color:#315f78}
.hfw-wind-panel .leaflet-control-zoom{border:1px solid #a9bdc9;box-shadow:0 1px 5px rgb(35 61 78 / 12%)}
.hfw-wind-panel .leaflet-control-zoom a{color:#3d667b;text-decoration:none}
@media(min-width:721px){.hfw-wind-panel .hfw-wind-stage--selected.hfw-wind-stage--has-chart .leaflet-bottom{bottom:188px}}
.hfw-wind-panel .hfw-wind-leaflet-icon{border:0;background:transparent}
.hfw-wind-panel .hfw-wind-marker{position:relative;display:flex;flex-direction:column;align-items:center;width:48px;height:54px;filter:drop-shadow(0 1px 1px rgb(255 255 255 / 95%));cursor:pointer}
.hfw-wind-panel .hfw-wind-marker svg{display:block;width:48px;height:48px;overflow:visible}
.hfw-wind-panel .hfw-wind-marker-value{position:absolute;top:40px;left:50%;transform:translateX(-50%);padding:1px 4px;border:1px solid rgb(255 255 255 / 90%);border-radius:4px;background:rgb(255 255 255 / 92%);color:#233f4e;font:700 12px/1.2 Arial,sans-serif;white-space:nowrap}
.hfw-wind-panel .hfw-wind-marker.is-selected{filter:drop-shadow(0 0 3px #2384b5)}
.hfw-wind-panel .hfw-wind-marker-h{display:flex;justify-content:center;align-items:center;width:28px;height:28px;margin:10px;border:2px solid #fff;border-radius:50%;background:#2b8bb4;color:#fff;box-shadow:0 1px 4px rgb(23 77 102 / 40%);font:700 16px/1 Arial,sans-serif}
.hfw-wind-panel .hfw-wind-details{position:absolute;z-index:800;top:12px;left:12px;width:292px;max-width:calc(100% - 24px);max-height:calc(100% - 214px);overflow:auto;padding:16px;border:1px solid #ccd9e1;border-radius:7px;background:rgb(255 255 255 / 97%);box-shadow:0 3px 15px rgb(33 60 77 / 14%);color:#314d5d;font-size:14px;line-height:1.45;overscroll-behavior:contain}
.hfw-wind-panel .hfw-wind-detail-heading{display:flex;align-items:start;gap:12px;justify-content:space-between;margin-bottom:3px}
.hfw-weather .hfw-wind-panel .hfw-wind-detail-heading h3{margin:0!important;max-width:100%;overflow-wrap:anywhere;font-size:20px!important;line-height:1.2!important;font-weight:600!important;color:#2c6e8d!important}
.hfw-wind-panel button.hfw-wind-close{flex:0 0 28px;min-height:28px;width:28px;padding:0;border:0;background:#eef4f7;font-size:23px;line-height:1}
.hfw-wind-panel .hfw-wind-details p{margin:5px 0 9px;font-size:inherit;line-height:inherit}
.hfw-wind-panel .hfw-wind-provider{color:#267fa7;font-size:12px!important}
.hfw-wind-panel .hfw-wind-height{color:#6b818d;font-size:12px!important}
.hfw-wind-panel .hfw-wind-age{padding:7px 9px;border-radius:4px;background:#edf6f1;color:#2f6948;font-size:12px!important}
.hfw-wind-panel .hfw-wind-age.is-stale{background:#f1f3f4;color:#63737d}
.hfw-wind-panel .hfw-wind-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:13px 0}
.hfw-wind-panel .hfw-wind-stats>div:last-child{grid-column:1/-1}
.hfw-wind-panel .hfw-wind-stats dt{margin:0 0 2px;color:#6e818a;font-size:12px;line-height:1.3;font-weight:400}
.hfw-wind-panel .hfw-wind-stats dd{margin:0;color:#284e63;font-size:23px;line-height:1.2;font-weight:600}
.hfw-wind-panel .hfw-wind-stats>div:last-child dd{font-size:18px}
.hfw-wind-panel .hfw-wind-small{font-size:12px!important;line-height:1.45!important;color:#667f8b}
.hfw-wind-panel .hfw-wind-source{display:inline-block;margin:5px 0 0;font-size:12px;line-height:1.4;color:#267ca6;text-decoration:underline;text-underline-offset:2px}
.hfw-wind-panel .hfw-wind-chart{position:absolute;z-index:800;bottom:0;left:0;right:0;height:188px;padding:10px 14px 4px;border-top:1px solid #cadbe5;background:rgb(255 255 255 / 98%);color:#486371}
.hfw-wind-panel .hfw-wind-chart-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px;font-size:13px;line-height:1.3}
.hfw-wind-panel .hfw-wind-chart-key{font-size:12px;font-weight:400;color:#5b7380;white-space:nowrap}
.hfw-wind-panel .hfw-wind-chart svg{display:block;width:100%;height:145px;overflow:visible;font:11px Arial,sans-serif;fill:#617985}
.hfw-wind-panel .hfw-wind-chart-empty{position:absolute;inset:45px 25px auto;text-align:center;font-size:13px;background:rgb(255 255 255 / 80%)}
.hfw-wind-panel .hfw-wind-stage--holfuy .hfw-wind-details{width:620px;max-height:calc(100% - 24px)}
.hfw-wind-panel .hfw-wind-holfuy-holder{display:block;position:relative;width:100%;max-width:580px;min-width:0;margin:12px 0 4px;overflow:visible}
.hfw-wind-panel iframe.hfw-wind-holfuy-frame{display:block;width:580px;max-width:none!important;height:250px;min-height:0;margin:0;border:0;transform-origin:top left;background:#fff}
.hfw-wind-panel .hfw-wind-owned{margin:20px 0 12px}
.hfw-weather .hfw-wind-panel .hfw-wind-owned>h3{margin:0 0 12px!important;font-size:23px!important;line-height:1.25!important;font-weight:400!important;font-style:normal!important;color:#2c7c9e!important}
.hfw-wind-panel .hfw-wind-owned-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hfw-wind-panel .hfw-wind-owned-site{min-width:0;padding:12px;border:1px solid #cbdbe3;border-radius:6px;background:#fff}
.hfw-weather .hfw-wind-panel .hfw-wind-owned-site>h4{margin:0 0 10px!important;font-size:18px!important;line-height:1.25!important;font-weight:600!important;font-style:normal!important;color:#315c72!important}
.hfw-wind-panel .hfw-wind-owned-site .hfw-wind-holfuy-holder{margin:0 auto 8px}
.hfw-wind-panel .hfw-wind-owned-site [data-hfw-wind-direct-status]{margin:8px 0;line-height:1.45}
@media(max-width:1050px){.hfw-wind-panel .hfw-wind-owned-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.hfw-wind-panel .hfw-wind-owned-grid{grid-template-columns:minmax(0,1fr)}}
.hfw-wind-panel button.hfw-wind-load{margin:4px 0 5px;background:#2e87ad;color:#fff!important;border-color:#2e87ad}
.hfw-wind-panel [data-hfw-wind-status]{margin:11px 0 5px;color:#5b7482;font-size:13px;line-height:1.4}
.hfw-wind-panel .hfw-wind-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.hfw-wind-panel:fullscreen{display:flex;flex-direction:column;box-sizing:border-box;width:100%;height:100dvh;max-width:none;margin:0!important;padding:16px;background:#fff;overflow:auto}
.hfw-wind-panel:fullscreen .hfw-wind-stage{flex:1 0 450px}
.hfw-wind-panel:fullscreen .hfw-wind-canvas{height:100%;min-height:450px}
@media(max-width:1000px){.hfw-wind-panel .hfw-wind-controls{gap:8px}.hfw-wind-panel .hfw-wind-select{flex-basis:210px}}
@media(max-width:720px){.hfw-weather .hfw-wind-panel{padding:14px}.hfw-wind-panel .hfw-wind-canvas{height:480px}.hfw-wind-panel .hfw-wind-search{flex-basis:calc(50% - 10px)}.hfw-wind-panel .hfw-wind-select{flex-basis:calc(50% - 10px)}.hfw-wind-panel .hfw-wind-toggles{margin-right:auto}.hfw-wind-panel .hfw-wind-stage--selected .hfw-wind-details{position:relative;inset:auto;width:auto;max-width:none;max-height:none;margin:0;padding:15px;border:0;border-radius:0;border-top:1px solid #cbdbe3;box-shadow:none;background:#fff}.hfw-wind-panel .hfw-wind-stage--selected .hfw-wind-chart{position:relative;inset:auto;height:195px;margin:0;border-top:1px solid #d8e3e9;padding:12px 8px 4px}.hfw-wind-panel .hfw-wind-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hfw-wind-panel .hfw-wind-stats>div:last-child{grid-column:auto}.hfw-wind-panel .hfw-wind-stats dd{font-size:21px}.hfw-wind-panel .hfw-wind-stage--holfuy .hfw-wind-details{width:auto;max-height:none}.hfw-wind-panel:fullscreen .hfw-wind-stage{flex:none;overflow:auto}.hfw-wind-panel:fullscreen .hfw-wind-canvas{height:480px;min-height:0}}
@media(max-width:480px){.hfw-weather .hfw-wind-panel{padding:12px}.hfw-wind-panel .hfw-wind-canvas{height:440px}.hfw-wind-panel .hfw-wind-select,.hfw-wind-panel .hfw-wind-search{flex-basis:100%;width:100%}.hfw-wind-panel .hfw-wind-controls{gap:8px}.hfw-wind-panel button.hfw-wind-action{min-height:36px;padding:6px 9px;font-size:13px}.hfw-wind-panel .hfw-wind-toggle{font-size:14px}.hfw-wind-panel .hfw-wind-legend{gap:6px 10px}.hfw-wind-panel .hfw-wind-chart-heading{font-size:12px}.hfw-wind-panel .hfw-wind-chart-key{font-size:11px}.hfw-wind-panel .hfw-wind-stats dd{font-size:19px}.hfw-wind-panel .hfw-wind-stats>div:last-child dd{font-size:17px}.hfw-wind-panel:fullscreen{padding:10px}.hfw-wind-panel:fullscreen .hfw-wind-canvas{height:440px}}

.hfw-wind-panel .hfw-wind-note{margin:8px 0 0;font-size:13px;line-height:1.5;color:#516e7b;text-decoration:none}
