:root{--bg-void: #04070c;--bg-deep: #070b12;--bg-panel: #0a1220;--bg-panel-2: #0d1729;--border-subtle: oklch(.3 .02 220 / .35);--border-strong: oklch(.42 .03 220 / .55);--amber: oklch(.82 .17 75);--amber-soft: oklch(.72 .13 75);--amber-dim: oklch(.62 .15 75);--amber-bright: oklch(.88 .18 75);--green: oklch(.78 .18 155);--red: oklch(.68 .24 25);--red-bright: oklch(.76 .22 25);--yellow: oklch(.86 .16 95);--fg: oklch(.94 .01 220);--fg-dim: oklch(.72 .02 220);--fg-muted: oklch(.52 .02 220);--text-muted: oklch(.52 .02 220);--font-display: "Space Grotesk", system-ui, sans-serif;--font-sans: "Inter", "Space Grotesk", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--glow-amber: 0 0 10px oklch(.82 .17 75 / .45);--glow-green: 0 0 10px oklch(.78 .18 155 / .4);--glow-red: 0 0 10px oklch(.68 .24 25 / .5);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--r-sm: 3px;--r-md: 6px;--r-lg: 10px}:root[data-theme=light]{--bg-void: #fdfcf7;--bg-deep: #f8f6ee;--bg-panel: #ffffff;--bg-panel-2: #f6f3ec;--border-subtle: oklch(.85 .02 75 / .55);--border-strong: oklch(.72 .03 75 / .7);--amber: oklch(.62 .18 75);--amber-soft: oklch(.55 .15 75);--amber-dim: oklch(.5 .13 75);--amber-bright: oklch(.68 .2 75);--green: oklch(.5 .16 155);--red: oklch(.52 .22 25);--red-bright: oklch(.6 .2 25);--yellow: oklch(.68 .15 95);--fg: oklch(.2 .01 220);--fg-dim: oklch(.38 .02 220);--fg-muted: oklch(.55 .02 220);--text-muted: oklch(.55 .02 220)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg-void);color:var(--fg);font-family:var(--font-sans);font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased}a{color:var(--amber);text-decoration:none}a:hover{color:var(--amber-bright)}.amber-text{color:var(--amber)}.muted{color:var(--text-muted)}.small{font-size:11px}.card{position:relative;background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--sp-4);margin-bottom:var(--sp-4)}.card-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-3)}.badge{display:inline-block;font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:var(--r-sm);border:1px solid currentColor;background:color-mix(in oklch,currentColor 12%,transparent)}.b-green{color:var(--green)}.b-amber{color:var(--amber)}.b-red{color:var(--red)}.b-muted{color:var(--text-muted)}table.dt{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}table.dt th{position:sticky;top:0;background:var(--bg-panel-2);color:var(--text-muted);font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border-subtle);cursor:pointer}table.dt th.sort-asc:after{content:" ↑";color:var(--amber)}table.dt th.sort-desc:after{content:" ↓";color:var(--amber)}table.dt td{padding:6px 8px;border-bottom:1px solid var(--border-subtle);white-space:nowrap}table.dt tr:hover td{background:var(--bg-panel-2)}table.dt td.num{text-align:right;font-variant-numeric:tabular-nums}table.dt tr.drill-trigger{cursor:pointer}table.dt tr.drill-trigger:hover td{background:color-mix(in oklch,var(--amber) 6%,var(--bg-panel-2))}table.dt tr.drill-row td{padding:8px!important;background:transparent!important}table.dt tr.drill-row:hover td{background:transparent!important}.filter-bar{display:flex;align-items:center;gap:var(--sp-5);flex-wrap:wrap;padding:var(--sp-3) var(--sp-4);background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--r-md);margin-bottom:var(--sp-4)}.filter-group{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.filter-group-grow{flex:1 1 auto;min-width:0}.filter-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.filter-input{background:var(--bg-panel-2);border:1px solid var(--border-subtle);border-radius:var(--r-sm);color:var(--fg);padding:5px 10px;font-family:var(--font-sans);font-size:12px;min-width:200px}.filter-input:focus{outline:1px solid var(--amber);border-color:var(--amber)}.kpi-tile{background:var(--bg-panel-2);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:var(--sp-3)}.kpi-tile .label{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.kpi-tile .value{font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-.01em}.kpi-tile .delta{font-family:var(--font-mono);font-size:10px;margin-top:2px}.kpi-tile .delta.up{color:var(--green)}.kpi-tile .delta.down{color:var(--red)}.kpi-tile .delta.flat{color:var(--text-muted)}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--sp-3)}.chip{display:inline-block;padding:4px 10px;font-size:11px;border:1px solid var(--border-subtle);border-radius:999px;background:transparent;color:var(--fg-dim);cursor:pointer;-webkit-user-select:none;user-select:none}.chip:hover{border-color:var(--border-strong)}.chip.active{background:color-mix(in oklch,var(--amber) 12%,transparent);border-color:var(--amber);color:var(--amber)}.search-input{width:100%;background:var(--bg-panel-2);border:1px solid var(--border-subtle);border-radius:var(--r-sm);color:var(--fg);padding:6px 10px;font-family:var(--font-sans);font-size:12px}.search-input:focus{outline:1px solid var(--amber);border-color:var(--amber)}.drill-panel{background:var(--bg-panel-2);border:1px solid var(--amber);border-radius:var(--r-md);padding:var(--sp-5);margin:var(--sp-3) 0;position:relative;box-shadow:0 0 0 1px color-mix(in oklch,var(--amber) 20%,transparent)}.drill-close{position:absolute;top:var(--sp-2);right:var(--sp-3);background:transparent;border:none;color:var(--text-muted);font-size:11px;cursor:pointer;font-family:var(--font-mono)}.drill-close:hover{color:var(--amber)}.drill-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin-bottom:var(--sp-4)}.drill-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:var(--sp-5)}.cadena .step{display:grid;grid-template-columns:150px max-content;gap:var(--sp-3);padding:9px 0;border-bottom:1px dashed var(--border-subtle);font-size:12px}.cadena .step:last-child{border-bottom:none}.cadena .k{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.cadena .v{color:var(--fg)}.history-list .h{display:grid;grid-template-columns:1fr 120px 1.5fr 60px;gap:var(--sp-2);padding:4px 0;border-bottom:1px dashed var(--border-subtle);font-size:11px;align-items:center}.history-list .right{text-align:right}.spark{width:100%;height:auto}.spark .g{stroke:var(--border-subtle);stroke-width:1;stroke-dasharray:2 3}.drill-panel .spark{margin-bottom:var(--sp-4)}.drill-panel .card-title{margin-top:var(--sp-3)}.drill-panel>*>.card-title:first-child,.drill-panel .card-title:first-child{margin-top:0}.spark .l{fill:none;stroke:var(--amber);stroke-width:1.5}.spark .a{fill:url(#sparkGrad)}.spark .d{fill:var(--amber)}.spark .lbl{font-family:var(--font-mono);font-size:8px;fill:var(--text-muted);letter-spacing:.05em}.shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.sidebar{background:var(--bg-deep);border-right:1px solid var(--border-subtle);padding:var(--sp-4) var(--sp-3);position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-brand{font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--amber);margin-bottom:var(--sp-6);padding:0 var(--sp-2)}.sidebar-brand .tag{display:block;font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;color:var(--text-muted);margin-top:2px;text-transform:uppercase}.sidebar-section{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:var(--sp-4) var(--sp-2) var(--sp-2)}.sidebar-link{display:flex;align-items:center;gap:var(--sp-2);padding:8px var(--sp-3);border-radius:var(--r-sm);color:var(--fg-dim);cursor:pointer;font-size:12px}.sidebar-link:hover{background:var(--bg-panel);color:var(--fg)}.sidebar-link.active{background:color-mix(in oklch,var(--amber) 12%,transparent);color:var(--amber)}.sidebar-link .icon{font-family:var(--font-mono);font-size:10px;width:16px;color:var(--amber);opacity:.7}.main{padding:var(--sp-5) var(--sp-6);overflow-x:hidden}.page-header{margin-bottom:var(--sp-5)}.page-header h1{font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.01em;margin:0 0 4px}.page-header .sub{font-size:12px;color:var(--text-muted)}.spacer{display:block}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3);align-items:start}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-3);align-items:start}.grid-6{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--sp-3);align-items:start}.mobile-menu-btn{display:none;position:fixed;top:12px;left:12px;z-index:100;width:40px;height:40px;background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:var(--r-sm);color:var(--amber);font-size:18px;cursor:pointer;align-items:center;justify-content:center}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:98}@media(max-width:1024px){.grid-6{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}.main{padding:var(--sp-4) var(--sp-5)}}@media(max-width:768px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;top:0;left:0;width:240px;height:100vh;z-index:99;transform:translate(-100%);transition:transform .25s ease;box-shadow:4px 0 16px #0000004d}.sidebar.open{transform:translate(0)}.sidebar-backdrop.open,.mobile-menu-btn{display:flex}.main{padding:56px 12px 16px;overflow-x:hidden}.grid-2,.grid-3,.grid-4,.grid-6{grid-template-columns:1fr;gap:var(--sp-3)}.drill-grid{grid-template-columns:1fr;gap:var(--sp-4)}.cadena .step{grid-template-columns:1fr;gap:2px;padding:6px 0}.cadena .k{font-size:9px}.drill-panel{padding:var(--sp-4)}.page-header h1{font-size:18px}.page-header .sub{font-size:11px}.kpi-tile .value{font-size:20px}.card{padding:var(--sp-3);margin-bottom:var(--sp-3)}table.dt{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:11px}table.dt th{padding:6px 8px}table.dt td{padding:5px 6px}.history-list .h{grid-template-columns:1fr;gap:2px;padding:6px 0;font-size:10px}.history-list .right{text-align:left}.chip{padding:3px 8px;font-size:10px}.card[style*="width: 360"]{width:calc(100% - 24px)!important;max-width:360px}table.dt tr.drill-row td{position:sticky;left:0;width:calc(100vw - 32px);max-width:calc(100vw - 32px);box-sizing:border-box;padding:8px!important}.drill-panel{box-sizing:border-box;width:100%;max-width:100%;padding:12px;margin:8px 0;overflow-x:hidden}.drill-panel *{max-width:100%;word-break:break-word;overflow-wrap:break-word}.drill-title{font-size:10px;margin-bottom:12px;line-height:1.4;white-space:normal}.cadena .v{font-size:11px}.spark{width:100%!important;height:auto!important;max-width:100%;display:block}.drill-panel table.dt{font-size:10px;width:100%;display:block;overflow-x:auto}[data-virtual-container]{max-width:100vw;overflow-x:auto;-webkit-overflow-scrolling:touch}.card .chips{gap:4px}.card .chips .chip{font-size:10px;padding:3px 8px}table.dt thead th,table.dt tbody td{min-width:60px;white-space:nowrap}table.dt tr.drill-row td{min-width:0;white-space:normal}.drill-panel{width:100%!important;max-width:100%!important;box-sizing:border-box!important;overflow-x:hidden!important;padding:12px!important}.drill-panel,.drill-panel *{word-break:break-word!important;overflow-wrap:anywhere!important;max-width:100%!important;box-sizing:border-box!important}.drill-panel .cadena .step,.drill-panel .cadena .v{white-space:normal!important;word-break:break-word!important}.drill-panel .cadena .v{font-size:11px!important;line-height:1.4}.drill-panel .card-title{white-space:normal!important;font-size:9px}.drill-panel svg,.drill-panel svg.spark{max-width:100%!important;height:auto!important;display:block!important}.drill-panel table{width:100%!important;max-width:100%!important;display:block;overflow-x:auto;font-size:10px}.drill-panel .drill-grid{grid-template-columns:1fr!important;gap:16px!important}}
