#view-models{min-height:0;min-width:0;width:100%}
#models-windy{display:block;grid-row:2;width:100%;height:100%;min-height:0;border:0;background:#102d3a}
#models-windy.hidden{display:none}
#models-ensemble{min-width:100%;padding:8px;background:#fff;color:#19394e}
.ensemble-note{font-size:12px;line-height:1.45;margin:4px 6px 10px;overflow-wrap:anywhere}
.ensemble-card{margin:0 0 10px;border:1px solid #dce5eb;border-radius:12px;padding:10px 8px;background:#fff}
.ensemble-card h2{font-size:15px;line-height:1.3;margin:0 4px 8px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;letter-spacing:0}
.ensemble-card h2 small{font-size:12px;font-weight:500;color:#506777}
.ensemble-svg svg{width:100%;height:auto;min-height:140px;display:block}
.ensemble-probe{font-size:12px;line-height:1.5;margin:5px 6px 0;color:#506777}
@media(max-width:600px){.ensemble-svg svg text{font-size:26px}.ensemble-card h2{font-size:14px}}
.windy-mode .models-viewer{grid-template-rows:auto minmax(0,1fr)}
.windy-mode .models-controls{padding:7px 9px}
#view-models.active{height:100%;display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;gap:7px;overflow:hidden}
#models-refresh{width:44px;min-height:44px;font-size:24px;padding:0}
.models-switch{display:flex;padding:4px;border-radius:15px;gap:4px}
.models-switch button{flex:1;min-height:36px;border:0;border-radius:11px;background:transparent;color:var(--muted);font-size:14px;font-weight:700;cursor:pointer}
.models-switch button[aria-pressed="true"]{background:var(--glass-strong);color:var(--ink);box-shadow:0 2px 8px #0001}
.models-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:7px 8px;border-radius:19px;padding:9px}
.models-location{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 2px;min-height:24px;font-size:13px}
.models-location strong{font-weight:650;overflow-wrap:anywhere}
.models-location small{font-size:11px;color:var(--muted);margin-left:8px}
.models-text-button{font-size:12px;background:transparent;color:var(--accent);border:0;cursor:pointer;min-height:32px}
#models-area-field{grid-column:1/-1;flex-direction:row;align-items:center;gap:8px}
#models-area-field>select{flex:1;min-height:34px;font-size:15px}
.models-description{font-size:12px;line-height:1.35;color:var(--muted);margin:0;padding:0 3px}
.models-viewer{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;min-width:0;overflow:hidden;border:1px solid var(--line-soft);border-radius:20px;background:white;isolation:isolate;color-scheme:light}
.models-tools{display:flex;gap:2px;align-items:center;justify-content:space-between;background:#edf3f6;border-bottom:1px solid #dce5eb;padding:3px 6px}
.models-tools button,.models-tools a{color:#17374c;background:transparent;border:0;padding:7px 8px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:13px;font-weight:650;text-decoration:none;border-radius:9px;cursor:pointer;white-space:nowrap}
.models-tools button:hover,.models-tools a:hover{background:#dbe8ef}
.models-tools button:disabled{opacity:.45;cursor:default}
.models-chart-scroll{overflow:auto;min-height:0;min-width:0;position:relative;overscroll-behavior:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom;background:white}
#models-chart{display:block;width:100%;max-width:none;height:auto;user-select:none;-webkit-user-select:none}
#models-chart.hidden{display:none}
.models-empty{display:flex;align-items:center;justify-content:center;height:100%;min-height:100px;padding:22px;color:#4c6575;font-size:14px;line-height:1.55;text-align:center;white-space:pre-line}
.models-empty.hidden{display:none}
.models-chart-scroll[aria-busy="true"]::after{content:"";position:sticky;display:block;bottom:0;height:3px;background:linear-gradient(90deg,#d8eaf3,#458cb6,#d8eaf3);background-size:200% 100%;animation:model-loading 1.5s linear infinite}
.models-timeline{background:#edf3f6;color:#19394e;padding:5px 8px;border-top:1px solid #dce5eb}
.models-time-caption{display:flex;justify-content:space-between;font-size:12px;gap:8px;padding:0 3px}
.models-time-caption output{font-weight:700;white-space:nowrap}
.models-time-controls{display:flex;gap:6px;align-items:center}
.models-time-controls button{width:34px;min-width:34px;min-height:32px;border:0;background:transparent;color:#19394e;font-size:24px;cursor:pointer}
.models-time-controls button:disabled{opacity:.3;cursor:default}
.models-time-controls input{flex:1;min-width:0;margin:0;height:30px;accent-color:#277cab;cursor:pointer}
.models-footer{display:flex;justify-content:space-between;align-items:start;gap:8px;font-size:11px;line-height:1.35;padding:0 3px;color:var(--muted)}
.models-footer a{color:inherit;white-space:nowrap;text-underline-offset:2px}
#models-status.is-error{color:var(--warn)}
.models-viewer.is-expanded{position:fixed;inset:0;z-index:100;border:0;border-radius:0;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);box-shadow:0 0 0 100vmax #fff}
#view-models button:focus-visible,#view-models select:focus-visible,#view-models input:focus-visible,#view-models a:focus-visible,.models-chart-scroll:focus-visible{outline:3px solid #4baff3;outline-offset:-3px}
@keyframes model-loading{to{background-position:200% 0}}
@media(max-height:740px){#view-models.active{gap:5px}.models-controls{padding:7px}.models-switch button{min-height:32px}.models-description{font-size:11px}#models-refresh{min-height:38px;height:38px}.models-tools button,.models-tools a{min-height:32px;padding:5px 7px}}
@media(max-width:360px){#view-models h1{font-size:19px}.models-location small{display:block;margin:2px 0 0}.models-controls{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.models-controls .map-field select{font-size:14px}.models-tools button,.models-tools a{font-size:12px}}
@media(orientation:landscape) and (max-height:550px){#view-models.active{grid-template-columns:225px minmax(0,1fr);grid-template-rows:auto auto auto 1fr auto}#view-models>.map-heading{grid-column:1;grid-row:1}#view-models h1{font-size:19px}#view-models>.models-switch{grid-column:1;grid-row:2}#view-models>.models-controls{grid-column:1;grid-row:3;grid-template-columns:1fr}#view-models>.models-description{grid-column:1;grid-row:4;overflow:auto}#view-models>.models-footer{grid-column:1;grid-row:5}#view-models>.models-viewer{grid-column:2;grid-row:1/6}.models-controls .map-field>span{display:none}.models-location small{display:none}}
@media(prefers-reduced-motion:reduce){.models-chart-scroll[aria-busy="true"]::after{animation:none}}

/* V10: one chart, no duplicate timeline or explanatory row. */
#view-models.active{grid-template-rows:auto auto auto minmax(0,1fr) auto}
.models-viewer{grid-template-rows:auto minmax(0,1fr)}
#models-sources{position:relative;font-size:12px}
#models-sources summary{cursor:pointer;min-height:24px}
#models-sources>div{position:absolute;bottom:30px;right:0;width:min(300px,80vw);padding:14px;border:1px solid var(--line-soft);border-radius:12px;background:#102737;color:#eaf3f9;z-index:5;font-size:14px;line-height:1.5;box-shadow:0 6px 24px #0005}
#models-sources a{white-space:normal}
@media(orientation:landscape) and (max-height:550px){#view-models.active{grid-template-rows:auto auto auto 1fr auto}}
