:root{color-scheme:light;font-family:Segoe UI Variable,Segoe UI,sans-serif;color:#172133;background:#f3f5f7;font-synthesis:none;--navy:#111c2d;--navy-2:#17263b;--blue:#2e6bf6;--cyan:#16b8c4;--red:#df4b55;--green:#1d9a74;--amber:#d98d20;--line:#e3e7eb;--muted:#6c7889}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#f7f8fa,#f0f3f6 65%,#eef6f5)}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:244px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:24px 16px;background:var(--navy);color:#fff;display:flex;flex-direction:column;z-index:40;overflow:hidden}.sidebar:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:#1a777f33;filter:blur(5px);bottom:-105px;right:-90px}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 30px;position:relative;z-index:1}.brand-mark{width:38px;height:38px;border-radius:11px;display:grid;grid-template-columns:1fr 1fr;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan));box-shadow:0 8px 22px #0e111b66;overflow:hidden;font-size:12px;font-weight:800}.brand-mark span:last-child{opacity:.78}.brand strong,.brand small{display:block}.brand strong{font-size:15px;letter-spacing:-.2px}.brand small{color:#97a7bb;font-size:10px;margin-top:2px;letter-spacing:.35px}nav{display:flex;flex-direction:column;gap:5px;position:relative;z-index:1}nav button{width:100%;height:44px;border:0;border-radius:10px;color:#93a4b8;background:transparent;display:flex;align-items:center;gap:12px;padding:0 13px;font-weight:600;font-size:13px;transition:.18s ease}nav button:hover{color:#fff;background:#ffffff0d}nav button svg:last-child{margin-left:auto}nav .nav-active{color:#fff;background:#ffffff12;box-shadow:inset 3px 0 0 var(--cyan)}.sidebar-info{margin-top:auto;position:relative;z-index:1;padding:13px;background:#ffffff0a;border:1px solid #ffffff0c;border-radius:12px;display:flex;gap:10px;color:#6de0dc}.sidebar-info strong,.sidebar-info span{display:block}.sidebar-info strong{color:#d8e2ed;font-size:11px}.sidebar-info span{color:#8192a6;font-size:9px;margin-top:3px}main{min-width:0}.content{width:min(1420px,100%);margin:0 auto;padding:38px 42px 56px}.mobile-header{display:none}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:27px}.page-heading h1{font-size:29px;line-height:1.18;letter-spacing:-1px;margin:4px 0 6px}.page-heading p{margin:0;color:var(--muted);font-size:13px}.eyebrow{display:block;color:var(--cyan);text-transform:uppercase;font-size:9px;letter-spacing:1.45px;font-weight:800}.heading-actions,.download-menu,.modal-actions,.empty-actions{display:flex;gap:9px;align-items:center}.button-primary,.button-secondary,.icon-button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;transition:.18s ease}.button-primary,.button-secondary{height:42px;padding:0 17px;border-radius:10px;font-size:12px;font-weight:700}.button-primary{background:var(--blue);color:#fff;box-shadow:0 8px 22px #2e6bf633}.button-primary:hover:not(:disabled){transform:translateY(-1px);background:#225ee7;box-shadow:0 10px 24px #2e6bf64a}.button-secondary{background:#fff;color:#344054;border:1px solid var(--line)}.button-secondary:hover:not(:disabled){border-color:#bfc9d3;background:#fafbfc}button:disabled{cursor:not-allowed;opacity:.48}.icon-button{width:42px;height:42px;border-radius:10px;color:#526173;background:#fff;border:1px solid var(--line)}.panel{background:#fff;border:1px solid #e7eaed;border-radius:16px;box-shadow:0 9px 30px #2332460a}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:17px}.summary-card{padding:18px;display:flex;align-items:center;gap:14px;min-width:0;background:#fff;border:1px solid #e7eaed;border-radius:14px;box-shadow:0 7px 24px #23324608;position:relative;overflow:hidden}.summary-card:after{content:"";width:5px;height:35px;border-radius:8px;position:absolute;right:-2px;top:calc(50% - 17px);opacity:.65}.summary-icon{flex:0 0 auto;width:38px;height:38px;border-radius:11px;display:grid;place-items:center}.summary-card span,.summary-card small,.summary-card strong{display:block}.summary-card span{color:var(--muted);font-size:10px;font-weight:600}.summary-card strong{font-size:24px;line-height:1.1;margin:3px 0 2px;letter-spacing:-.6px}.summary-card small{font-size:9px;color:#99a2ae}.tone-blue .summary-icon{background:#edf3ff;color:var(--blue)}.tone-blue:after{background:var(--blue)}.tone-red .summary-icon{background:#fff0f1;color:var(--red)}.tone-red:after{background:var(--red)}.tone-green .summary-icon{background:#ebf8f3;color:var(--green)}.tone-green:after{background:var(--green)}.tone-amber .summary-icon{background:#fff6e8;color:var(--amber)}.tone-amber:after{background:var(--amber)}.charts-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:17px;margin-bottom:17px}.chart-panel{min-width:0;overflow:hidden}.chart-metric-select{height:34px;min-width:150px;display:flex;align-items:center;position:relative;border:1px solid var(--line);border-radius:9px;background:#fff;color:#5d6a7a}.chart-metric-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:100%;border:0;background:transparent;padding:0 29px 0 10px;outline:0;color:inherit;font-size:10px;font-weight:700}.chart-metric-select svg{position:absolute;right:9px;pointer-events:none}.chart-legend,.status-legend{display:flex;align-items:center;gap:16px;color:#7e8997;font-size:9px}.chart-legend{padding:0 22px 10px}.chart-legend span,.status-legend span{display:flex;align-items:center;gap:5px}.chart-legend i,.status-legend i{width:9px;height:9px;border-radius:3px}.chart-legend .fort{background:var(--blue)}.chart-legend .fleet{background:var(--cyan)}.value-chart-list{border-top:1px solid #edf0f2}.value-chart-row{width:100%;min-height:58px;display:grid;grid-template-columns:minmax(120px,180px) 1fr 54px;align-items:center;gap:13px;padding:9px 22px;border:0;border-bottom:1px solid #edf0f2;background:#fff;text-align:left;color:#344054;cursor:pointer}.value-chart-row:last-child{border-bottom:0}.value-chart-row:hover{background:#f8fbff}.value-chart-row>strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.paired-bars{display:grid;gap:5px}.paired-bars>div{height:14px;position:relative;background:#f2f4f7;border-radius:4px;overflow:hidden}.paired-bars i{display:block;height:100%;min-width:2px;border-radius:4px;opacity:.9}.paired-bars .fort{background:var(--blue)}.paired-bars .fleet{background:var(--cyan)}.paired-bars span{position:absolute;right:5px;top:1px;font-size:8px;font-weight:800;color:#243247;text-shadow:0 1px 2px #fff}.value-chart-row>b{text-align:right;font-size:10px}.chart-bad{color:var(--red)}.chart-missing{color:var(--amber)}.chart-ok{color:var(--green)}.chart-note{margin:0;padding:10px 22px 13px;color:#8c97a5;font-size:8px;border-top:1px solid #edf0f2}.status-chart-list{padding:0 22px 8px}.status-chart-row{display:grid;grid-template-columns:minmax(112px,1fr) minmax(85px,1fr) 38px;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #edf0f2}.status-chart-row:first-child{border-top:0}.status-chart-row strong,.status-chart-row span{display:block}.status-chart-row strong{font-size:10px}.status-chart-row span{font-size:8px;color:#8a96a5;margin-top:2px}.status-chart-row>b{text-align:right;font-size:11px;color:var(--red)}.status-stack{height:8px;border-radius:9px;overflow:hidden;display:flex;background:#edf0f3}.status-stack i{height:100%}.status-stack .bad,.status-legend .bad{background:var(--red)}.status-stack .missing,.status-legend .missing{background:var(--amber)}.status-stack .ok,.status-legend .ok{background:var(--green)}.status-legend{padding:8px 22px 17px;border-top:1px solid #edf0f2;flex-wrap:wrap}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px 16px}.panel-heading h2{margin:4px 0 0;font-size:16px;letter-spacing:-.3px}.table-tools{display:flex;align-items:center;gap:8px}.search,.filter{height:36px;border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;color:#8a96a5;background:#fafbfc}.search{padding:0 10px;gap:7px}.search input{border:0;outline:0;background:transparent;width:130px;font-size:11px;color:#283548}.filter{padding:0 8px 0 10px;gap:6px}.filter select{border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;outline:0;font-size:11px;color:#526173;padding-right:2px;cursor:pointer}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:870px}th{color:#8994a3;text-align:left;font-size:9px;letter-spacing:.55px;text-transform:uppercase;font-weight:700;background:#fafbfc;border-top:1px solid #edf0f2;border-bottom:1px solid #edf0f2;padding:10px 16px}td{border-bottom:1px solid #edf0f2;padding:12px 16px;font-size:11px;color:#384659}tbody tr{cursor:pointer;outline:0;transition:.16s ease}tbody tr:hover,tbody tr:focus{background:#f8fbff}tbody tr:last-child td{border-bottom:0}.metric-cell{display:flex;align-items:center;gap:10px;min-width:180px}.metric-cell strong,.metric-cell small{display:block}.metric-cell strong{color:#263346;font-size:11px}.metric-cell small{color:#8a96a5;font-size:9px;margin-top:2px}.metric-icon{width:32px;height:32px;flex:0 0 auto;display:grid;place-items:center;color:var(--blue);background:#eef3ff;border-radius:9px}.number-cell{font-weight:700;color:#293649;white-space:nowrap}.number-cell small{color:#9aa3ae;font-weight:500}.delta-up{color:var(--red);font-weight:700}.delta-down{color:#337394;font-weight:700}.variance{min-width:82px}.variance>span{font-weight:700}.variance-track{height:3px;width:72px;background:#edf0f3;border-radius:4px;margin-top:5px;overflow:hidden}.variance-track i{display:block;height:100%;border-radius:4px}.variance-track .bad{background:var(--red)}.variance-track .good{background:var(--green)}.status{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:99px;font-size:9px;font-weight:800;white-space:nowrap}.status-ok{background:#eaf8f2;color:var(--green)}.status-significant{background:#fff0f1;color:var(--red)}.status-missing{background:#fff5e4;color:var(--amber)}.recent-panel{margin-top:17px}.run-list{display:flex;flex-direction:column}.run-row{width:100%;border:0;border-top:1px solid #edf0f2;background:#fff;min-height:66px;padding:11px 20px;display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:center;gap:13px;text-align:left;color:#667386;transition:.16s ease}.run-row:hover,.run-row.current{background:#f8fbff}.run-row:last-child{border-radius:0 0 16px 16px}.run-mode{width:34px;height:34px;border-radius:9px;display:grid;place-items:center}.mode-compare{background:#edf3ff;color:var(--blue)}.mode-probe{background:#fff5e5;color:var(--amber)}.mode-demo{background:#ecf8f6;color:var(--green)}.run-main strong,.run-main span{display:block}.run-main strong{font-size:11px;color:#2d3a4c}.run-main span{font-size:9px;color:#8b96a4;margin-top:3px}.run-main .run-error-text{color:var(--red);white-space:normal;line-height:1.35}.run-state{padding:5px 8px;border-radius:99px;font-size:9px;font-weight:800;display:flex;align-items:center;gap:5px}.state-completed{background:#eaf8f2;color:var(--green)}.state-running{background:#edf3ff;color:var(--blue)}.state-failed{background:#fff0f1;color:var(--red)}.no-rows{color:#8b96a4;font-size:11px;text-align:center;padding:25px}.empty-state{min-height:510px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.empty-state h2{font-size:20px;margin:18px 0 7px}.empty-state>p{color:var(--muted);font-size:12px;max-width:440px;line-height:1.65;margin:0 0 20px}.empty-visual{width:260px;height:145px;position:relative;border-radius:20px;background:linear-gradient(135deg,#f3f7ff,#eef9f7);overflow:hidden}.empty-visual:before,.empty-visual:after{content:"";position:absolute;border:1px dashed #aec3db55;border-radius:50%;width:190px;height:190px;left:34px;top:-23px}.empty-visual:after{width:125px;height:125px;left:67px;top:10px}.scan-line{position:absolute;left:20px;right:20px;top:71px;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);box-shadow:0 0 12px var(--cyan);z-index:2}.center-check{position:absolute;display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:var(--navy);color:#6de0dc;left:101px;top:43px;z-index:3;box-shadow:0 12px 26px #111c2d38}.mini-card{position:absolute;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px;width:92px;padding:7px;border-radius:9px;background:#fff;box-shadow:0 8px 22px #273d5a1c;text-align:left;font-size:8px;z-index:4}.mini-card svg{color:var(--blue);grid-row:1/3}.mini-card b{font-size:8px}.mini-card.one{left:8px;top:16px;transform:rotate(-4deg)}.mini-card.two{right:7px;bottom:15px;transform:rotate(3deg)}.running-banner{min-height:94px;padding:19px 22px;margin-bottom:17px;display:grid;grid-template-columns:auto 1fr minmax(170px,28%);align-items:center;gap:14px}.pulse-ring{width:44px;height:44px;border-radius:13px;background:#edf3ff;color:var(--blue);display:grid;place-items:center}.running-banner strong,.running-banner span{display:block}.running-banner strong{font-size:12px}.running-banner span{font-size:10px;color:var(--muted);margin-top:4px}.progress{height:5px;background:#edf0f3;border-radius:5px;overflow:hidden}.progress i{display:block;width:35%;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--blue),var(--cyan));animation:progress 1.5s ease-in-out infinite}@keyframes progress{0%{transform:translate(-100%)}to{transform:translate(350%)}}.spin{animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.progress.determinate i{animation:none;transform:none;transition:width .3s ease}.drawer-scrim,.nav-scrim{position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#0d172655;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:80}.drawer{position:fixed;z-index:90;right:0;top:0;bottom:0;width:min(430px,94vw);background:#fff;box-shadow:-20px 0 50px #17213326;padding:27px;overflow:auto;animation:drawer-in .2s ease-out}@keyframes drawer-in{0%{transform:translate(100%)}}.drawer-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.drawer-top h2{font-size:20px;margin:4px 0 3px}.drawer-top p{font-size:11px;color:var(--muted);margin:0}.source-compare{display:grid;grid-template-columns:1fr 70px 1fr;align-items:center;background:#f7f9fb;border:1px solid #edf0f2;border-radius:14px;margin:18px 0;padding:16px 13px;text-align:center}.source-compare span,.source-compare strong,.source-compare small{display:block}.source-compare span{font-size:9px;color:var(--muted)}.source-compare strong{font-size:19px;margin:4px 0}.source-compare small{font-size:9px;color:#9aa4af}.source-divider span{display:inline-block;color:var(--red);background:#fff0f1;border-radius:99px;padding:4px 7px;font-size:9px;font-weight:800}.source-divider i{display:block;height:1px;background:#d9dfe5;margin:5px -5px 0}.drawer-section{border-top:1px solid #edf0f2;padding-top:18px;margin-top:18px}.drawer-section h3{font-size:11px;margin:0 0 10px;display:flex;align-items:center;gap:7px}.drawer-section h3 svg{color:var(--blue)}.drawer-section>p{font-size:11px;line-height:1.65;color:#596779;margin:0}.threshold-row{display:flex;justify-content:space-between;align-items:center;font-size:10px;padding:8px 0;border-bottom:1px solid #f0f2f4}.audit-card{padding:12px;border:1px solid #e8ecef;border-radius:11px;margin-top:8px}.audit-card>div{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:6px}.audit-card b{font-size:10px}.audit-card small{grid-column:2;color:#8a96a5;font-size:8px}.audit-card>strong{display:block;font-size:14px;margin:10px 0 3px}.audit-card>p{font-size:9px;color:#7d8997;margin:0}.source-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.source-dot.fort{background:var(--blue)}.source-dot.calc{background:var(--cyan)}.muted-box{padding:12px;border-radius:10px;background:#f7f9fb;color:#7c8897;font-size:10px;line-height:1.5}.modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0d172666;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px}.modal{width:min(500px,100%);background:#fff;border-radius:18px;padding:28px;position:relative;box-shadow:0 25px 70px #111c2d38}.modal-close{position:absolute;right:18px;top:18px}.modal-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#edf3ff;color:var(--blue)}.modal h2{margin:17px 0 5px;font-size:21px}.modal>p{color:var(--muted);font-size:11px;margin:0 0 18px}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:#f1f3f5;border-radius:10px;margin-bottom:17px}.segmented button{border:0;background:transparent;border-radius:8px;height:38px;display:flex;align-items:center;justify-content:center;gap:7px;color:#6d7988;font-size:10px;font-weight:700}.segmented .selected{background:#fff;color:var(--blue);box-shadow:0 3px 12px #1b2c420d}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.field-grid label span{display:block;font-size:9px;color:#687588;font-weight:700;margin-bottom:6px}.field-grid input{width:100%;height:41px;border:1px solid var(--line);border-radius:9px;padding:0 10px;color:#344054;outline:0;font-size:10px}.field-grid input:focus{border-color:#9db8fa;box-shadow:0 0 0 3px #2e6bf611}.modal-actions{justify-content:flex-end;margin-top:22px}.inline-warning{display:flex;align-items:flex-start;gap:8px;padding:11px 12px;margin-top:14px;background:#fff5e6;color:#9a661c;border-radius:9px;font-size:10px;line-height:1.45}.run-modal{width:min(720px,100%);max-height:calc(100vh - 40px);overflow:auto}.run-selection-section{margin-top:18px}.selection-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.selection-heading strong,.selection-heading span{display:block}.selection-heading strong{font-size:11px}.selection-heading span{font-size:8px;color:#8a96a5;margin-top:2px}.selection-heading b{font-size:9px;color:var(--blue);background:#edf3ff;padding:5px 8px;border-radius:99px}.selection-heading button{border:0;background:transparent;color:var(--blue);font-size:9px;font-weight:800;padding:5px 0;cursor:pointer}.report-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.selection-card{min-width:0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:11px;background:#fafbfc;cursor:pointer}.selection-card.selected{border-color:#9db8fa;background:#f3f7ff;box-shadow:0 0 0 2px #2e6bf60b}.selection-card input,.object-selector input{position:absolute;opacity:0;pointer-events:none}.selection-icon{width:31px;height:31px;border-radius:8px;background:#edf3ff;color:var(--blue);display:grid;place-items:center}.selection-card strong,.selection-card small,.object-selector strong,.object-selector small{display:block}.selection-card strong{font-size:10px}.selection-card small{font-size:8px;color:#8a96a5;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selection-card i,.object-selector i{width:20px;height:20px;border-radius:6px;background:#dfe5eb;color:#fff;display:grid;place-items:center;font-style:normal}.selection-card.selected i,.object-selector .selected i{background:var(--blue)}.object-selector{display:grid;grid-template-columns:1fr 1fr;gap:6px;max-height:205px;overflow:auto;padding:2px}.object-selector label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:9px 10px;border:1px solid #edf0f2;border-radius:9px;background:#fff;cursor:pointer}.object-selector label.selected{border-color:#b9caf5;background:#f7f9ff}.object-selector strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.object-selector small{font-size:7px;color:#929dab;margin-top:2px}.run-selection-summary{margin-right:auto;color:#7d8997;font-size:9px;font-weight:700}.preflight-box{margin-top:15px;border:1px solid #e3e8ed;border-radius:12px;background:#fafcfe;overflow:hidden}.preflight-head{padding:12px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e8edf1}.preflight-head strong,.preflight-head span{display:block}.preflight-head strong{font-size:10px}.preflight-head span{font-size:8px;color:#7f8b99;margin-top:3px}.preflight-head>b{font-size:8px;padding:5px 8px;border-radius:99px;white-space:nowrap}.preflight-ok{color:var(--green);background:#eaf8f2}.preflight-warn{color:#9a661c;background:#fff3db}.preflight-bad{color:var(--red);background:#fff0f1}.preflight-table{max-height:190px;overflow:auto}.preflight-row{display:grid;grid-template-columns:minmax(150px,1.4fr) repeat(3,minmax(80px,1fr));align-items:center;border-bottom:1px solid #edf1f4;padding:8px 12px;gap:8px}.preflight-row:last-child{border:0}.preflight-row>strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preflight-header{position:sticky;top:0;background:#f4f7f9;color:#8793a1;text-transform:uppercase;font-size:7px;z-index:1}.preflight-cell{font-size:8px;font-weight:700;display:flex;align-items:center;gap:4px}.preflight-cell.ready{color:var(--green)}.preflight-cell.warning{color:#a56a14}.preflight-cell.blocked{color:var(--red)}.diagnostics-panel{margin:17px 0}.diagnostics-panel>.panel-heading>b{min-width:28px;height:28px;border-radius:9px;background:#fff3db;color:#9a661c;display:grid;place-items:center;font-size:11px}.diagnostics-list{border-top:1px solid #edf0f2}.diagnostics-list>div{display:flex;align-items:flex-start;gap:10px;padding:12px 18px;border-bottom:1px solid #edf0f2}.diagnostics-list>div:last-child{border:0}.diagnostics-list svg{color:var(--amber);margin-top:1px;flex:0 0 auto}.diagnostics-list strong,.diagnostics-list span{display:block}.diagnostics-list strong{font-size:10px}.diagnostics-list span{font-size:9px;color:#748091;line-height:1.5;margin-top:3px}.failed-panel{display:flex;align-items:center;gap:13px;padding:18px 20px;color:var(--red);margin-bottom:17px}.failed-panel>div{flex:1}.failed-panel strong,.failed-panel span{display:block}.failed-panel strong{font-size:11px}.failed-panel span{font-size:9px;line-height:1.5;margin-top:3px}.run-progress-text{color:var(--blue)!important}.runs-table .run-row{grid-template-columns:auto minmax(240px,1fr) 90px 100px auto auto}.run-count{font-size:14px;font-weight:800;color:#344054;text-align:right}.run-count small{display:block;font-size:8px;color:#8b96a4;font-weight:500;margin-top:2px}.bad-count{color:var(--red)}.large-empty{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#9aa4b0}.large-empty h2{font-size:16px;color:#344054;margin:12px 0 4px}.large-empty p{font-size:10px;margin:0 0 16px}.counter-chip{height:38px;padding:0 13px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;color:#526173}.object-header,.object-row{display:grid;grid-template-columns:minmax(220px,1.5fr) 1fr 1fr 1fr;align-items:center;gap:15px;padding:12px 22px}.object-header{background:#fafbfc;border-radius:16px 16px 0 0;border-bottom:1px solid #edf0f2;color:#8a96a5;font-size:9px;text-transform:uppercase;letter-spacing:.5px}.object-row{border-bottom:1px solid #edf0f2;font-size:11px}.object-row:last-child{border:0}.object-name{display:flex;align-items:center;gap:11px}.object-name>span{width:34px;height:34px;border-radius:9px;background:#edf3ff;color:var(--blue);display:grid;place-items:center}.object-row code{font:600 11px Segoe UI Variable,Segoe UI,sans-serif;color:#526173}.sensor-state{color:#8b96a4;font-size:10px;display:flex;align-items:center;gap:5px}.settings-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:17px}.check-list{padding:0 22px 20px}.check-list>div{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #edf0f2}.check-list>div:last-child{border:0}.check-list strong,.check-list small{display:block}.check-list strong{font-size:10px}.check-list small{font-size:8px;color:#8c97a5;margin-top:3px}.check-ok,.check-warn{width:28px;height:28px;border-radius:8px;display:grid;place-items:center}.check-ok{background:#eaf8f2;color:var(--green)}.check-warn{background:#fff5e4;color:var(--amber)}.readiness{font-size:10px;font-weight:800;padding:5px 8px;border-radius:99px}.readiness.ready{background:#eaf8f2;color:var(--green)}.readiness.not-ready{background:#fff5e4;color:var(--amber)}.setup-card>.inline-warning{margin:0 22px 20px}.endpoint-card{padding-bottom:14px}.endpoint{margin:0 22px;padding:14px 0;display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;border-bottom:1px solid #edf0f2}.endpoint:last-child{border:0}.endpoint-logo{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:#fff;font-weight:800}.endpoint-logo.fort{background:var(--blue)}.endpoint-logo.calc{background:var(--cyan)}.endpoint strong,.endpoint span{display:block}.endpoint strong{font-size:10px}.endpoint span{font-size:8px;color:#8a96a5;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.endpoint i{width:8px;height:8px;border-radius:50%}.endpoint .online{background:var(--green);box-shadow:0 0 0 4px #1d9a7414}.endpoint .offline{background:#c7cdd5}.threshold-panel{margin-top:17px}.threshold-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid #edf0f2}.threshold-grid>div{padding:17px;border-right:1px solid #edf0f2;display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center}.threshold-grid>div:last-child{border:0}.threshold-grid strong,.threshold-grid small{display:block}.threshold-grid strong{font-size:9px}.threshold-grid small{font-size:7px;color:#8a96a5;margin-top:2px}.threshold-grid b{grid-column:1/3;font-size:12px;margin-top:4px}.threshold-grid em{display:block;color:#8a96a5;font-style:normal;font-size:8px;margin-top:3px}.toast{position:fixed;z-index:110;right:24px;top:20px;max-width:430px;background:#fff0f1;color:#9c3440;border:1px solid #f5cbd0;box-shadow:0 12px 32px #4b11192a;padding:11px 12px;border-radius:11px;display:flex;align-items:flex-start;gap:8px;font-size:10px}.toast span{flex:1;line-height:1.5}.toast button{border:0;background:transparent;color:inherit;padding:0}@media(max-width:1100px){.summary-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}.threshold-grid{grid-template-columns:repeat(3,1fr)}.threshold-grid>div:nth-child(3){border-right:0}.runs-table .run-row{grid-template-columns:auto minmax(200px,1fr) auto auto}.runs-table .run-count{display:none}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;transform:translate(-100%);width:244px;transition:.2s ease}.sidebar-open{transform:translate(0)}.nav-scrim{z-index:35}.mobile-header{height:64px;padding:0 16px;background:var(--navy);display:flex;align-items:center;justify-content:space-between;color:#fff}.mobile-header .brand{padding:0}.mobile-header .brand small{display:none}.mobile-header .icon-button{background:#ffffff0c;border-color:#ffffff16;color:#fff}.mobile-header>span{width:42px}.content{padding:25px 16px 40px}.page-heading{align-items:flex-start}.dashboard-heading{display:grid}.heading-actions{grid-row:2}.summary-grid{grid-template-columns:1fr 1fr}.table-tools{display:none}.panel-heading{padding:18px 16px 14px}.chart-legend{padding-left:16px}.value-chart-row{grid-template-columns:minmax(90px,120px) 1fr 44px;padding:9px 16px;gap:8px}.status-chart-list{padding:0 16px 8px}.status-legend{padding:8px 16px 15px}.running-banner{grid-template-columns:auto 1fr}.running-banner .progress{grid-column:1/3;width:100%}.recent-panel{display:none}.settings-grid{grid-template-columns:1fr}.threshold-grid{grid-template-columns:1fr 1fr}.threshold-grid>div:nth-child(2n){border-right:0}.object-header{display:none}.object-row{grid-template-columns:1fr 1fr;padding:14px 16px}.object-name{grid-column:1/3}.runs-table .run-row{grid-template-columns:auto 1fr auto}.runs-table .run-state{display:none}.field-grid{grid-template-columns:1fr}.modal{padding:23px}.report-selector,.object-selector{grid-template-columns:1fr}.run-selection-summary{display:none}.download-menu .button-secondary{font-size:0;width:42px;padding:0}.download-menu .button-secondary svg{margin:0}.empty-state{min-height:470px;padding:25px}.page-heading h1{font-size:25px}.preflight-row{grid-template-columns:minmax(115px,1.2fr) repeat(3,minmax(72px,1fr))}.preflight-head{align-items:flex-start;flex-direction:column}.failed-panel{align-items:flex-start;flex-wrap:wrap}.failed-panel .button-secondary{width:100%}}@media(max-width:430px){.summary-grid{grid-template-columns:1fr}.summary-card{padding:15px}.heading-actions{width:100%}.heading-actions>.button-primary{flex:1}.empty-actions{flex-direction:column;width:100%}.empty-actions button{width:100%}.threshold-grid{grid-template-columns:1fr}.threshold-grid>div{border-right:0}.page-heading>.button-primary{padding:0 12px}.runs-table .run-row{padding:10px 12px}.run-row>svg{display:none}}.loading-page,.wizard-page,.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.loading-page{flex-direction:column;gap:13px;color:#6c7889;font-size:12px}.auth-page{position:relative;overflow:hidden;background:var(--navy)}.auth-glow{position:absolute;border-radius:50%;filter:blur(3px)}.auth-glow.one{width:420px;height:420px;background:#2e6bf61b;top:-180px;left:-100px}.auth-glow.two{width:360px;height:360px;background:#16b8c419;right:-120px;bottom:-170px}.auth-card{width:min(410px,100%);position:relative;background:#fff;border-radius:20px;padding:30px;box-shadow:0 28px 80px #050b1555}.auth-card>.brand{padding:0 0 30px;color:#172133}.auth-card>.brand small{color:#7a8797}.auth-icon{width:48px;height:48px;border-radius:14px;background:#edf3ff;color:var(--blue);display:grid;place-items:center;margin-bottom:18px}.auth-card h1,.connection-wizard h1{font-size:24px;letter-spacing:-.7px;margin:5px 0 7px}.auth-card>p,.connection-wizard>p{font-size:11px;line-height:1.6;color:var(--muted);margin:0 0 20px}.auth-card form{display:flex;flex-direction:column;gap:13px}.auth-card label span,.connection-group label span,.wide-field>span,.stack-fields label span{display:block;font-size:9px;color:#687588;font-weight:700;margin-bottom:6px}.auth-card input,.connection-group input,.wide-field input,.stack-fields input,.stack-fields select{width:100%;height:42px;border:1px solid var(--line);border-radius:9px;padding:0 11px;outline:0;color:#344054;background:#fff;font-size:11px}.auth-card input:focus,.connection-group input:focus,.wide-field input:focus,.stack-fields input:focus,.stack-fields select:focus{border-color:#9db8fa;box-shadow:0 0 0 3px #2e6bf611}.auth-card form>.button-primary{width:100%;margin-top:4px}.auth-card>small{display:block;text-align:center;color:#9aa3ae;font-size:8px;margin-top:18px}.wizard-page{background:linear-gradient(135deg,#f2f5fa,#edf8f6)}.connection-wizard{width:min(840px,100%);background:#fff;border-radius:20px;padding:28px;box-shadow:0 20px 60px #2533491c;position:relative}.connection-wizard>.brand{position:absolute;right:22px;top:22px;padding:0;color:#172133}.connection-wizard>.brand small{color:#8692a1}.wizard-step{display:inline-flex;padding:5px 8px;background:#edf3ff;color:var(--blue);font-weight:800;font-size:8px;border-radius:99px;margin-bottom:18px}.connection-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.connection-group{border:1px solid #e8ecef;border-radius:14px;padding:17px;background:#fafbfc}.connection-title{display:flex;align-items:center;gap:10px;margin-bottom:15px}.connection-title strong,.connection-title small{display:block}.connection-title strong{font-size:11px}.connection-title small{font-size:8px;color:#8a96a5;margin-top:2px}.connection-group label{display:block;margin-top:10px}.connection-result{margin-top:11px;padding:8px 9px;border-radius:8px;display:flex;align-items:center;gap:7px;font-size:9px;line-height:1.35}.connection-result.ok{background:#eaf8f2;color:var(--green)}.connection-result.bad{background:#fff0f1;color:var(--red)}.connection-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.connection-settings{padding:22px}.object-modal{width:min(570px,100%)}.lookup-input{display:flex;gap:8px}.lookup-input input{flex:1}.lookup-results{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.lookup-results>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:11px;border-radius:10px;border:1px solid #e8ecef}.lookup-results .found{background:#f3fbf7;color:var(--green)}.lookup-results .missing{background:#fff9ef;color:var(--amber)}.lookup-results b,.lookup-results small{display:block}.lookup-results b{font-size:9px;color:#344054}.lookup-results small{font-size:8px;color:#7c8897;margin-top:2px}.object-fields{margin-top:15px}.object-header-wide,.object-row-wide{grid-template-columns:minmax(220px,1.5fr) .7fr .7fr 1fr 40px}.object-name small{display:block;color:#929dab;font-size:8px;margin-top:3px}.delete-button{width:31px;height:31px;border:0;border-radius:8px;background:transparent;color:#9aa4b0;display:grid;place-items:center}.delete-button:hover{background:#fff0f1;color:var(--red)}.readonly-settings{display:flex;align-items:center;gap:13px;padding:20px;color:var(--blue)}.readonly-settings strong,.readonly-settings span{display:block}.readonly-settings strong{font-size:11px;color:#344054}.readonly-settings span{font-size:9px;color:#8a96a5;margin-top:3px}.users-panel{margin-top:17px}.users-list{border-top:1px solid #edf0f2}.users-list>div{display:flex;align-items:center;gap:10px;padding:11px 21px;border-bottom:1px solid #edf0f2}.users-list>div:last-child{border:0}.user-avatar{width:32px;height:32px;border-radius:9px;background:#edf3ff;color:var(--blue);display:grid;place-items:center}.users-list strong,.users-list small{display:block}.users-list strong{font-size:10px}.users-list small{font-size:8px;color:#8b96a4;margin-top:2px}.you-chip{margin-left:auto;padding:4px 7px;border-radius:99px;background:#eaf8f2;color:var(--green);font-size:8px;font-weight:800}.small-modal{width:min(420px,100%)}.stack-fields{display:flex;flex-direction:column;gap:11px;margin-top:18px}@media(max-width:760px){.connection-columns,.lookup-results{grid-template-columns:1fr}.connection-wizard>.brand{display:none}.connection-wizard{padding:22px}.connection-actions{flex-direction:column}.connection-actions button{width:100%}.object-fields>span{display:none}.object-row-wide .delete-button{grid-column:2;grid-row:2;justify-self:end}}
