:root{color-scheme:light;--sidebar-width: 256px;--topbar-height: 64px;--page-max-width: 1280px;--font-sans: "Saira Semi Condensed", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--radius-card: 8px;--radius-control: 8px;--radius-button: 4px;--radius-badge: 6px;--background: #f4f5f7;--foreground: #111827;--card: #ffffff;--card-foreground: #111827;--popover: #ffffff;--primary: #f6c110;--primary-foreground: #000000;--secondary: #eef0f3;--secondary-foreground: #111827;--muted: #f0f1f3;--muted-foreground: #667085;--accent-action: #8a5a06;--success: #0f7a52;--success-bg: #dbf3e6;--warning: #8a5a06;--warning-bg: #fbeecb;--info: #3454d1;--info-bg: #e6ecfb;--destructive: #b42318;--destructive-text: #b42318;--destructive-bg: #fdecea;--border: #cbd1d9;--border-strong: #aab2bd;--input: #d3d8df;--ring: #f6c110;--shadow-card: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .04);--chart-grid: #e4e7ec;--row-hover: color-mix(in oklab, var(--muted) 70%, transparent);--sidebar: #1a1a1a;--sidebar-foreground: #ffffff;--sidebar-primary: #f6c110;--sidebar-primary-foreground: #000000;--sidebar-accent: #262626;--sidebar-border: oklch(1 0 0 / 16%);--sidebar-ring: #f6c110;--class-tenant: #2a78d6;--class-platform-idle: #eb6834;--class-corporate: #1baf7a;--class-excluded: #eda100;--class-unallocated: #e87ba4;--class-platform-finops: #008300;--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--series-6: #008300;--series-6-light: #7cc47c;--status-good: #0ca30c;--status-warning: #fab219;--status-critical: #d03b3b;--status-info: #2a78d6;font-family:var(--font-sans)}.dark{color-scheme:dark;--background: #000000;--foreground: #ffffff;--card: #1a1a1a;--card-foreground: #ffffff;--popover: #1a1a1a;--secondary: #212121;--secondary-foreground: #ffffff;--muted: #1a1a1a;--muted-foreground: #b3b3b3;--accent-action: #f6c110;--shadow-card: none;--success: #16c49a;--success-bg: #10312a;--warning: #f6c110;--warning-bg: #2a2410;--info: #7aa2ff;--info-bg: #10203a;--destructive: #af0000;--destructive-text: #f97066;--destructive-bg: #2a1210;--border: oklch(1 0 0 / 10%);--border-strong: oklch(1 0 0 / 22%);--input: oklch(1 0 0 / 14%);--chart-grid: #2c2c2a;--row-hover: color-mix(in oklab, var(--foreground) 6%, transparent);--class-tenant: #3987e5;--class-platform-idle: #d95926;--class-corporate: #199e70;--class-excluded: #c98500;--class-unallocated: #d55181;--class-platform-finops: #008300;--status-info: #3987e5;--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--series-6: #008300;--series-6-light: #7cc47c}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--background);color:var(--foreground);font-size:14px;line-height:1.5}h2{font-size:30px;font-weight:600;line-height:1.2;margin:0 0 16px}h3{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;margin:0 0 8px}a{color:var(--accent-action);text-decoration:none}a:hover{text-decoration:underline}code{font-size:.9em}button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 12px;font:inherit;font-weight:500;white-space:nowrap;cursor:pointer;color:var(--foreground);background:var(--background);border:1px solid var(--border);border-radius:var(--radius-button);transition:background-color .15s,border-color .15s,box-shadow .15s}button:hover:not(:disabled){background:var(--muted)}.dark button{background:transparent}.dark button:hover:not(:disabled){background:color-mix(in oklab,var(--input) 30%,transparent)}button[type=submit],.dark button[type=submit]{background:var(--primary);color:var(--primary-foreground);border-color:transparent}button[type=submit]:hover:not(:disabled),.dark button[type=submit]:hover:not(:disabled){background:color-mix(in oklab,var(--primary) 80%,transparent)}button:focus-visible{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab,var(--ring) 30%,transparent)}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;color:var(--foreground);background:color-mix(in oklab,var(--input) 30%,transparent);border:1px solid var(--border);border-radius:var(--radius-control);padding:0 12px;max-width:100%}input,select{height:36px}textarea{padding:8px 12px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab,var(--ring) 30%,transparent)}input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.6}input[type=checkbox],input[type=radio]{height:16px;width:16px;padding:0;accent-color:var(--accent-action)}.shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-template-rows:var(--topbar-height) minmax(0,1fr);height:100vh}.shell-bare{grid-template-columns:minmax(0,1fr)}.topbar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:16px;height:var(--topbar-height);padding:8px 8px 8px 16px;background:var(--background);color:var(--foreground);border-bottom:3px solid var(--primary);z-index:10}.topbar-brand{display:flex;align-items:center;gap:10px;margin:0;font-size:inherit}.brand-mark{flex:0 0 auto}.brand-word{display:inline-flex;align-items:baseline;font-weight:600;font-size:24px;line-height:1;letter-spacing:-.01em}.brand-word-a{color:var(--sidebar-foreground)}.brand-word-b{color:var(--sidebar-primary)}.brand-word-hub{margin-left:6px;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in oklab,var(--sidebar-foreground) 50%,transparent)}.topbar-actions{display:flex;align-items:center;gap:8px}button.icon-btn,.dark button.icon-btn{min-height:0;padding:6px;border:none;border-radius:var(--radius-md);background:none;color:var(--muted-foreground)}button.icon-btn:hover:not(:disabled),.dark button.icon-btn:hover:not(:disabled){color:var(--foreground);background:var(--muted)}.rail{display:flex;flex-direction:column;gap:2px;min-height:0;overflow-y:auto;padding:12px 8px;background:var(--sidebar);color:var(--sidebar-foreground);border-right:1px solid var(--sidebar-border)}.rail-nav{display:flex;flex-direction:column;gap:2px}.rail-link{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:var(--radius-md);color:color-mix(in oklab,var(--sidebar-foreground) 75%,transparent);font-size:14px;text-decoration:none;transition:background-color .15s,color .15s}.rail-link:hover{background:var(--sidebar-accent);color:var(--sidebar-foreground);text-decoration:none}.rail-link:focus-visible{outline:none;box-shadow:0 0 0 2px var(--sidebar-ring)}.rail-link.active{background:var(--sidebar-primary);color:var(--sidebar-primary-foreground);font-weight:500}.rail-link svg{flex:0 0 16px}.rail-spacer{flex:1}.rail-account{display:flex;align-items:center;gap:10px;margin-top:6px;padding:10px 8px 4px;border-top:1px solid var(--sidebar-border)}.rail-account-text{flex:1;min-width:0}.rail-account .name{font-size:13px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-account .roles{display:flex;gap:4px;margin-top:2px}.rail-account .badge{background:var(--sidebar-accent);color:color-mix(in oklab,var(--sidebar-foreground) 75%,transparent);font-size:11px}.avatar{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:var(--sidebar-accent);border:1px solid var(--sidebar-border);color:var(--sidebar-primary);font-weight:600;font-size:12px}.rail button.icon-btn{color:color-mix(in oklab,var(--sidebar-foreground) 65%,transparent)}.rail button.icon-btn:hover:not(:disabled){color:var(--sidebar-foreground);background:var(--sidebar-accent)}.content{min-width:0;min-height:0;overflow:auto;padding:24px}.content>*{max-width:var(--page-max-width);margin-inline:auto}@media(max-width:760px){.shell{grid-template-columns:64px minmax(0,1fr)}.shell-bare{grid-template-columns:minmax(0,1fr)}.rail-label,.rail-account-text{display:none}.rail-link{justify-content:center;padding-inline:0}.rail-account{flex-direction:column;gap:8px;padding-inline:0}.content{padding:16px}h2{font-size:24px}}.muted{color:var(--muted-foreground)}.api-error{color:var(--destructive-text)}.card{background:var(--card);color:var(--card-foreground);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:16px}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-badge);font-size:12px;font-weight:600;line-height:1.25;background:var(--secondary);color:var(--secondary-foreground)}.badge-estimated,.state-reopened{background:var(--warning-bg);color:var(--warning)}.state-closed{background:var(--success-bg);color:var(--success)}.badge-open{background:var(--destructive-bg);color:var(--destructive-text)}.picker{margin-bottom:16px}.picker label{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.picker-label{font-size:13px;font-weight:500;color:var(--muted-foreground)}.month-header{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:16px}.month-header h2{margin:0}.provenance{font-size:13px}.notice{display:flex;gap:10px;align-items:flex-start;background:var(--card);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-left:4px solid var(--status-info);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:10px 12px;margin:8px 0}.notice-warning{border-left-color:var(--status-warning)}.notice-critical{border-left-color:var(--status-critical)}.notice-icon{font-weight:700}.notice-body{color:var(--muted-foreground);margin-top:2px}.failure{margin-right:8px}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:16px 0}.tile{display:flex;flex-direction:column;gap:4px;background:var(--card);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:12px 14px}.tile-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--muted-foreground)}.tile-value{font-size:28px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.tile-note{font-size:13px;color:var(--muted-foreground)}.charts{display:grid;gap:16px;margin:16px 0}.chart{margin:0;min-width:0;background:var(--card);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:12px 14px}.chart figcaption{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px}.chart figcaption select{text-transform:none;letter-spacing:normal;font-weight:400}.cost-table{width:100%;border-collapse:collapse;background:var(--card);font-size:13px}.cost-table caption{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;padding:10px 12px}.cost-table th,.cost-table td{text-align:left;padding:9px 12px;border-bottom:1px solid color-mix(in oklab,var(--border) 40%,transparent)}.cost-table thead th{color:var(--muted-foreground);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;background:color-mix(in oklab,var(--muted) 50%,transparent);border-bottom-color:var(--border)}.cost-table tbody tr:hover>*{background:var(--row-hover)}button.sort-btn,.dark button.sort-btn{min-height:0;padding:0;gap:4px;border:none;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}button.sort-btn:hover:not(:disabled),.dark button.sort-btn:hover:not(:disabled){background:none;color:var(--foreground)}button.sort-btn.active{color:var(--foreground)}.sort-arrow{font-size:10px;opacity:.6}.sort-btn.active .sort-arrow{opacity:1;color:var(--accent-action)}.cost-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.swatch{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px}.swatch-tenant{background:var(--class-tenant)}.swatch-platform_idle{background:var(--class-platform-idle)}.swatch-corporate{background:var(--class-corporate)}.swatch-excluded{background:var(--class-excluded)}.swatch-unallocated{background:var(--class-unallocated)}.swatch-platform_finops{background:var(--class-platform-finops)}.adjustments,.plan-card{background:var(--card);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:12px 14px}.plan-prices{display:flex;flex-wrap:wrap;gap:8px 24px;margin:8px 0}.plan-prices dt{color:var(--muted);font-size:.85em}.plan-prices dd{margin:0;font-variant-numeric:tabular-nums}.plan-tier+.plan-tier:before{content:" · ";color:var(--muted)}.field-row{display:flex;flex-wrap:wrap;gap:0 16px}.adjustments h3+p{margin-top:0}.block{margin:24px 0}.charts.two{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.grid-scroll{overflow-x:auto;position:relative;max-width:100%;background:var(--card);border:1px solid color-mix(in oklab,var(--border) 50%,transparent);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.status-grid{border-collapse:separate;border-spacing:2px;font-size:12px;padding:6px}.status-grid td{padding:0}.status-grid th{font-weight:500;color:var(--muted-foreground);white-space:nowrap;padding:2px 4px}.status-grid thead th{writing-mode:vertical-rl;transform:rotate(180deg);height:44px}.status-grid tbody th{text-align:left;position:sticky;left:0;background:var(--card)}.cell{display:inline-block;min-width:22px;height:22px;line-height:22px;text-align:center;border-radius:var(--radius-sm);font-weight:700}.cell-ok{color:var(--success);background:color-mix(in srgb,var(--status-good) 12%,transparent)}.cell-fail{color:var(--card);background:var(--status-critical)}.cell-gap{color:var(--foreground);background:color-mix(in srgb,var(--status-warning) 45%,transparent)}.legend .cell{margin:0 4px 0 8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.incidents,.history.audit{list-style:none;padding:0;margin:0}.incidents li,.history.audit li{background:var(--card);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:10px 12px;margin-bottom:8px}.no-price{color:var(--muted-foreground);font-style:italic}.meter{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.meter-track{position:relative;width:100px;height:10px;border-radius:var(--radius-sm);background:var(--chart-grid);overflow:hidden}.meter-fill{position:absolute;inset:0 auto 0 0;background:var(--series-1)}.meter-label{font-size:12px;font-variant-numeric:tabular-nums}.tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--border);margin-bottom:16px}button.tab,.dark button.tab{min-height:40px;margin-bottom:-1px;padding:0 12px;border:none;border-bottom:2px solid transparent;border-radius:var(--radius-control) var(--radius-control) 0 0;background:none;color:var(--muted-foreground);font-size:15px}button.tab:hover:not(:disabled),.dark button.tab:hover:not(:disabled){background:none;color:var(--foreground)}button.tab.active,.dark button.tab.active{color:var(--foreground);border-bottom-color:var(--primary)}.history{margin:6px 0 0;padding-left:18px;font-size:13px}.history pre{overflow-x:auto;font-size:12px}.version-form{display:grid;gap:12px;max-width:720px;margin:12px 0;padding:16px;background:var(--card);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-top:3px solid var(--primary);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.version-form h3{margin:0}.field{display:grid;gap:6px;font-size:13px;font-weight:500;color:var(--muted-foreground)}.field input,.field select,.field textarea{font-weight:400}.version-form td input{width:100%;min-width:80px}.form-actions{display:flex;justify-content:flex-end;gap:8px}.state-machine{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:8px 0 16px;font-size:13px}.state-machine li:not(.muted){padding:2px 10px;border-radius:var(--radius-badge);background:var(--secondary);color:var(--muted-foreground)}.state-machine li.current{background:var(--primary);color:var(--primary-foreground);font-weight:600}.checklist{list-style:none;padding:0;margin:0;display:grid;gap:6px}.checklist li{background:var(--card);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-left:4px solid var(--status-good);border-radius:var(--radius-control);padding:6px 10px}.checklist li.check-fail{border-left-color:var(--status-critical)}.checklist .muted{font-size:12px;overflow-wrap:anywhere}.breakdown{list-style:none;padding:0;margin:0;display:grid;gap:10px}.breakdown li{background:var(--card);border:1px solid color-mix(in oklab,var(--border) 40%,transparent);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:10px 12px}.breakdown-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.breakdown-bar{height:10px;border-radius:var(--radius-sm);background:var(--chart-grid);margin:8px 0 6px;overflow:hidden}.breakdown-bar span{display:block;height:100%;border-radius:0 4px 4px 0}.breakdown-figures{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--muted-foreground);font-variant-numeric:tabular-nums}.breakdown-cost{color:var(--foreground);font-weight:600;font-size:16px}.breakdown .breakdown-meters{list-style:none;padding:0;margin:6px 0 0;display:grid;gap:2px}.breakdown .breakdown-meters li{background:none;border:0;box-shadow:none;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;color:var(--muted-foreground);font-variant-numeric:tabular-nums}.matrix tbody th,.matrix tfoot th{text-align:left;font-weight:500;white-space:nowrap}.matrix tfoot td,.matrix tfoot th{border-top:2px solid var(--border)}.chart>h3{margin-bottom:12px}.spend{list-style:none;padding:0;margin:0;display:grid;gap:12px}.spend-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.spend-head .muted{font-size:13px}.spend-delta{margin-left:auto;white-space:nowrap}.spend-row{display:grid;grid-template-columns:minmax(0,1fr) 7.5em 3.5em;align-items:center;gap:10px;margin-top:4px;font-variant-numeric:tabular-nums}.spend-track{height:12px;border-radius:var(--radius-sm);background:var(--chart-grid);overflow:hidden}.spend-track span{display:block;height:100%;background:var(--series-1);border-radius:0 4px 4px 0}.spend-value{font-weight:600;white-space:nowrap;text-align:right}.spend-share{text-align:right}.payers-bar{display:flex;gap:2px;height:28px;border-radius:var(--radius-sm);overflow:hidden}.payers-bar span{min-width:2px}.payers-legend{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:10px}.payers-legend li{display:flex;align-items:flex-start;gap:8px}.payers-legend .swatch{flex:0 0 auto;margin-top:5px}.payers-legend .muted{font-size:13px}.payers-figure{font-variant-numeric:tabular-nums;white-space:nowrap}.payers-reading{margin:16px 0 0;padding:10px 12px;border-radius:var(--radius-control);background:var(--muted);font-weight:500}.trend-tooltip{background:var(--popover);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:8px 12px;font-size:13px}.trend-tooltip ul{list-style:none;padding:0;margin:4px 0 0;color:var(--muted-foreground)}.shared-split{margin-top:20px;padding-top:16px;border-top:1px solid color-mix(in oklab,var(--border) 40%,transparent)}.shared-split h4{margin:0 0 10px;font-size:13px;font-weight:600}.shared-split .spend{gap:8px}.reasons{margin:6px 0 0;padding-left:18px}.meter-fill.band-warn70{background:var(--warning)}.meter-fill.band-warn90{background:var(--class-platform-idle)}.meter-fill.band-over{background:var(--destructive)}.tiles-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.badge-plan{background:var(--info-bg);color:var(--info);white-space:nowrap}.badge-plan-unpriced{background:var(--warning-bg);color:var(--warning)}.badge-plan-none{background:var(--secondary);color:var(--muted-foreground)}.margin-positive{color:var(--success)}.margin-negative{color:var(--destructive-text)}button.map-plan-btn{margin-left:.5rem;padding:2px 8px;font-size:.8rem;white-space:nowrap}.plan-diff tr.changed td{font-weight:600}.trend-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;border:0;padding:0;margin:0 0 12px}.trend-filter legend{float:left;margin-right:4px}.trend-filter label{display:inline-flex;align-items:center;gap:6px;font-size:13px}.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}.link-btn{display:inline;min-height:0;background:none;border:0;padding:0;font:inherit;color:var(--accent-action);cursor:pointer;text-align:left}.link-btn[aria-pressed=true]{font-weight:700}.cost-table .badge{margin-left:8px}.product-chip{display:inline-flex;align-items:center;margin-right:10px;white-space:nowrap;font:inherit;font-size:12px}button.product-chip{min-height:28px;padding:2px 8px;border:1px solid color-mix(in oklab,var(--border) 60%,transparent);border-radius:var(--radius-badge);background:var(--card);color:var(--foreground);cursor:pointer}button.product-chip[aria-pressed=true]{border-color:var(--foreground);background:var(--muted)}.product-legend{display:flex;flex-wrap:wrap;gap:6px 0;margin-bottom:6px}.usage-readout{min-height:1.5em;font-size:12px}.usage-map td{width:16px;height:18px}.usage-map tbody tr.selected th{font-weight:700}.usage-empty{background:color-mix(in oklab,var(--muted) 60%,transparent);border-radius:2px}.usage-cell{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:1px;min-height:0;width:16px;height:18px;padding:0;border:0;border-radius:3px;overflow:hidden;background:var(--card);cursor:pointer}.usage-cell>span{display:block;flex:none}.usage-cell:hover,.usage-cell:focus-visible{outline:2px solid var(--foreground);outline-offset:1px;opacity:1!important}
