@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500;600;700&display=swap";:root{color-scheme:dark;--c-bg: #060810;--c-surface: #0c0f18;--c-surface-2: #111520;--c-surface-3: #181d2c;--c-sidebar: #080b14;--c-border: #1e2535;--c-border-2: #2a3348;--c-brand: #10b981;--c-brand-ghost: rgba(16, 185, 129, .12);--c-brand-ring: rgba(16, 185, 129, .28);--c-text: #e6ebf2;--c-muted: #8a93a5;--c-green: #34d399;--c-green-ghost: rgba(52, 211, 153, .12);--c-green-ring: rgba(52, 211, 153, .34);--c-amber: #fbbf24;--c-amber-ghost: rgba(251, 191, 36, .12);--c-amber-ring: rgba(251, 191, 36, .34);--c-red: #f87171;--c-red-ghost: rgba(248, 113, 113, .12);--c-red-ring: rgba(248, 113, 113, .34);--c-blue: #60a5fa;--c-blue-ghost: rgba(96, 165, 250, .12);--c-blue-ring: rgba(96, 165, 250, .34);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--r-md: 7px;--r-lg: 10px;background:var(--c-bg);color:var(--c-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--c-bg);margin:0}button,input,select{font:inherit}h1,h2,p{margin:0}h1{font-size:20px;font-weight:800;letter-spacing:-.01em;line-height:1.2}h2{font-size:13px;font-weight:700;letter-spacing:.03em;margin-bottom:var(--sp-3);text-transform:uppercase;color:var(--c-muted)}code{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;background:var(--c-surface-3);border-radius:4px;padding:1px 5px}a{color:var(--c-brand);text-decoration:none}a:hover{text-decoration:underline}button{align-items:center;background:var(--c-brand);border:1px solid transparent;border-radius:var(--r-md);color:#03120d;cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:var(--sp-2);min-height:36px;padding:0 var(--sp-4);transition:background .12s,opacity .12s}button:hover{background:#34d399}button:disabled{cursor:not-allowed;opacity:.42}button.ghost{background:var(--c-surface-3);border-color:var(--c-border-2);color:var(--c-text)}button.ghost:hover:not(:disabled){background:var(--c-border-2)}button.sm{font-size:12px;min-height:30px;padding:0 var(--sp-3)}button.danger{color:var(--c-red)}button.danger:hover:not(:disabled){background:var(--c-red-ghost);border-color:var(--c-red-ring)}.iconButton{aspect-ratio:1;justify-content:center;min-height:30px;padding:0;width:30px}input,select{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-text);font-size:13px;min-height:36px;min-width:0;outline:none;padding:0 var(--sp-3)}input:focus,select:focus{border-color:var(--c-brand);box-shadow:0 0 0 3px var(--c-brand-ring)}input::placeholder{color:var(--c-muted);opacity:.85}input[type=radio]{accent-color:var(--c-brand);flex:none;height:16px;min-height:0;min-width:0;width:16px;padding:0}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--c-surface-3);border:1px solid var(--c-border-2);border-radius:5px;cursor:pointer;display:grid;flex:none;height:16px;margin:0;min-height:0;min-width:0;padding:0;place-content:center;transition:background .12s ease,border-color .12s ease;width:16px}input[type=checkbox]:before{background:#03120d;clip-path:polygon(14% 44%,0 65%,38% 100%,100% 18%,82% 0%,36% 70%);content:"";height:9px;transform:scale(0);transition:transform .12s ease;width:9px}input[type=checkbox]:checked{background:var(--c-brand);border-color:var(--c-brand)}input[type=checkbox]:checked:before{transform:scale(1)}.shell{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--c-sidebar);border-right:1px solid var(--c-border);height:100vh;overflow-y:auto;padding:var(--sp-4) var(--sp-2);position:sticky;scrollbar-width:thin;top:0}.brand{align-items:center;border-bottom:1px solid var(--c-border);display:flex;gap:var(--sp-3);margin-bottom:var(--sp-4);padding:var(--sp-2) var(--sp-2) var(--sp-4)}.brand svg{color:var(--c-brand);flex:none}.brand strong{display:block;font-size:13px;font-weight:800;line-height:1.2}.brand span{color:var(--c-muted);display:block;font-size:10px;line-height:1.4;margin-top:2px}nav{display:grid;gap:2px}.navGroup{margin-bottom:var(--sp-3)}.navMarker{color:var(--c-muted);display:block;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;font-weight:700;letter-spacing:.06em;margin:0 var(--sp-2) var(--sp-1);text-transform:uppercase}nav button{background:transparent;border:1px solid transparent;border-radius:var(--r-md);color:var(--c-muted);font-size:13px;font-weight:500;justify-content:flex-start;min-height:34px;padding:0 var(--sp-2);width:100%}nav button svg{flex:none;opacity:.7}nav button.active,nav button:hover{background:var(--c-surface-2);border-color:var(--c-border);color:var(--c-text)}nav button.active{background:var(--c-brand-ghost);border-color:var(--c-brand-ring);color:var(--c-brand)}nav button.active svg{opacity:1}main{min-width:0;padding:0 var(--sp-6) var(--sp-8)}.topbar{align-items:center;background:#060810d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--c-border);display:flex;gap:var(--sp-4);justify-content:space-between;margin:0 calc(var(--sp-6) * -1) var(--sp-6);min-height:52px;padding:0 var(--sp-6);position:sticky;top:0;z-index:10}.topActions{align-items:center;display:flex;gap:var(--sp-2)}.stack{display:grid;gap:var(--sp-5)}.toolbar{align-items:center;display:flex;gap:var(--sp-3)}.toolbar.wrap{flex-wrap:wrap}.spacer{flex:1}.statsRow,.overviewGrid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:var(--sp-5)}.wideCard{grid-column:span 2}.formCard{grid-column:1 / -1}.cardSub{color:var(--c-muted);font-size:13px;line-height:1.5;margin-top:var(--sp-2)}.cardSub.green{color:var(--c-green)}.cardSub.red{color:var(--c-red)}.statCard{align-items:flex-start;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);display:flex;gap:var(--sp-4);padding:var(--sp-5)}.statIcon{background:var(--c-surface-3);border:1px solid var(--c-border-2);border-radius:var(--r-md);color:var(--c-muted);display:flex;padding:var(--sp-2);flex:none}.statCard.green .statIcon{background:var(--c-green-ghost);border-color:var(--c-green-ring);color:var(--c-green)}.statCard.amber .statIcon{background:var(--c-amber-ghost);border-color:var(--c-amber-ring);color:var(--c-amber)}.statBody{display:grid;gap:4px;min-width:0}.statLabel{color:var(--c-muted);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.statValue{font-size:22px;font-weight:800;line-height:1}.statCard.green .statValue{color:var(--c-green)}.statCard.amber .statValue{color:var(--c-amber)}.statSub{color:var(--c-muted);font-size:12px}.pill{align-items:center;border-radius:999px;display:inline-flex;font-size:11px;font-weight:700;gap:4px;padding:2px var(--sp-2);text-transform:capitalize}.pill.good{background:var(--c-green-ghost);color:var(--c-green)}.pill.bad{background:var(--c-red-ghost);color:var(--c-red)}.pill.blue{background:var(--c-blue-ghost);color:var(--c-blue)}.pill.amber{background:var(--c-amber-ghost);color:var(--c-amber)}.pill.neutral{background:var(--c-surface-3);color:var(--c-muted)}.alert{align-items:center;background:var(--c-amber-ghost);border:1px solid var(--c-amber-ring);border-radius:var(--r-md);color:var(--c-amber);display:flex;font-size:13px;gap:var(--sp-2);margin-bottom:var(--sp-4);padding:var(--sp-3) var(--sp-4)}.tableSection h2{margin-bottom:var(--sp-3)}.tableWrap{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);overflow-x:auto}table{border-collapse:collapse;min-width:640px;width:100%}th{background:var(--c-surface-2);border-bottom:1px solid var(--c-border);color:var(--c-muted);font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;font-weight:700;letter-spacing:.06em;padding:var(--sp-2) var(--sp-4);text-align:left;text-transform:uppercase;vertical-align:middle;white-space:nowrap}td{border-bottom:1px solid var(--c-border);color:var(--c-text);font-size:13px;padding:var(--sp-3) var(--sp-4);text-align:left;vertical-align:middle}td:empty:after{content:"—";color:var(--c-muted)}tbody tr:hover td,tbody tr.expanded td{background:var(--c-surface-2)}tbody tr:last-child td{border-bottom:0}.expandedCell{background:var(--c-surface-3)!important;padding:0!important}.summaryRow{align-items:center;color:var(--c-muted);display:flex;font-size:12px;gap:var(--sp-6)}.summaryRow span{display:flex;align-items:center;gap:var(--sp-2)}.rowActions{align-items:center;display:flex;gap:var(--sp-1)}.inlineEdit{align-items:center;display:flex;gap:var(--sp-2)}.inlineEdit input{min-width:160px}.tenantName{font-weight:600}.workloadGrid{display:grid;gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin:var(--sp-3) 0}.workloadLabel{align-items:center;background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-muted);cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:var(--sp-2);min-height:38px;padding:0 var(--sp-3);transition:background .12s,border-color .12s,color .12s}.workloadLabel:hover{border-color:var(--c-border-2);color:var(--c-text)}.workloadLabel.checked{background:var(--c-brand-ghost);border-color:var(--c-brand);color:var(--c-text)}.workloadLabel input{display:none}.workloadPills{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.workloadPill{align-items:center;background:var(--c-surface-3);border:1px solid var(--c-border);border-radius:4px;color:var(--c-muted);display:inline-flex;font-size:11px;font-weight:500;gap:3px;padding:2px 6px}.workloadPill.muted{color:var(--c-muted)}.workloadCell{align-items:center;display:flex;gap:var(--sp-2);white-space:nowrap}.formGrid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-bottom:var(--sp-4)}.formGrid label{display:grid;gap:var(--sp-1)}.formGrid label span{color:var(--c-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.formGrid input,.formGrid select{width:100%}.formActions{align-items:center;display:flex;gap:var(--sp-3);margin-top:var(--sp-5)}.presetRow{align-items:center;display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-2)}.presetRow span{color:var(--c-muted);font-size:12px}.policyName{font-weight:600}.policyDesc{color:var(--c-muted);font-size:12px;margin-top:2px}.toggle{background:var(--c-surface-3);border:1px solid var(--c-border-2);border-radius:999px;cursor:pointer;display:flex;height:22px;min-height:0;padding:2px;position:relative;transition:background .15s;width:40px}.toggle.on{background:var(--c-brand);border-color:var(--c-brand)}.toggle.off:hover{background:var(--c-surface-2)}.toggleThumb{background:#fff;border-radius:999px;display:block;height:16px;left:2px;position:absolute;top:2px;transition:transform .15s;width:16px}.toggle.on .toggleThumb{transform:translate(18px)}.toggleLabel{align-items:center;display:flex;gap:var(--sp-3);justify-content:space-between}.progressWrap{align-items:center;display:flex;gap:var(--sp-2);min-width:140px}.progressBar{background:var(--c-surface-3);border-radius:999px;flex:1;height:6px;overflow:hidden;position:relative}.progressSuccess,.progressFail{border-radius:999px;height:100%;position:absolute;top:0;transition:width .3s}.progressSuccess{background:var(--c-green);left:0}.progressFail{background:var(--c-red)}.progressLabel{color:var(--c-muted);font-size:11px;white-space:nowrap}.taskList{display:grid;gap:1px;padding:var(--sp-2) var(--sp-4)}.taskRow{align-items:center;border-radius:var(--r-md);color:var(--c-muted);display:flex;font-size:12px;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3)}.taskRow.completed{color:var(--c-green)}.taskRow.failed{color:var(--c-red)}.taskRow.running{color:var(--c-blue)}.taskError{color:var(--c-red);font-size:11px;margin-left:auto}.checkGrid{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-2)}.check{align-items:center;background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-muted);display:inline-flex;font-size:11px;font-weight:600;gap:var(--sp-1);padding:3px var(--sp-3)}.check.good{background:var(--c-green-ghost);border-color:var(--c-green-ring);color:var(--c-green)}.check.warn{background:var(--c-amber-ghost);border-color:var(--c-amber-ring);color:var(--c-amber)}.modeBadge{color:var(--c-muted);font-size:12px;margin-top:var(--sp-3)}.modeBadge strong{color:var(--c-text)}.breakdownRow{align-items:center;display:flex;font-size:13px;gap:var(--sp-3);justify-content:space-between;padding:var(--sp-2) 0}.breakdownRow+.breakdownRow{border-top:1px solid var(--c-border)}.coverageGrid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));margin-top:var(--sp-3)}.coverageGroup{display:grid;gap:var(--sp-1)}.coverageGroupLabel{color:var(--c-muted);font-size:10px;font-weight:700;letter-spacing:.06em;margin-bottom:var(--sp-1);text-transform:uppercase}.coverageItem{align-items:center;background:var(--c-surface-3);border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-muted);display:flex;font-size:11px;gap:var(--sp-2);padding:4px var(--sp-2)}.coverageItem.covered{background:var(--c-green-ghost);border-color:var(--c-green-ring);color:var(--c-green)}.coveredMark{margin-left:auto;flex:none}.coverageMatrix{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);overflow-x:auto}.coverageHeader{align-items:center;border-bottom:1px solid var(--c-border);display:flex;gap:0;padding:0 var(--sp-3);position:sticky;top:52px;background:var(--c-surface-2);z-index:5}.coverageTenantCell{align-items:center;display:flex;flex:0 0 180px;font-size:12px;font-weight:600;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2) var(--sp-2) 0}.coverageWorkloadHeader{align-items:center;border-left:1px solid var(--c-border);color:var(--c-muted);display:flex;flex:0 0 90px;flex-direction:column;font-size:10px;font-weight:600;gap:2px;justify-content:center;letter-spacing:.02em;min-width:0;padding:var(--sp-2) var(--sp-1);text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.coverageRow{align-items:center;border-bottom:1px solid var(--c-border);display:flex;gap:0;padding:0 var(--sp-3)}.coverageRow:last-child{border-bottom:0}.coverageRow:hover{background:var(--c-surface-2)}.coverageRow .coverageTenantCell{color:var(--c-text);font-size:13px}.coverageCell{align-items:center;border-left:1px solid var(--c-border);display:flex;flex:0 0 90px;flex-direction:column;gap:2px;justify-content:center;min-height:46px;padding:var(--sp-1)}.coverageCell.has-data{color:var(--c-green)}.coverageCell.no-data{color:var(--c-border-2)}.coverageCheck,.coverageX{flex:none}.coverageCount{color:var(--c-muted);font-size:10px;font-weight:700}.emptyState{align-items:center;color:var(--c-muted);display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-8) 0;text-align:center}.chartWrap{margin-top:var(--sp-4);overflow-x:auto}.storageChart{display:block;max-width:100%;min-width:300px;overflow:visible;width:100%}.chartBar{fill:var(--c-brand);opacity:.7;rx:3;transition:opacity .1s}.chartBar:hover{opacity:1}.chartLabel{fill:var(--c-muted);font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px}.runOutcomes{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-top:var(--sp-3)}.runDot{border-radius:50%;flex:none;height:10px;width:10px}.runDot.completed{background:var(--c-green)}.runDot.failed{background:var(--c-red)}.runDot.partial{background:var(--c-amber)}.runDot.running,.runDot.queued{background:var(--c-blue)}.runLegend{align-items:center;display:flex;flex-wrap:wrap;gap:var(--sp-4);margin-top:var(--sp-4)}.legendItem{align-items:center;color:var(--c-muted);display:flex;font-size:12px;gap:var(--sp-2);text-transform:capitalize}.wizard{align-items:center;display:flex;gap:0;margin-bottom:var(--sp-5)}.wizardStep{align-items:center;color:var(--c-muted);display:flex;flex:1;font-size:12px;font-weight:600;gap:var(--sp-2);padding:var(--sp-2) 0;position:relative}.wizardStep+.wizardStep:before{background:var(--c-border);content:"";flex:none;height:1px;width:var(--sp-4)}.wizardStep.active{color:var(--c-brand)}.stepNum{align-items:center;background:var(--c-surface-3);border:1px solid var(--c-border-2);border-radius:50%;display:flex;flex:none;font-size:11px;font-weight:800;height:22px;justify-content:center;width:22px}.wizardStep.active .stepNum{background:var(--c-brand);border-color:var(--c-brand);color:#03120d}.wizardBody{display:grid;gap:var(--sp-4)}.wizardBody select{width:100%}.manifestPreview{align-items:center;background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--r-md);display:flex;gap:var(--sp-5);padding:var(--sp-3) var(--sp-4)}.manifestStat{align-items:center;color:var(--c-muted);display:flex;font-size:12px;gap:var(--sp-2)}.previewStats{display:flex;gap:var(--sp-6)}.previewStat{display:grid;gap:2px}.previewStat strong{font-size:24px;font-weight:800}.previewStat span{color:var(--c-muted);font-size:12px}.modeSelect{display:grid;gap:var(--sp-2)}.modeSelect h3{color:var(--c-muted);font-size:11px;font-weight:700;letter-spacing:.04em;margin:0 0 var(--sp-1);text-transform:uppercase}.modeOption{align-items:flex-start;background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--r-md);cursor:pointer;display:flex;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);transition:border-color .12s}.modeOption:hover{border-color:var(--c-border-2)}.modeOption.selected{background:var(--c-brand-ghost);border-color:var(--c-brand)}.modeOption div{display:grid;gap:2px}.modeOption strong{font-size:13px;font-weight:600;text-transform:capitalize}.modeOption span{color:var(--c-muted);font-size:12px}.confirmBox{align-items:flex-start;background:var(--c-amber-ghost);border:1px solid var(--c-amber-ring);border-radius:var(--r-md);display:flex;gap:var(--sp-3);padding:var(--sp-4)}.confirmBox strong{display:block;font-weight:700;margin-bottom:var(--sp-1)}.confirmBox p{color:var(--c-muted);font-size:13px;line-height:1.5}.downloadLink{align-items:center;display:inline-flex;gap:var(--sp-1)}.keyReveal{align-items:flex-start;background:var(--c-amber-ghost);border:1px solid var(--c-amber-ring);border-radius:var(--r-md);display:flex;gap:var(--sp-3);margin-top:var(--sp-4);padding:var(--sp-4)}.keyReveal div{display:grid;gap:var(--sp-2)}.keyReveal strong{color:var(--c-amber);font-size:13px}.fullKey{background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--r-md);display:block;font-size:12px;overflow-x:auto;padding:var(--sp-3) var(--sp-4);-webkit-user-select:all;user-select:all;white-space:nowrap}.muted{color:var(--c-muted)}.amber{color:var(--c-amber)}.steps{color:var(--c-muted);font-size:13px;line-height:1.7;margin:var(--sp-3) 0 var(--sp-4);padding-left:var(--sp-5)}.steps li{margin-bottom:var(--sp-1)}.steps strong{color:var(--c-text)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite;color:var(--c-muted)}@media(max-width:1100px){.statsRow,.overviewGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.wideCard{grid-column:span 2}}@media(max-width:860px){.shell{grid-template-columns:1fr}.sidebar{height:auto;overflow-y:visible;position:static}nav{grid-template-columns:repeat(5,minmax(0,1fr))}nav button{justify-content:center;padding:var(--sp-2)}nav button span,.navMarker{display:none}.navGroup{margin-bottom:0}main{padding:0 var(--sp-4) var(--sp-6)}.topbar{margin:0 calc(var(--sp-4) * -1) var(--sp-4);padding:0 var(--sp-4)}}@media(max-width:640px){.statsRow{grid-template-columns:1fr 1fr}.overviewGrid{grid-template-columns:1fr}.wideCard{grid-column:auto}.toolbar,.topActions{flex-wrap:wrap;gap:var(--sp-2)}.formGrid{grid-template-columns:1fr}}.toastContainer{bottom:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-2);pointer-events:none;position:fixed;right:var(--sp-6);z-index:9999}.toast{align-items:center;animation:toastIn .18s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--c-border-2);border-radius:var(--r-lg);box-shadow:0 4px 24px #00000080;display:flex;font-size:13px;font-weight:500;gap:var(--sp-2);max-width:360px;padding:var(--sp-3) var(--sp-4);pointer-events:auto}.toast.success{background:#101820f2;border-color:var(--c-green-ring);color:var(--c-green)}.toast.error{background:#101820f2;border-color:var(--c-red-ring);color:var(--c-red)}@keyframes toastIn{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
