@font-face{font-family:Heebo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/heebo-hebrew-wght-normal-BPH8bhzJ.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Heebo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/heebo-math-wght-normal-9gsQVfT-.woff2)format("woff2-variations");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Heebo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/heebo-symbols-wght-normal-CDk8D5aH.woff2)format("woff2-variations");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Heebo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/heebo-latin-ext-wght-normal-D5vEfs3i.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Heebo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/heebo-latin-wght-normal-CXdlclQD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-brand:#0f5c63;--color-brand-strong:#0a464c;--color-brand-soft:#e3f1f1;--color-accent:#b7790c;--color-accent-soft:#fdf3dc;--color-bg:#f4f6f7;--color-surface:#fff;--color-surface-muted:#eef2f3;--color-surface-raised:#fff;--color-border:#dbe2e4;--color-border-strong:#b9c6c9;--color-text:#17252a;--color-text-muted:#52646a;--color-text-on-brand:#fff;--color-info:#1f5fbf;--color-info-soft:#e5eefc;--color-success:#1d7a46;--color-success-soft:#e2f4ea;--color-warning:#8a5a00;--color-warning-soft:#fdf1d8;--color-danger:#b42318;--color-danger-soft:#fde8e6;--color-series-income:#1d7a46;--color-series-expense:#c2410c;--color-series-neutral:#0f5c63;--color-focus:#2a7fff;--overlay:#0a191e73;--font-sans:"Heebo Variable", "Heebo", "Segoe UI", "Arial Hebrew", Arial, sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.375rem;--font-size-2xl:1.75rem;--font-size-3xl:2.125rem;--line-height:1.6;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-sm:0 1px 2px #10282e0f, 0 1px 3px #10282e14;--shadow-md:0 4px 14px #10282e1f;--shadow-lg:0 12px 36px #10282e33;--sidebar-width:264px;--sidebar-width-collapsed:72px;--topbar-height:60px;--bottombar-height:64px;--content-max-width:1280px;--transition-fast:.15s ease}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-brand:#4fb3b9;--color-brand-strong:#8bd4d8;--color-brand-soft:#173a3d;--color-accent:#f2b440;--color-accent-soft:#3a2e14;--color-bg:#0e1618;--color-surface:#152024;--color-surface-muted:#1c2a2e;--color-surface-raised:#1b282c;--color-border:#2a3b40;--color-border-strong:#3c5258;--color-text:#e6eef0;--color-text-muted:#a3b4b9;--color-text-on-brand:#06272a;--color-info:#8ab4ff;--color-info-soft:#1a2a44;--color-success:#6fd39b;--color-success-soft:#15321f;--color-warning:#f2c46b;--color-warning-soft:#3a2e14;--color-danger:#ff8a80;--color-danger-soft:#3d1a17;--color-series-income:#6fd39b;--color-series-expense:#fb923c;--color-series-neutral:#4fb3b9;--overlay:#0009;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 14px #00000073;--shadow-lg:0 12px 36px #0000008c}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-brand:#4fb3b9;--color-brand-strong:#8bd4d8;--color-brand-soft:#173a3d;--color-accent:#f2b440;--color-accent-soft:#3a2e14;--color-bg:#0e1618;--color-surface:#152024;--color-surface-muted:#1c2a2e;--color-surface-raised:#1b282c;--color-border:#2a3b40;--color-border-strong:#3c5258;--color-text:#e6eef0;--color-text-muted:#a3b4b9;--color-text-on-brand:#06272a;--color-info:#8ab4ff;--color-info-soft:#1a2a44;--color-success:#6fd39b;--color-success-soft:#15321f;--color-warning:#f2c46b;--color-warning-soft:#3a2e14;--color-danger:#ff8a80;--color-danger-soft:#3d1a17;--color-series-income:#6fd39b;--color-series-expense:#fb923c;--color-series-neutral:#4fb3b9;--overlay:#0009;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 14px #00000073;--shadow-lg:0 12px 36px #0000008c}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-sans);font-size:100%;line-height:var(--line-height);color:var(--color-text);background:var(--color-bg);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);min-height:100dvh;margin:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3{text-wrap:balance;line-height:1.3}a{color:var(--color-brand)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}img,svg{max-width:100%;display:block}.ltr{direction:ltr;unicode-bidi:isolate}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;margin-block-end:var(--space-5);display:flex}.page-header__title{align-items:center;gap:var(--space-3);font-size:var(--font-size-2xl);font-weight:700;display:flex}.page-header__icon{border-radius:var(--radius-md);background:var(--color-brand-soft);width:44px;height:44px;color:var(--color-brand);flex:none;place-items:center;display:grid}.page-header__description{color:var(--color-text-muted);max-width:70ch;margin-block-start:var(--space-1)}.page-header__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);min-width:0}@media (width>=768px){.card{padding:var(--space-5)}}.card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-block-end:var(--space-3);display:flex}.card__title{font-size:var(--font-size-lg);font-weight:600}.card__title a{color:inherit;text-decoration:none}.card__title a:hover{text-decoration:underline}.card__meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.empty-state{text-align:center;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-3);color:var(--color-text-muted);flex-direction:column;display:flex}.empty-state__icon{border-radius:var(--radius-pill);background:var(--color-surface-muted);width:48px;height:48px;color:var(--color-text-muted);place-items:center;display:grid}.empty-state__title{font-size:var(--font-size-md);color:var(--color-text);font-weight:600}.empty-state__hint{font-size:var(--font-size-sm);max-width:46ch}.badge{align-items:center;gap:var(--space-1);padding:1px var(--space-2);border-radius:var(--radius-pill);font-size:var(--font-size-xs);white-space:nowrap;background:var(--color-surface-muted);color:var(--color-text-muted);font-weight:600;line-height:1.7;display:inline-flex}.badge--info{background:var(--color-info-soft);color:var(--color-info)}.badge--success{background:var(--color-success-soft);color:var(--color-success)}.badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.badge--danger{background:var(--color-danger-soft);color:var(--color-danger)}.badge--brand{background:var(--color-brand-soft);color:var(--color-brand-strong)}.chip{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--color-brand-soft);color:var(--color-brand-strong);font-size:var(--font-size-xs);align-items:center;gap:2px;line-height:1.9;display:inline-flex}.chip button{color:inherit;border-radius:var(--radius-pill);background:0 0;border:0;place-items:center;padding:2px;display:grid}.chips{gap:var(--space-1);flex-wrap:wrap;display:flex}.notice{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-info-soft);font-size:var(--font-size-sm);border:1px solid #0000;align-items:flex-start;display:flex}.notice svg{color:var(--color-info);flex:none;margin-block-start:3px}.notice--warning{background:var(--color-warning-soft)}.notice--warning svg{color:var(--color-warning)}.notice--danger{background:var(--color-danger-soft)}.notice--danger svg{color:var(--color-danger)}.notice--success{background:var(--color-success-soft)}.notice--success svg{color:var(--color-success)}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);white-space:nowrap;transition:background var(--transition-fast), border-color var(--transition-fast);cursor:pointer;border:1px solid #0000;font-weight:600;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--md{min-height:42px;padding:0 var(--space-4);font-size:var(--font-size-sm)}.btn--sm{min-height:34px;padding:0 var(--space-3);font-size:var(--font-size-xs)}.btn--icon{aspect-ratio:1;padding:0}.btn--primary{background:var(--color-brand);color:var(--color-text-on-brand)}.btn--primary:hover:not(:disabled){background:var(--color-brand-strong)}.btn--secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn--secondary:hover:not(:disabled){background:var(--color-surface-muted)}.btn--ghost{color:var(--color-brand);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--color-brand-soft)}.btn--danger{background:var(--color-danger);color:#fff}.btn--danger:hover:not(:disabled){filter:brightness(.92)}.icon-button{border-radius:var(--radius-md);width:44px;height:44px;color:var(--color-text);background:0 0;border:0;flex:none;place-items:center;display:inline-grid;position:relative}.icon-button:hover{background:var(--color-surface-muted)}.icon-button--sm{width:34px;height:34px}.icon-button__count{border-radius:var(--radius-pill);background:var(--color-danger);color:#fff;text-align:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;font-weight:700;line-height:18px;position:absolute;inset-block-start:4px;inset-inline-end:2px}.record-form{gap:var(--space-4);display:grid}.form-grid{gap:var(--space-3) var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=640px){.form-grid{grid-template-columns:1fr 1fr}.field--wide{grid-column:1/-1}}.form-section{border:0;border-block-start:1px solid var(--color-border);padding:var(--space-3) 0 0;margin:0}.form-section__title{margin-block-end:var(--space-3);padding:0;font-weight:600}.form-section__toggle{align-items:center;gap:var(--space-2);padding:var(--space-1) 0;color:var(--color-brand);background:0 0;border:0;margin-block-end:var(--space-3);font-weight:600;display:inline-flex}.rotate-180{transform:rotate(180deg)}.field{gap:var(--space-1);align-content:start;min-width:0;display:grid}.field__label{font-size:var(--font-size-sm);font-weight:600}.field__required{color:var(--color-danger)}.field__hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.field__error{font-size:var(--font-size-xs);color:var(--color-danger);font-weight:600}.input{width:100%;min-height:42px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:1rem}.input:focus-visible{outline:2px solid var(--color-focus);outline-offset:0;border-color:var(--color-focus)}.field--error .input{border-color:var(--color-danger)}.input--textarea{resize:vertical;min-height:96px;line-height:1.5}.input--narrow{flex:none;width:5.5rem}.input--date{flex:none;width:auto}.input--number{text-align:end}.input--search{padding-inline-start:2.25rem}.input-affix{align-items:stretch;display:flex}.input-affix .input{border-start-end-radius:0;border-end-end-radius:0}.input-affix__unit{padding:0 var(--space-3);border:1px solid var(--color-border-strong);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--font-size-sm);border-inline-start:0;border-start-end-radius:var(--radius-md);border-end-end-radius:var(--radius-md);place-items:center;display:grid}.checkbox{align-items:center;gap:var(--space-2);cursor:pointer;min-height:34px;display:inline-flex}.checkbox input,.inline-fields input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-brand);flex:none}.inline-fields{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.inline-fields>.input:not(.input--narrow):not(.input--date){flex:10rem;width:auto}.inline-label{align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-muted);display:inline-flex}.tags-input{gap:var(--space-1);min-height:42px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);flex-wrap:wrap;align-items:center;display:flex}.tags-input:focus-within{outline:2px solid var(--color-focus)}.tags-input__input{min-width:8rem;padding:var(--space-1);background:0 0;border:0;flex:1;font-size:1rem}.tags-input__input:focus{outline:none}.list-editor{gap:var(--space-2);display:grid}.list-editor__row{gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);align-items:flex-start;display:flex}.list-editor__content{flex:1;min-width:0}.quote-line{gap:var(--space-2);grid-template-columns:1fr 5rem 7rem;align-items:center;display:grid}.quote-line__desc{grid-column:1/-1}.quote-line__total{text-align:end;white-space:nowrap;font-weight:600}@media (width>=640px){.quote-line{grid-template-columns:1fr 5rem 7rem 7rem}.quote-line__desc{grid-column:auto}}.ref-list__items{max-height:12rem;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:2px;margin-block-start:var(--space-2);display:grid;overflow-y:auto}.modal-backdrop{z-index:200;background:var(--overlay);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface-raised);width:100%;max-height:92dvh;box-shadow:var(--shadow-lg);border-start-start-radius:var(--radius-lg);border-start-end-radius:var(--radius-lg);flex-direction:column;animation:.18s ease-out sheet-in;display:flex}@keyframes sheet-in{0%{opacity:.6;transform:translateY(24px)}}@media (width>=640px){.modal-backdrop{padding:var(--space-5);align-items:center}.modal{border-radius:var(--radius-lg);max-height:88dvh}.modal--sm{max-width:440px}.modal--md{max-width:600px}.modal--lg{max-width:780px}}.modal__header{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-block-end:1px solid var(--color-border);display:flex}.modal__title{font-size:var(--font-size-lg);font-weight:700}.modal__body{padding:var(--space-4);overscroll-behavior:contain;overflow-y:auto}.modal__footer{gap:var(--space-2);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));border-block-start:1px solid var(--color-border);display:flex}.confirm-message{gap:var(--space-2);display:grid}.confirm-message ul{margin:0;padding-inline-start:var(--space-5)}.toasts{z-index:300;inset-inline:var(--space-3);gap:var(--space-2);pointer-events:none;justify-items:center;display:grid;position:fixed;inset-block-end:calc(var(--bottombar-height) + var(--space-3) + env(safe-area-inset-bottom))}@media (width>=1024px){.toasts{justify-items:end;inset-block-end:var(--space-5);inset-inline-start:auto;inset-inline-end:var(--space-5)}}.toast{pointer-events:auto;align-items:center;gap:var(--space-2);max-width:min(100%,460px);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-text);color:var(--color-bg);box-shadow:var(--shadow-lg);font-size:var(--font-size-sm);animation:.16s ease-out sheet-in;display:flex}.toast--success svg:first-child{color:var(--color-series-income)}.toast--error{background:var(--color-danger);color:#fff}.toast__message{flex:1}.toast__action{color:inherit;padding:var(--space-1) var(--space-2);background:0 0;border:0;font-weight:700;text-decoration:underline}.toast__close{color:inherit;opacity:.8;padding:var(--space-1);background:0 0;border:0;place-items:center;display:grid}.progress{align-items:center;gap:var(--space-2);display:flex}.progress__track{border-radius:var(--radius-pill);background:var(--color-surface-muted);flex:1;height:8px;position:relative;overflow:visible}.progress__fill{border-radius:var(--radius-pill);background:var(--color-brand);height:100%;transition:inline-size .3s}.progress--success .progress__fill{background:var(--color-success)}.progress--warning .progress__fill{background:var(--color-accent)}.progress--danger .progress__fill{background:var(--color-danger)}.progress__marker{background:var(--color-text);opacity:.6;width:2px;position:absolute;inset-block:-3px}.progress__value{min-width:3ch;font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:end;font-weight:600}.tabs{gap:var(--space-1);border-block-end:1px solid var(--color-border);flex-wrap:wrap;margin-block-end:var(--space-4);display:flex}.tabs__item{padding:var(--space-2) var(--space-3);color:var(--color-text-muted);font-weight:600;font-size:var(--font-size-sm);white-space:nowrap;border-block-end:2px solid #0000;text-decoration:none}.tabs__item[aria-current=page]{color:var(--color-brand);border-color:var(--color-brand)}.segmented{border-radius:var(--radius-md);background:var(--color-surface-muted);gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segmented__item{align-items:center;gap:var(--space-1);min-height:34px;padding:0 var(--space-3);border-radius:calc(var(--radius-md) - 3px);color:var(--color-text-muted);font-size:var(--font-size-sm);white-space:nowrap;background:0 0;border:0;font-weight:600;display:inline-flex}.segmented__item[aria-checked=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.stats{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));display:grid}.stat{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);gap:2px;min-width:0;text-decoration:none;display:grid}.stat--link:hover{border-color:var(--color-brand)}.stat__label{align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex}.stat__value{font-size:var(--font-size-xl);overflow-wrap:anywhere;font-weight:700;line-height:1.3}.stat__value--success{color:var(--color-success)}.stat__value--danger{color:var(--color-danger)}.stat__value--warning{color:var(--color-warning)}.stat__sub{font-size:var(--font-size-xs);color:var(--color-text-muted)}.rows{margin:0;padding:0;list-style:none;display:grid}.rows>li+li{border-block-start:1px solid var(--color-border)}.row-link{align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-2) var(--space-1);color:var(--color-text);text-decoration:none;display:flex}.row-link:hover .row-link__main{color:var(--color-brand)}.row-link__main{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.row-link__aside{font-size:var(--font-size-xs);color:var(--color-text-muted);flex:none}.row-link__chevron{color:var(--color-text-muted);flex:none}.muted{color:var(--color-text-muted)}.small{font-size:var(--font-size-sm)}.xsmall{font-size:var(--font-size-xs)}.strong{font-weight:700}.nowrap{white-space:nowrap}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-warning{color:var(--color-warning)}.table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.table th,.table td{padding:var(--space-2) var(--space-3);text-align:start;border-block-end:1px solid var(--color-border);vertical-align:middle}.table th{background:var(--color-surface-muted);white-space:nowrap;font-weight:600;position:sticky;inset-block-start:0}.table tbody tr:last-child td{border-block-end:0}.table tbody tr:hover{background:var(--color-surface-muted)}.table .num{text-align:end;white-space:nowrap;font-variant-numeric:tabular-nums}.th-sort{font:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:2px;padding:0;font-weight:600;display:inline-flex}.table a{color:var(--color-text);font-weight:600;text-decoration:none}.table a:hover{color:var(--color-brand);text-decoration:underline}.toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-block-end:var(--space-4);display:flex}.toolbar__search{flex:14rem;min-width:0;position:relative}.toolbar__search svg{color:var(--color-text-muted);pointer-events:none;position:absolute;inset-block-start:50%;inset-inline-start:var(--space-3);transform:translateY(-50%)}.toolbar select.input{flex:0 auto;width:auto}.toolbar__spacer{flex:1}.chart{gap:var(--space-2);margin:0;display:grid}.chart__svg{width:100%;display:block}.chart__labels{font-size:var(--font-size-xs);color:var(--color-text-muted);flex-direction:row;justify-content:space-around;display:flex}.chart__labels--ends{justify-content:space-between}.chart__legend{gap:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.chart__legend i{width:10px;height:10px;vertical-align:middle;border-radius:2px;margin-inline-end:var(--space-1);display:inline-block}.chart__target{stroke:var(--color-text-muted);stroke-width:.4px;stroke-dasharray:1.5 1.5;vector-effect:non-scaling-stroke}.loading{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-6);color:var(--color-text-muted);display:flex}.spinner{border:3px solid var(--color-border);border-block-start-color:var(--color-brand);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-panel{gap:var(--space-3);border-color:var(--color-danger);justify-items:start;display:grid}.stack{gap:var(--space-4);display:grid}.stack-sm{gap:var(--space-2);display:grid}.grid-2,.grid-3{gap:var(--space-4);display:grid}@media (width>=900px){.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-main-side{gap:var(--space-4);grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;display:grid}}.grid-main-side{gap:var(--space-4);display:grid}.cluster{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.between{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.dl{gap:var(--space-2) var(--space-4);font-size:var(--font-size-sm);grid-template-columns:max-content 1fr;margin:0;display:grid}.dl dt{color:var(--color-text-muted)}.dl dd{overflow-wrap:anywhere;min-width:0;margin:0}.prewrap{white-space:pre-wrap}.section-title{font-size:var(--font-size-lg);margin-block-end:var(--space-3);font-weight:700}.history{gap:var(--space-2);font-size:var(--font-size-xs);margin:0;padding:0;list-style:none;display:grid}.history li{gap:1px;display:grid}.history__when{color:var(--color-text-muted)}@media (width<=639px){.hide-mobile{display:none}}.timeline{gap:var(--space-3);border-inline-start:2px solid var(--color-border);margin:0;padding:0;padding-inline-start:var(--space-3);list-style:none;display:grid}.timeline__meta{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:600}.stage-steps{gap:var(--space-1);flex-wrap:wrap;display:flex}.stage-step{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-sm)}.stage-step.is-reached{border-color:var(--color-brand);color:var(--color-brand)}.stage-step.is-current{background:var(--color-brand);color:var(--color-text-on-brand)}.conv-row{align-items:center;gap:var(--space-3);padding-block:var(--space-1);grid-template-columns:minmax(8rem,14rem) 1fr auto;display:grid}.link-button{color:var(--color-text);text-align:start;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.link-button:hover{color:var(--color-brand);text-decoration:underline}.badge-button{cursor:pointer;background:0 0;border:0;padding:0}@media (width<=639px){.conv-row{grid-template-columns:1fr auto}.conv-row .progress{grid-area:2/1/auto/-1}}.mt{margin-block-start:var(--space-4)}.clamp-3{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.insight-dl{gap:2px var(--space-3);grid-template-columns:1fr;margin-block-start:var(--space-3)}.insight-dl dd{margin-block-end:var(--space-2)}@media (width>=640px){.insight-dl{grid-template-columns:max-content 1fr}}.sticky-save{padding:var(--space-2);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-bg) 85%, transparent);justify-content:flex-start;display:flex;position:sticky;inset-block-end:calc(var(--bottombar-height) + var(--space-2))}@media (width>=1024px){.sticky-save{inset-block-end:var(--space-3)}}.history--wide li{padding-block:var(--space-1);border-block-end:1px solid var(--color-border)}.save-status--warn{background:var(--color-warning-soft);color:var(--color-warning)}.save-status--error{background:var(--color-danger-soft);color:var(--color-danger)}.conflict-pre{max-height:10rem;padding:var(--space-2);border-radius:var(--radius-sm);background:var(--color-surface-muted);font-size:var(--font-size-xs);text-align:left;white-space:pre-wrap;direction:ltr;overflow:auto}.chat{gap:var(--space-2);max-height:60vh;margin:0 0 var(--space-3);flex-direction:column;padding:0;list-style:none;display:flex;overflow-y:auto}.chat__msg{max-width:85%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);white-space:pre-wrap;line-height:1.6}.chat__msg--user{background:var(--color-brand-soft);align-self:flex-start}.chat__msg--assistant{background:var(--color-surface-muted);align-self:flex-end}.chat__approve{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);margin-block-end:var(--space-3);display:grid}.chat__form{gap:var(--space-2);align-items:flex-end;display:flex}.chat__form textarea{resize:vertical;flex:1}.focus-timer{margin-block:var(--space-3);font-variant-numeric:tabular-nums;text-align:center;color:var(--color-brand);direction:ltr;font-size:clamp(3rem,14vw,5.5rem);font-weight:700}.dash-grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=900px){.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-wide{grid-column:1/-1}}@media (width>=1400px){.dash-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.dash-footnote{margin-block-start:var(--space-4)}.quick-actions{gap:var(--space-2);flex-wrap:wrap;margin-block-end:var(--space-4);display:flex}.actions-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.actions-list li{gap:var(--space-3);align-items:flex-start;display:flex}.actions-list a{color:var(--color-text);text-decoration:none}.actions-list a:hover{color:var(--color-brand);text-decoration:underline}.actions-list__n{background:var(--color-brand);width:28px;height:28px;color:var(--color-text-on-brand);font-weight:700;font-size:var(--font-size-sm);border-radius:50%;flex:none;place-items:center;display:grid}.mini-goal{gap:var(--space-1);padding:var(--space-2);margin-inline:calc(var(--space-2) * -1);border-radius:var(--radius-md);color:var(--color-text);text-decoration:none;display:grid}.mini-goal:hover{background:var(--color-surface-muted)}.load-list{gap:var(--space-1);margin:0;padding-inline-start:var(--space-5);display:grid}.onboarding{gap:var(--space-2);border-color:var(--color-brand);margin-block-end:var(--space-4);display:grid}.onboarding__list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.onboarding__list li{align-items:center;gap:var(--space-2);display:flex}.customize-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.customize-list li{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;display:flex}.widget-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));margin-block-start:var(--space-5);display:grid}.module-layout{gap:var(--space-4);display:grid}@media (width>=768px){.module-layout{grid-template-columns:1fr 1fr}}.plan-list{gap:var(--space-2);color:var(--color-text-muted);margin:0;padding-inline-start:var(--space-5);display:grid}.app-shell{min-height:100dvh}.app-shell__main{flex-direction:column;min-width:0;min-height:100dvh;display:flex}.app-shell__content{width:100%;max-width:var(--content-max-width);padding:var(--space-4) var(--space-4);flex:1;margin-inline:auto;padding-block-end:calc(var(--bottombar-height) + var(--space-6) + env(safe-area-inset-bottom))}.app-shell__content:focus{outline:none}.app-shell__backdrop{z-index:40;background:var(--overlay);position:fixed;inset:0}.skip-link{z-index:400;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-brand);color:var(--color-text-on-brand);font-weight:600;text-decoration:none;position:absolute;inset-block-start:-100px;inset-inline-start:var(--space-3)}.skip-link:focus{inset-block-start:var(--space-3)}.sidebar{z-index:50;width:min(var(--sidebar-width), 86vw);background:var(--color-surface);border-inline-end:1px solid var(--color-border);box-shadow:var(--shadow-lg);visibility:hidden;transition:transform var(--transition-fast), visibility var(--transition-fast);flex-direction:column;display:flex;position:fixed;inset-block:0;inset-inline-start:0;transform:translate(100%)}.sidebar.is-open{visibility:visible;transform:none}.sidebar__brand{align-items:center;gap:var(--space-3);height:var(--topbar-height);padding-inline:var(--space-4);border-block-end:1px solid var(--color-border);flex:none;display:flex}.sidebar__brand img{flex:none}.sidebar__brand-name{font-size:var(--font-size-lg);color:var(--color-brand);white-space:nowrap;flex:1;font-weight:800}.sidebar__nav{padding:var(--space-3) var(--space-3) var(--space-4);flex:1;overflow-y:auto}.sidebar__group+.sidebar__group{margin-block-start:var(--space-3)}.sidebar__group-label{padding-inline:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-block-end:2px;font-weight:600}.sidebar__planned summary{cursor:pointer;list-style-position:inside}.sidebar__nav ul{margin:0;padding:0;list-style:none}.sidebar__link{align-items:center;gap:var(--space-3);min-height:40px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-sm);white-space:nowrap;transition:background var(--transition-fast);text-decoration:none;display:flex}.sidebar__link svg{color:var(--color-text-muted);flex:none}.sidebar__link:hover{background:var(--color-surface-muted)}.sidebar__link[aria-current=page]{background:var(--color-brand-soft);color:var(--color-brand-strong);font-weight:600}.sidebar__link[aria-current=page] svg{color:var(--color-brand)}.sidebar__footer{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-block-start:1px solid var(--color-border);flex:none;display:flex}.sidebar__collapse{align-items:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-2);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-xs);background:0 0;border:0;display:none}.sidebar__collapse:hover{background:var(--color-surface-muted)}.topbar{z-index:30;align-items:center;gap:var(--space-1);height:var(--topbar-height);padding-inline:var(--space-1) var(--space-2);background:color-mix(in srgb, var(--color-surface) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-block-end:1px solid var(--color-border);display:flex;position:sticky;inset-block-start:0}.topbar__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}.topbar__search{align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--font-size-sm);display:inline-flex}.topbar__search-text,.topbar__kbd{display:none}.topbar__kbd{padding:0 var(--space-1);border:1px solid var(--color-border-strong);direction:ltr;border-radius:4px;font-family:inherit;font-size:11px}.topbar__actions{align-items:center;gap:2px;display:flex}.topbar__add{min-height:40px;padding:0 var(--space-3)}.topbar__add-text{display:none}.save-status{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;text-decoration:none;display:none}.quick-add-grid{gap:var(--space-2);display:grid}@media (width>=480px){.quick-add-grid{grid-template-columns:1fr 1fr}}.quick-add-item{align-items:center;gap:var(--space-2);min-height:48px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);text-align:start;font-weight:600;display:flex}.quick-add-item:hover{border-color:var(--color-brand);color:var(--color-brand)}.palette{gap:var(--space-3);display:grid}.palette__list{gap:2px;max-height:55dvh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.palette__item{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;display:flex}.palette__item[aria-selected=true]{background:var(--color-brand-soft);color:var(--color-brand-strong)}.palette__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.palette__hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.palette__empty{padding:var(--space-3)}.bottom-nav{z-index:30;background:var(--color-surface);border-block-start:1px solid var(--color-border);padding-block-end:env(safe-area-inset-bottom);position:fixed;inset-block-end:0;inset-inline:0}.bottom-nav ul{grid-template-columns:repeat(6,1fr);margin:0;padding:0;list-style:none;display:grid}.bottom-nav__item{width:100%;height:var(--bottombar-height);color:var(--color-text-muted);font-size:var(--font-size-xs);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex}.bottom-nav__add-circle{background:var(--color-brand);width:48px;height:48px;color:var(--color-text-on-brand);box-shadow:var(--shadow-md);border-radius:50%;place-items:center;display:grid;transform:translateY(-6px)}.quick-other{gap:var(--space-1);border-block-start:1px solid var(--color-border);margin-block-start:var(--space-4);padding-block-start:var(--space-3);display:grid}.offline-bar{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--font-size-xs);text-align:center;font-weight:600;display:flex}.bottom-nav__item[aria-current=page]{color:var(--color-brand);font-weight:700}@media (width>=600px){.topbar__search-text{display:inline}.topbar__search{min-width:12rem}.topbar__add-text{display:inline}.save-status{display:inline-flex}}@media (width>=1024px){.sidebar{width:var(--sidebar-width);visibility:visible;box-shadow:none;transition:width var(--transition-fast);transform:none}.sidebar__collapse{display:inline-flex}.sidebar .sidebar__close,.topbar .topbar__menu,.app-shell .bottom-nav,.app-shell .app-shell__backdrop{display:none}.app-shell__main{transition:margin var(--transition-fast);margin-inline-start:var(--sidebar-width)}.topbar{padding-inline:var(--space-5);gap:var(--space-2)}.topbar__kbd{display:inline}.app-shell__content{padding:var(--space-5) var(--space-5) var(--space-7)}.is-collapsed .sidebar{width:var(--sidebar-width-collapsed)}.is-collapsed .app-shell__main{margin-inline-start:var(--sidebar-width-collapsed)}.is-collapsed .sidebar__text{display:none}.is-collapsed .sidebar__link,.is-collapsed .sidebar__brand{justify-content:center;padding-inline:0}.is-collapsed .sidebar__group-label{height:1px;margin-block:var(--space-2);background:var(--color-border);padding:0}.is-collapsed .sidebar__footer{justify-content:center}}.auth-page{min-height:100dvh;padding:var(--space-4);background:var(--color-bg);place-items:center;display:grid}.auth-card{gap:var(--space-3);width:min(100%,400px);display:grid}.auth-brand{align-items:center;gap:var(--space-3);display:flex}.auth-brand h1{font-size:var(--font-size-xl);color:var(--color-brand)}.auth-links{gap:var(--space-3);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}
