:root{--font-sans: "Space Grotesk", "Plus Jakarta Sans", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--radius-none: 0px;--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--shadow-card: 0 2px 8px rgba(0,0,0,.04), 0 0 0 1px rgba(0,0,0,.02);--shadow-inset: inset 0 1px 3px rgba(0,0,0,.06);--shadow-dropdown: 0 4px 16px rgba(0,0,0,.08), 0 0 0 1px rgba(0,0,0,.04);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--sidebar-width: 260px;--sidebar-collapsed: 64px;--topbar-height: 48px;--mobile-nav-height: 56px;--z-base: 1;--z-dropdown: 100;--z-sidebar: 200;--z-modal-backdrop: 300;--z-modal: 400;--z-toast: 500;--z-cmd-palette: 600;--chart-1: #4A90D9;--chart-2: #E67E22;--chart-3: #9B59B6;--chart-4: #2ECC71;--chart-5: #E74C3C;--chart-6: #1ABC9C;--chart-7: #F39C12;--chart-8: #3498DB;--chart-9: #E91E63;--chart-10: #00BCD4}[data-theme=light]{--color-bg: #E2E6EB;--color-surface: #EDF0F3;--color-surface-raised: #F8F9FA;--color-surface-inset: #D4D9E0;--color-border: #BBC1CA;--color-border-strong: #9BA3B0;--color-text: #0F1117;--color-text-secondary: #5A6270;--color-text-muted: #8E96A4;--color-text-inverse: #FFFFFF;--color-accent: #E8431A;--color-accent-dim: rgba(232,67,26,.1);--color-accent-border: rgba(232,67,26,.35);--color-accent-hover: #CF3C17;--color-accent-08: rgba(232,67,26,.031);--color-accent-15: rgba(232,67,26,.082);--color-accent-18: rgba(232,67,26,.094);--color-accent-22: rgba(232,67,26,.133);--color-accent-33: rgba(232,67,26,.2);--color-accent-44: rgba(232,67,26,.267);--color-accent-55: rgba(232,67,26,.333);--color-accent-66: rgba(232,67,26,.4);--color-blue: #3A6FB5;--color-blue-dim: rgba(58,111,181,.1);--color-blue-border: rgba(58,111,181,.35);--color-blue-15: rgba(58,111,181,.082);--color-blue-18: rgba(58,111,181,.094);--color-blue-22: rgba(58,111,181,.133);--color-blue-33: rgba(58,111,181,.2);--color-blue-44: rgba(58,111,181,.267);--color-blue-55: rgba(58,111,181,.333);--color-blue-66: rgba(58,111,181,.4);--color-green: #28945A;--color-green-dim: rgba(40,148,90,.1);--color-green-border: rgba(40,148,90,.35);--color-green-15: rgba(40,148,90,.082);--color-green-18: rgba(40,148,90,.094);--color-green-22: rgba(40,148,90,.133);--color-green-33: rgba(40,148,90,.2);--color-green-44: rgba(40,148,90,.267);--color-green-55: rgba(40,148,90,.333);--color-green-66: rgba(40,148,90,.4);--color-purple: #7B5BA8;--color-purple-dim: rgba(123,91,168,.1);--color-purple-border: rgba(123,91,168,.35);--color-purple-11: rgba(123,91,168,.067);--color-purple-15: rgba(123,91,168,.082);--color-purple-18: rgba(123,91,168,.094);--color-purple-22: rgba(123,91,168,.133);--color-purple-33: rgba(123,91,168,.2);--color-purple-44: rgba(123,91,168,.267);--color-purple-55: rgba(123,91,168,.333);--color-purple-66: rgba(123,91,168,.4);--color-red: #D94040;--color-red-dim: rgba(217,64,64,.1);--color-red-border: rgba(217,64,64,.35);--color-red-15: rgba(217,64,64,.082);--color-red-18: rgba(217,64,64,.094);--color-red-22: rgba(217,64,64,.133);--color-red-33: rgba(217,64,64,.2);--color-red-44: rgba(217,64,64,.267);--color-red-55: rgba(217,64,64,.333);--color-red-66: rgba(217,64,64,.4);--color-yellow: #D4911A;--color-yellow-dim: rgba(212,145,26,.1);--color-yellow-border: rgba(212,145,26,.35);--color-yellow-11: rgba(212,145,26,.067);--color-yellow-15: rgba(212,145,26,.082);--color-yellow-18: rgba(212,145,26,.094);--color-yellow-22: rgba(212,145,26,.133);--color-yellow-33: rgba(212,145,26,.2);--color-yellow-44: rgba(212,145,26,.267);--color-yellow-55: rgba(212,145,26,.333);--color-yellow-66: rgba(212,145,26,.4);--color-cyan: #1A9E82;--color-cyan-dim: rgba(26,158,130,.1);--color-cyan-border: rgba(26,158,130,.35);--color-cyan-18: rgba(26,158,130,.094);--color-cyan-33: rgba(26,158,130,.2);--color-cyan-55: rgba(26,158,130,.333);--color-muted-18: rgba(157,162,174,.094);--color-muted-55: rgba(157,162,174,.333);--color-muted-66: rgba(157,162,174,.4);--color-border-11: rgba(196,191,184,.067);--color-border-22: rgba(196,191,184,.133);--color-border-33: rgba(196,191,184,.2);--color-border-44: rgba(196,191,184,.267);--color-fn-profit: #28945A;--color-fn-materials: #3A6FB5;--color-fn-reserve: #D4911A;--color-fn-cushion: #7B5BA8;--color-fn-piggy: #1A9E82;--color-fn-credit: #E06050;--color-fn-contractors: #E8903E;--sidebar-bg: #1A1D26;--sidebar-text: #E8E8E8;--sidebar-text-muted: #7A7F8C;--sidebar-hover: rgba(255,255,255,.06);--sidebar-active: rgba(255,113,36,.15);--sidebar-border: rgba(255,255,255,.08);--color-canvas-bg: #111318;--color-canvas-grid: #1e2130;--color-canvas-shelf: #2a2e3e}:root,[data-theme=dark]{--color-bg: #0F0F0F;--color-surface: #1A1A1A;--color-surface-raised: #242424;--color-surface-inset: #0A0A0A;--color-border: #333333;--color-border-strong: #444444;--color-text: #E8E8E8;--color-text-secondary: #999999;--color-text-muted: #666666;--color-text-inverse: #1A1D26;--color-accent: #FF6D3A;--color-accent-dim: rgba(255,109,58,.12);--color-accent-border: rgba(255,109,58,.4);--color-accent-hover: #FF8555;--color-accent-08: rgba(255,109,58,.031);--color-accent-15: rgba(255,109,58,.082);--color-accent-18: rgba(255,109,58,.094);--color-accent-22: rgba(255,109,58,.133);--color-accent-33: rgba(255,109,58,.2);--color-accent-44: rgba(255,109,58,.267);--color-accent-55: rgba(255,109,58,.333);--color-accent-66: rgba(255,109,58,.4);--color-blue: #5B8FD4;--color-blue-dim: rgba(91,143,212,.12);--color-blue-border: rgba(91,143,212,.4);--color-blue-15: rgba(91,143,212,.082);--color-blue-18: rgba(91,143,212,.094);--color-blue-22: rgba(91,143,212,.133);--color-blue-33: rgba(91,143,212,.2);--color-blue-44: rgba(91,143,212,.267);--color-blue-55: rgba(91,143,212,.333);--color-blue-66: rgba(91,143,212,.4);--color-green: #3BB06E;--color-green-dim: rgba(59,176,110,.12);--color-green-border: rgba(59,176,110,.4);--color-green-15: rgba(59,176,110,.082);--color-green-18: rgba(59,176,110,.094);--color-green-22: rgba(59,176,110,.133);--color-green-33: rgba(59,176,110,.2);--color-green-44: rgba(59,176,110,.267);--color-green-55: rgba(59,176,110,.333);--color-green-66: rgba(59,176,110,.4);--color-purple: #9B7DC8;--color-purple-dim: rgba(155,125,200,.12);--color-purple-border: rgba(155,125,200,.4);--color-purple-11: rgba(155,125,200,.067);--color-purple-15: rgba(155,125,200,.082);--color-purple-18: rgba(155,125,200,.094);--color-purple-22: rgba(155,125,200,.133);--color-purple-33: rgba(155,125,200,.2);--color-purple-44: rgba(155,125,200,.267);--color-purple-55: rgba(155,125,200,.333);--color-purple-66: rgba(155,125,200,.4);--color-red: #E55555;--color-red-dim: rgba(229,85,85,.12);--color-red-border: rgba(229,85,85,.4);--color-red-15: rgba(229,85,85,.082);--color-red-18: rgba(229,85,85,.094);--color-red-22: rgba(229,85,85,.133);--color-red-33: rgba(229,85,85,.2);--color-red-44: rgba(229,85,85,.267);--color-red-55: rgba(229,85,85,.333);--color-red-66: rgba(229,85,85,.4);--color-yellow: #E0A52E;--color-yellow-dim: rgba(224,165,46,.12);--color-yellow-border: rgba(224,165,46,.4);--color-yellow-11: rgba(224,165,46,.067);--color-yellow-15: rgba(224,165,46,.082);--color-yellow-18: rgba(224,165,46,.094);--color-yellow-22: rgba(224,165,46,.133);--color-yellow-33: rgba(224,165,46,.2);--color-yellow-44: rgba(224,165,46,.267);--color-yellow-55: rgba(224,165,46,.333);--color-yellow-66: rgba(224,165,46,.4);--color-cyan: #2BBFA0;--color-cyan-dim: rgba(43,191,160,.12);--color-cyan-border: rgba(43,191,160,.4);--color-cyan-18: rgba(43,191,160,.094);--color-cyan-33: rgba(43,191,160,.2);--color-cyan-55: rgba(43,191,160,.333);--color-muted-18: rgba(102,102,102,.094);--color-muted-55: rgba(102,102,102,.333);--color-muted-66: rgba(102,102,102,.4);--color-border-11: rgba(51,51,51,.067);--color-border-22: rgba(51,51,51,.133);--color-border-33: rgba(51,51,51,.2);--color-border-44: rgba(51,51,51,.267);--color-fn-profit: #3BB06E;--color-fn-materials: #5B8FD4;--color-fn-reserve: #E0A52E;--color-fn-cushion: #9B7DC8;--color-fn-piggy: #2BBFA0;--color-fn-credit: #E57070;--color-fn-contractors: #F0A050;--sidebar-bg: #111111;--sidebar-text: #E8E8E8;--sidebar-text-muted: #666666;--sidebar-hover: rgba(255,255,255,.04);--sidebar-active: rgba(255,109,58,.15);--sidebar-border: rgba(255,255,255,.06);--color-canvas-bg: #0A0A0A;--color-canvas-grid: #1a1a1a;--color-canvas-shelf: #222222}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:16px}html,body{overflow-x:hidden;height:100%}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input,select,textarea,button{font-size:16px!important;font-family:inherit}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;color:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-strong)}::selection{background:var(--color-accent-dim);color:var(--color-text)}#root{height:100%}@media (max-width: 767px){.r-grid-2,.r-grid-3{grid-template-columns:1fr!important}.r-grid-4,.r-grid-5{grid-template-columns:1fr 1fr!important}.r-flex-col{flex-direction:column!important}.r-hide{display:none!important}}h1,h2,h3,h4{font-family:"Space Grotesk","Plus Jakarta Sans",var(--font-sans);font-weight:800;letter-spacing:-.02em;line-height:1.2}h1{font-size:28px}h2{font-size:22px}h3{font-size:17px}h4{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary)}button{font-family:"Space Grotesk",var(--font-sans);font-weight:600;letter-spacing:.01em;transition:all .12s ease}button:hover{filter:brightness(1.08)}button:active{transform:translateY(1px)}button[style*=background][style*=border]{box-shadow:0 2px #00000026}button[style*=background][style*=border]:active{box-shadow:0 0 #00000026;transform:translateY(2px)}input[type=text],input[type=number],input[type=tel],input[type=email],input[type=password],input[type=search],input[type=date],input:not([type]),select,textarea{font-family:var(--font-sans)!important;border:2px solid var(--color-border)!important;border-radius:2px!important;background:var(--color-surface)!important;color:var(--color-text)!important;transition:border-color .15s ease,box-shadow .15s ease;outline:none!important}input:focus,select:focus,textarea:focus{border-color:var(--color-accent)!important;box-shadow:0 0 0 3px var(--color-accent-15)!important}input[type=number]{font-family:"JetBrains Mono",var(--font-mono)!important;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}div[style*=border][style*=border-radius]{box-shadow:0 1px 3px #0000000a;transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}.river-card{transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease!important}.river-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000014,0 2px 8px #0000000a!important;border-color:var(--color-accent, #C5501E)!important}.river-card:active{transform:translateY(0);box-shadow:0 2px 8px #0000000f!important;transition-duration:80ms!important}.sidebar-item:hover{background:var(--sidebar-hover, rgba(255,255,255,.06))!important}.sidebar-item:active{background:var(--sidebar-active-press, rgba(255,255,255,.1))!important}[style*="JetBrains Mono"]{letter-spacing:-.02em}[style*="text-transform: uppercase"],[style*="text-transform:uppercase"],[style*=textTransform]{font-family:"JetBrains Mono",var(--font-mono);font-weight:700}span[style*=border-radius][style*=padding][style*=font-weight]{font-family:"JetBrains Mono",var(--font-mono);letter-spacing:.02em}hr{border:none;border-top:2px solid var(--color-border);margin:20px 0}.recharts-tooltip-wrapper{font-family:"JetBrains Mono",var(--font-mono)!important}.recharts-default-tooltip{border:2px solid var(--color-border)!important;border-radius:2px!important;box-shadow:0 4px 16px #0000001f!important}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}main>div{animation:fadeIn .25s ease-out}@media print{aside,nav,header{display:none!important}main{padding:0!important}*{box-shadow:none!important}}
