:root{--bg: #0d1211;--bg-soft: #111917;--panel: #151f1c;--panel-soft: #1a2622;--panel-strong: #202d28;--line: rgba(170, 218, 190, .16);--line-strong: rgba(170, 218, 190, .28);--text: #eef7f1;--muted: #9fb2a8;--muted-strong: #c4d5cb;--accent: #66c88f;--accent-strong: #9be5b8;--accent-soft: rgba(102, 200, 143, .14);--warn: #e0c96f;--warn-soft: rgba(224, 201, 111, .14);--critical: #ff867a;--critical-soft: rgba(255, 134, 122, .14);--info: #8fb7ff;--info-soft: rgba(143, 183, 255, .13);--shadow: 0 18px 46px rgba(0, 0, 0, .28);color:var(--text);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45}*{box-sizing:border-box}[hidden]{display:none!important}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,rgba(102,200,143,.07),transparent 240px),var(--bg);color:var(--text)}button,input,select{font:inherit;max-width:100%}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}pre{margin:0;white-space:pre-wrap;word-break:break-word}table{width:100%;border-collapse:collapse}th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--muted-strong);font-size:.78rem;font-weight:800;text-transform:uppercase}td{color:#e6f1ea}tr:last-child td{border-bottom:0}label{display:grid;gap:7px;color:var(--muted-strong);font-size:.92rem}input,select{min-height:42px;width:100%;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:#0f1715;color:var(--text);outline:none}input:focus,select:focus{border-color:#66c88fa6;box-shadow:0 0 0 3px #66c88f1f}select{color-scheme:dark}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);display:grid;gap:18px;padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.login-brand,.brand{display:flex;align-items:center;gap:12px}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr)}.sidebar{position:sticky;top:0;min-height:100vh;padding:20px;background:#0b100f;border-right:1px solid var(--line);color:var(--text);display:grid;grid-template-rows:auto 1fr auto;gap:22px}.sidebar-top{display:grid;gap:18px}.brand-mark{width:42px;height:42px;display:grid;flex:0 0 auto;place-items:center;border-radius:8px;background:linear-gradient(135deg,#3a8f62,var(--accent));color:#07110c;font-weight:900}.brand small,.selected-context small{display:block;margin-top:2px;color:var(--muted)}.selected-context{display:grid;gap:7px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.selected-context strong,.status-strip strong,.status-strip small,.cockpit-card strong,.command-lane strong,.incident-state-grid strong{min-width:0;overflow-wrap:anywhere}.context-label,.eyebrow{margin:0;color:var(--accent-strong);font-size:.76rem;font-weight:800;text-transform:uppercase}.nav{display:grid;align-content:start;gap:8px}.nav a,.ghost-button{min-height:42px;display:flex;align-items:center;border-radius:8px;padding:0 12px;color:var(--muted-strong);text-decoration:none;background:transparent;border:1px solid transparent}.nav a{border-color:#eef7f114}.nav a:hover,.ghost-button:hover,.secondary-button:hover{border-color:var(--line-strong);background:#eef7f10d}.nav a.router-link-active{background:var(--accent-soft);border-color:#66c88f5c;color:var(--accent-strong)}.sidebar-footer{display:grid;padding-top:16px;border-top:1px solid var(--line)}.workspace{width:min(1320px,100%);display:grid;align-content:start;gap:18px;padding:26px;margin:0 auto}.page-head,.row,.button-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.page-head>div,.row>div,.button-row>*{min-width:0}h1,h2,h3{margin:0;letter-spacing:0}h1{font-size:1.9rem}h2{font-size:1.15rem}h3{font-size:1rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.panel,.metric,.cockpit-card,.command-lane{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 1px #ffffff05}.panel{padding:18px}.terrarium-card{display:grid;gap:16px}.cockpit-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.cockpit-card{min-height:132px;display:grid;align-content:start;gap:8px;padding:14px}.cockpit-card span,.command-lane span,.incident-state-grid span,.metric span,dt{color:var(--muted);font-size:.82rem}.cockpit-card strong{font-size:1.18rem}.cockpit-card small{min-height:2.7em;color:var(--muted-strong);overflow-wrap:anywhere}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metrics-six{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:16px}.metric{min-height:112px;padding:16px}.metric strong{display:block;margin-top:8px;font-size:1.75rem;line-height:1.1}.metric p{margin:10px 0 0;color:var(--muted);font-size:.86rem}dl{display:grid;gap:10px;margin:0}.kv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.kv-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kv-grid div{min-width:0;overflow-wrap:anywhere}dd{margin:2px 0 0;color:var(--text);overflow-wrap:anywhere}.primary-button,.secondary-button,.primary-link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:0 14px;border:1px solid transparent;text-decoration:none;cursor:pointer}.primary-button,.primary-link{background:#3f9867;color:#06110b;font-weight:800}.primary-button:hover,.primary-link:hover{background:var(--accent)}.secondary-button{background:var(--panel-soft);color:var(--text);border-color:var(--line)}.secondary-button.selected{background:var(--accent-soft);border-color:#66c88f75;color:var(--accent-strong)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid button,.form-grid p{justify-self:start}.pill{display:inline-flex;width:fit-content;min-height:28px;align-items:center;border-radius:999px;padding:0 10px;border:1px solid rgba(238,247,241,.08);background:#eef7f114;color:var(--muted-strong);font-size:.76rem;font-weight:800}.pill.online,.pill.ok,.pill.applied,.pill.accepted,.success{border-color:#66c88f40;background:var(--accent-soft);color:var(--accent-strong)}.pill.pending,.pill.delivered,.pill.pending_device_validation,.pill.warn,.pill.clamped_by_safety,.warning{border-color:#e0c96f42;background:var(--warn-soft);color:#f0dd92}.pill.result_reported{border-color:#8fb7ff47;background:var(--info-soft);color:#bcd2ff}.pill.offline,.pill.expired,.pill.critical,.pill.invalid_config,.pill.rejected,.pill.ignored_due_to_critical_fault,.pill.ignored_due_to_latched_fault,.error{border-color:#ff867a47;background:var(--critical-soft);color:#ffd1cc}.error,.success,.warning{margin:0;border-radius:8px;padding:10px 12px;border-width:1px;border-style:solid}.empty-state{display:grid;gap:4px;margin:16px 0 0;color:var(--muted)}.empty-state strong{color:var(--text)}.strong-empty{min-height:120px;align-content:center}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:#0f1715b8}.table-wrap>table{min-width:720px}.muted{margin:8px 0 0;color:var(--muted)}.status-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:16px}.status-strip div,.subpanel,.command-summary,.incident-card,.incident-state-grid article{border:1px solid var(--line);border-radius:8px;background:#eef7f109}.status-strip div{min-height:82px;padding:12px;display:grid;align-content:center;gap:4px}.status-strip span,.incident-card span,.command-summary span,.command-summary small,.incident-card small{color:var(--muted);font-size:.82rem}.split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.subpanel{padding:16px}.subpanel h3,.chart-card h2{margin:0 0 12px}.subpanel.danger,.panel.danger,.incident-state-grid article.danger{border-color:#ff867a57;background:#ff867a14}.incident-state-grid article.warn{border-color:#e0c96f57;background:#e0c96f14}.badge-row,.chip-list,.legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}.incident-badges{margin-bottom:18px}.incident-state-grid+.kv-grid{margin-top:16px}.chip-list span,.legend-item{border-radius:999px;padding:7px 10px;border:1px solid var(--line);background:#eef7f10f;color:var(--muted-strong);font-size:.82rem;font-weight:700}.legend-item{min-height:32px;display:inline-flex;align-items:center;gap:7px;cursor:pointer}.legend-item.inactive{opacity:.48}.legend-swatch{width:10px;height:10px;flex:0 0 auto;border-radius:50%}.config-form{margin-top:16px}.config-editor{display:grid;gap:16px}.diff-panel{margin-top:0}.readonly-security .chip-list span{background:var(--info-soft);border-color:#8fb7ff38;color:#c9dbff}.command-summary,.incident-card{display:grid;gap:8px;margin-top:14px;padding:14px}.command-lanes,.incident-state-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.command-lane,.incident-state-grid article{min-height:104px;display:grid;align-content:start;gap:8px;padding:14px}.command-lane strong,.incident-state-grid strong{font-size:1.65rem}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.chart-card.wide{grid-column:1 / -1}.chart-note{margin:-4px 0 10px;color:var(--muted);font-size:.88rem}.chart-card svg{width:100%;height:auto;min-height:180px;display:block;border-radius:8px;background:linear-gradient(rgba(238,247,241,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(238,247,241,.06) 1px,transparent 1px),#101816;background-size:100% 45px,80px 100%}.chart-card polyline{filter:drop-shadow(0 2px 5px rgba(0,0,0,.35))}.chart-card circle{filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}.technical-details,.inline-details{color:var(--muted-strong)}.technical-details{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.technical-details summary,.inline-details summary{cursor:pointer;color:var(--accent-strong);font-weight:800}.technical-details[open] summary,.inline-details[open] summary{margin-bottom:10px}.inline-details dl{min-width:220px}@media (max-width: 1180px){.cockpit-grid,.metrics-six,.status-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 860px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;min-height:auto;padding:14px;gap:14px}.sidebar-top{gap:12px}.nav{display:flex;gap:8px;margin:0 -4px;padding:0 4px 4px;overflow-x:auto;scrollbar-width:thin}.nav a{flex:0 0 auto;white-space:nowrap}.metrics,.metrics-six,.kv-grid,.status-strip,.split-grid,.chart-grid,.form-grid,.cockpit-grid,.command-lanes,.incident-state-grid{grid-template-columns:1fr}.chart-card.wide{grid-column:auto}.page-head,.row,.button-row{align-items:flex-start;flex-direction:column}.page-head>button,.button-row,.button-row>*,.form-grid button,.form-grid p{width:100%}.button-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.workspace{padding:14px;gap:14px}.panel,.subpanel{padding:14px}.metric{min-height:96px}.metric strong{font-size:1.45rem}.chart-card svg{min-height:220px}.table-wrap{border-radius:6px}}@media (max-width: 520px){.login-screen{padding:14px}.login-card{padding:20px}.brand-mark{width:38px;height:38px}h1{font-size:1.48rem}h2{font-size:1.05rem}.selected-context{padding:12px}.cockpit-card,.command-lane,.incident-state-grid article{min-height:96px}.button-row{grid-template-columns:1fr}.pill{max-width:100%;white-space:normal}.table-wrap>table{min-width:660px}}
