:root,:root[data-theme=dark]{--bg-canvas: #000000;--bg-card: #0c0c0c;--bg-elevated: #141414;--bg-grid: rgba(255, 255, 255, .03);--fg-primary: #f5f5f1;--fg-secondary: rgba(245, 245, 241, .72);--fg-muted: rgba(245, 245, 241, .45);--fg-on-mint: #000000;--mint: #00e0b4;--mint-soft: rgba(0, 224, 180, .16);--mint-glow: rgba(0, 224, 180, .18);--status-ok: #00e0b4;--status-warn: #ffc857;--status-danger: #ff7a6b;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .18)}:root[data-theme=light]{--bg-canvas: #f1f2ed;--bg-card: #ffffff;--bg-elevated: #fafaf6;--bg-grid: rgba(0, 0, 0, .04);--fg-primary: #0a0a0a;--fg-secondary: rgba(10, 10, 10, .78);--fg-muted: rgba(10, 10, 10, .56);--fg-on-mint: #ffffff;--mint: #00b48f;--mint-soft: rgba(0, 180, 143, .14);--mint-glow: rgba(0, 180, 143, .16);--status-ok: #00b48f;--status-warn: #d99a1e;--status-danger: #d65849;--border: rgba(0, 0, 0, .1);--border-strong: rgba(0, 0, 0, .22)}:root{--font-display: "Inter", system-ui, -apple-system, sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--fs-display: clamp(2.5rem, 5vw, 4.5rem);--fs-h1: 2rem;--fs-h2: 1.5rem;--fs-body: .95rem;--fs-micro: .75rem;--radius: 0;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 40px;--space-6: 64px}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background-color:var(--bg-canvas);color:var(--fg-primary);font-family:var(--font-body);font-size:var(--fs-body);line-height:1.5;-webkit-font-smoothing:antialiased;background-image:linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px);background-size:32px 32px,32px 32px;background-attachment:fixed}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--bg-card);border-right:1px solid var(--border);padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.sidebar .brand{font-family:var(--font-display);font-weight:700;font-size:1.25rem;letter-spacing:-.02em}.sidebar nav{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.sidebar nav a,.sidebar nav button{background:transparent;border:0;color:var(--fg-secondary);text-align:left;padding:var(--space-2) var(--space-3);font:inherit;cursor:pointer;border-left:2px solid transparent}.sidebar nav a:hover,.sidebar nav button:hover{color:var(--fg-primary);border-left-color:var(--mint)}.canvas{padding:var(--space-6) var(--space-5);width:100%;max-width:1120px;margin-inline:auto}.canvas--wide{max-width:1360px}.settings-tabs::-webkit-scrollbar{display:none}.display{font-family:var(--font-display);font-size:var(--fs-display);font-weight:700;letter-spacing:-.04em;line-height:.95;margin:0 0 var(--space-4)}.mint{color:var(--mint);text-shadow:none}.muted{color:var(--fg-muted);max-width:60ch}.btn{display:inline-block;background:var(--fg-primary);color:var(--bg-canvas);border:0;padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;margin-top:var(--space-4)}.btn:hover{background:var(--mint);color:var(--fg-on-mint)}code{font-family:var(--font-mono);background:var(--bg-elevated);padding:0 var(--space-1);border:1px solid var(--border);font-size:.85em}.cost-report-sheet{--doc-navy: #1b2a4a;--doc-navy-deep: #0b1e3f;--doc-cyan: #00e5b8;--doc-paper: #ffffff;--doc-gray-bg: #f3f4f6;--doc-gray-text: #6b7280;--doc-divider: #e5e7eb;--font-doc-title: "Lato", system-ui, -apple-system, sans-serif;--font-doc-body: "Roboto", system-ui, -apple-system, sans-serif;background:var(--doc-paper)!important;color:var(--doc-navy);font-family:var(--font-doc-body)}.cost-report-sheet:before{content:"g";position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-doc-title);font-weight:900;font-size:60vh;line-height:1;color:#1b2a4a08;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0}.cost-report-sheet>*{position:relative;z-index:1}.cost-report-sheet .doc-block,.cost-report-sheet tr{break-inside:avoid;page-break-inside:avoid}.cost-report-sheet ul.doc-bullets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cost-report-sheet ul.doc-bullets>li{position:relative;padding-left:1.1em;font-family:var(--font-doc-body);color:var(--doc-navy);line-height:1.45}.cost-report-sheet ul.doc-bullets>li:before{content:"›";position:absolute;left:0;color:var(--doc-cyan);font-weight:700}@media print{@page{size:A4 portrait;margin:0}.sidebar,.app-header,.print-actions{display:none!important}html,body,#root{height:auto!important;min-height:0!important;overflow:visible!important}body{background:#fff!important;background-image:none!important}.app-shell{display:block!important;min-height:0!important}.app-content,.app-main{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important}main,.report-print-canvas{padding:0!important;background:none!important;min-height:0!important;display:block!important;overflow:visible!important}.report-print-frame{width:210mm!important;margin:0!important;overflow:visible!important}.report-sheet{width:210mm!important;min-height:297mm!important;box-shadow:none!important;margin:0!important;page-break-after:always;-webkit-print-color-adjust:exact;print-color-adjust:exact}.cost-report-sheet{width:210mm!important;min-height:297mm!important;box-shadow:none!important;margin:0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-sheet *,.cost-report-sheet *{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
