@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-arabic-wght-normal-CGnJ-sf6.woff2) format("woff2-variations");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-ext-wght-normal-BjodpZir.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-wght-normal-DveCct9I.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-hebrew-wght-normal-BIkpbuMU.woff2) format("woff2-variations");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-ext-wght-normal-OacczzuJ.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-wght-normal-CnQIisVs.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Assistant;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/assistant-hebrew-400-normal-BaQtOmbn.woff2) format("woff2"),url(/assets/assistant-hebrew-400-normal-B18Ux13Q.woff) format("woff")}@font-face{font-family:Assistant;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/assistant-hebrew-500-normal-D-sgbtFC.woff2) format("woff2"),url(/assets/assistant-hebrew-500-normal-COnZ9-PC.woff) format("woff")}@font-face{font-family:Assistant;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/assistant-hebrew-600-normal-DM_XHISn.woff2) format("woff2"),url(/assets/assistant-hebrew-600-normal-D6VOnxse.woff) format("woff")}@font-face{font-family:Assistant;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/assistant-hebrew-700-normal-DbcUQTwo.woff2) format("woff2"),url(/assets/assistant-hebrew-700-normal-D7ACPilb.woff) format("woff")}:root{color-scheme:light;--canvas: #eef1f5;--canvas-deep: #e4e9ef;--surface: #ffffff;--surface-muted: #f6f8fa;--surface-sunken: #eef2f6;--ink: #17242e;--ink-strong: #0b141c;--ink-soft: #5b6b78;--ink-faint: #93a1ac;--line: #e2e8ee;--line-strong: #cfd8e0;--line-hair: #eef2f6;--accent: #0f8b82;--accent-bright: #14b8a6;--accent-deep: #0a5f5a;--accent-wash: #e6f6f4;--accent-glow: rgba(20, 184, 166, .28);--warm: #ef7a53;--warm-wash: #fdeee8;--favorable: #0e9f6e;--favorable-wash: #e7f7f0;--adverse: #e0454c;--adverse-wash: #fdecec;--neutral-wash: #eef2f6;--series-actual: #0f8b82;--series-budget: #f0a30a;--series-prior: #a3b1bd;--series-forecast: #6366f1;--shadow-sm: 0 1px 2px rgba(16, 32, 43, .05);--shadow-card: 0 1px 2px rgba(16, 32, 43, .04), 0 8px 22px -14px rgba(16, 32, 43, .28);--shadow-lift: 0 2px 6px rgba(16, 32, 43, .06), 0 18px 38px -18px rgba(16, 32, 43, .32);--shadow-float: 0 24px 64px -24px rgba(11, 20, 28, .45);--radius-sm: 7px;--radius: 11px;--radius-lg: 16px;--font-display: "Rubik Variable", "Rubik", "Assistant", "Segoe UI", system-ui, sans-serif;--font-body: "Assistant", "Rubik Variable", "Segoe UI", system-ui, sans-serif;--font-figure: "Rubik Variable", "Rubik", "Segoe UI", system-ui, sans-serif;--nav-width: 244px;--header-height: 68px;--ease: cubic-bezier(.22, .68, .35, 1)}:root[data-theme=dark]{color-scheme:dark;--canvas: #0d1419;--canvas-deep: #080d11;--surface: #151f27;--surface-muted: #1a252e;--surface-sunken: #111a21;--ink: #e4ebf0;--ink-strong: #f4f8fa;--ink-soft: #9aabb8;--ink-faint: #647685;--line: #24323d;--line-strong: #33444f;--line-hair: #1c2831;--accent: #2dd4bf;--accent-bright: #5eead4;--accent-deep: #0f8b82;--accent-wash: #0f2b2c;--accent-glow: rgba(45, 212, 191, .22);--warm: #fb9268;--warm-wash: #2e1d16;--favorable: #34d399;--favorable-wash: #10291f;--adverse: #f87171;--adverse-wash: #2c1618;--neutral-wash: #1a252e;--series-actual: #2dd4bf;--series-budget: #fbbf24;--series-prior: #64748b;--series-forecast: #818cf8;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-card: 0 1px 2px rgba(0, 0, 0, .5), 0 10px 26px -16px rgba(0, 0, 0, .9);--shadow-lift: 0 2px 8px rgba(0, 0, 0, .5), 0 20px 44px -20px rgba(0, 0, 0, 1);--shadow-float: 0 28px 70px -24px rgba(0, 0, 0, .9)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;color:var(--ink);font-family:var(--font-body);font-size:14px;line-height:1.55;background-color:var(--canvas);background-image:radial-gradient(1100px 620px at 88% -8%,var(--accent-glow),transparent 62%),radial-gradient(880px 520px at 4% 6%,rgba(239,122,83,.14),transparent 58%),radial-gradient(1000px 700px at 50% 108%,rgba(99,102,241,.1),transparent 60%);background-attachment:fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:600;line-height:1.2;letter-spacing:-.015em;color:var(--ink-strong)}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent-glow)}.app-shell{display:grid;grid-template-columns:var(--nav-width) 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow-y:auto;padding:14px 12px;color:#cfe0e4;background:radial-gradient(420px 240px at 80% 0%,rgba(20,184,166,.22),transparent 70%),linear-gradient(168deg,#0e2b34,#0a1c24 52%,#081419)}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:10px 10px 18px}.brand-mark{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,var(--accent-bright),var(--accent-deep));box-shadow:0 6px 18px -6px var(--accent-glow),inset 0 1px #ffffff47;color:#04211f}.sidebar-brand h1{font-size:15px;color:#f2fbfb;letter-spacing:-.01em}.sidebar-brand p{margin:2px 0 0;font-size:11px;color:#7d97a0}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.nav-group-label{padding:16px 12px 7px;font-size:10.5px;font-weight:700;letter-spacing:.02em;color:#6d8791}.nav-item{position:relative;display:flex;align-items:center;gap:11px;width:100%;padding:9px 12px;border:0;border-radius:var(--radius);background:transparent;color:#b9ced4;text-align:start;cursor:pointer;font-size:13.5px;font-weight:500;transition:background .16s var(--ease),color .16s var(--ease),transform .16s var(--ease)}.nav-item:hover{background:#ffffff12;color:#eefbfb}.nav-item:active{transform:scale(.985)}.nav-item[aria-current=true]{background:linear-gradient(100deg,#14b8a642,#14b8a614);color:#fff;font-weight:600;box-shadow:inset 0 0 0 1px #5eead438}.nav-item[aria-current=true]:before{content:"";position:absolute;inset-inline-start:0;top:50%;translate:0 -50%;width:3px;height:18px;border-radius:0 3px 3px 0;background:var(--accent-bright);box-shadow:0 0 12px var(--accent-glow)}.nav-icon{width:17px;height:17px;flex:none;opacity:.9}.sidebar-footer{margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);font-size:11.5px;color:#7d97a0;display:flex;flex-direction:column;gap:4px}.main-area{display:flex;flex-direction:column;min-width:0}.topbar{position:sticky;top:0;z-index:30;min-height:var(--header-height);display:flex;align-items:center;gap:14px;padding:0 24px;background:color-mix(in srgb,var(--canvas) 76%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);border-bottom:1px solid var(--line)}.topbar-title h2{font-size:19px;font-weight:600}.topbar-title span{font-size:12px;color:var(--ink-soft)}.topbar-spacer{flex:1}.page{padding:22px 24px 40px;display:flex;flex-direction:column;gap:18px}.page>*{animation:rise .48s var(--ease) both}.page>*:nth-child(1){animation-delay:0ms}.page>*:nth-child(2){animation-delay:45ms}.page>*:nth-child(3){animation-delay:90ms}.page>*:nth-child(4){animation-delay:135ms}.page>*:nth-child(5){animation-delay:.18s}.page>*:nth-child(n+6){animation-delay:.22s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@media(prefers-reduced-motion:reduce){.page>*,.kpi-card,.nav-item{animation:none!important;transition:none!important}}.control{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 13px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);cursor:pointer;font-size:13px;font-weight:500;box-shadow:var(--shadow-sm);transition:border-color .15s var(--ease),box-shadow .15s var(--ease),transform .12s var(--ease)}.control:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.control:active{transform:translateY(1px)}.control:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}select.control{padding-inline-end:8px}.button-primary{border-color:transparent;background:linear-gradient(140deg,var(--accent-bright),var(--accent));color:#04211f;font-weight:700;box-shadow:0 6px 16px -8px var(--accent-glow)}.button-primary:hover{border-color:transparent;box-shadow:0 10px 22px -8px var(--accent-glow);filter:brightness(1.04)}.button-accent{border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:var(--accent-wash);color:var(--accent-deep);font-weight:600}.button-danger:hover{border-color:var(--adverse);color:var(--adverse);box-shadow:0 0 0 3px var(--adverse-wash)}.button-quiet{border-color:transparent;background:transparent;box-shadow:none;color:var(--ink-soft)}.button-quiet:hover{background:var(--surface-sunken);border-color:var(--line);box-shadow:none}.segmented{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-sunken);gap:2px}.segmented button{border:0;border-radius:5px;background:transparent;padding:0 12px;height:28px;cursor:pointer;font-size:12.5px;font-weight:500;color:var(--ink-soft);transition:background .16s var(--ease),color .16s var(--ease),box-shadow .16s var(--ease)}.segmented button:hover{color:var(--ink)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--accent-deep);font-weight:700;box-shadow:var(--shadow-sm)}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:11.5px;font-weight:600;color:var(--ink-soft)}.input{height:36px;padding:0 11px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-width:0;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.card-header{display:flex;align-items:center;gap:14px;padding:15px 18px;border-bottom:1px solid var(--line-hair)}.card-header h3{font-size:15px}.card-header .subtitle{margin-top:2px;font-size:12px;color:var(--ink-soft)}.card-body{padding:18px}.card-body.flush{padding:0}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:12px}.kpi-card{position:relative;container-type:inline-size;padding:12px 14px 11px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s var(--ease)}.kpi-card:after{content:"";position:absolute;inset-block-start:-50px;inset-inline-end:-50px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,var(--accent-glow),transparent 68%);opacity:.22;pointer-events:none;transition:opacity .2s var(--ease)}.kpi-card-primary:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:linear-gradient(to bottom,var(--accent-bright),var(--accent))}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);border-color:color-mix(in srgb,var(--accent) 24%,var(--line))}.kpi-card:hover:after{opacity:.55}.kpi-label{font-size:11.5px;font-weight:600;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-value{margin-top:6px;font-family:var(--font-figure);font-size:clamp(17px,.5vw + 12.5px,21px);font-size:clamp(15px,10.5cqi,21px);font-weight:500;letter-spacing:-.02em;line-height:1.25;color:var(--ink-strong);font-variant-numeric:tabular-nums;direction:ltr;text-align:start;unicode-bidi:isolate;white-space:nowrap}.kpi-card-primary .kpi-value{font-weight:600}.kpi-deltas{display:flex;margin-top:9px;border-top:1px solid var(--line-hair)}.kpi-delta{flex:1;min-width:0;padding-top:7px;display:flex;flex-direction:column;gap:1px}.kpi-delta+.kpi-delta{border-inline-start:1px solid var(--line-hair);padding-inline-start:10px}.kpi-delta-label{font-size:9.5px;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-delta-value{display:flex;align-items:center;gap:3px;font-family:var(--font-figure);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;white-space:nowrap}.kpi-delta-value i{font-style:normal;font-size:6px;line-height:1;opacity:.8}.kpi-delta.up .kpi-delta-value{color:var(--favorable)}.kpi-delta.down .kpi-delta-value{color:var(--adverse)}.kpi-delta.flat .kpi-delta-value{color:var(--ink-faint)}.kpi-spark{margin:9px -14px -11px;display:block;width:calc(100% + 28px);height:26px;overflow:visible}.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:600;border:1px solid var(--line);background:var(--neutral-wash);color:var(--ink-soft);white-space:nowrap}.chip b{font-family:var(--font-figure);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}.chip-favorable{background:var(--favorable-wash);border-color:color-mix(in srgb,var(--favorable) 28%,transparent);color:var(--favorable)}.chip-adverse{background:var(--adverse-wash);border-color:color-mix(in srgb,var(--adverse) 28%,transparent);color:var(--adverse)}.chip-accent{background:var(--accent-wash);border-color:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--accent-deep)}.table-scroll{overflow:auto;max-height:calc(100vh - 230px)}.table-scroll::-webkit-scrollbar{width:11px;height:11px}.table-scroll::-webkit-scrollbar-thumb{background:var(--line-strong);border:3px solid var(--surface);border-radius:99px}.table-scroll::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}table.ledger{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px;--period-head-height: 0px}table.ledger th,table.ledger td{padding:6px 10px;border-bottom:1px solid var(--line-hair);white-space:nowrap}table.ledger.compact th,table.ledger.compact td{padding:6px 7px}table.ledger.compact th.sticky-start,table.ledger.compact td.sticky-start{max-width:128px;white-space:normal;line-height:1.35}table.ledger thead th{position:sticky;top:0;z-index:12;background:var(--surface-muted);border-bottom:1px solid var(--line-strong);font-family:var(--font-display);font-size:11px;font-weight:600;color:var(--ink-soft);text-align:center;padding-block:9px}table.ledger thead th.group-head{color:var(--accent-deep)}table.ledger thead tr:first-child>th{top:0}table.ledger thead tr:nth-child(2)>th{top:var(--period-head-height)}table.ledger thead th.period-head{text-align:center;font-family:var(--font-display);font-size:12px;font-weight:600;color:var(--accent-deep);letter-spacing:.01em;background:color-mix(in srgb,var(--accent-wash) 85%,var(--surface));border-bottom:1px solid var(--line)}[dir=rtl] table.ledger th.period-head,[dir=rtl] table.ledger th.period-start,[dir=rtl] table.ledger td.period-start{border-right:2px solid var(--line-strong);border-left:0}[dir=ltr] table.ledger th.period-head,[dir=ltr] table.ledger th.period-start,[dir=ltr] table.ledger td.period-start{border-left:2px solid var(--line-strong);border-right:0}[dir=rtl] table.ledger thead th.group-head,[dir=rtl] table.ledger td.group-start{border-right:1px solid var(--line-hair);border-left:0}[dir=ltr] table.ledger thead th.group-head,[dir=ltr] table.ledger td.group-start{border-left:1px solid var(--line-hair);border-right:0}table.ledger tbody td.period-start{font-weight:600;color:var(--ink-strong)}table.ledger th.sticky-start,table.ledger td.sticky-start{position:sticky;inset-inline-start:0;z-index:10;background:var(--surface);text-align:start;border-inline-end:1px solid var(--line);min-width:268px;max-width:350px;white-space:normal}table.ledger thead th.sticky-start{z-index:14;background:color-mix(in srgb,var(--surface-muted) 92%,transparent)}table.ledger td.figure{font-family:var(--font-figure);font-variant-numeric:tabular-nums;text-align:end;direction:ltr;unicode-bidi:isolate}table.ledger tbody tr{transition:background .12s var(--ease)}table.ledger tbody tr:hover>td,table.ledger tbody tr:hover>td.sticky-start{background:var(--accent-wash)}tr.row-sectionHeader>td,tr.row-sectionHeader>td.sticky-start{background:var(--accent-deep);color:#eafaf8;font-family:var(--font-display);font-weight:600;font-size:12px;letter-spacing:.01em;padding-block:8px;border-bottom:0}tr.row-sectionHeader>td.sticky-start{border-inline-end-color:#ffffff29}tr.row-sectionHeader:hover>td,tr.row-sectionHeader:hover>td.sticky-start{background:var(--accent-deep)}tr.row-groupHeader>td{background:var(--surface-muted);font-weight:600;color:var(--ink-strong)}tr.row-groupHeader>td.sticky-start{background:var(--surface-muted)}tr.row-subtotal>td{font-weight:600;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-muted) 55%,var(--surface))}tr.row-subtotal>td.sticky-start{background:color-mix(in srgb,var(--surface-muted) 55%,var(--surface))}tr.row-total>td{font-weight:700;border-top:1px solid var(--line-strong);background:var(--surface-sunken)}tr.row-total>td.sticky-start{background:var(--surface-sunken)}tr.row-grandTotal>td{font-family:var(--font-display);font-weight:700;font-size:13.5px;color:var(--ink-strong);border-top:2px solid var(--accent);border-bottom:1px solid var(--line-strong);background:linear-gradient(180deg,var(--accent-wash),color-mix(in srgb,var(--accent-wash) 45%,var(--surface)))}tr.row-grandTotal>td.sticky-start{background:linear-gradient(180deg,var(--accent-wash),color-mix(in srgb,var(--accent-wash) 45%,var(--surface)))}tr.row-kpi>td{color:var(--ink-soft);font-size:12px}tr.row-kpi>td.sticky-start .row-label:before{content:"";flex:none;width:4px;height:4px;margin-inline-end:2px;border-radius:50%;background:var(--accent);opacity:.55}.row-label{display:flex;align-items:center;gap:8px}.row-code{font-family:var(--font-figure);font-variant-numeric:tabular-nums;font-size:10.5px;color:var(--ink-faint);flex:none}.indent-1{padding-inline-start:22px!important}.indent-2{padding-inline-start:38px!important}.delta-favorable{color:var(--favorable)}.delta-adverse{color:var(--adverse)}.delta-material{font-weight:700}td.material-adverse{background:var(--adverse-wash)!important}[dir=rtl] td.material-adverse{box-shadow:inset -2px 0 0 var(--adverse)}[dir=ltr] td.material-adverse{box-shadow:inset 2px 0 0 var(--adverse)}.grid-input{width:100%;min-width:76px;height:27px;padding:0 7px;border:1px solid transparent;border-radius:6px;background:transparent;font-family:var(--font-figure);font-variant-numeric:tabular-nums;font-size:12.5px;text-align:end;direction:ltr;transition:background .13s var(--ease),border-color .13s var(--ease),box-shadow .13s var(--ease)}.grid-input:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-muted)}.grid-input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-wash)}.grid-input.is-override{background:var(--warm-wash);border-color:color-mix(in srgb,var(--warm) 32%,transparent);font-weight:700;color:color-mix(in srgb,var(--warm) 72%,var(--ink))}.grid-input:disabled{color:var(--ink-faint);background:transparent;cursor:not-allowed}td.computed{color:var(--ink-soft)}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:14px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:16px}.section-title{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--ink-soft)}.section-title:after{content:"";flex:1;height:1px;background:linear-gradient(to left,var(--line),transparent)}.muted{color:var(--ink-soft)}.tiny{font-size:11.5px}.figure{font-family:var(--font-figure);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}.empty-state{padding:56px 26px;text-align:center;color:var(--ink-soft)}.empty-state h3{margin-bottom:7px;font-size:16px}.empty-mark{width:54px;height:54px;margin:0 auto 16px;display:grid;place-items:center;border-radius:17px;background:var(--accent-wash);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.banner{display:flex;align-items:center;gap:11px;padding:11px 15px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-radius:var(--radius);background:var(--accent-wash);color:color-mix(in srgb,var(--accent-deep) 88%,var(--ink));font-size:12.5px;box-shadow:var(--shadow-sm)}.banner:before{content:"";flex:none;width:3px;align-self:stretch;border-radius:99px;background:var(--accent)}.banner-adverse{border-color:color-mix(in srgb,var(--adverse) 26%,var(--line));background:var(--adverse-wash);color:color-mix(in srgb,var(--adverse) 84%,var(--ink))}.banner-adverse:before{background:var(--adverse)}.save-dot{width:7px;height:7px;border-radius:50%;background:var(--ink-faint);flex:none}.save-dot.saving{background:var(--accent-bright);box-shadow:0 0 0 0 var(--accent-glow);animation:pulse 1.4s var(--ease) infinite}.save-dot.saved{background:var(--favorable)}.save-dot.error{background:var(--adverse)}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--accent-glow)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}.loading-screen{height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--ink-soft)}.loading-mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,var(--accent-bright),var(--accent-deep));box-shadow:0 10px 28px -10px var(--accent-glow);animation:breathe 1.8s var(--ease) infinite}@keyframes breathe{50%{transform:scale(.88) rotate(-4deg);opacity:.75}}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-panel{width:min(390px,100%);display:flex;flex-direction:column;gap:16px;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lift);animation:pop .34s var(--ease) both}.auth-brand{display:flex;align-items:center;gap:12px;padding-bottom:4px}.auth-brand h1{font-size:17px}.auth-brand p{margin:2px 0 0}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--ink-faint);font-size:11.5px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#09121980;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:22px;animation:fade .16s var(--ease) both}@keyframes fade{0%{opacity:0}}.dialog{width:min(560px,100%);max-height:88vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);animation:pop .26s var(--ease) both}@keyframes pop{0%{opacity:0;transform:translateY(14px) scale(.985)}}.dialog-body{padding:20px;display:flex;flex-direction:column;gap:16px}.dialog-footer{display:flex;justify-content:flex-start;gap:8px;padding:14px 20px;border-top:1px solid var(--line-hair);background:var(--surface-muted)}.method-badge{font-size:11px;font-weight:500;padding:3px 9px;border-radius:999px;background:var(--surface-sunken);color:var(--ink-soft);border:1px solid var(--line);cursor:pointer;transition:border-color .15s var(--ease),color .15s var(--ease),background .15s var(--ease)}.method-badge:hover:not(:disabled){border-color:var(--accent);color:var(--accent-deep);background:var(--accent-wash)}.method-badge:disabled{opacity:.55;cursor:default}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-soft)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:11px;height:3px;border-radius:2px;display:inline-block}.row-drill{padding:0;border:0;background:transparent;font:inherit;color:inherit;text-align:start;cursor:pointer;border-bottom:1px dashed var(--line-strong);transition:color .12s var(--ease),border-color .12s var(--ease)}.row-drill:hover{color:var(--accent-deep);border-bottom-color:var(--accent)}table.ledger tbody tr.row-future>td{opacity:.55}.insight-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-inline-end:7px;vertical-align:middle}.insight-dot.task{background:var(--adverse)}.insight-dot.win{background:var(--favorable)}.insight-list{margin:0;padding:0;list-style:none;display:grid;gap:12px}.insight-item{padding-inline-start:11px;position:relative}.insight-item:before{content:"";position:absolute;inset-block:2px;inset-inline-start:0;width:2px;border-radius:2px}.insight-item.task:before{background:color-mix(in srgb,var(--adverse) 55%,transparent)}.insight-item.win:before{background:color-mix(in srgb,var(--favorable) 55%,transparent)}.insight-head{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}.insight-head strong{font-size:13px;line-height:1.45;color:var(--ink-strong)}.insight-head .chip{flex:none}.insight-body{margin:3px 0 0;font-size:12.5px;line-height:1.65;color:var(--ink-soft)}.insight-toggle{margin-top:5px;display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;font:inherit;font-size:11.5px;font-weight:600;color:var(--accent);cursor:pointer}.insight-toggle:hover{color:var(--accent-deep)}.insight-tools{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:5px}.insight-toggle.explore{color:var(--warm)}.insight-toggle.explore:hover:not(:disabled){color:color-mix(in srgb,var(--warm) 70%,#000)}.insight-toggle:disabled{color:var(--ink-faint);cursor:not-allowed}.insight-ai{margin:8px 0 0;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--warm) 32%,transparent);background:var(--warm-wash);font-size:12.5px;line-height:1.75;color:var(--ink);white-space:pre-wrap}.insight-ai.loading{color:var(--ink-soft);font-style:italic}.insight-action{margin:6px 0 0;padding:9px 11px;border-radius:var(--radius-sm);background:var(--surface-muted);border:1px solid var(--line-hair);font-size:12.5px;line-height:1.7;color:var(--ink)}.chart-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.chart-controls>.control{max-width:210px}.guide{border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-radius:var(--radius);background:linear-gradient(135deg,var(--accent-wash),var(--surface) 62%);overflow:hidden}.guide-head{display:flex;align-items:center;gap:9px;width:100%;padding:9px 14px;border:0;background:transparent;font:inherit;font-size:12.5px;color:var(--ink);text-align:start;cursor:pointer}.guide:not(.collapsed) .guide-head{padding-bottom:4px}.guide-mark{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:7px;color:#fff;background:linear-gradient(135deg,var(--accent-bright),var(--accent-deep));box-shadow:var(--shadow-sm)}.guide-title{flex:none;font-family:var(--font-display);font-weight:600;color:var(--accent-deep)}.guide-teaser{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--ink-soft)}.guide-toggle{flex:none;font-size:11px;font-weight:600;color:var(--accent);padding:3px 9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);background:var(--surface)}.guide-head:hover .guide-toggle{background:var(--accent);color:#fff;border-color:var(--accent)}.guide-body{padding:0 14px 12px;padding-inline-start:45px;font-size:12.5px;line-height:1.75;color:var(--ink-soft)}.guide-body p{margin:0 0 6px;color:var(--ink)}.guide-body ul{margin:0;padding-inline-start:17px;display:grid;gap:3px}.guide-body li::marker{color:var(--accent)}.assistant-shell{display:flex;min-height:0}.assistant-card{flex:1;display:flex;flex-direction:column;min-height:0}.assistant-card>.card-body{display:flex;flex-direction:column;min-height:0;flex:1}.chat-log{flex:1;min-height:320px;max-height:calc(100vh - var(--header-height) - 250px);overflow-y:auto;padding:18px 20px;display:flex;flex-direction:column;gap:16px;background:radial-gradient(120% 90% at 100% 0%,var(--accent-wash) 0%,transparent 55%),var(--surface-muted)}.chat-empty{margin:auto;text-align:center;max-width:560px;display:flex;flex-direction:column;align-items:center;gap:8px}.chat-empty p{margin:0;max-width:44ch}.chat-suggestions{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chat-suggestion{font:inherit;font-size:12.5px;color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:7px 14px;cursor:pointer;transition:border-color .15s ease,color .15s ease,transform .15s ease}.chat-suggestion:hover:not(:disabled){border-color:var(--accent);color:var(--accent-deep);transform:translateY(-1px)}.chat-suggestion:disabled{opacity:.5;cursor:not-allowed}.chat-turn{display:flex;flex-direction:column;gap:4px;max-width:82%}.chat-turn.user{align-self:flex-start;align-items:flex-start}.chat-turn.assistant{align-self:flex-end;align-items:flex-start;max-width:94%}.chat-author{font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);padding-inline:4px}.chat-bubble{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px 16px;font-size:13.5px;line-height:1.75;color:var(--ink);box-shadow:var(--shadow-sm);white-space:pre-wrap;overflow-wrap:anywhere}.chat-turn.user .chat-bubble{background:var(--accent-deep);border-color:var(--accent-deep);color:#f2fbfa;white-space:pre-wrap}.chat-turn.failed .chat-bubble{background:var(--adverse-wash);border-color:var(--adverse);color:var(--adverse)}.chat-turn.assistant .chat-bubble{white-space:normal}.chat-paragraph{margin:0 0 10px}.chat-bubble>*:last-child{margin-bottom:0}.chat-heading{font-family:var(--font-display);font-weight:600;font-size:13.5px;color:var(--ink-strong);margin:12px 0 6px}.chat-list{margin:0 0 10px;padding-inline-start:20px}.chat-list li{margin-bottom:4px}.chat-table-wrap{overflow-x:auto;margin:4px 0 12px}.chat-table{border-collapse:collapse;width:100%;font-size:12.5px}.chat-table th,.chat-table td{border-bottom:1px solid var(--line-hair);padding:6px 10px;text-align:start;white-space:nowrap}.chat-table th{background:var(--surface-sunken);font-weight:600;color:var(--ink-soft)}.chat-table td.figure{font-family:var(--font-figure);font-variant-numeric:tabular-nums;text-align:end}.chat-thinking{display:flex;align-items:center;gap:6px;color:var(--ink-faint)}.chat-thinking .dot{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:chat-pulse 1.1s ease-in-out infinite}.chat-thinking .dot:nth-child(2){animation-delay:.16s}.chat-thinking .dot:nth-child(3){animation-delay:.32s}@keyframes chat-pulse{0%,70%,to{opacity:.25;transform:scale(.85)}35%{opacity:1;transform:scale(1)}}.chat-composer{display:flex;gap:10px;align-items:flex-end;padding:14px 20px 8px;border-top:1px solid var(--line)}.chat-input{flex:1;resize:vertical;min-height:46px;line-height:1.6}.chat-foot{padding:0 20px 14px}@media print{body{background:#fff}.sidebar,.topbar,.toolbar{display:none!important}.page{padding:0}.card{box-shadow:none;border-color:#ccc}.table-scroll{max-height:none;overflow:visible}}
