.xc-dashboard{display:grid;gap:22px;margin:24px 0;min-width:0}.xc-panel{padding:20px;border:1px solid var(--line,#cbd7df);border-radius:12px;background:var(--panel,#fff);color:var(--text,#122c40);min-width:0}.xc-panel h3{font-size:20px;margin:0 0 14px}.xc-panel label{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px}.xc-panel select{font:inherit;color:inherit;background:var(--panel,#fff);border:1px solid var(--line,#cbd7df);border-radius:8px;padding:8px 12px;max-width:100%}.xc-plot{position:relative;min-width:0;margin-top:14px}.xc-plot svg{display:block;width:100%;height:auto;min-height:200px;overflow:visible;touch-action:pan-y}.xc-plot text{fill:var(--muted,#496476);font:13px system-ui,sans-serif}.xc-grid{stroke:var(--line,#cbd7df);stroke-width:1}.xc-cursor{stroke:var(--text,#122c40);stroke-dasharray:4 3;pointer-events:none}.xc-tooltip{position:absolute;z-index:5;top:38px;max-width:min(280px,100%);box-sizing:border-box;padding:10px 12px;border:1px solid var(--line,#cbd7df);border-radius:8px;background:var(--panel,#fff);color:var(--text,#122c40);box-shadow:0 4px 20px #0002;font:14px/1.5 system-ui,sans-serif;pointer-events:none;overflow-wrap:anywhere}.xc-tooltip strong{display:block;margin-bottom:4px}.xc-legend{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:14px;margin:5px 0}.xc-legend span:before{content:'';display:inline-block;width:18px;border-top:3px solid var(--c);margin-right:7px;vertical-align:middle}.xc-note{font-size:14px;color:var(--muted,#496476);margin:0}.xc-plot [role=slider]:focus-visible{outline:2px solid var(--accent,#096783);outline-offset:3px}@media(max-width:600px){.xc-panel{padding:12px}.xc-panel h3{font-size:18px}}.xionia-units-control{font-size:14px!important}

#temperature-chart.xc-dashboard{overflow:visible}#temperature-chart .xc-plot svg{min-width:0;width:100%;height:auto}.xionia-source-status{font:13px/1.4 system-ui,sans-serif;color:inherit;max-width:240px}

#legend.xc-legend span,.legend.xc-legend span{border-bottom:0;padding-bottom:0}

.xm-meteogram{--xm-ink:#15384d;--xm-muted:#536c7d;--xm-paper:#fff;--xm-soft:#f2f7fa;--xm-line:#dce7ed;color:var(--xm-ink);background:var(--xm-paper);border:1px solid var(--xm-line);border-radius:18px;padding:24px;margin:20px 0;font:14px/1.5 system-ui,sans-serif;min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden;box-shadow:0 7px 24px #173b5010}
.xm-meteogram *{box-sizing:border-box}.xm-meteogram [hidden]{display:none!important}
.xm-meteogram h1,.xm-meteogram h2{margin:5px 0 0;font-size:clamp(20px,2.8vw,27px);line-height:1.25;color:inherit}.xm-meteogram h3{margin:0 0 8px;font-size:15px;color:inherit}
.xm-eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--xm-muted);font-weight:700}
.xm-header{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.xm-share-actions{display:flex;gap:7px}
.xm-meteogram button,.xm-meteogram select{font:inherit;color:var(--xm-ink);border:1px solid var(--xm-line);background:var(--xm-paper);border-radius:9px;min-height:38px;padding:7px 11px;cursor:pointer}.xm-meteogram button:hover{border-color:#5294b7;background:var(--xm-soft)}
.xm-meteogram :focus-visible{outline:3px solid #3a9bcc;outline-offset:3px}.xm-controls{display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin:22px 0 12px;background:var(--xm-soft);padding:14px;border-radius:12px}
.xm-controls label{display:grid;gap:5px;font-size:12px;font-weight:650}.xm-controls .xm-more-toggle{display:flex;align-items:center;gap:7px;padding-bottom:8px}.xm-models{display:flex;flex-wrap:wrap;gap:8px 15px;border:0;padding:0;margin:18px 0 10px;min-width:0}.xm-models legend{font-size:12px;color:var(--xm-muted);margin-bottom:9px}
.xm-models label{display:flex;align-items:center;gap:5px;font-size:12px;cursor:pointer;max-width:100%}.xm-models label span:before{content:'';display:inline-block;width:16px;height:3px;border-radius:2px;background:var(--xm-color);vertical-align:middle;margin-right:5px}.xm-models input{accent-color:var(--xm-color);width:16px;height:16px;flex-shrink:0}
.xm-note{color:var(--xm-muted);font-size:12px;line-height:1.55;margin:12px 0}.xm-timeline{display:flex;gap:5px;overflow:auto;padding:8px 2px 14px;scrollbar-width:thin;scroll-snap-type:x proximity}.xm-meteogram .xm-hour{display:flex;flex:0 0 88px;flex-direction:column;align-items:center;gap:3px;padding:10px 7px;scroll-snap-align:start;background:var(--xm-soft)}
.xm-hour small{font-size:10px;white-space:nowrap;color:var(--xm-muted)}.xm-hour strong{font-size:13px}.xm-hour b{font-size:16px}.xm-weather-icon{font-size:24px;line-height:1.5}.xm-meteogram .xm-hour[aria-pressed=true]{border:2px solid #2383a7;padding:9px 6px;background:#e5f3f8;color:#164b61}.xm-meteogram .xm-hour[aria-pressed=true] small{color:#315f70}
.xm-plots{display:grid;gap:2px;margin-top:10px}.xm-track{padding:15px 0 2px;border-top:1px solid var(--xm-line);min-width:0}.xm-track h3{font-size:13px;margin-bottom:0}.xm-track .xc-plot{min-height:170px}.xm-track .xc-plot svg{display:block;width:100%;height:auto}.xm-meteogram .xc-tooltip{background:var(--xm-paper);border:1px solid var(--xm-line);color:var(--xm-ink);z-index:4;box-shadow:0 4px 12px #0002;font-size:11px;padding:8px 12px;max-width:min(300px,95%)}
.xm-inspector{border-top:1px solid var(--xm-line);padding-top:18px;margin-top:15px}.xm-time-control{display:flex;align-items:center;gap:14px;font-size:12px;margin:12px 0}.xm-time-control input{flex:1;min-width:60px;accent-color:#2383a7;min-height:28px}
.xm-table-wrap{overflow:auto;border:1px solid var(--xm-line);border-radius:10px;max-width:100%}.xm-meteogram table{border-collapse:separate;border-spacing:0;width:100%;min-width:1100px;font-size:12px;color:inherit}.xm-meteogram th,.xm-meteogram td{border:0;border-bottom:1px solid var(--xm-line);padding:10px;text-align:center;white-space:nowrap;background:var(--xm-paper)}.xm-meteogram thead th{white-space:normal;min-width:90px;background:var(--xm-soft);font-size:10px}.xm-meteogram tr>th:first-child{position:sticky;left:0;text-align:left;max-width:185px;min-width:150px;white-space:normal;z-index:1}.xm-meteogram tr.xm-combined>*{background:var(--xm-soft);font-weight:750}.xm-footer{border-top:1px solid var(--xm-line);padding-top:12px;display:grid;justify-items:center;gap:8px}.xm-footer>a{font-size:11px;color:var(--xm-muted);text-decoration:none}.xm-share-panel{padding:12px;background:var(--xm-soft);border-radius:10px;margin:12px 0}.xm-share-panel label{display:grid;gap:6px;font-size:12px}.xm-share-panel textarea{width:100%;resize:vertical;background:var(--xm-paper);color:var(--xm-ink);border:1px solid var(--xm-line);padding:8px;border-radius:7px;font:12px/1.4 monospace}.xm-share-panel p{font-size:12px;margin:8px 0 0}.xm-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[data-theme=dark] .xm-meteogram,[data-widget-theme=dark] .xm-meteogram,.dark .xm-meteogram{--xm-ink:#d5e8f1;--xm-muted:#a1bbc9;--xm-paper:#142934;--xm-soft:#1c3543;--xm-line:#34505e;box-shadow:none}.xm-meteogram .xc-grid{stroke:var(--xm-line)}.xm-meteogram svg text{fill:var(--xm-muted)}
@media(max-width:600px){.xm-meteogram{border-radius:12px;padding:14px 10px;margin:14px 0}.xm-header{gap:12px}.xm-share-actions button{font-size:12px;min-height:34px}.xm-controls{padding:10px;gap:10px}.xm-controls select{font-size:12px;max-width:140px}.xm-meteogram .xm-hour{flex-basis:78px}.xm-models{gap:9px}.xm-models label{font-size:11px}.xm-track .xc-plot{min-height:145px}.xm-time-control{flex-wrap:wrap}.xm-time-control input{flex-basis:100%}.xm-meteogram .xc-tooltip{font-size:10px}}
@media(prefers-reduced-motion:reduce){.xm-meteogram *{scroll-behavior:auto!important}}

.xm-meteogram{grid-column:1/-1}.xc-dashboard>.xionia-recovery,.xc-dashboard>.xc-note{grid-column:1/-1}.xc-panel{border-radius:14px!important}.xc-grid{stroke-width:1}.xc-cursor{stroke:#36809c;stroke-width:1.5;stroke-dasharray:4 3}

.xm-track .xc-plot svg{min-height:0}.xionia-dark .xm-meteogram{--xm-ink:#d5e8f1;--xm-muted:#a1bbc9;--xm-paper:#142934;--xm-soft:#1c3543;--xm-line:#34505e;box-shadow:none}
.xm-meteogram .xm-hour .xw-weather-svg{width:40px;height:40px}.xm-meteogram td .xw-weather-svg{width:28px;height:28px;vertical-align:middle;margin-right:6px}

.xe-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin:16px 0}.xe-links a,.xe-ensemble a{color:var(--xm-ink);text-underline-offset:3px}.xe-ensemble .xe-load{background:var(--xm-soft);font-weight:700}.xe-ensemble .xe-inspection{margin:15px 0 6px;font-weight:700}.xe-ensemble .xc-legend{font-size:12px}.xe-ensemble .xm-table-wrap table{min-width:850px}.xe-ensemble .xm-models[hidden],.xe-ensemble .xm-controls[hidden]{display:none!important}

/* v33.6: a continuous, interactive weather canvas. */
.xm-studio{--xm-accent:#126e91;padding:24px;background:var(--xm-paper);border-radius:20px}
.xm-studio .xm-header{padding-bottom:18px;border-bottom:1px solid var(--xm-line)}
.xm-studio .xm-eyebrow{color:var(--xm-accent);letter-spacing:.11em}
.xm-studio .xm-models{gap:7px}.xm-studio .xm-models label{padding:6px 9px;border:1px solid var(--xm-line);border-radius:20px;background:var(--xm-soft)}
.xm-readout{display:flex;justify-content:space-between;gap:20px;align-items:center;background:linear-gradient(120deg,var(--xm-soft),var(--xm-paper));border:1px solid var(--xm-line);border-radius:14px;padding:18px;margin:16px 0}
.xm-readout-time{display:flex;align-items:center;gap:13px;min-width:0}.xm-readout-time>svg{width:64px;height:64px;flex:0 0 64px}.xm-readout-time>div{display:grid;gap:4px}.xm-readout-time small{font-size:10px;color:var(--xm-muted)}.xm-readout-time strong{font-size:16px}.xm-readout-time span{font-size:12px;color:var(--xm-muted)}
.xm-readout-values{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:14px}.xm-readout-values>div{display:grid;gap:5px}.xm-readout-values small{font-size:11px;color:var(--xm-muted)}.xm-readout-values strong{font-size:20px;line-height:1.25;font-weight:750;letter-spacing:-.03em;white-space:nowrap}
.xm-day-nav{display:flex;gap:6px;overflow:auto;margin:14px 0 10px;padding:4px}.xm-day-nav button{flex:0 0 auto;font-size:12px;min-height:36px;padding:6px 11px}.xm-day-nav button[aria-current=true]{background:var(--xm-ink);color:var(--xm-paper);border-color:var(--xm-ink)}
.xm-scene-scroll{overflow:auto;max-width:100%;border:1px solid var(--xm-line);border-radius:13px;background:var(--xm-paper);scrollbar-width:thin;overscroll-behavior-x:contain}.xm-scene{display:block;width:100%;height:auto;font:11px system-ui,sans-serif;color:var(--xm-ink)}
.xm-scene text{fill:var(--xm-muted)}.xm-scene .xm-axis-title{font-size:10px;font-weight:750;letter-spacing:.04em;fill:var(--xm-ink)}.xm-scene .xm-day-label{font-size:12px;font-weight:700;fill:var(--xm-ink)}.xm-scene .xm-hour-label{font-size:10px}.xm-scene .xm-axis-unit,.xm-scene .xm-axis-number{font-size:10px}.xm-scene .xm-day-rule{stroke:var(--xm-line);stroke-width:1}.xm-scene .xm-scene-grid{stroke:var(--xm-line);stroke-width:1;stroke-dasharray:2 4}.xm-scene .xm-zero-rule{stroke:var(--xm-muted);stroke-width:1;stroke-dasharray:5 4}.xm-scene .xm-scene-cursor{stroke:var(--xm-accent);stroke-width:1.5;stroke-dasharray:4 3;pointer-events:none}.xm-scene .xm-selected-label{font-size:10px;fill:var(--xm-paper);font-weight:650}.xm-scene .xm-cloud-label{fill:var(--xm-ink);font-size:10px}.xm-scene .xm-empty{font-size:12px}
.xm-studio .xm-chart-details,.xm-studio .xm-hour-details{margin:12px 0;border:1px solid var(--xm-line);border-radius:12px;background:var(--xm-paper);padding:0 13px}.xm-studio details>summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:13px;font-weight:650;color:var(--xm-ink)}
.xm-studio .xm-inspector{border:1px solid var(--xm-line);border-radius:14px;padding:16px;margin:18px 0;background:var(--xm-soft)}.xm-studio .xm-inspector h3{font-size:16px}.xm-studio .xm-footer{margin-top:18px}
.xm-studio:fullscreen{max-width:none;width:100%;height:100%;margin:0;overflow:auto;border:0;border-radius:0;background:var(--xm-paper);padding:24px}
@media(max-width:900px){.xm-readout{align-items:stretch;flex-direction:column;gap:14px}.xm-readout-values{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.xm-readout-values strong{font-size:18px}}
@media(max-width:600px){.xm-studio{padding:14px 10px}.xm-readout{padding:12px}.xm-readout-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.xm-readout-values strong{font-size:21px}.xm-readout-time>svg{width:50px;height:50px;flex-basis:50px}.xm-studio .xm-inspector{padding:12px 8px}.xm-studio .xm-share-actions{flex-wrap:wrap}.xm-studio .xm-models label{font-size:11px}.xm-studio:fullscreen{padding:12px}}

/* v33.6: paired ensemble panels, real members and an hourly statistics inspector. */
.xe-studio{border-radius:20px}.xe-studio>h2{font-size:clamp(23px,3vw,31px);letter-spacing:-.025em}.xe-studio .xe-links{padding-bottom:14px;border-bottom:1px solid var(--xm-line)}.xe-studio .xe-links .xa-appearance{margin-left:auto}
.xe-family-status{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.xe-family-status span{font-size:11px;padding:5px 9px;background:var(--xm-soft);border:1px solid var(--xm-line);border-radius:20px;color:var(--xm-muted)}
.xe-paired-plots{display:grid;gap:0;border:1px solid var(--xm-line);border-radius:14px;overflow:hidden;background:var(--xm-paper)}.xe-paired-plots:empty{display:none}.xe-plot-panel{padding:18px 12px 10px;border-top:1px solid var(--xm-line);min-width:0}.xe-plot-panel:first-child{border-top:0}.xe-plot-panel>header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;padding:0 10px}.xe-plot-panel h3{font-size:16px;margin:0}.xe-plot-panel header small{font-size:11px;color:var(--xm-muted)}.xe-plot-panel .xc-plot{position:relative}.xe-plot-panel svg{width:100%;height:auto;display:block}.xe-plot-panel .xc-legend{padding:0 10px 8px;gap:8px 14px;font-size:11px}
.xe-studio .xe-inspection{margin:18px 0 5px;font-size:17px}.xe-studio .xm-table-wrap{margin:10px 0}.xe-studio .xm-table-wrap tr>th:first-child{border-left:3px solid var(--xe-family,var(--xm-line))}.xe-member-details{margin-top:18px;padding:0 14px;border:1px solid var(--xm-line);border-radius:12px}.xe-member-details>summary{padding:13px 0;min-height:44px;cursor:pointer;font-weight:650}.xe-member-details .xm-table-wrap{max-height:370px}.xe-studio .xe-member-details table{min-width:400px}.xe-member-details button{font-size:12px}.xe-member-details tr[data-member-selected=true]>*{background:var(--xm-soft);font-weight:750}.xe-studio .xe-load{min-height:44px;padding:10px 18px}.xe-studio .xm-models label{padding:5px 9px;border:1px solid var(--xm-line);border-radius:20px}.xe-studio .xm-controls select{max-width:100%}
@media(max-width:600px){.xe-plot-panel{padding:14px 3px 8px}.xe-plot-panel h3{font-size:14px}.xe-studio .xe-links .xa-appearance{margin-left:0}.xe-studio .xm-controls label{max-width:100%}.xe-studio .xe-inspection{font-size:15px}}

/* Keep the refresh action beside its status and avoid empty chart-sized gaps. */
.xe-ensemble [data-ensemble-state="unavailable"]{padding:13px 15px;border-inline-start:3px solid #c58d38;background:var(--xm-panel,var(--panel,transparent));border-radius:0 8px 8px 0;font-weight:600}
.xe-ensemble .xe-family-status [data-stale="true"]{border-inline-start:3px solid #c58d38;padding-inline-start:8px}
.xe-ensemble .xe-load{margin:0 0 16px;min-height:42px}
.xe-ensemble [hidden]{display:none!important}

/* v33.8: quieter intermediate guides and explicit model controls. */
.xm-scene .xm-scene-grid{stroke-opacity:.72}.xm-scene .xm-scene-grid-minor{stroke-opacity:.28;stroke-dasharray:1 5}
.xm-meteogram .xm-quick-model{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:0 12px 12px;font-size:13px;font-weight:650;color:var(--xm-ink)}
.xm-meteogram .xm-quick-model select{min-height:44px;max-width:100%;min-width:160px;flex:1;padding:8px 11px;border:1px solid var(--xm-line);border-radius:8px;background:var(--xm-paper);color:var(--xm-ink);font:inherit}
.xm-meteogram .xm-model-return{display:block;margin:15px auto 0;min-height:44px;padding:9px 17px;border:1px solid var(--xm-line);border-radius:9px;background:var(--xm-soft);color:var(--xm-ink);font:650 13px system-ui;cursor:pointer}
.xm-meteogram .xm-model-picker{scroll-margin-top:calc(var(--xn-header-height,70px) + 12px)}
.xm-studio .xm-header{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:12px;text-align:center}
.xm-studio .xm-heading{width:100%;min-width:0;color:var(--xm-ink)}
.xm-studio .xm-heading h1,.xm-studio .xm-heading h2{color:var(--xm-ink)!important;text-align:center;overflow-wrap:anywhere}
.xm-studio .xm-location{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px 14px;width:100%;margin:11px 0 0;padding:9px 12px;border-radius:10px;background:var(--xm-soft);color:var(--xm-ink)!important;text-align:center;line-height:1.5}
.xm-studio .xm-location-name{font-size:15px;color:var(--xm-ink)!important;overflow-wrap:anywhere}
.xm-studio .xm-location-coordinates{font-size:12px;color:var(--xm-muted)!important;font-variant-numeric:tabular-nums;white-space:nowrap}
.xm-studio .xm-share-actions{justify-content:center;flex-wrap:wrap}
.xm-meteogram .xm-share-panel{color:var(--xm-ink);text-align:center}
.xm-meteogram .xm-share-panel label{color:var(--xm-ink)!important;text-align:center;font-weight:650}
.xm-meteogram .xm-share-panel textarea{color:var(--xm-ink)!important;background:var(--xm-paper)!important;text-align:left;direction:ltr;font-weight:400}
.xm-meteogram .xm-share-panel p{color:var(--xm-muted);text-align:center}
body[data-widget] .mw-links{justify-content:center;text-align:center}
.xm-meteogram .xm-gps{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;width:100%;margin:0 auto;text-align:center}
.xm-meteogram .xm-gps button{min-height:44px;font-size:13px;color:var(--xm-ink);background:var(--xm-soft)}
.xm-meteogram .xm-gps-status{flex-basis:100%;font-size:12px;color:var(--xm-muted);margin:0;line-height:1.5}
.xm-meteogram .xm-gps-status:empty{display:none}.xm-meteogram .xm-gps-status a{color:var(--xm-ink);text-decoration:underline}
.xe-studio>.xm-gps{margin:12px 0}.xe-studio>.xe-embed{text-align:center;padding:10px 12px;border:1px solid var(--xm-line);border-radius:10px;color:var(--xm-ink);background:var(--xm-soft)}
.xe-studio>.xe-embed summary{min-height:44px;padding:10px;cursor:pointer;color:var(--xm-ink);font-weight:650}
.xe-studio>.xe-embed textarea{display:block;width:100%;max-width:100%;text-align:left;direction:ltr;color:var(--xm-ink);background:var(--xm-paper);border:1px solid var(--xm-line);padding:9px;font:12px/1.5 monospace}
@media(min-width:900px){.xm-studio .xm-scene-scroll{border-radius:15px}.xm-scene .xm-axis-number{font-size:11px}.xm-studio .xm-models label{font-size:13px;min-height:40px}}
@media(max-width:700px){.xm-meteogram .xm-quick-model{align-items:stretch;flex-direction:column}.xm-meteogram .xm-quick-model select{font-size:16px;width:100%}}

/* v33.8.5: values beside the pointer, with the same appearance as the chart. */
.xm-studio .xm-hover-info{position:fixed;z-index:2147483000;pointer-events:none;display:flex;flex-direction:column;gap:4px;width:max-content;min-width:195px;max-width:min(330px,calc(100vw - 16px));max-height:calc(100vh - 16px);padding:12px 14px;border:1px solid var(--xm-line);border-radius:12px;background:var(--xm-paper);color:var(--xm-ink);box-shadow:0 7px 24px #0004;font:12px/1.45 system-ui,sans-serif;text-align:start;overflow:hidden}
.xm-studio .xm-hover-time{font-size:13px}.xm-studio .xm-hover-title{color:var(--xm-muted);font-weight:600}.xm-studio .xm-hover-info small{font-size:10px;color:var(--xm-muted);white-space:normal}
.xm-studio .xm-hover-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;border-inline-start:3px solid var(--xm-hover-color);padding-inline-start:7px;margin-top:2px;align-items:baseline}.xm-studio .xm-hover-row>small{grid-column:1/-1}.xm-studio .xm-hover-row>b{white-space:nowrap;font-variant-numeric:tabular-nums}

/* v33.9.2: centered layout and consistent contrast inside the meteogram. */
.xm-meteogram{width:100%;margin-inline:auto;--xm-accent:#17688c}
.xm-studio .xm-header{justify-content:center;text-align:center}
.xm-studio .xm-header>div:first-child{flex-basis:100%;text-align:center}
.xm-studio .xm-location,.xm-studio .xm-share-actions,.xm-studio .xm-controls,.xm-studio .xm-models,.xm-studio .xm-gps{justify-content:center}
.xm-studio .xm-models legend{text-align:center;width:100%}
.xm-studio .xm-readout{justify-content:center;flex-wrap:wrap;text-align:center}
.xm-studio .xm-readout-time{justify-content:center}
.xm-studio .xm-day-nav:before,.xm-studio .xm-day-nav:after{content:'';margin:auto}
.xm-studio .xm-gps{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.xm-studio .xm-gps-status{width:100%;margin:4px 0;color:var(--xm-muted)}
.xm-place-search{width:min(100%,600px);flex-basis:100%;margin-inline:auto;text-align:left}
.xm-place-search label{display:grid;gap:6px;font-weight:650;font-size:12px}
.xm-place-search input{width:100%;min-height:44px;border:1px solid var(--xm-line);border-radius:10px;background:var(--xm-paper);color:var(--xm-ink);font:16px/1.4 system-ui;padding:10px 14px}
.xm-place-search input::placeholder{color:var(--xm-muted);opacity:1}
.xm-place-results{display:grid;max-height:300px;overflow:auto;margin-top:6px;border:1px solid var(--xm-line);border-radius:10px;background:var(--xm-paper)}
.xm-place-results button{text-align:left;border:0;border-bottom:1px solid var(--xm-line);border-radius:0;min-height:44px}
.xm-studio .xm-day-nav button[aria-current=true]{background:var(--xm-accent);border-color:var(--xm-accent);color:#fff}
.xm-studio .xm-scene .xm-selected-label{fill:var(--xm-paper)}
.xm-studio .xm-scene .xm-axis-title,.xm-studio .xm-scene .xm-day-label,.xm-studio .xm-scene .xm-cloud-label{fill:var(--xm-ink)}
.xm-studio .xm-readout-values strong,.xm-studio summary,.xm-studio label{color:var(--xm-ink)}
.xm-studio button:disabled{opacity:.6;cursor:wait}
@media(max-width:600px){.xm-studio .xm-readout-values{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.xm-studio .xm-header{gap:12px}.xm-studio .xm-controls{align-items:center}}

/* The models hub has its own location picker, outside the chart. */
#ensemble-hub{--xm-ink:#15384d;--xm-muted:#536c7d;--xm-paper:#fff;--xm-soft:#f2f7fa;--xm-line:#c4d6e0;max-width:100%;margin-inline:auto;color:var(--xm-ink)}
body.xionia-dark #ensemble-hub,[data-widget-theme="dark"] #ensemble-hub,html[data-theme="dark"] #ensemble-hub,body.dark #ensemble-hub,html.dark #ensemble-hub{--xm-ink:#e8f3fa;--xm-muted:#bdd0de;--xm-paper:#142a3b;--xm-soft:#203b4e;--xm-line:#537187}
#ensemble-place-form{display:flex;justify-content:center;align-items:end;flex-wrap:wrap;gap:12px;padding:18px;border:1px solid var(--xm-line);border-radius:14px;background:var(--xm-soft);color:var(--xm-ink);text-align:center}
#ensemble-place-form label{display:grid;gap:6px;color:var(--xm-ink);font:600 14px/1.5 system-ui}
#ensemble-place-form input,#ensemble-place-form select,#ensemble-place-form button,#ensemble-hub>.xm-gps input,#ensemble-hub>.xm-gps button{color:var(--xm-ink);background:var(--xm-paper);border:1px solid var(--xm-line);border-radius:9px;font:16px/1.4 system-ui;padding:10px;min-height:44px;max-width:100%;box-sizing:border-box}
#ensemble-place-form input{width:160px}#ensemble-place-form select{min-width:180px}#ensemble-place-form option{color:var(--xm-ink);background:var(--xm-paper)}
#ensemble-hub>.xm-gps{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;padding:18px;margin:10px auto 18px;background:var(--xm-soft);color:var(--xm-ink);border:1px solid var(--xm-line);border-radius:14px;box-sizing:border-box}
#ensemble-hub>.xm-gps .xm-gps-status{flex-basis:100%;text-align:center;margin:0;color:var(--xm-muted)}
#ensemble-hub [hidden]{display:none!important}#ensemble-hub .xm-place-search{min-width:0}#ensemble-hub .xm-place-search label{color:var(--xm-ink)}
#ensemble-hub>.xm-gps :focus-visible{outline:3px solid #3298cb;outline-offset:2px}
.xm-studio .xm-location{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:14px auto 4px;color:var(--xm-ink)!important}
.xm-studio .xm-location-name{display:inline-block;background:var(--xm-soft);color:var(--xm-ink)!important;border:1px solid var(--xm-line);border-radius:10px;padding:8px 14px;font-size:clamp(18px,2vw,23px);line-height:1.4}
.xm-studio .xm-location-coordinates{color:var(--xm-muted)!important}
@media(max-width:600px){#ensemble-place-form label{flex:1 1 120px;min-width:0}#ensemble-place-form input,#ensemble-place-form select{width:100%;min-width:0}#ensemble-hub>.xm-gps{padding:12px}}

