:root{--bg-deep:#0b0d14;--bg-dusk:#151221;--bg-plum:#21192d;--panel:#181422d6;--panel-elevated:#211a2eeb;--hairline:#ffe6c81c;--hairline-strong:#ffe6c838;--paper:#f3ead8;--paper-dim:#f3ead8a8;--paper-muted:#f3ead873;--peach:#ff9e8a;--amber:#ffb45c;--lamplight:#ffd593;--sage:#6ee7b7;--sky:#7dd3fc;--coral:#fb7185;--radius:12px;--radius-sm:8px}*{box-sizing:border-box}html,body{background:radial-gradient(1100px 540px at 14% -8%, #ff9e8a1f, transparent 62%), radial-gradient(900px 480px at 88% -4%, #ffb45c17, transparent 58%), linear-gradient(180deg, var(--bg-deep) 0%, var(--bg-dusk) 55%, #0e0e18 100%);min-height:100%;color:var(--paper);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13.5px;line-height:1.45}.mono{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace}code{color:var(--lamplight);font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.muted{color:var(--paper-muted)}.peach{color:var(--peach)}.amber{color:var(--amber)}.sage{color:var(--sage)}.coral{color:var(--coral)}.admin-shell{max-width:1480px;margin:0 auto;padding:0 22px 48px}.topbar{border-bottom:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 0 14px;display:flex}.brand-cluster{align-items:center;gap:14px;display:flex}.brand-divider{background:var(--hairline-strong);width:1px;height:26px}.brand-meta{flex-direction:column;gap:1px;display:flex}.brand-title{letter-spacing:.02em;color:var(--peach);font-size:13px;font-weight:600}.brand-sub{color:var(--paper-muted);font-size:11px}.topbar-right{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.conn-pill{border:1px solid var(--hairline);background:#100f1ab3;border-radius:999px;align-items:center;gap:7px;padding:6px 11px;font-size:11.5px;display:inline-flex}.conn-pill.ok{color:var(--sage);border-color:#6ee7b759}.conn-pill.err{color:var(--coral);border-color:#fb718573}.live-dot{background:var(--sage);width:8px;height:8px;box-shadow:0 0 10px var(--sage);border-radius:50%;display:inline-block}.connect-drawer{background:var(--panel-elevated);border:1px solid var(--hairline-strong);border-radius:var(--radius);margin-top:12px;padding:16px 18px}.connect-grid{grid-template-columns:1.2fr 1fr;gap:16px;display:grid}.connect-foot{border-top:1px solid var(--hairline);justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;display:flex}.tabbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 0 16px;display:flex}.tab-list{flex-wrap:wrap;gap:6px;display:flex}.tab-btn{border-radius:var(--radius-sm);color:var(--paper-dim);cursor:pointer;background:#ffffff06;border:1px solid #0000;align-items:center;gap:7px;padding:8px 13px;font-family:inherit;font-size:13px;font-weight:500;transition:all .14s;display:inline-flex}.tab-btn:hover{color:var(--paper);background:#ff9e8a14}.tab-btn.active{color:var(--paper);background:#ff9e8a26;border-color:#ff9e8a6b}.tab-kbd{color:var(--paper-muted);background:#ffe6c814;border-radius:4px;padding:1px 5px;font-family:JetBrains Mono,monospace;font-size:10px}.tabbar-meta{font-size:11.5px}.readiness-banner{border-radius:var(--radius);border:1px solid var(--hairline);background:var(--panel);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.readiness-banner.status-pass{border-color:#6ee7b752}.readiness-banner.status-warn{border-color:#ffb45c66}.readiness-banner.status-fail{border-color:#fb718573}.rb-left{align-items:center;gap:12px;display:flex}.rb-pill{letter-spacing:.05em;color:var(--peach);background:#ff9e8a29;border-radius:6px;padding:4px 8px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600}.rb-pill.ok{color:var(--sage);background:#6ee7b729}.rb-pill.fail{color:var(--coral);background:#fb71852e}.rb-sub{color:var(--paper-dim);font-size:12.5px}.rb-actions{flex-wrap:wrap;gap:8px;display:flex}.toast-pill{z-index:60;color:var(--paper);background:#241c33;border:1px solid #ff9e8a80;border-radius:999px;padding:10px 16px;font-weight:500;position:fixed;bottom:22px;right:24px;box-shadow:0 12px 30px #00000073}.error-banner{border-radius:var(--radius-sm);color:#fecdd3;background:#fb71851f;border:1px solid #fb718566;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;display:flex}.top-error{margin-top:12px}.tab-stack,.col-stack{flex-direction:column;gap:16px;display:flex}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.kpi-grid-6{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.two-col-wide-left{grid-template-columns:1.75fr 1fr;gap:16px;display:grid}.four-col{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.kpi-card,.panel,.mini-stat-card,.funnel-step{background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.kpi-card{flex-direction:column;gap:6px;padding:14px 16px;display:flex}.kpi-card.highlight-peach{background:linear-gradient(165deg, #ff9e8a17, var(--panel));border-color:#ff9e8a57}.kpi-card.highlight-sage{background:linear-gradient(165deg, #6ee7b712, var(--panel));border-color:#6ee7b74d}.kpi-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.kpi-label{color:var(--paper-dim);letter-spacing:.01em;font-size:11.5px;font-weight:600}.kpi-value{color:var(--paper);font-size:27px;font-weight:600;line-height:1.12}.kpi-foot{color:var(--lamplight);flex-wrap:wrap;gap:10px;font-size:11.5px;display:flex}.kpi-micro{color:var(--paper-muted);font-size:11px}.kpi-tag{color:var(--paper-dim);background:#ffe6c814;border-radius:999px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:10.5px}.kpi-tag.tag-ok{color:var(--sage);background:#6ee7b726}.kpi-tag.tag-fail{color:var(--coral);background:#fb71852e}.panel{padding:16px 18px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.panel-title{color:var(--paper);margin:0;font-size:15px;font-weight:600}.panel-sub{color:var(--paper-muted);margin:3px 0 0;font-size:12px}.btn{border-radius:var(--radius-sm);border:1px solid var(--hairline-strong);cursor:pointer;white-space:nowrap;padding:7px 12px;font-family:inherit;font-size:12.5px;font-weight:600;transition:all .14s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--peach);border-color:var(--peach);color:#16101c}.btn-primary:hover:not(:disabled){background:#ffb2a2}.btn-subtle{color:var(--paper);background:#ffe6c812}.btn-subtle:hover:not(:disabled){background:#ff9e8a29;border-color:#ff9e8a73}.btn-danger{color:#fecdd3;background:#fb718533;border-color:#fb71858c}.btn-ghost{color:var(--paper-dim);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){color:var(--peach);background:#ffffff0a}.seg-group{border:1px solid var(--hairline);border-radius:var(--radius-sm);background:#0b0d14a6;gap:2px;padding:2px;display:inline-flex}.seg-btn{color:var(--paper-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 10px;font-family:inherit;font-size:12px;font-weight:500}.seg-btn.active{color:var(--paper);background:#ff9e8a33}.input{border:1px solid var(--hairline-strong);width:100%;color:var(--paper);border-radius:var(--radius-sm);background:#0b0d14b8;padding:7px 10px;font-family:inherit;font-size:12.5px}.input:focus{border-color:var(--peach);outline:none}.input-sm{width:auto;padding:5px 9px;font-size:12px}.chart-controls{flex-wrap:wrap;gap:8px;display:flex}.chart-legend-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.legend-items,.chart-readout{align-items:center;gap:14px;font-size:12px;display:flex}.legend-item{color:var(--paper-dim);align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.timeseries-svg{width:100%;height:auto;display:block}.gauge-track{background:#ffe6c817;border-radius:999px;flex:1;height:7px;position:relative;overflow:hidden}.gauge-fill{border-radius:999px;height:100%;transition:width .25s}.gauge-marker{background:#ffd593bf;width:2px;position:absolute;top:0;bottom:0}.hbar-list{flex-direction:column;gap:9px;margin-top:10px;display:flex}.hbar-meta{justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.hbar-track{background:#ffe6c814;border-radius:999px;height:6px;overflow:hidden}.hbar-fill{border-radius:999px;height:100%}.waterfall-block{flex-direction:column;gap:12px;margin-bottom:14px;display:flex}.waterfall-track{background:#ffe6c814;border-radius:999px;gap:2px;height:12px;display:flex;overflow:hidden}.waterfall-legend{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.waterfall-item{border-radius:var(--radius-sm);background:#ffffff06;align-items:flex-start;gap:8px;padding:8px 10px;display:flex}.wf-title{color:var(--paper-dim);font-size:11.5px}.wf-val{margin-top:2px;font-size:12px}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:12.5px}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--paper-muted);border-bottom:1px solid var(--hairline);padding:8px 10px;font-size:11px;font-weight:600}.data-table td{vertical-align:middle;border-bottom:1px solid #ffe6c80f;padding:9px 10px}.data-table th.num,.data-table td.num{text-align:right}.data-table tbody tr:hover{background:#ffe6c808}.row-warn{background:#fb71850d}.town-cell{align-items:center;gap:8px;display:flex}.native-badge{color:var(--lamplight);background:#ffd5931a;border-radius:5px;padding:1px 6px;font-size:11px}.arch-pill{border-radius:999px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:10.5px}.arch-live{color:#ddd6fe;background:#c4b5fd26}.arch-cascade{color:var(--sky);background:#7dd3fc26}.mini-toggles{gap:5px;display:inline-flex}.chip-toggle{cursor:pointer;border:1px solid var(--hairline);border-radius:5px;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:10.5px}.chip-toggle.on{color:var(--sage);background:#6ee7b724;border-color:#6ee7b766}.chip-toggle.off{color:var(--coral);background:#fb718524;border-color:#fb718559}.funnel-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.funnel-step{padding:13px 15px}.funnel-val{margin:4px 0 2px;font-size:24px;font-weight:600}.modality-row{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.modality-pill{border-radius:var(--radius-sm);border:1px solid var(--hairline);background:#ffffff08;padding:10px 12px}.form-stack{flex-direction:column;gap:10px;display:flex}.field-row{gap:8px;display:flex}.field{color:var(--paper-dim);flex-direction:column;gap:5px;font-size:12px;display:flex}.hairline{border:none;border-top:1px solid var(--hairline);margin:4px 0}.callout-box{border-radius:var(--radius-sm);background:#6ee7b714;border:1px solid #6ee7b74d;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.callout-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.code-line{color:var(--lamplight);background:#00000061;border-radius:6px;padding:7px 9px;font-family:JetBrains Mono,monospace;font-size:11px;display:block;overflow-x:auto}.inline-gauge{align-items:center;gap:8px;display:flex}.stat-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.mini-stat{border-radius:var(--radius-sm);background:#ffffff06;flex-direction:column;gap:2px;padding:9px 10px;display:flex}.advisory-note{border-radius:var(--radius-sm);color:var(--paper-dim);background:#ffb45c17;border:1px solid #ffb45c42;margin-bottom:12px;padding:9px 12px;font-size:12px}.topology-flow{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.topo-node{border-radius:var(--radius-sm);border:1px solid var(--hairline);background:#ffffff06;flex-direction:column;flex:1;gap:3px;min-width:180px;padding:12px 14px;display:flex}.topo-node.highlight-peach{border-color:#ff9e8a66}.topo-arrow{color:var(--peach);align-items:center;font-weight:700;display:flex}.probe-strip{border-top:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.probe-chip{background:#ffffff08;border-radius:6px;padding:4px 9px;font-size:12px}.resource-cards{flex-direction:column;gap:8px;margin-top:10px;display:flex}.res-item{border-radius:var(--radius-sm);background:#ffffff06;border:1px solid #ffe6c80f;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;display:flex}.secret-row{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.secret-pill{border-radius:6px;padding:3px 8px;font-size:11px}.secret-pill.present{color:var(--sage);background:#6ee7b721}.secret-pill.missing{color:var(--paper-muted);background:#ffe6c80f}.bundle-list,.spend-list{flex-direction:column;gap:9px;margin-top:10px;display:flex}.bundle-meta{justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.slider-stack{flex-direction:column;gap:10px;margin:12px 0;display:flex}.slider-row{flex-direction:column;gap:4px;font-size:12px;display:flex}.slider-row input[type=range]{accent-color:var(--peach)}.cost-breakdown{border-radius:var(--radius-sm);background:#00000040;flex-direction:column;gap:6px;padding:12px;font-size:12px;display:flex}.cost-line{justify-content:space-between;display:flex}.cost-line.total{border-top:1px solid var(--hairline);margin-top:4px;padding-top:6px}.preset-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.preset-card{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--hairline);color:var(--paper);cursor:pointer;background:#ffffff06;padding:13px 14px;font-family:inherit;transition:all .15s}.preset-card:hover:not(:disabled){background:#ff9e8a12;border-color:#ff9e8a73}.preset-card.active{border-color:var(--peach);background:#ff9e8a1f}.preset-card p{color:var(--paper-dim);margin:6px 0 0;font-size:11.5px;line-height:1.4}.preset-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.switch-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.switch-item{color:var(--paper-dim);cursor:pointer;align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.switch-item input{accent-color:var(--peach)}.checklist{flex-direction:column;gap:8px;margin-top:10px;display:flex}.check-item{border-radius:var(--radius-sm);border-left:3px solid var(--sage);background:#ffffff06;align-items:flex-start;gap:10px;padding:9px 11px;display:flex}.check-item.check-warn{border-left-color:var(--amber)}.check-item.check-fail{border-left-color:var(--coral)}.check-icon{font-family:JetBrains Mono,monospace;font-weight:700}.check-pass .check-icon{color:var(--sage)}.check-warn .check-icon{color:var(--amber)}.check-fail .check-icon{color:var(--coral)}.check-body{flex:1}.check-body p{color:var(--paper-muted);margin:2px 0 0;font-size:11.5px}.playbook-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px;display:grid}.playbook-card{border-radius:var(--radius-sm);border:1px solid var(--hairline);background:#ffffff06;padding:12px 14px}.playbook-card p{color:var(--paper-dim);margin:6px 0 0;font-size:12px}.mini-stat-card{padding:12px 14px}.kpi-val-sm{margin:3px 0 1px;font-size:21px;font-weight:600}.filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.status-code{border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:11px}.status-code.s200{color:var(--sage);background:#6ee7b724}.status-code.s400{color:var(--amber);background:#ffb45c29}.status-code.s500{color:var(--coral);background:#fb718533}.audit-list{flex-direction:column;gap:9px;margin-top:10px;display:flex}.audit-item{border-radius:var(--radius-sm);background:#ffffff06;border:1px solid #ffe6c812;padding:10px 12px}.audit-item p{color:var(--paper-dim);margin:4px 0 0;font-size:12px}.audit-top{justify-content:space-between;font-size:11px;display:flex}.empty-note{text-align:center;color:var(--paper-muted);padding:16px;font-size:12px}@media (width<=1180px){.kpi-grid,.preset-grid,.four-col{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.two-col,.two-col-wide-left,.connect-grid,.playbook-grid{grid-template-columns:1fr}.funnel-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
