:root{--blue:#2467e8;--blue-dark:#1548a8;--blue-soft:#eaf1ff;--ink:#151b2b;--muted:#687086;--line:#e2e6ee;--panel:#ffffff;--canvas:#f4f6fa;--success:#178451;--success-soft:#e5f6ed;--attention:#b66a00;--attention-soft:#fff1d8;--critical:#c43745;--critical-soft:#ffe9eb;--missing:#7158b5;--missing-soft:#f0ebff;--shadow:0 18px 60px rgba(25,38,72,0.08);--radius:18px}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;color:var(--ink);background:radial-gradient(circle at 90% -10%,rgba(36,103,232,.08),transparent 32rem),var(--canvas);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,select{cursor:pointer}[role=treeitem]:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(36,103,232,.24);outline-offset:2px}code{color:#6d7486;font-family:SFMono-Regular,Consolas,monospace;font-size:11px}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{letter-spacing:-.025em}.monitoring-app{min-height:100vh;padding:18px}.topbar{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 18px;border:1px solid rgba(226,230,238,.9);border-radius:var(--radius);background:rgba(255,255,255,.92);box-shadow:0 10px 35px rgba(25,38,72,.06);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.wedge-mark{gap:11px;min-width:220px}.wedge-mark,.wedge-mark__symbol{display:inline-flex;align-items:center}.wedge-mark__symbol{width:48px;height:48px;justify-content:center;color:var(--blue);font-size:42px;font-style:italic;font-weight:900;letter-spacing:-.15em;transform:skew(-8deg)}.wedge-mark>span:last-child{display:grid;gap:2px}.wedge-mark strong{color:var(--blue);font-size:18px;font-style:italic;letter-spacing:.04em}.wedge-mark small{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.wedge-mark--compact{margin-bottom:44px}.topbar__context{display:flex;align-items:center;justify-content:flex-end;gap:10px}.select-field,.tenant-name,.user-menu{min-height:45px;display:flex;flex-direction:column;justify-content:center;padding:6px 10px;border-left:1px solid var(--line)}.select-field>span,.tenant-name span,.user-menu>span:first-child{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tenant-name strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-field select{min-width:92px;padding:2px 24px 2px 0;border:0;color:var(--ink);background:transparent;font-weight:700}.select-field--tenant select{max-width:190px}.user-menu{flex-direction:row;align-items:center;gap:8px}.user-menu button{padding:6px 9px;border:0;border-radius:8px;color:var(--blue-dark);background:var(--blue-soft);font-size:11px;font-weight:700}.frozen-window{min-height:45px;display:grid;gap:2px;justify-items:end;padding:6px 10px;border-left:1px solid var(--line)}.frozen-window span{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.frozen-window strong{font-size:10px}.segmented-control{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:12px;background:#f4f6fa}.segmented-control button{border:0;border-radius:9px;color:var(--muted);background:transparent;font-weight:700;transition:.14s ease}.segmented-control button:hover{color:var(--ink)}.segmented-control button.is-active{color:var(--blue-dark);background:#fff;box-shadow:0 3px 12px rgba(28,48,88,.11)}.segmented-control--mode button{min-height:38px;padding:0 13px}.segmented-control--presets button{min-height:34px;padding:0 15px}.live-pulse{width:8px;height:8px;display:inline-block;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px rgba(23,132,81,.12)}.connection-pill{position:fixed;z-index:20;right:26px;bottom:22px;display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid #bfe5ce;border-radius:999px;color:#0d7142;background:rgba(244,255,248,.94);box-shadow:0 8px 28px rgba(21,85,55,.12);font-size:11px;font-weight:800;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.connection-banner,.partial-banner,.range-recovery-notice{display:flex;align-items:center;gap:12px;margin-top:12px;padding:11px 15px;border:1px solid #f0d399;border-radius:12px;color:#704400;background:#fff8e8}.range-recovery-notice{border-color:#b8d8c6;color:#185c37;background:#effaf3}.connection-banner>div,.partial-banner{flex-wrap:wrap}.connection-banner strong,.partial-banner strong{margin-right:8px}.connection-banner span,.partial-banner span{font-size:12px}.connection-banner--disconnected{border-color:#f0bac0;color:#8f2430;background:#fff1f2}.connection-icon{font-size:20px}.partial-banner{border-color:#cbc0ed;color:#4f3b91;background:#f6f3ff}.preset-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.78)}.preset-bar strong{font-size:13px}.eyebrow{margin-bottom:4px;color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.105em;text-transform:uppercase}.workspace-grid{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(460px,1.8fr) minmax(320px,1fr);gap:14px;align-items:start;margin-top:14px}.context-panel,.hierarchy-panel,.overview-panel{min-height:calc(100vh - 200px);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.context-panel,.hierarchy-panel{position:sticky;top:14px;max-height:calc(100vh - 28px);overflow:auto}.hierarchy-panel{padding:17px 12px}.overview-panel{padding:20px}.context-panel{padding:18px}.context-header,.panel-heading,.section-heading,.subheading-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.context-header h2,.panel-heading h2,.section-heading h1{margin-bottom:0}.panel-heading h2{font-size:18px}.section-heading h1{font-size:24px}.count-badge{display:inline-flex;min-width:25px;height:25px;align-items:center;justify-content:center;border-radius:9px;color:var(--blue-dark);background:var(--blue-soft);font-size:11px;font-weight:800}.snapshot-time{color:var(--muted);font-size:11px}.search-field{display:flex;align-items:center;gap:7px;margin:16px 0 10px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:#f8f9fb}.search-field input{width:100%;border:0;outline:0;color:var(--ink);background:transparent;font-size:12px}.icon{color:var(--muted);font-size:19px;line-height:1}.hierarchy-tree{display:grid;gap:3px}.tree-node{min-height:39px;display:flex;align-items:center;gap:8px;padding-block:7px;padding-right:8px;border-radius:9px;color:#4d5569;cursor:pointer;transition:.13s ease}.tree-node:hover{background:#f3f6fc}.tree-node.is-selected{color:var(--blue-dark);background:var(--blue-soft);font-weight:700}.tree-node__label{min-width:0;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-dot{width:8px;height:8px;flex:0 0 auto;display:inline-block;border-radius:50%;background:var(--muted)}.status-dot--normal{background:var(--success)}.status-dot--attention{background:var(--attention)}.status-dot--critical{background:var(--critical)}.health-mark{width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;font-size:9px;font-weight:900}.health-mark--good{color:var(--success);background:var(--success-soft)}.health-mark--bad,.health-mark--missing,.health-mark--stale{color:var(--critical);background:var(--critical-soft)}.health-mark--uncertain{color:var(--attention);background:var(--attention-soft)}.status-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.status-card{min-height:210px;display:flex;flex-direction:column;align-items:stretch;padding:15px;border:1px solid var(--line);border-radius:15px;color:inherit;text-align:left;background:#fff;transition:.15s ease}.status-card.is-selected,.status-card:hover{border-color:rgba(36,103,232,.55);box-shadow:0 10px 30px rgba(36,103,232,.11);transform:translateY(-1px)}.status-card.is-selected{box-shadow:inset 3px 0 0 var(--blue),0 10px 30px rgba(36,103,232,.1)}.status-card__top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:17px}.health-chip,.quality-badge,.state-chip{display:inline-flex;align-items:center;gap:6px;width:fit-content;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.045em}.health-chip,.state-chip{padding:6px 8px;text-transform:uppercase}.state-chip--running{color:var(--success);background:var(--success-soft)}.state-chip--alarm_fault,.state-chip--unknown{color:var(--critical);background:var(--critical-soft)}.state-chip--idle,.state-chip--off,.state-chip--program_stopped,.state-chip--setup_manual{color:var(--attention);background:var(--attention-soft)}.health-chip--good{color:var(--success);background:#f0faf4}.health-chip--uncertain{color:var(--attention);background:var(--attention-soft)}.health-chip--bad,.health-chip--missing,.health-chip--stale{color:var(--critical);background:var(--critical-soft)}.status-card>strong{margin-bottom:4px;font-size:17px}.status-card>p{margin:15px 0 10px;color:#30384c;font-size:12px;font-weight:700}.card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:10px;border-top:1px solid #eff1f5;color:var(--muted);font-size:11px}.card-footer span:first-child{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.context-header{padding-bottom:14px;border-bottom:1px solid var(--line)}.context-header h2{font-size:20px}.object-icon{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:12px;color:var(--blue);background:var(--blue-soft);font-size:22px}.context-actions{display:grid;gap:7px;justify-items:end}.event-investigate-action,.investigate-action{border:0;border-radius:8px;color:var(--blue-dark);background:var(--blue-soft);font-size:10px;font-weight:800}.investigate-action{padding:6px 8px}.event-investigate-action{margin-left:auto;padding:5px 7px}.dimension-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.dimension-grid>div{display:grid;gap:5px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fafbfc}.context-list span,.dimension-grid span,.reason-panel>span,.value-card>span:first-child{color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.dimension-value--good,.dimension-value--running{color:var(--success)}.dimension-value--alarm_fault,.dimension-value--bad,.dimension-value--missing,.dimension-value--stale,.dimension-value--unknown{color:var(--critical)}.dimension-value--idle,.dimension-value--off,.dimension-value--program_stopped,.dimension-value--setup_manual,.dimension-value--uncertain{color:var(--attention)}.quality-strip{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.quality-badge{padding:4px 7px;letter-spacing:0}.quality-badge--good{color:var(--success);background:var(--success-soft)}.quality-badge--uncertain{color:var(--attention);background:var(--attention-soft)}.quality-badge--bad,.quality-badge--stale{color:var(--critical);background:var(--critical-soft)}.quality-badge--missing{color:var(--missing);background:var(--missing-soft)}.reason-panel{display:grid;gap:5px;margin-top:12px;padding:11px;border-left:3px solid var(--blue);border-radius:4px 11px 11px 4px;background:var(--blue-soft)}.reason-panel strong{font-size:12px}.reason-panel small{color:#61708f;font-size:10px}.context-section{margin-top:17px}.context-section h3{margin-bottom:10px;font-size:13px}.subheading-row h3{margin-bottom:0}.subheading-row>span{color:var(--muted);font-size:10px}.contributor-card,.event-list li{display:flex;align-items:flex-start;gap:9px}.contributor-card{margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:10px}.contributor-card>div,.event-list li>div{display:grid;gap:2px}.contributor-card strong,.event-list strong{font-size:11px}.contributor-card small,.event-list small{color:var(--muted);font-size:10px}.duration-list{display:grid;gap:8px;margin-top:11px}.duration-list>div{display:grid;grid-template-columns:64px 1fr 52px;gap:8px;align-items:center;font-size:10px}.duration-list strong{text-align:right}.duration-track{height:6px;overflow:hidden;border-radius:999px;background:#edf0f5}.duration-fill{height:100%;display:block;border-radius:inherit}.duration-fill--worked{background:var(--success)}.duration-fill--idle{background:#e6a836}.duration-fill--downtime{background:var(--critical)}.duration-fill--unknown{background:#8a91a1}.value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:11px}.value-card{min-width:0;display:grid;gap:6px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fafbfc}.value-card strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.context-list{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:10px}.context-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;background:#fafbfc}.event-list{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.event-list li{padding-bottom:8px;border-bottom:1px solid #eff1f5}.inline-empty,.muted{color:var(--muted);font-size:11px}.inline-empty--cards{min-height:190px;display:grid;grid-column:1/-1;place-items:center;padding:30px;border:1px dashed #cfd5e0;border-radius:15px;text-align:center}.investigation-workspace{display:grid;gap:14px;margin-top:14px;padding:18px;border:1px solid #bfd0f3;border-radius:var(--radius);background:linear-gradient(135deg,#f3f7ff,#fff 34%);box-shadow:var(--shadow)}.investigation-heading{display:flex;align-items:end;justify-content:space-between;gap:18px}.investigation-heading h2{margin-bottom:5px;font-size:22px}.investigation-heading p:last-child,.investigation-save p{margin-bottom:0;color:var(--muted);font-size:12px}.investigation-interval{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:8px}.investigation-interval__error{grid-column:1/-1;margin:0;color:var(--critical);font-size:12px;font-weight:700}.investigation-field,.investigation-interval label{display:grid;gap:5px}.investigation-field>span,.investigation-interval label>span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.investigation-field input,.investigation-field textarea,.investigation-interval input{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:#fff}.comparison-grid,.investigation-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.comparison-grid article,.investigation-card{padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.9)}.comparison-grid article{display:grid;gap:4px}.comparison-grid article>span{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.comparison-grid strong{font-size:19px}.comparison-grid small{color:var(--muted)}.investigation-health-strip{display:flex;flex-wrap:wrap;gap:6px}.investigation-card{min-height:190px}.transition-list{display:grid;gap:7px;margin:14px 0 0;padding:0;list-style:none}.transition-list li{display:grid;grid-template-columns:120px 1fr auto;gap:10px;align-items:center;padding-bottom:7px;border-bottom:1px solid #eff1f5}.transition-list time{color:var(--muted);font-size:10px}.signal-chart{width:100%;height:145px;margin-top:14px;overflow:visible}.signal-chart polyline{stroke:var(--blue);stroke-width:3px}.contributor-drilldown{display:grid;gap:4px;width:100%;padding:13px 15px;border:1px solid #c7d6f5;border-radius:12px;color:var(--ink);text-align:left;background:var(--blue-soft)}.contributor-drilldown small,.contributor-drilldown>span{color:#5a6d98;font-size:10px}.investigation-table{width:100%;overflow:hidden;border-collapse:collapse;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:11px}.investigation-table td,.investigation-table th{padding:9px 11px;border-bottom:1px solid #eff1f5;text-align:left}.investigation-table th{color:var(--muted);background:#f8f9fc;font-size:9px;letter-spacing:.06em;text-transform:uppercase}.investigation-save{display:grid;grid-template-columns:minmax(220px,.8fr) repeat(2,minmax(190px,1fr));gap:12px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff}.investigation-save h3{margin-bottom:5px}.investigation-save fieldset{max-height:150px;display:flex;flex-wrap:wrap;gap:6px 10px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:10px}.investigation-save legend{color:var(--muted);font-size:10px;font-weight:800}.investigation-save fieldset label{display:flex;gap:5px;align-items:center;font-size:10px}.investigation-field textarea{min-height:74px;resize:vertical}.primary-action{min-height:40px;align-self:end;border:0;border-radius:9px;color:#fff;background:var(--blue);font-weight:800}.primary-action:disabled{cursor:not-allowed;opacity:.45}.stable-link{align-self:center;color:var(--blue-dark);font-weight:800}.state-page{min-height:100vh;display:grid;place-items:center;padding:24px}.state-panel{width:min(740px,100%);padding:34px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow)}.state-message{display:flex;align-items:center;gap:22px;padding:24px;border-radius:16px;background:#f7f9fc}.state-message h1{margin-bottom:7px;font-size:24px}.state-message p:last-child{margin-bottom:0;color:var(--muted)}.state-icon{display:inline-flex;width:56px;height:56px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:16px;color:var(--blue);background:var(--blue-soft);font-size:28px;font-weight:900}.state-icon--loading{animation:spin 1.5s linear infinite}.state-icon--api_error,.state-icon--permission_denied{color:var(--critical);background:var(--critical-soft)}.primary-button{margin-top:14px;padding:9px 14px;border:0;border-radius:9px;color:#fff;background:var(--blue);font-weight:800}.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}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:1180px){.investigation-heading{align-items:stretch;flex-direction:column}.investigation-save{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-grid{grid-template-columns:220px minmax(420px,1fr)}.context-panel{position:relative;top:auto;max-height:none;grid-column:2;min-height:0}.hierarchy-panel{grid-row:1/span 2}.topbar{align-items:flex-start}.topbar__context{flex-wrap:wrap}}@media (max-width:820px){.monitoring-app{padding:10px}.preset-bar,.topbar{align-items:stretch;flex-direction:column}.topbar__context{justify-content:flex-start}.frozen-window,.select-field,.tenant-name,.user-menu{border-left:0}.frozen-window{justify-items:start}.investigation-workspace{padding:13px}.comparison-grid,.investigation-data-grid,.investigation-interval,.investigation-save{grid-template-columns:1fr}.transition-list li{grid-template-columns:1fr auto}.transition-list time{grid-column:1/-1}.workspace-grid{grid-template-columns:1fr}.context-panel,.hierarchy-panel{position:relative;top:auto;max-height:none;grid-column:1;grid-row:auto;min-height:0}.status-card-grid{grid-template-columns:1fr}.connection-pill{position:static;margin-top:10px}}.idp-language-switcher{align-items:center;background:rgba(255,255,255,.94);border:1px solid #d7dce4;border-radius:999px;display:flex;gap:2px;padding:3px;position:fixed;right:20px;top:16px;z-index:1000}.idp-language-switcher button{background:transparent;border:0;border-radius:999px;color:#465166;cursor:pointer;font:inherit;padding:5px 10px}.idp-language-switcher button[aria-pressed=true]{background:#2457d6;color:#fff}.idp-language-switcher button:focus-visible{outline:2px solid #2457d6;outline-offset:2px}