:root,:host{--ol-background-color: white;--ol-accent-background-color: #F5F5F5;--ol-subtle-background-color: rgba(128, 128, 128, .25);--ol-partial-background-color: rgba(255, 255, 255, .75);--ol-foreground-color: #333333;--ol-subtle-foreground-color: #666666;--ol-brand-color: #00AAFF}.ol-box{box-sizing:border-box;border-radius:2px;border:1.5px solid var(--ol-background-color);background-color:var(--ol-partial-background-color)}.ol-mouse-position{top:8px;right:8px;position:absolute}.ol-scale-line{background:var(--ol-partial-background-color);border-radius:4px;bottom:8px;left:8px;padding:2px;position:absolute}.ol-scale-line-inner{border:1px solid var(--ol-subtle-foreground-color);border-top:none;color:var(--ol-foreground-color);font-size:10px;text-align:center;margin:1px;will-change:contents,width;transition:all .25s}.ol-scale-bar{position:absolute;bottom:8px;left:8px}.ol-scale-bar-inner{display:flex}.ol-scale-step-marker{width:1px;height:15px;background-color:var(--ol-foreground-color);float:right;z-index:10}.ol-scale-step-text{position:absolute;bottom:-5px;font-size:10px;z-index:11;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color)}.ol-scale-text{position:absolute;font-size:12px;text-align:center;bottom:25px;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color)}.ol-scale-singlebar{position:relative;height:10px;z-index:9;box-sizing:border-box;border:1px solid var(--ol-foreground-color)}.ol-scale-singlebar-even{background-color:var(--ol-subtle-foreground-color)}.ol-scale-singlebar-odd{background-color:var(--ol-background-color)}.ol-unsupported{display:none}.ol-viewport,.ol-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ol-viewport canvas{all:unset;overflow:hidden}.ol-viewport{touch-action:pan-x pan-y}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;user-select:text}.ol-grabbing{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.ol-grab{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.ol-control{position:absolute;background-color:var(--ol-subtle-background-color);border-radius:4px}.ol-zoom{top:.5em;left:.5em}.ol-rotate{top:.5em;right:.5em;transition:opacity .25s linear,visibility 0s linear}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{right:.5em;top:.5em}.ol-control button{display:block;margin:1px;padding:0;color:var(--ol-subtle-foreground-color);font-weight:700;text-decoration:none;font-size:inherit;text-align:center;height:1.375em;width:1.375em;line-height:.4em;background-color:var(--ol-background-color);border:none;border-radius:2px}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{display:block;font-weight:400;will-change:transform}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:hover,.ol-control button:focus{text-decoration:none;outline:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color)}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;bottom:.5em;right:.5em;max-width:calc(100% - 1.3em);display:flex;flex-flow:row-reverse;align-items:center}.ol-attribution a{color:var(--ol-subtle-foreground-color);text-decoration:none}.ol-attribution ul{margin:0;padding:1px .5em;color:var(--ol-foreground-color);text-shadow:0 0 2px var(--ol-background-color);font-size:12px}.ol-attribution li{display:inline;list-style:none}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button{flex-shrink:0}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:var(--ol-partial-background-color)}.ol-attribution.ol-uncollapsible{bottom:0;right:0;border-radius:4px 0 0}.ol-attribution.ol-uncollapsible img{margin-top:-.2em;max-height:1.6em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{top:4.5em;left:.5em;height:200px}.ol-zoomslider button{position:relative;height:10px}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{left:.5em;bottom:.5em}.ol-overviewmap.ol-uncollapsible{bottom:0;left:0;border-radius:0 4px 0 0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:block}.ol-overviewmap .ol-overviewmap-map{border:1px solid var(--ol-subtle-foreground-color);height:150px;width:150px}.ol-overviewmap:not(.ol-collapsed) button{bottom:0;left:0;position:absolute}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:var(--ol-subtle-background-color)}.ol-overviewmap-box{border:1.5px dotted var(--ol-subtle-foreground-color)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}.ol-overviewmap .ol-viewport:hover{cursor:pointer}:root{color-scheme:light;--pt-font-family-ui: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--pt-font-family-mono: "JetBrains Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--pt-font-size-xs: .75rem;--pt-font-size-sm: .875rem;--pt-font-size-md: 1rem;--pt-font-size-lg: 1.125rem;--pt-font-size-xl: 1.375rem;--pt-font-size-2xl: 1.75rem;--pt-line-height-tight: 1.2;--pt-line-height-normal: 1.45;--pt-line-height-relaxed: 1.6;--pt-color-brand-primary: #1f4e79;--pt-color-brand-primary-dark: #12324f;--pt-color-brand-accent: #4c9fd1;--pt-color-bg-app: #f7f9fb;--pt-color-bg-surface: #ffffff;--pt-color-bg-muted: #f1f5f8;--pt-color-bg-soft: #eef3f7;--pt-color-border-subtle: #e1e7ec;--pt-color-border-strong: #cbd5de;--pt-color-text-primary: #1c2733;--pt-color-text-muted: #667085;--pt-color-text-subtle: #8a94a6;--pt-color-text-inverse: #ffffff;--pt-color-link: #1f4e79;--pt-color-link-hover: #12324f;--pt-color-focus-ring: #4c9fd1;--pt-color-selection-bg: #eaf4fb;--pt-color-hover-bg: #f1f7fc;--pt-status-healthy: #2e7d5b;--pt-status-healthy-bg: #e8f5ee;--pt-status-healthy-border: #b7dec9;--pt-status-warning: #c58b13;--pt-status-warning-bg: #fff7e3;--pt-status-warning-border: #f0d28a;--pt-status-degraded: #d46a2a;--pt-status-degraded-bg: #fff0e6;--pt-status-degraded-border: #f2b88f;--pt-status-failed: #d64545;--pt-status-failed-bg: #fdecec;--pt-status-failed-border: #f1a7a7;--pt-status-no-data: #98a2b3;--pt-status-no-data-bg: #f2f4f7;--pt-status-no-data-border: #d0d5dd;--pt-status-unknown: #6b7c93;--pt-status-unknown-bg: #eef3f8;--pt-status-unknown-border: #c8d3df;--pt-space-1: .25rem;--pt-space-2: .5rem;--pt-space-3: .75rem;--pt-space-4: 1rem;--pt-space-5: 1.25rem;--pt-space-6: 1.5rem;--pt-space-8: 2rem;--pt-space-10: 2.5rem;--pt-space-12: 3rem;--pt-radius-sm: 4px;--pt-radius-md: 6px;--pt-radius-lg: 8px;--pt-radius-xl: 12px;--pt-radius-pill: 999px;--pt-shadow-none: none;--pt-shadow-subtle: 0 1px 2px rgb(16 24 40 / .06);--pt-shadow-panel: 0 4px 12px rgb(16 24 40 / .08);--pt-focus-ring: 0 0 0 3px rgb(76 159 209 / .35);--pt-z-dropdown: 1000;--pt-z-sticky: 1020;--pt-z-drawer: 1100;--pt-z-modal: 1200}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--pt-color-text-primary);background:var(--pt-color-bg-app);font-family:var(--pt-font-family-ui)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed}a{color:inherit}#root{min-height:100vh}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{min-height:64px;display:flex;align-items:center;gap:var(--pt-space-4);padding:0 var(--pt-space-6);background:var(--pt-color-bg-surface);border-bottom:1px solid var(--pt-color-border-subtle)}.wordmark{flex:0 0 auto;color:var(--pt-color-brand-primary);font-size:var(--pt-font-size-lg);font-weight:600;line-height:var(--pt-line-height-tight)}.primary-nav{display:flex;align-items:center;gap:var(--pt-space-1);min-width:0}.nav-link{display:inline-flex;align-items:center;min-height:36px;padding:0 var(--pt-space-3);border-radius:var(--pt-radius-md);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm);font-weight:500;text-decoration:none;white-space:nowrap}.nav-link:hover{background:var(--pt-color-hover-bg);color:var(--pt-color-brand-primary)}.nav-link-active{background:var(--pt-color-selection-bg);color:var(--pt-color-brand-primary-dark)}.demo-label{padding:var(--pt-space-1) var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-pill);color:var(--pt-color-text-muted);background:var(--pt-color-bg-muted);font-size:var(--pt-font-size-xs);font-weight:600;white-space:nowrap}.app-header-actions{margin-left:auto;display:flex;align-items:center;gap:var(--pt-space-2);min-width:0}.context-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--pt-space-2) var(--pt-space-3);padding:var(--pt-space-2) var(--pt-space-6);border-bottom:1px solid var(--pt-color-border-subtle);background:var(--pt-color-bg-surface)}.context-controls,.context-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--pt-space-2);min-width:0}.context-meta{justify-content:flex-end;max-width:min(46vw,680px)}.filter-control{display:inline-flex;align-items:center;gap:var(--pt-space-1);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:600}.filter-control select{min-height:32px;max-width:164px;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app)}.context-reset-button{min-height:28px;padding-inline:var(--pt-space-2);color:var(--pt-color-text-muted)}.filter-control select:focus-visible,.time-range-trigger:focus-visible,.time-range-panel input:focus-visible,.time-range-panel select:focus-visible,.time-range-calendar-nav:focus-visible,.time-range-calendar-day:focus-visible,.time-range-quick-option:focus-visible,.button:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.time-range-control{position:relative;min-width:min(100%,360px)}.time-range-trigger{min-height:42px;width:100%;display:grid;grid-template-columns:minmax(96px,auto) minmax(0,1fr);align-items:center;gap:var(--pt-space-2);padding:var(--pt-space-1) var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app);text-align:left}.time-range-trigger-label{color:var(--pt-color-brand-primary);font-size:var(--pt-font-size-xs);font-weight:700;white-space:nowrap}.time-range-trigger-value{min-width:0;overflow:hidden;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.time-range-panel{position:absolute;z-index:30;top:calc(100% + var(--pt-space-2));left:0;width:min(720px,calc(100vw - var(--pt-space-6)));display:grid;gap:var(--pt-space-3);padding:var(--pt-space-4);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-surface);box-shadow:var(--pt-shadow-subtle)}.time-range-panel-header{display:flex;align-items:center;justify-content:space-between;gap:var(--pt-space-3)}.time-range-panel-header span,.time-range-message{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:600}.time-range-panel-body{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(280px,1fr);gap:var(--pt-space-4);align-items:start}.time-range-calendar{display:grid;gap:var(--pt-space-2)}.time-range-calendar-header{display:grid;grid-template-columns:32px minmax(0,1fr) 76px 32px;align-items:center;gap:var(--pt-space-2)}.time-range-calendar-nav{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app);font-size:var(--pt-font-size-lg);line-height:1}.time-range-calendar-nav:hover{color:var(--pt-color-brand-primary-dark);background:var(--pt-color-selection-bg)}.time-range-calendar-month-select,.time-range-calendar-year-input{min-height:32px;min-width:0;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app);font-size:var(--pt-font-size-sm);font-weight:600}.time-range-calendar-year-input{width:76px}.time-range-calendar-weekdays,.time-range-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.time-range-calendar-weekdays span{color:var(--pt-color-brand-primary);font-size:var(--pt-font-size-xs);font-weight:700;text-align:center}.time-range-calendar-day{min-width:0;aspect-ratio:1;padding:0;border:1px solid transparent;border-radius:var(--pt-radius-sm);color:var(--pt-color-text-primary);background:transparent;font-size:var(--pt-font-size-sm);font-weight:600}.time-range-calendar-day:hover{border-color:var(--pt-color-border-subtle);background:var(--pt-color-hover-bg)}.time-range-calendar-day.outside-month{color:var(--pt-color-text-muted);opacity:.72}.time-range-calendar-day.in-range{border-radius:0;color:var(--pt-color-brand-primary-dark);background:var(--pt-color-selection-bg)}.time-range-calendar-day.range-start,.time-range-calendar-day.range-end{border-color:var(--pt-color-brand-primary);color:#fff;background:var(--pt-color-brand-primary)}.time-range-calendar-day.range-start{border-radius:var(--pt-radius-pill) 0 0 var(--pt-radius-pill)}.time-range-calendar-day.range-start:not(.in-range){border-radius:var(--pt-radius-pill)}.time-range-calendar-day.range-end{border-radius:0 var(--pt-radius-pill) var(--pt-radius-pill) 0}.time-range-calendar-day.range-start.range-end{border-radius:var(--pt-radius-pill)}.time-range-absolute-panel{display:grid;gap:var(--pt-space-3)}.time-range-quick-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--pt-space-2)}.time-range-quick-option{min-height:34px;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app);font-size:var(--pt-font-size-sm);font-weight:600}.time-range-quick-option:hover,.time-range-quick-option.active{color:var(--pt-color-brand-primary-dark);background:var(--pt-color-selection-bg)}.time-range-input-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--pt-space-3)}.time-range-input-grid label{display:grid;gap:var(--pt-space-1);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700}.time-range-input-grid input{min-height:36px;width:100%;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app)}.time-range-message{margin:0}.time-range-message-warning{color:var(--pt-status-warning)}.time-range-message-error{color:var(--pt-status-failed)}.time-range-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--pt-space-2)}.filter-chip{display:inline-flex;align-items:center;gap:var(--pt-space-1);min-height:28px;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-pill);background:var(--pt-color-bg-app);color:var(--pt-color-text-primary);font-size:var(--pt-font-size-xs)}.freshness-indicator{justify-self:end;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:600;white-space:nowrap}.freshness-indicator-error,.freshness-indicator-stale{color:var(--pt-status-warning)}.button{min-height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0 var(--pt-space-3);border-radius:var(--pt-radius-md);font-size:var(--pt-font-size-sm);font-weight:600}.button-secondary{border:1px solid var(--pt-color-border-subtle);color:var(--pt-color-brand-primary);background:var(--pt-color-bg-surface)}.button-ghost{border:1px solid transparent;color:var(--pt-color-brand-primary);background:transparent}.button:hover{background:var(--pt-color-hover-bg)}.app-main{flex:1;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--pt-space-4);min-height:0;padding:var(--pt-space-4)}.app-main-with-drawer{grid-template-columns:minmax(0,1fr) 380px}.app-content{min-width:0}.page-placeholder{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:var(--pt-space-4)}.page-heading{padding:var(--pt-space-5);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface);box-shadow:var(--pt-shadow-subtle)}.page-heading span{display:block;margin-bottom:var(--pt-space-2);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:600;text-transform:uppercase}.page-heading h1{margin:0;font-size:var(--pt-font-size-2xl);line-height:var(--pt-line-height-tight)}.page-heading p{margin:var(--pt-space-2) 0 0;color:var(--pt-color-text-muted)}.placeholder-surface{min-height:420px;padding:var(--pt-space-5);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface)}.page-placeholder-map .placeholder-surface{min-height:560px;background:linear-gradient(90deg,rgb(31 78 121 / .08) 1px,transparent 1px),linear-gradient(rgb(31 78 121 / .08) 1px,transparent 1px),var(--pt-color-bg-soft);background-size:40px 40px}.page-placeholder-table .placeholder-surface{min-height:520px}.placeholder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--pt-space-4)}.placeholder-grid div{min-height:120px;border:1px dashed var(--pt-color-border-strong);border-radius:var(--pt-radius-lg);background:#ffffffb8}.details-drawer{display:flex;flex-direction:column;gap:var(--pt-space-3);min-width:0;padding:var(--pt-space-4);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface);box-shadow:var(--pt-shadow-subtle)}.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:var(--pt-space-2);color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm);font-weight:700}.drawer-header-actions{display:flex;align-items:center;gap:var(--pt-space-2)}.drawer-close{min-height:28px}.drawer-content,.map-drawer-content,.drawer-section{display:grid;gap:var(--pt-space-3)}.drawer-section{padding-bottom:var(--pt-space-3);border-bottom:1px solid var(--pt-color-border-subtle)}.drawer-section h3{margin:0;color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm)}.drawer-field-row{display:grid;gap:var(--pt-space-1);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.drawer-field-row strong{color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm);overflow-wrap:anywhere}.drawer-note{margin:0;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm);line-height:1.5}.drawer-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--pt-space-2)}.drawer-action-grid a{text-decoration:none}.contributing-sensor-list{display:grid;gap:var(--pt-space-2)}.contributing-sensor{display:grid;gap:var(--pt-space-1);padding:var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app)}.contributing-sensor>span{font-size:var(--pt-font-size-sm);font-weight:700}.contributing-sensor>div{display:flex;align-items:center;flex-wrap:wrap;gap:var(--pt-space-2)}.cause-label{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700}.state{display:flex;flex-direction:column;gap:var(--pt-space-1);padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm)}.state strong{color:var(--pt-color-text-primary)}.state code{padding:var(--pt-space-2);border-radius:var(--pt-radius-sm);color:var(--pt-color-text-primary);background:#ffffffa6;font-family:var(--pt-font-family-mono);font-size:var(--pt-font-size-xs);white-space:normal}.state-loading{flex-direction:row;align-items:center}.state-actions{display:flex;gap:var(--pt-space-2);margin-top:var(--pt-space-2)}.state-marker{width:10px;height:10px;border:2px solid var(--pt-color-brand-accent);border-top-color:transparent;border-radius:50%}.state-error{border-color:var(--pt-status-failed-border);background:var(--pt-status-failed-bg);color:var(--pt-color-text-primary)}.loading-skeleton{width:min(320px,100%);display:grid;gap:var(--pt-space-2)}.loading-skeleton span{height:10px;border-radius:var(--pt-radius-pill);background:linear-gradient(90deg,var(--pt-color-bg-muted),var(--pt-color-bg-soft),var(--pt-color-bg-muted))}.loading-skeleton span:nth-child(2){width:72%}.loading-skeleton span:nth-child(3){width:48%}.status-badge{display:inline-flex;align-items:center;align-self:flex-start;gap:var(--pt-space-1);min-height:28px;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-strong);border-radius:var(--pt-radius-pill);background:var(--pt-color-bg-muted);color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm);font-weight:600}.status-badge-icon{min-width:14px;color:currentColor;font-family:var(--pt-font-family-mono);font-size:var(--pt-font-size-xs);text-align:center}.status-badge-healthy{border-color:var(--pt-status-healthy-border);background:var(--pt-status-healthy-bg);color:var(--pt-status-healthy)}.status-badge-warning{border-color:var(--pt-status-warning-border);background:var(--pt-status-warning-bg);color:var(--pt-status-warning)}.status-badge-degraded{border-color:var(--pt-status-degraded-border);background:var(--pt-status-degraded-bg);color:var(--pt-status-degraded)}.status-badge-failed{border-color:var(--pt-status-failed-border);background:var(--pt-status-failed-bg);color:var(--pt-status-failed)}.status-badge-no_data{border-color:var(--pt-status-no-data-border);background:repeating-linear-gradient(-45deg,rgb(152 162 179 / .12),rgb(152 162 179 / .12) 4px,transparent 4px,transparent 8px),var(--pt-status-no-data-bg);color:var(--pt-color-text-muted)}.status-badge-unknown{border-color:var(--pt-status-unknown-border);background:var(--pt-status-unknown-bg);color:var(--pt-status-unknown)}.status-badge-info{border-color:var(--pt-color-brand-accent);background:var(--pt-color-selection-bg);color:var(--pt-color-brand-primary-dark)}.status-legend{display:grid;gap:var(--pt-space-2);padding-top:var(--pt-space-2);border-top:1px solid var(--pt-color-border-subtle)}.status-legend h2{margin:0;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);text-transform:uppercase}.status-legend-list{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.map-workspace{position:relative;display:grid;grid-template-columns:minmax(0,1fr);min-height:calc(100vh - 172px);overflow:hidden;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-soft);box-shadow:var(--pt-shadow-subtle)}.map-workspace-panel-open{grid-template-columns:minmax(280px,320px) minmax(0,1fr)}.map-canvas{position:relative;min-width:0;min-height:calc(100vh - 172px)}.map-canvas .ol-zoom{top:var(--pt-space-3);right:var(--pt-space-3);left:auto}.map-base-satellite .map-canvas{filter:saturate(.9) contrast(1.05)}.map-layer-state,.map-coverage-empty,.map-status-legend,.map-control-toggle{position:absolute;z-index:5}.map-control-toggle{top:var(--pt-space-3);left:var(--pt-space-3);min-height:34px;padding:0 var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-brand-primary);background:#fffffff0;font-size:var(--pt-font-size-xs);font-weight:700;box-shadow:var(--pt-shadow-panel)}.map-control-toggle:hover{border-color:var(--pt-color-border-subtle);background:var(--pt-color-selection-bg)}.map-left-panel{position:relative;z-index:6;display:flex;flex-direction:column;gap:var(--pt-space-3);padding:var(--pt-space-4);overflow:auto;border-right:1px solid var(--pt-color-border-subtle);background:#fffffffa}.map-left-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-3)}.map-left-panel header div{display:grid;gap:var(--pt-space-1)}.map-left-panel header span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.map-left-panel header strong{font-size:var(--pt-font-size-lg)}.map-panel-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--pt-space-2)}.map-panel-tabs button{min-height:32px;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-brand-primary);background:var(--pt-color-bg-app);font-size:var(--pt-font-size-xs);font-weight:700}.map-panel-tabs button:hover,.map-panel-tabs button.active{background:var(--pt-color-selection-bg)}.map-control-group{display:grid;gap:var(--pt-space-3)}.map-control-group label,.map-control-group fieldset{display:grid;gap:var(--pt-space-2);margin:0;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700}.map-control-group label:has(input[type=checkbox]){grid-template-columns:auto 1fr;align-items:center;color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm);font-weight:600}.map-control-group select,.map-control-group input[type=search]{min-height:34px;width:100%;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app)}.map-control-group fieldset{padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app)}.map-control-group legend{color:var(--pt-color-text-primary)}.map-control-note{margin:0;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);line-height:1.45}.map-control-actions,.map-search-results{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.map-layer-state,.map-coverage-empty{top:var(--pt-space-3);left:50%;width:min(420px,calc(100% - 32px));transform:translate(-50%)}.map-layer-state .state,.map-coverage-empty .state{box-shadow:var(--pt-shadow-panel)}.map-layer-state-error{width:min(520px,calc(100% - 32px))}.map-status-legend{right:var(--pt-space-3);bottom:var(--pt-space-4);width:min(300px,calc(100% - 32px));display:grid;gap:var(--pt-space-2);padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:#fffffff2;box-shadow:var(--pt-shadow-panel)}.map-status-legend h2{margin:0;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);text-transform:uppercase}.read-model-page{min-width:0;display:grid;gap:var(--pt-space-4)}.read-model-title-row,.network-status-header,.station-status-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-4);min-width:0;padding:var(--pt-space-5);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface);box-shadow:var(--pt-shadow-subtle)}.read-model-title-row>div,.network-status-header>div:first-child,.station-status-header>div:first-child{min-width:0;display:grid;gap:var(--pt-space-1)}.read-model-title-row span,.network-status-header span:first-child,.station-status-header span:first-child{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.read-model-title-row h1,.network-status-header h1,.station-status-header h1{margin:0;color:var(--pt-color-text-primary);font-size:var(--pt-font-size-2xl);line-height:var(--pt-line-height-tight)}.read-model-title-row p,.network-status-header p,.station-status-header p{margin:0;color:var(--pt-color-text-muted);line-height:var(--pt-line-height-normal)}.network-status-meta,.station-header-meta,.station-header-actions,.table-actions,.sensor-card-actions,.section-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--pt-space-2)}.network-status-meta,.station-header-meta{justify-content:flex-end;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm);font-weight:600}.station-header-meta{max-width:320px}.station-header-actions{justify-content:flex-end}.metadata-warning-row{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.metadata-warning-row span{padding:var(--pt-space-1) var(--pt-space-2);border:1px solid var(--pt-status-warning-border);border-radius:var(--pt-radius-pill);background:var(--pt-status-warning-bg);color:var(--pt-status-warning);font-size:var(--pt-font-size-xs);font-weight:700}.summary-card-grid,.key-value-grid,.technology-breakdown-grid,.sensor-card-grid,.compact-chart-grid{display:grid;gap:var(--pt-space-3)}.summary-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.key-value-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.station-context-grid,.station-evidence-grid{display:grid;gap:var(--pt-space-4);min-width:0}.station-evidence-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}.station-context-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.read-model-section,.summary-card,.key-value-card,.technology-card,.sensor-card,.chart-card{min-width:0;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface);box-shadow:var(--pt-shadow-subtle)}.read-model-section{display:grid;gap:var(--pt-space-4);align-content:start;padding:var(--pt-space-4)}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-3)}.section-heading h2{margin:0;color:var(--pt-color-text-primary);font-size:var(--pt-font-size-lg);line-height:var(--pt-line-height-tight)}.section-heading p{margin:var(--pt-space-1) 0 0;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm)}.summary-card{display:grid;gap:var(--pt-space-3);padding:var(--pt-space-4)}.summary-card[role=button]{cursor:pointer}.summary-card[role=button]:hover,.technology-card:hover,.matrix-status-button:hover,.group-chip:hover,.filter-pill:hover{border-color:var(--pt-color-border-strong);background:var(--pt-color-hover-bg)}.summary-card[role=button]:focus-visible,.technology-card:focus-visible,.matrix-status-button:focus-visible,.group-chip:focus-visible,.filter-pill:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.summary-card header,.sensor-card header,.chart-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-3)}.summary-card header span,.sensor-card header span,.chart-card header span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.summary-card-body{display:grid;gap:var(--pt-space-2)}.summary-card-body strong,.key-value-card strong{color:var(--pt-color-text-primary);font-size:var(--pt-font-size-xl);line-height:var(--pt-line-height-tight)}.summary-card-body p,.sensor-card p{margin:0;color:var(--pt-color-text-muted);line-height:var(--pt-line-height-normal)}.summary-card footer{display:flex;align-items:center;justify-content:space-between;gap:var(--pt-space-2);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700}.status-hierarchy-chart{min-height:420px}.selected-explanation-panel,.explanation-details,.location-card{display:grid;gap:var(--pt-space-3)}.selected-explanation-panel header{display:grid;gap:var(--pt-space-2)}.selected-explanation-panel header span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.selected-explanation-panel h3,.sensor-card h3,.chart-card h3{margin:0;color:var(--pt-color-text-primary);font-size:var(--pt-font-size-lg);line-height:var(--pt-line-height-tight)}.technology-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.technology-card,.filter-pill,.matrix-status-button,.group-chip{border:1px solid var(--pt-color-border-subtle);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app)}.technology-card{display:grid;gap:var(--pt-space-2);justify-items:start;padding:var(--pt-space-3);border-radius:var(--pt-radius-md);text-align:left}.technology-card>span,.key-value-card span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.technology-card small{color:var(--pt-color-text-muted)}.status-counts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--pt-space-2)}.status-count{display:grid;gap:var(--pt-space-2);justify-items:start;padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app)}.status-count strong{color:var(--pt-color-text-primary);font-family:var(--pt-font-family-mono);font-size:var(--pt-font-size-xl)}.key-value-card{display:grid;gap:var(--pt-space-2);padding:var(--pt-space-3)}.table-toolbar{display:flex;align-items:flex-end;flex-wrap:wrap;gap:var(--pt-space-3)}.table-toolbar label{display:grid;gap:var(--pt-space-1);min-width:min(320px,100%);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.table-toolbar input{min-height:36px;padding:0 var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app)}.table-toolbar input:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.table-wrap{min-width:0;overflow-x:auto}.data-table{width:100%;min-width:920px;border-collapse:collapse;font-size:var(--pt-font-size-sm)}.data-table th,.data-table td{padding:var(--pt-space-2) var(--pt-space-3);border-bottom:1px solid var(--pt-color-border-subtle);text-align:left;vertical-align:top}.data-table th{color:var(--pt-color-text-muted);background:var(--pt-color-bg-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase;white-space:nowrap}.data-table td a{display:grid;gap:var(--pt-space-1);color:var(--pt-color-link);text-decoration:none}.data-table td a:hover{color:var(--pt-color-link-hover);text-decoration:underline}.data-table td span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.table-actions{min-width:360px}.table-actions .button{min-height:28px;padding:0 var(--pt-space-2);font-size:var(--pt-font-size-xs)}.chip-row{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.filter-pill{min-height:32px;padding:0 var(--pt-space-3);border-radius:var(--pt-radius-pill);font-size:var(--pt-font-size-sm);font-weight:700}.filter-pill-active{border-color:var(--pt-color-brand-accent);background:var(--pt-color-selection-bg);color:var(--pt-color-brand-primary-dark)}.matrix-table{min-width:980px}.matrix-status-button{min-height:32px;width:100%;padding:var(--pt-space-1);border-radius:var(--pt-radius-md)}.na-cell{display:inline-flex;align-items:center;min-height:28px;color:var(--pt-color-text-subtle);font-size:var(--pt-font-size-xs)}.stations-board-toolbar{align-items:center}.stations-board-toolbar label:first-child{flex:1 1 360px}.stations-attention-toggle{grid-template-columns:auto minmax(0,1fr);align-items:center;min-width:220px;text-transform:none}.stations-attention-toggle input{min-height:auto;width:16px;height:16px;padding:0}.station-attention-groups{display:grid;gap:var(--pt-space-3)}.station-attention-group{display:grid;grid-template-columns:120px minmax(0,1fr);gap:var(--pt-space-3);align-items:start}.station-attention-group h3{margin:0}.station-attention-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:var(--pt-space-2)}.station-attention-item{display:grid;gap:var(--pt-space-1);min-height:96px;padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app);color:var(--pt-color-text-primary);text-align:left;text-decoration:none;cursor:pointer}.station-attention-item:hover,.station-attention-item-selected{border-color:var(--pt-color-brand-accent);background:var(--pt-color-selection-bg)}.station-attention-item:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.station-attention-item-selected{box-shadow:inset 4px 0 0 var(--pt-color-brand-accent)}.station-attention-item strong{color:var(--pt-color-text-primary);font-family:var(--pt-font-family-mono)}.station-attention-item span,.station-attention-item small{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.station-heatmap-wrap{max-height:min(72vh,760px);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface);overflow:auto}.station-heatmap-table{min-width:1120px}.station-heatmap-table th,.station-heatmap-table td{padding:var(--pt-space-2)}.station-heatmap-table thead th{position:sticky;top:0;z-index:3}.station-heatmap-label-column,.station-heatmap-row-label{position:sticky;left:0;z-index:2;min-width:260px;max-width:320px;background:var(--pt-color-bg-surface)}.station-heatmap-table thead .station-heatmap-label-column{z-index:4;background:var(--pt-color-bg-muted)}.station-heatmap-row-label a{display:grid;gap:var(--pt-space-1);color:var(--pt-color-text-primary);text-decoration:none}.station-heatmap-row-label a:hover{color:var(--pt-color-link-hover);text-decoration:underline}.station-heatmap-row-label strong{line-height:var(--pt-line-height-tight)}.station-heatmap-row-label span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:500;text-transform:none}.station-heatmap-station-start th,.station-heatmap-station-start td{border-top:2px solid var(--pt-color-border-strong)}.station-heatmap-cell{display:grid;align-content:start;justify-items:start;gap:var(--pt-space-1);width:100%;min-height:68px;padding:var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app);text-align:left;text-decoration:none}button.station-heatmap-cell{cursor:pointer}.station-heatmap-cell:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.station-heatmap-cell>span:first-child{color:inherit;font-size:var(--pt-font-size-xs);font-weight:800;text-transform:uppercase}.station-heatmap-cell small{color:var(--pt-color-text-muted);font-family:var(--pt-font-family-mono);font-size:var(--pt-font-size-xs)}.station-heatmap-cell-healthy{border-color:var(--pt-status-healthy-border);background:var(--pt-status-healthy-bg);color:var(--pt-status-healthy)}.station-heatmap-cell-warning{border-color:var(--pt-status-warning-border);background:var(--pt-status-warning-bg);color:var(--pt-status-warning)}.station-heatmap-cell-degraded{border-color:var(--pt-status-degraded-border);background:var(--pt-status-degraded-bg);color:var(--pt-status-degraded)}.station-heatmap-cell-failed{border-color:var(--pt-status-failed-border);background:var(--pt-status-failed-bg);color:var(--pt-status-failed)}.station-heatmap-cell-no_data{border-color:var(--pt-status-no-data-border);background:repeating-linear-gradient(-45deg,rgb(152 162 179 / .14),rgb(152 162 179 / .14) 4px,transparent 4px,transparent 8px),var(--pt-status-no-data-bg);color:var(--pt-color-text-muted)}.station-heatmap-cell-unknown{border-color:var(--pt-status-unknown-border);background:var(--pt-status-unknown-bg);color:var(--pt-status-unknown)}.station-heatmap-cell-not-applicable{border-style:dashed;background:var(--pt-color-bg-muted);color:var(--pt-color-text-subtle)}.station-heatmap-cell-selected{border-color:var(--pt-color-brand-accent);box-shadow:inset 0 0 0 2px var(--pt-color-brand-accent),var(--pt-shadow-sm)}.station-heatmap-cell-related{outline:2px dashed var(--pt-color-brand-accent);outline-offset:-5px}.station-heatmap-cell-unavailable{cursor:default}.selected-evidence-marker{display:inline-flex;align-items:center;min-height:20px;padding:0 var(--pt-space-2);border-radius:var(--pt-radius-pill);background:#ffffffb8;color:var(--pt-color-brand-primary-dark);font-family:var(--pt-font-family-sans);font-size:var(--pt-font-size-xs);font-weight:800;text-transform:uppercase}.stations-selected-evidence{display:grid;gap:var(--pt-space-3);padding:var(--pt-space-4);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-app)}.stations-selected-evidence header,.stations-selected-evidence footer{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-3)}.stations-selected-evidence header span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.stations-selected-evidence h3,.stations-selected-evidence p{margin:0}.stations-selected-evidence h3{color:var(--pt-color-text-primary);font-size:var(--pt-font-size-lg);line-height:var(--pt-line-height-tight)}.stations-selected-evidence p{color:var(--pt-color-text-muted)}.selected-evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--pt-space-2)}.selected-evidence-actions{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.selected-evidence-empty-link{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm)}.sensor-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sensor-card,.chart-card{display:grid;gap:var(--pt-space-3);padding:var(--pt-space-4)}.group-chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--pt-space-2)}.group-chip{display:grid;justify-items:start;gap:var(--pt-space-1);min-height:58px;padding:var(--pt-space-2);border-radius:var(--pt-radius-md);text-align:left}.group-chip:disabled{background:var(--pt-color-bg-muted);color:var(--pt-color-text-subtle)}.compact-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-chart{min-height:220px}.availability-mini-timeline{display:grid;gap:var(--pt-space-2)}.availability-segment-row{display:grid;grid-template-columns:minmax(110px,auto) minmax(120px,1fr) minmax(110px,auto) auto;align-items:center;gap:var(--pt-space-2);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.station-dashboard-page{gap:var(--pt-space-5)}.station-compact-overview-card,.station-mini-map-card,.station-compact-technology-card,.station-technology-section,.station-dashboard-panel,.station-key-metric-card{min-width:0;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface);box-shadow:var(--pt-shadow-subtle)}.station-compact-overview-card{display:grid;gap:var(--pt-space-4);padding:var(--pt-space-5)}.station-compact-overview-title{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-4)}.station-compact-overview-title>div{display:grid;gap:var(--pt-space-1);min-width:0;flex:1}.station-compact-overview-title>span,.station-compact-technology-card>span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:800;text-transform:uppercase}.station-compact-overview-title h1{margin:0;color:var(--pt-color-text-primary);font-size:var(--pt-font-size-2xl);line-height:var(--pt-line-height-tight)}.station-compact-overview-title p{margin:0;color:var(--pt-color-text-muted)}.station-compact-overview-grid{display:grid;grid-template-columns:minmax(160px,.85fr) repeat(4,minmax(130px,1fr));gap:var(--pt-space-3);align-items:stretch}.station-mini-map-card{position:relative;display:grid;align-content:end;min-height:112px;overflow:hidden;padding:var(--pt-space-3);color:var(--pt-color-text-primary);text-decoration:none;background:linear-gradient(135deg,#4b75b929,#1861781a),var(--pt-color-bg-subtle)}.station-mini-map-canvas,.station-mini-map-grid{position:absolute;inset:0}.station-mini-map-canvas,.station-mini-map-canvas .ol-viewport,.station-mini-map-canvas .ol-layer{pointer-events:none}.station-mini-map-canvas canvas{filter:saturate(.78) contrast(.94)}.station-mini-map-scrim{position:absolute;inset:0;background:linear-gradient(180deg,#ffffff14,#ffffffb8),linear-gradient(90deg,#f7fafc8a,#f7fafc29)}.station-mini-map-grid{opacity:.45;background-image:linear-gradient(var(--pt-color-border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--pt-color-border-subtle) 1px,transparent 1px);background-size:28px 28px}.station-mini-map-marker{position:absolute;top:50%;left:50%;width:14px;height:14px;border:3px solid var(--pt-color-bg-surface);border-radius:999px;background:var(--pt-color-brand-accent);box-shadow:var(--pt-shadow-sm);transform:translate(-50%,-50%)}.station-mini-map-label{position:relative;z-index:1;display:grid;gap:var(--pt-space-1);justify-self:start;max-width:100%;padding:var(--pt-space-2);border:1px solid rgba(255,255,255,.62);border-radius:var(--pt-radius-md);background:#ffffffd1;box-shadow:var(--pt-shadow-subtle)}.station-mini-map-label small{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.station-mini-map-card-empty{color:var(--pt-color-text-muted)}.station-compact-technology-card{display:grid;gap:var(--pt-space-2);align-content:start;min-height:112px;padding:var(--pt-space-3);color:var(--pt-color-text-primary);text-align:left;cursor:pointer}.station-compact-technology-card small{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.station-compact-overview-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--pt-space-2)}.station-technology-section-header>div,.station-dashboard-panel,.station-selected-chart-summary,.station-risky-metric-list,.station-key-metric-card{display:grid;gap:var(--pt-space-2)}.station-technology-section-header span,.station-selected-chart-card header span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:800;text-transform:uppercase}.station-technology-section h2,.station-dashboard-panel h3{margin:0;color:var(--pt-color-text-primary);line-height:var(--pt-line-height-tight)}.station-technology-section h2{font-size:var(--pt-font-size-xl)}.station-dashboard-panel h3{font-size:var(--pt-font-size-md)}.station-selected-chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-3)}.station-technology-section-header p{margin:0;color:var(--pt-color-text-muted);line-height:var(--pt-line-height-normal)}.station-compact-technology-card,.station-key-metric-card,.station-risky-metric-row{color:var(--pt-color-text-primary);text-align:left;cursor:pointer}.station-selected-chart-summary span,.station-risky-metric-row small{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.station-mini-map-card:hover,.station-compact-technology-card:hover,.station-key-metric-card:hover,.station-risky-metric-row:hover{border-color:var(--pt-color-border-strong);background:var(--pt-color-hover-bg)}.station-mini-map-card:focus-visible,.station-compact-technology-card:focus-visible,.station-key-metric-card:focus-visible,.station-risky-metric-row:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.station-dashboard-card-selected,.station-dashboard-row-selected{border-color:var(--pt-color-brand-accent);background:var(--pt-color-selection-bg);box-shadow:inset 0 0 0 2px var(--pt-color-brand-accent),var(--pt-shadow-sm)}.station-technology-section{display:grid;gap:var(--pt-space-4);padding:var(--pt-space-5);scroll-margin-top:var(--pt-space-5)}.station-technology-section.status-warning{border-left:4px solid var(--pt-status-warning)}.station-technology-section.status-degraded{border-left:4px solid var(--pt-status-degraded)}.station-technology-section.status-failed{border-left:4px solid var(--pt-status-failed)}.station-technology-section.status-no_data,.station-technology-section.status-unknown{border-left:4px solid var(--pt-status-unknown)}.station-technology-section-header,.station-dashboard-panel>header,.station-key-metric-card header,.station-risky-metric-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-3)}.station-dashboard-chart-risk-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:var(--pt-space-4)}.station-technology-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--pt-space-4)}.station-dashboard-panel{align-content:start;padding:var(--pt-space-4)}.station-status-history-panel{overflow:hidden}.station-status-history-panel>header span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm);font-weight:700}.station-status-history-heatmap{display:grid;gap:var(--pt-space-3);min-width:0}.station-status-history-heatmap-canvas{min-width:0;width:100%;overflow:hidden}.station-status-history-legend{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.station-status-history-accessible-table{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.station-risky-metric-row{min-width:0;padding:var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app)}.station-key-metric-grid{display:grid;gap:var(--pt-space-3)}.station-key-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.station-key-metric-card{padding:var(--pt-space-4)}.station-key-metric-card strong,.station-selected-chart-summary strong{color:var(--pt-color-text-primary);font-size:var(--pt-font-size-md)}.station-key-metric-card{display:grid;gap:var(--pt-space-2);min-height:0}.station-key-metric-card p,.station-key-metric-card small{margin:0;color:var(--pt-color-text-muted)}.station-key-metric-card p{color:var(--pt-color-text-primary);font-family:var(--pt-font-family-mono);font-size:var(--pt-font-size-sm)}.station-key-metric-card small{font-size:var(--pt-font-size-xs)}.station-sparkline{min-height:42px;pointer-events:none}.station-selected-performance-chart{display:grid;gap:var(--pt-space-3)}.station-selected-performance-chart-canvas{min-height:300px}.station-selected-chart-main-stat{margin:0;color:var(--pt-color-text-primary);font-family:var(--pt-font-family-mono);font-size:var(--pt-font-size-sm);line-height:var(--pt-line-height-normal)}.station-selected-chart-summary-strip{display:flex;flex-wrap:wrap;gap:var(--pt-space-1) var(--pt-space-3);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);line-height:var(--pt-line-height-normal)}.station-selected-chart-summary-strip span{display:inline-flex;gap:var(--pt-space-1);align-items:baseline}.station-selected-chart-summary-strip strong{color:var(--pt-color-text-primary);font-size:inherit;font-weight:800}.station-risky-metric-list{gap:var(--pt-space-2)}.station-risky-metric-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.station-risky-metric-row small{grid-column:2 / -1}.station-performance-table-panel{align-content:start}.station-performance-table-toolbar{display:flex;flex-wrap:wrap;gap:var(--pt-space-3);align-items:end}.station-performance-table-toolbar label{display:grid;gap:var(--pt-space-1);min-width:180px;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:800;text-transform:uppercase}.station-performance-table-toolbar input,.station-performance-table-toolbar select{min-height:34px;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-sm);background:var(--pt-color-bg-surface);color:var(--pt-color-text-primary);font:inherit;font-size:var(--pt-font-size-sm);font-weight:500;padding:var(--pt-space-1) var(--pt-space-2);text-transform:none}.station-performance-table-toolbar input{min-width:min(320px,100%)}.station-performance-table-scroll{max-height:465px;overflow:auto;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md)}.station-performance-values-table{min-width:1100px}.station-performance-values-table thead th{position:sticky;top:0;z-index:1;background:var(--pt-color-bg-surface)}.station-performance-values-table th,.station-performance-values-table td{padding-block:var(--pt-space-2);vertical-align:middle}.station-performance-sort-button{display:inline-flex;gap:var(--pt-space-1);align-items:center;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-weight:800;padding:0;text-align:left}.station-performance-sort-button span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);text-transform:lowercase}.station-performance-values-table tr.station-dashboard-row-selected td{background:var(--pt-color-selection-bg)}@media(max-width:1200px){.station-compact-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.station-mini-map-card{grid-column:span 2}.station-key-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.station-technology-hero-grid,.station-dashboard-chart-risk-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:720px){.station-compact-overview-title,.station-compact-overview-actions{justify-content:flex-start}.station-compact-overview-grid{grid-template-columns:minmax(0,1fr)}.station-mini-map-card{grid-column:auto}.station-key-metric-grid{grid-template-columns:minmax(0,1fr)}}.availability-segment{min-height:28px;display:flex;align-items:center;justify-content:center;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-pill);color:var(--pt-color-text-primary);background:var(--pt-color-bg-muted);font-weight:700}.availability-available,.availability-healthy{border-color:var(--pt-status-healthy-border);background:var(--pt-status-healthy-bg);color:var(--pt-status-healthy)}.availability-degraded,.availability-warning{border-color:var(--pt-status-warning-border);background:var(--pt-status-warning-bg);color:var(--pt-status-warning)}.availability-unavailable,.availability-failed{border-color:var(--pt-status-failed-border);background:var(--pt-status-failed-bg);color:var(--pt-status-failed)}.availability-no_data{border-color:var(--pt-status-no-data-border);background:var(--pt-status-no-data-bg);color:var(--pt-color-text-muted)}.availability-unknown{border-color:var(--pt-status-unknown-border);background:var(--pt-status-unknown-bg);color:var(--pt-status-unknown)}.time-series-chart-first{gap:var(--pt-space-3)}.time-series-workspace{display:grid;gap:var(--pt-space-3);min-width:0;min-height:calc(100vh - 210px);padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface);box-shadow:var(--pt-shadow-subtle)}.time-series-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pt-space-3)}.time-series-toolbar h1,.time-series-editor-panel h2{margin:0;color:var(--pt-color-text-primary);line-height:var(--pt-line-height-tight)}.time-series-toolbar h1{font-size:var(--pt-font-size-xl)}.time-series-toolbar p{margin:var(--pt-space-1) 0 0;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm);line-height:var(--pt-line-height-normal)}.time-series-toolbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--pt-space-2)}.time-series-editor-panel{display:grid;gap:var(--pt-space-3);max-height:58vh;overflow:auto;padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app)}.time-series-editor-panel header,.time-series-editor-panel footer{display:flex;align-items:center;justify-content:space-between;gap:var(--pt-space-2)}.time-series-editor-panel h2{font-size:var(--pt-font-size-md)}.time-series-command-search{display:grid;gap:var(--pt-space-2)}.time-series-command-search label{display:grid;gap:var(--pt-space-1);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.time-series-command-search input{min-height:40px;width:100%;padding:0 var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-surface)}.time-series-command-search input:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.time-series-command-results{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.time-series-command-results button{display:grid;gap:2px;justify-items:start;text-align:left}.time-series-command-results button small{max-width:280px;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:500;text-transform:none}.time-series-command-results>span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm)}.time-series-sentence-builder{display:flex;align-items:end;flex-wrap:wrap;gap:var(--pt-space-2);padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-surface)}.time-series-sentence-builder>span{padding-bottom:10px;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm);font-weight:700}.time-series-sentence-slot{display:flex;align-items:end;flex-wrap:wrap;gap:var(--pt-space-2);min-width:min(100%,280px);margin:0;padding:0;border:0}.time-series-sentence-slot .query-control{min-width:180px}.time-series-statistic-slot{align-items:center;min-height:40px;padding:var(--pt-space-1) var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app)}.time-series-statistic-slot legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.time-series-statistic-slot label{display:inline-flex;align-items:center;gap:var(--pt-space-1);color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm);font-weight:600}.time-series-statistic-slot label small{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:500}.time-series-statistic-slot>span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm)}.time-series-more-options{display:grid;gap:var(--pt-space-3)}.time-series-more-options summary{width:fit-content;color:var(--pt-color-brand-primary);font-size:var(--pt-font-size-sm);font-weight:700;cursor:pointer}.time-series-more-options-grid{display:grid;grid-template-columns:minmax(260px,1fr) repeat(2,minmax(180px,.45fr));gap:var(--pt-space-3);align-items:start}.time-series-editor-grid,.time-series-query-builder{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr)) auto;align-items:end;gap:var(--pt-space-3)}.time-series-editor-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}.time-series-station-panel .time-series-editor-grid{grid-template-columns:minmax(220px,360px) minmax(220px,360px)}.time-series-station-search label{display:grid;gap:var(--pt-space-1);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.time-series-station-search input{min-height:38px;padding:0 var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-surface)}.time-series-station-search input:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.time-series-station-candidates{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--pt-space-2)}.time-series-station-candidates>strong,.time-series-station-candidates>span{grid-column:1 / -1;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.time-series-station-candidate{display:grid;gap:var(--pt-space-1);min-height:58px;padding:var(--pt-space-2) var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-surface);color:var(--pt-color-text-primary);text-align:left}.time-series-station-candidate:hover:not(:disabled){border-color:var(--pt-color-brand-accent);background:var(--pt-color-hover-bg)}.time-series-station-candidate:disabled{background:var(--pt-color-bg-muted);color:var(--pt-color-text-muted)}.time-series-station-candidate span{font-weight:700}.time-series-station-candidate small{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.time-series-station-fallback{display:flex;align-items:end;flex-wrap:wrap;gap:var(--pt-space-2);padding-top:var(--pt-space-2);border-top:1px solid var(--pt-color-border-subtle)}.time-series-editor-options{display:grid;grid-template-columns:minmax(260px,1.1fr) minmax(220px,.7fr) minmax(220px,.8fr);gap:var(--pt-space-3);align-items:start}.query-control{display:grid;gap:var(--pt-space-1);min-width:0;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.query-control select{min-height:36px;min-width:0;width:100%;padding:0 var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app)}.query-control select:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.query-control small{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:500;line-height:1.35;text-transform:none}.time-series-advanced-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--pt-space-3);padding-top:var(--pt-space-3);border-top:1px solid var(--pt-color-border-subtle)}.time-series-selector-tray{display:grid;grid-template-columns:minmax(320px,1.35fr) minmax(240px,.65fr);gap:var(--pt-space-3);align-items:start}.multi-option-group{display:grid;gap:var(--pt-space-2);margin:0;padding:var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app)}.multi-option-group legend{padding:0 var(--pt-space-1);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase}.multi-option-list,.series-control-list{display:grid;gap:var(--pt-space-2);max-height:240px;overflow:auto}.multi-option-list label,.series-control-list label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--pt-space-2);color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm)}.series-control-list label{grid-template-columns:auto 36px minmax(0,1fr);align-items:center}.multi-option-list small,.series-control-list small{grid-column:2;color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs)}.series-control-list small{grid-column:3}.series-style-swatch{position:relative;display:block;width:28px;height:12px}.series-style-swatch:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:3px solid var(--series-color, var(--pt-color-brand-primary));transform:translateY(-50%)}.series-style-dashed:before{border-top-style:dashed}.series-style-dotted:before{border-top-style:dotted}.sensor-station-group{display:grid;gap:var(--pt-space-2);padding-bottom:var(--pt-space-2);border-bottom:1px solid var(--pt-color-border-subtle)}.sensor-station-group:last-child{padding-bottom:0;border-bottom:0}.sensor-station-group>strong{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);text-transform:uppercase}.query-chip-row{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.time-series-chart-shell{display:grid;min-height:680px;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);background:var(--pt-color-bg-app)}.time-series-chart{min-height:680px}.time-series-start-query{display:grid;gap:var(--pt-space-2);justify-items:center}.time-series-start-query span{color:var(--pt-color-text-muted);font-size:var(--pt-font-size-sm)}.time-series-start-query strong{color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm)}.time-series-tooltip{display:grid;gap:var(--pt-space-2);min-width:220px;max-width:min(420px,82vw);color:var(--pt-color-text-primary);font-size:var(--pt-font-size-xs);line-height:var(--pt-line-height-normal)}.time-series-tooltip>strong{color:var(--pt-color-text-primary);font-size:var(--pt-font-size-sm)}.time-series-tooltip-rows{display:grid;gap:var(--pt-space-1)}.time-series-tooltip-row{display:grid;grid-template-columns:minmax(110px,1fr) auto auto auto auto;gap:var(--pt-space-2);align-items:baseline}.time-series-tooltip-series{overflow:hidden;color:var(--pt-color-text-primary);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.time-series-tooltip-threshold{padding-top:var(--pt-space-1);border-top:1px solid var(--pt-color-border-subtle);color:var(--pt-color-text-muted)}.time-series-chart-notes{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.time-series-chart-notes span{padding:var(--pt-space-1) var(--pt-space-2);border:1px solid var(--pt-status-warning-border);border-radius:var(--pt-radius-pill);background:var(--pt-status-warning-bg);color:var(--pt-status-warning);font-size:var(--pt-font-size-xs);font-weight:700}.time-series-legend-tray{display:grid;gap:var(--pt-space-2)}.selected-series-summary{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.selected-series-summary span{padding:var(--pt-space-1) var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-pill);background:var(--pt-color-bg-muted);color:var(--pt-color-text-primary);font-size:var(--pt-font-size-xs);font-weight:700}.time-series-secondary-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:var(--pt-space-4);min-width:0}.tables-control-bar{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));align-items:end;gap:var(--pt-space-3)}.tables-control-bar-advanced{padding-top:var(--pt-space-3);border-top:1px solid var(--pt-color-border-subtle)}.query-control input{min-height:36px;min-width:0;width:100%;padding:0 var(--pt-space-3);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-md);color:var(--pt-color-text-primary);background:var(--pt-color-bg-app)}.query-control input:focus-visible{outline:none;box-shadow:var(--pt-focus-ring)}.hierarchy-table{min-width:1180px}.hierarchy-table td{padding-top:var(--pt-space-1);padding-bottom:var(--pt-space-1)}.tree-cell{display:flex;align-items:center;gap:var(--pt-space-2);min-width:260px}.tree-cell strong{color:var(--pt-color-text-primary);overflow-wrap:anywhere}.tree-toggle,.tree-spacer{width:24px;height:24px;flex:0 0 auto}.tree-toggle{display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-sm);color:var(--pt-color-brand-primary);background:var(--pt-color-bg-surface);font-weight:700}.tree-toggle:hover{background:var(--pt-color-hover-bg)}.availability-state-legend{display:flex;flex-wrap:wrap;gap:var(--pt-space-2)}.availability-state-pill{display:inline-flex;align-items:center;gap:var(--pt-space-1);min-height:28px;padding:0 var(--pt-space-2);border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-pill);color:var(--pt-color-text-primary);background:var(--pt-color-bg-muted);font-size:var(--pt-font-size-sm);font-weight:700}.availability-state-pill span{min-width:14px;font-family:var(--pt-font-family-mono);text-align:center}.availability-state-available{border-color:var(--pt-status-healthy-border);background:var(--pt-status-healthy-bg);color:var(--pt-status-healthy)}.availability-state-unavailable{border-color:var(--pt-status-failed-border);background:var(--pt-status-failed-bg);color:var(--pt-status-failed)}.availability-state-no_data{border-color:var(--pt-status-no-data-border);background:repeating-linear-gradient(-45deg,rgb(152 162 179 / .16),rgb(152 162 179 / .16) 4px,transparent 4px,transparent 8px),var(--pt-status-no-data-bg);color:var(--pt-color-text-muted)}.availability-state-unknown{border-color:var(--pt-status-unknown-border);background:var(--pt-status-unknown-bg);color:var(--pt-status-unknown)}.availability-chart-panel{display:grid;gap:var(--pt-space-3)}.availability-chart-canvas{min-width:0;border:1px solid var(--pt-color-border-subtle);border-radius:var(--pt-radius-lg);background:var(--pt-color-bg-surface)}.availability-chart-canvas:focus-visible,.availability-page .button:focus-visible{outline:3px solid rgb(31 78 121 / .42);outline-offset:3px}.availability-sensor-summary-scroll{max-width:100%;overflow-x:auto;border-radius:var(--pt-radius-lg)}.availability-sensor-summary-table{width:100%;min-width:760px;border:1px solid var(--pt-color-border-subtle);border-collapse:collapse;border-radius:var(--pt-radius-lg);overflow:hidden;background:var(--pt-color-bg-surface);font-size:var(--pt-font-size-sm)}.availability-sensor-summary-table caption{padding:var(--pt-space-2) var(--pt-space-3);color:var(--pt-color-text-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-align:left;text-transform:uppercase;letter-spacing:0}.availability-sensor-summary-table th,.availability-sensor-summary-table td{padding:var(--pt-space-2) var(--pt-space-3);border-top:1px solid var(--pt-color-border-subtle);text-align:left;white-space:nowrap}.availability-sensor-summary-table th{color:var(--pt-color-text-muted);background:var(--pt-color-bg-muted);font-size:var(--pt-font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:0}.availability-sensor-summary-table td{color:var(--pt-color-text-primary)}.availability-station-summary-row th{color:var(--pt-color-text-primary);background:var(--pt-color-bg-muted);font-size:var(--pt-font-size-sm);font-weight:800}.availability-sensor-summary-name{padding-left:calc(var(--pt-space-3) + var(--pt-space-4))}.ol-control button{background-color:var(--pt-color-brand-primary)}@media(max-width:1100px){.app-header,.context-bar{align-items:flex-start;height:auto;flex-wrap:wrap;padding:var(--pt-space-3) var(--pt-space-4)}.context-bar{grid-template-columns:1fr}.context-meta{justify-content:flex-start;max-width:none}.freshness-indicator{justify-self:start}.time-range-control{width:100%}.time-range-trigger,.time-range-panel-body,.time-range-quick-list{grid-template-columns:minmax(0,1fr)}.time-range-panel{width:calc(100vw - var(--pt-space-6))}.app-header-actions{margin-left:0}.app-main-with-drawer{grid-template-columns:minmax(0,1fr)}.map-workspace{grid-template-columns:minmax(0,1fr);min-height:760px}.map-workspace-panel-open{grid-template-columns:minmax(0,1fr)}.map-left-panel{max-height:420px;border-right:0;border-bottom:1px solid var(--pt-color-border-subtle)}.map-canvas{min-height:760px}.read-model-title-row,.network-status-header,.station-status-header,.time-series-toolbar{display:grid}.network-status-meta,.station-header-meta,.station-header-actions{justify-content:flex-start;max-width:none}.summary-card-grid,.key-value-grid,.station-context-grid,.station-evidence-grid,.selected-evidence-grid,.sensor-card-grid,.compact-chart-grid{grid-template-columns:1fr}.status-counts,.technology-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-segment-row{grid-template-columns:1fr;justify-items:start}.time-series-query-builder,.time-series-editor-grid,.time-series-editor-options,.time-series-more-options-grid,.time-series-selector-tray,.time-series-advanced-controls,.time-series-secondary-grid,.tables-control-bar,.availability-station-row,.availability-sensor-row{grid-template-columns:1fr}.time-series-sentence-builder,.time-series-sentence-slot{align-items:stretch;display:grid}}@media(max-width:760px){.station-attention-group{grid-template-columns:1fr}}
