:root{--bg:#f4f6f8;--panel:#fff;--ink:#17202a;--muted:#677381;--line:#dfe4e8;--nav:#101c26;--nav-2:#182936;--accent:#159a82;--accent-soft:#dff5f0;--danger:#c5434d;--danger-soft:#fbe9ea;--warning:#a56815;--warning-soft:#fff2d8;--info:#346a9a;--info-soft:#e8f1fa;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0}body{font-size:14px;line-height:1.5}a{color:inherit}button,input,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #159a8247}.app-shell{grid-template-columns:238px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#dbe5eb;flex-direction:column;height:100vh;min-height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 9px 23px;display:flex}.brand-mark{background:var(--accent);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-size:18px;font-weight:800;display:grid}.brand strong,.brand small,.sidebar footer strong,.sidebar footer small{display:block}.brand strong{color:#fff;letter-spacing:.01em;font-size:16px}.brand small{color:#8498a6;font-size:11px}.sidebar nav{gap:3px;display:grid}.sidebar nav a,.nav-disabled{color:#b9c7d0;border-radius:7px;align-items:center;gap:10px;min-height:39px;padding:8px 10px;text-decoration:none;display:flex}.sidebar nav a:hover{background:var(--nav-2);color:#fff}.sidebar nav a>span,.nav-disabled>span{color:#6f8998;letter-spacing:.04em;width:25px;font-size:10px;font-weight:800}.nav-disabled{opacity:.48;cursor:not-allowed}.nav-disabled em{border:1px solid #49606f;border-radius:10px;margin-left:auto;padding:1px 5px;font-size:9px;font-style:normal}.nav-divider{color:#607583;text-transform:uppercase;letter-spacing:.14em;margin:16px 10px 5px;font-size:9px;font-weight:800}.sidebar footer{border-top:1px solid #2b3c47;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding:17px 9px 0;display:flex}.sidebar footer strong{color:#fff;text-overflow:ellipsis;max-width:115px;overflow:hidden}.sidebar footer small{color:#8195a2;font-size:10px}.text-button{color:#8fbdb5;cursor:pointer;background:0 0;border:0;padding:5px 0}.main-content{min-width:0;padding:34px clamp(20px,4vw,58px) 70px}.environment-banner{background:var(--info-soft);color:#285a80;border:1px solid #bed8e9;border-radius:8px;align-items:center;gap:10px;margin:-12px 0 22px;padding:9px 12px;font-size:12px;display:flex}.environment-banner strong{letter-spacing:.08em}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin:0 0 25px;display:flex}.page-header h1{letter-spacing:-.035em;margin:0;font-size:clamp(25px,3vw,34px)}.page-header p{color:var(--muted);max-width:720px;margin:5px 0 0}.page-actions{align-items:center;gap:10px;display:flex}.generated{color:var(--muted);white-space:nowrap;font-size:12px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px;display:grid}.metric-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;flex-direction:column;min-height:120px;padding:17px;display:flex;box-shadow:0 1px 2px #1327350a}.metric-card>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:650}.metric-card>strong{letter-spacing:-.04em;margin-top:auto;font-size:30px}.metric-card>small{color:var(--muted);margin-top:2px}.metric-warning{border-top:3px solid #e8b44f}.metric-danger{border-top:3px solid var(--danger)}.two-column{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:18px;display:grid}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin-bottom:18px;overflow:hidden;box-shadow:0 1px 2px #1327350a}.panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:54px;padding:12px 17px;display:flex}.panel h2{letter-spacing:-.01em;margin:0;font-size:15px}.panel-body{padding:17px}.panel-body.flush{padding:0}.badge{letter-spacing:.035em;white-space:nowrap;border-radius:99px;align-items:center;min-height:22px;padding:2px 8px;font-size:10px;font-weight:800;display:inline-flex}.badge-good{background:var(--accent-soft);color:#08715e}.badge-bad{background:var(--danger-soft);color:#a22b35}.badge-warn{background:var(--warning-soft);color:#855109}.badge-info{background:var(--info-soft);color:#295a85}.badge-neutral{color:#5f6971;background:#edf0f2}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:720px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.065em;text-align:left;background:#fafbfb;font-size:10px}th,td{border-bottom:1px solid var(--line);vertical-align:top;padding:11px 13px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcfb}td code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.table-link{color:#087966;font-weight:700;text-decoration:none}.table-link:hover{text-decoration:underline}.muted{color:var(--muted)}.error-code{color:#9c3038;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.health-list{gap:0;display:grid}.health-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(130px,1fr) auto;align-items:center;gap:12px;padding:11px 0;display:grid}.health-row:last-child{border-bottom:0}.health-row small{color:var(--muted);display:block}.incident-list{gap:11px;display:grid}.incident{border-left:3px solid var(--warning);padding:3px 0 3px 12px}.incident-high{border-left-color:var(--danger)}.incident strong,.incident small{display:block}.incident small{color:var(--muted)}.filters{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:9px;margin-bottom:14px;padding:13px;display:grid}input,select{width:100%;color:var(--ink);background:#fff;border:1px solid #cbd3d8;border-radius:7px;padding:9px 10px}label>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 4px;font-size:10px;font-weight:750;display:block}.button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:7px;justify-content:center;align-items:center;min-height:36px;padding:7px 13px;font-weight:700;text-decoration:none;display:inline-flex}.button:hover{filter:brightness(.96)}.button:disabled{cursor:not-allowed;opacity:.45}.button.secondary{color:#276050;background:#fff;border-color:#a8c9c1}.button.danger{color:#9e2e37;background:#fff;border-color:#dfa6aa}.button.ghost{color:var(--muted);background:0 0;border-color:#0000}.filters .button{align-self:end}.result{background:var(--accent-soft);color:#096c5b;border:1px solid #a9dcd1;border-radius:8px;margin-bottom:14px;padding:10px 13px}.result-error{background:var(--danger-soft);color:#952d35;border-color:#efbfc2}.empty-state,.error-state{text-align:center;color:var(--muted);padding:50px 22px}.empty-state strong,.error-state strong{color:var(--ink);font-size:16px}.empty-state p,.error-state p{max-width:520px;margin:5px auto 15px}.definition-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;margin:0;display:grid}.definition-list>div{border-bottom:1px solid var(--line);grid-template-columns:145px minmax(0,1fr);gap:10px;padding:10px 0;display:grid}.definition-list dt{color:var(--muted)}.definition-list dd{overflow-wrap:anywhere;margin:0}.profile-stack{gap:12px;display:grid}.profile{border:1px solid var(--line);border-radius:8px;padding:14px}.profile>header{justify-content:space-between;gap:15px;margin-bottom:10px;display:flex}.profile h3{margin:0;font-size:14px}.profile p{color:var(--muted);margin:2px 0 0}.confirm-action{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.confirm-action>span{color:var(--danger);font-size:12px;font-weight:650}.state-machine{align-items:center;gap:5px;padding:5px 0 10px;display:flex;overflow-x:auto}.state-fragment{display:contents}.state-node{white-space:nowrap;background:#eef1f3;border-radius:7px;padding:8px 10px;font-size:11px;font-weight:700}.state-arrow{color:#a6b0b7}.pagination{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 13px;display:flex}.pagination div{gap:8px;display:flex}.pagination a{color:#087966;font-weight:700;text-decoration:none}.login-page{background:radial-gradient(circle at 20% 10%, #dcece8 0, transparent 38%), var(--bg);place-items:center;min-height:100vh;padding:22px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:13px;width:min(410px,100%);padding:30px;box-shadow:0 18px 50px #172a341c}.login-card .brand-mark{margin-bottom:20px}.login-card h1{letter-spacing:-.03em;margin:0;font-size:28px}.login-card>p{color:var(--muted);margin:5px 0 22px}.login-card form{gap:14px;display:grid}.login-card .button{width:100%;margin-top:5px}.login-error{color:#9e2e37;background:var(--danger-soft);border-radius:7px;padding:9px 11px}.fatal-error{text-align:center;place-content:center;justify-items:center;min-height:70vh;padding:30px;display:grid}.fatal-error strong{font-size:20px}.fatal-error p{color:var(--muted)}@media (max-width:1050px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.two-column{grid-template-columns:1fr}}@media (max-width:720px){.app-shell{display:block}.sidebar{height:auto;min-height:0;padding:13px;position:static}.brand{padding-bottom:12px}.sidebar nav{padding-bottom:7px;display:flex;overflow-x:auto}.sidebar nav a,.nav-disabled{flex:none;min-height:34px;padding:6px 9px}.sidebar nav a>span,.nav-disabled>span,.nav-divider,.nav-disabled em{display:none}.sidebar footer{margin-top:7px;padding-top:10px}.main-content{padding:23px 14px 50px}.page-header{display:block}.page-actions{margin-top:10px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:105px}.metric-card>strong{font-size:25px}.filters{grid-template-columns:1fr 1fr}.definition-list{grid-template-columns:1fr}.definition-list>div{grid-template-columns:120px minmax(0,1fr)}}@media (max-width:430px){.metric-grid,.filters{grid-template-columns:1fr}.generated{white-space:normal}}
