@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}.monthly-report{gap:var(--space-3)}.monthly-report-period{gap:var(--space-1);padding-inline:var(--space-2);border-radius:var(--radius-small);background:var(--color-background);font-size:var(--font-size-small)}.monthly-report-subtitle{margin-top:calc(-1 * var(--space-2))}.monthly-report-content{align-items:center;gap:var(--space-6);grid-template-columns:minmax(0,3fr) minmax(0,2fr);display:grid}.monthly-report-chart{align-items:end;gap:var(--space-1);height:calc(var(--space-8) * 3);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(12,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.monthly-report-chart li{justify-content:center;align-items:end;min-width:0;height:100%;display:flex}.monthly-report-bar{width:100%;max-width:var(--space-6);background:var(--color-primary);opacity:.4;border-radius:var(--space-1) var(--space-1) 0 0}.monthly-report-chart .is-current .monthly-report-bar{opacity:1}.monthly-report-chart-caption{margin-top:var(--space-2)}.monthly-report-summary{min-width:0}.monthly-report-total{font-size:var(--font-size-section-title);font-weight:700}.monthly-report-change{align-items:center;gap:var(--space-1);margin-top:var(--space-2);font-weight:600;display:flex}.monthly-report-change svg{color:var(--color-primary)}.monthly-report-change .trend-down{color:var(--color-success)}.monthly-report-accessible{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.monthly-report-month{display:none}@media (width>=1024px){.monthly-report-content{gap:var(--space-8);grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.monthly-report-chart{height:calc(var(--space-8) * 4);margin-bottom:var(--space-8)}.monthly-report-chart li{position:relative}.monthly-report-month{top:calc(100% + var(--space-2));font-size:var(--font-size-small);color:var(--color-text-secondary);white-space:nowrap;display:block;position:absolute}.monthly-report-summary{padding-left:var(--space-8);border-left:1px solid var(--color-border)}}@media (width<=359px){.monthly-report-content{gap:var(--space-3)}.monthly-report-total{font-size:var(--font-size-card-title)}}.receipt-preview{gap:var(--space-2);min-width:0;padding:var(--space-3);border-radius:var(--radius-default);background:var(--color-surface-secondary);border:0;margin:0;display:grid}.receipt-preview img{width:100%;height:calc(var(--space-8) * 4);object-fit:contain;display:block}.receipt-placeholder{justify-items:center;gap:var(--space-2);padding:var(--space-3);text-align:center;display:grid}.receipt-filename{overflow-wrap:anywhere;font-size:var(--font-size-small)}.field-error{color:var(--color-error);font-size:var(--font-size-small);font-weight:400}[aria-invalid=true]{border-color:var(--color-error)}.amount-fields{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.validation-icon{color:var(--color-success)}.receipt-attachment{border:0;min-width:0;margin:0;padding:0}.receipt-attachment legend{padding:0 0 var(--space-4);font-weight:600}.expense-progress{gap:var(--space-2);color:var(--color-text-secondary);justify-content:space-between;margin:0;padding:0;font-size:11px;list-style:none;display:flex}.expense-progress li{align-items:center;gap:var(--space-1);display:flex}.expense-progress span{background:var(--color-surface-secondary);border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.expense-progress .is-reached{color:var(--color-primary)}.expense-progress .is-reached span{background:var(--color-action);color:var(--color-on-action)}.expense-progress [aria-current]{font-weight:600}.receipt-choice legend{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.receipt-source.button{padding:var(--space-4);justify-content:start;gap:var(--space-4);text-align:left}.receipt-source span{gap:var(--space-1);display:grid}.receipt-source small{font-size:var(--font-size-small);font-weight:400}.receipt-source.button-secondary small{color:var(--color-text-secondary)}.manual-entry.button{background:0 0;font-size:14px}.review-receipt{border-radius:var(--radius-default);background:var(--color-surface-secondary)}.review-receipt summary{min-height:52px;padding:var(--space-3) var(--space-4);cursor:pointer;color:var(--color-primary);font-size:14px;font-weight:500}.form-actions{bottom:calc(-1 * var(--space-6) - env(safe-area-inset-bottom));gap:var(--space-2);padding:var(--space-4) 0 calc(var(--space-6) + env(safe-area-inset-bottom));margin-bottom:calc(-1 * var(--space-6) - env(safe-area-inset-bottom));background:var(--color-surface);text-align:center;display:grid;position:sticky}.validation-summary{justify-items:center;gap:var(--space-3);padding-block:var(--space-4);text-align:center;display:grid}.analysis-status{justify-items:center;gap:var(--space-4);padding-block:var(--space-8);text-align:center;display:grid}.analysis-status>svg{color:var(--color-primary)}.analysis-track{background:var(--color-surface-secondary);border-radius:var(--radius-small);width:160px;height:4px;overflow:hidden}.analysis-track:after{content:"";background:var(--color-primary);border-radius:inherit;width:40%;height:100%;animation:1.6s ease-in-out infinite alternate analysis-scan;display:block}@keyframes analysis-scan{to{transform:translate(150%)}}.expense-fields{border:0;min-width:0;margin:0;padding:0}.modal.receipt-viewer-modal{height:calc(var(--viewport-height,100dvh) - max(12px, env(safe-area-inset-top)))}.receipt-viewer-filename{overflow-wrap:anywhere}.receipt-viewer-tools{justify-content:center;align-items:center;gap:var(--space-3);display:flex}.receipt-viewer-viewport{background:var(--color-surface-secondary);border-radius:var(--radius-small);overscroll-behavior:contain;min-height:120px;max-height:60dvh;overflow:auto}.receipt-viewer-image{max-width:none;height:auto;display:block}.receipt-viewer-viewport canvas{display:block}@media (width>=768px){.modal.receipt-viewer-modal{width:min(100% - 48px,1024px);height:calc(var(--viewport-height,100dvh) - 48px)}}.expense-filter-toolbar{align-items:end;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.expense-filter-panel{gap:var(--space-4);padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-large);display:grid}.expense-filter-note{grid-column:1/-1}@media (width<=359px){.expense-filter-toolbar{grid-template-columns:minmax(0,1fr)}.expense-filter-toolbar>.button{justify-self:start}}@media (width>=768px){.expense-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}}.report-month-select{max-width:320px}.report-comparison{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.report-variation{font-size:var(--font-size-section-title)}.report-variation svg{color:var(--color-primary)}.report-category-link{gap:var(--space-2);min-height:var(--control-min-height);padding-block:var(--space-2);border-radius:var(--radius-small);color:var(--color-text);text-decoration:none;display:grid}@media (hover:hover){.report-category-link:hover{background:var(--color-surface-secondary)}}.report-month-select select{background:var(--color-surface)}.report-summary.card{background:0 0;padding:0}.report-summary .metric-value{letter-spacing:-.04em;font-size:40px}.report-summary .report-comparison{margin-top:var(--space-2);padding-top:var(--space-6)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-primary:#2563eb;--color-action:#2563eb;--color-on-action:#fff;--color-primary-dark:#0f172a;--color-background:#f2f2f7;--color-surface:#fff;--color-surface-secondary:#f2f2f7;--color-text:#0f172a;--color-text-secondary:#64748b;--color-border:#e2e8f0;--color-success:#16a34a;--color-warning:#f59e0b;--color-error:#dc2626;--font-family:-apple-system, BlinkMacSystemFont, "Inter", sans-serif;--font-size-page-title:34px;--font-size-section-title:20px;--font-size-card-title:16px;--font-size-body:16px;--font-size-small:12px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-small:12px;--radius-default:16px;--radius-large:24px;--radius-sheet:28px;--control-min-height:44px;--page-max-width:960px;--navigation-height:72px;--brand-logo-size:32px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-primary:#8ab4ff;--color-primary-dark:#f5f5f7;--color-background:#000;--color-surface:#1c1c1e;--color-surface-secondary:#2c2c2e;--color-text:#f5f5f7;--color-text-secondary:#a1a1aa;--color-border:#38383a;--color-success:#4ade80;--color-warning:#fbbf24;--color-error:#ff8a80}}.brand-content{justify-content:space-between;align-items:center;width:100%;display:flex}.brand-name{font-size:var(--font-size-small);letter-spacing:.03em;font-weight:700}.brand-name span{color:var(--color-text-secondary);font-weight:400}.brand-logo{width:var(--brand-logo-size);height:var(--brand-logo-size);object-fit:contain;display:block}.app-shell{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.app-shell>.page{scrollbar-gutter:stable;overscroll-behavior-y:contain;width:100%;min-height:0;padding-bottom:var(--space-8);flex:1;align-content:start;overflow-y:auto}.app-shell:has(dialog[open])>.page{overflow-y:hidden}.page{gap:var(--space-6);max-width:var(--page-max-width);padding:calc(var(--space-4) + env(safe-area-inset-top)) max(var(--space-6), env(safe-area-inset-right)) calc(var(--navigation-height) + var(--space-8) + env(safe-area-inset-bottom)) max(var(--space-6), env(safe-area-inset-left));margin-inline:auto;display:grid}.page-header{gap:var(--space-4);display:grid}.page-title-row{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.demo-label{color:var(--color-text-secondary);font-size:var(--font-size-small)}.page-footnote{text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-small)}.dashboard-grid,.home-overview{gap:var(--space-6);display:grid}.home-overview{gap:var(--space-8)}.summary-card{gap:var(--space-2);min-width:0;display:grid}.summary-period{font-size:var(--font-size-small);font-weight:600}.summary-period span{color:var(--color-text-secondary);font-weight:400}.hero-amount{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(40px,12vw,52px);font-weight:700;line-height:1.15}.home-add{margin-top:var(--space-4);width:100%}.bottom-navigation{z-index:10;background:color-mix(in srgb, var(--color-surface) 88%, transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 -1px 0 color-mix(in srgb, var(--color-border) 55%, transparent);padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-shrink:0;position:relative}.navigation-items{height:var(--navigation-height);max-width:640px;padding-inline:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;margin-inline:auto;display:grid}.navigation-link{justify-content:center;align-items:center;gap:var(--space-1);border-radius:var(--radius-default);min-height:56px;color:var(--color-text-secondary);flex-direction:column;grid-row:1;font-size:11px;text-decoration:none;display:flex}.navigation-link svg{stroke-width:1.7px;width:23px;height:23px}.navigation-link[aria-current=page]{color:var(--color-primary);font-weight:600}.navigation-link[aria-current=page] svg{stroke-width:2.3px}.navigation-add.button{border-radius:50%;grid-area:1/3;justify-self:center;width:52px;height:52px;min-height:52px;padding:0}.navigation-brand,.navigation-add span{display:none}.page-refresh .button{width:100%}.skip-link{top:var(--space-2);left:var(--space-2);z-index:20;padding:var(--space-3);background:var(--color-surface);position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}@media (width<=359px){.page{padding-inline:max(var(--space-4), env(safe-area-inset-left)) max(var(--space-4), env(safe-area-inset-right))}}@media (width>=768px){.page{padding-inline:max(var(--space-8), env(safe-area-inset-left)) max(var(--space-8), env(safe-area-inset-right));padding-top:calc(var(--space-8) + env(safe-area-inset-top));gap:var(--space-8)}.dashboard-grid,.home-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.home-overview{align-items:start;gap:calc(var(--space-8) * 2)}.summary-card{padding-top:var(--space-8)}.home-add{margin-top:var(--space-8)}}.login-page{max-width:480px;min-height:100dvh;padding-bottom:calc(var(--space-8) + env(safe-area-inset-bottom));align-content:center}.login-page header{gap:var(--space-6)}.login-icon{color:var(--color-primary);margin-top:var(--space-8)}.login-page form{margin-top:var(--space-4)}.login-page input{background:var(--color-surface)}.access-error{padding:calc(var(--space-4) + env(safe-area-inset-top)) var(--space-6) 0;flex-shrink:0}.card{align-content:start;gap:var(--space-4);min-width:0;padding:var(--space-6);border-radius:var(--radius-large);background:var(--color-surface);border:0;display:grid}.card h2{font-size:var(--font-size-section-title);letter-spacing:-.025em}.section-heading{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.metric-value{font-size:var(--font-size-page-title);color:var(--color-primary-dark);font-weight:700}.text-link{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-min-height);font-weight:500;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:52px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-default);border:1px solid #0000;font-weight:600;transition:transform .16s,background-color .16s;display:inline-flex}.button-primary{color:var(--color-on-action);background:var(--color-action)}.button-secondary{color:var(--color-primary);background:var(--color-surface-secondary)}.button:enabled:active{transform:scale(.98)}@media (hover:hover){.button:enabled:hover{filter:brightness(.95)}}.button:disabled{color:var(--color-text-secondary);cursor:not-allowed;background:var(--color-background)}.icon-button{min-width:var(--control-min-height);padding:var(--space-2)}.expense-list,.category-chart,.weekly-chart{margin:0;padding:0;list-style:none}.expense-list li+li{border-top:1px solid color-mix(in srgb, var(--color-border) 65%, transparent)}.expense-row{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) 0;background:var(--color-surface);color:var(--color-text);text-align:left;border-radius:var(--radius-small);border:0;display:flex}@media (hover:hover){.expense-row:hover{background:var(--color-surface-secondary)}}.expense-icon,.profile-avatar{width:var(--control-min-height);height:var(--control-min-height);border-radius:var(--radius-small);color:var(--color-primary);background:var(--color-surface-secondary);flex-shrink:0;place-items:center;display:grid}.expense-description{gap:var(--space-1);flex:1;min-width:0;display:grid}.expense-supplier{overflow-wrap:anywhere;font-weight:500}.expense-amount{white-space:nowrap;font-weight:600}.expense-chevron{color:var(--color-text-secondary)}.category-chart{gap:var(--space-4);display:grid}.category-chart li{gap:var(--space-2);display:grid}.bar-track{height:var(--space-2);border-radius:var(--radius-small);background:var(--color-background);overflow:hidden}.bar-fill{background:var(--color-primary);border-radius:inherit;height:100%}.weekly-chart{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.weekly-chart li{gap:var(--space-2);text-align:center;display:grid}.weekly-track{height:calc(var(--space-8) * 4);border-bottom:1px solid var(--color-border);justify-content:center;align-items:end;display:flex}.weekly-fill{width:var(--space-8);background:var(--color-primary);border-radius:var(--radius-small) var(--radius-small) 0 0}.filters{gap:var(--space-4);display:grid}.field{gap:var(--space-2);font-weight:500;display:grid}input,select,textarea{width:100%;min-width:0;min-height:52px;padding:var(--space-3);border-radius:var(--radius-default);color:var(--color-text);background:var(--color-surface-secondary);border:1px solid #0000;font-size:16px}input:focus,select:focus,textarea:focus{border-color:var(--color-primary)}input::placeholder,textarea::placeholder{color:var(--color-text-secondary)}textarea{resize:vertical}.expense-notes{white-space:pre-wrap;overflow-wrap:anywhere}.search-input{position:relative}.search-input svg{top:16px;left:var(--space-3);color:var(--color-text-secondary);position:absolute}.search-input input{padding-left:var(--control-min-height);background:var(--color-surface)}.empty-state{padding-block:var(--space-8);text-align:center;color:var(--color-text-secondary)}.details-list{gap:var(--space-4);display:grid}.details-list>div{justify-content:space-between;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.details-list dt{color:var(--color-text-secondary)}.details-list dd{overflow-wrap:anywhere;font-weight:500}.demo-note{color:var(--color-text-secondary);font-size:var(--font-size-small);line-height:1.6}.expense-group.card{gap:var(--space-2);background:0 0;padding:0}.expense-group .expense-list{padding-inline:var(--space-4);background:var(--color-surface);border-radius:var(--radius-large)}.expense-group>p{margin-bottom:var(--space-2)}.expense-supplier,.expense-amount{font-size:14px}.expense-group .text-link{gap:var(--space-1);font-size:14px}.expense-group .section-heading{gap:0}.expense-group h2{font-size:18px}.details-list>div+div{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.details-list dd{text-align:right}.receipt-download{overflow-wrap:anywhere;text-align:center;text-decoration:none}.field{font-size:14px}@media (width<=359px){.expense-row{gap:var(--space-2)}.expense-icon{width:var(--space-8);height:var(--space-8)}.expense-chevron{display:none}}@media (width>=768px){.filters{grid-template-columns:2fr 1fr}}.profile-identity{justify-items:center;gap:var(--space-2);padding:var(--space-4) 0;text-align:center;display:grid}.profile-identity .profile-avatar{width:72px;height:72px;margin-bottom:var(--space-2);background:var(--color-surface);border-radius:50%}.modal{inset:auto 0 var(--keyboard-inset,0px);width:100%;max-width:none;max-height:calc(var(--viewport-height,100dvh) - max(12px, env(safe-area-inset-top)));border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;color:var(--color-text);background:var(--color-surface);border:0;margin:0;padding:0;position:fixed;overflow:hidden;box-shadow:0 -8px 48px #0000001a}.modal[open]{flex-direction:column;animation:.24s cubic-bezier(.2,.8,.2,1) sheet-enter;display:flex}.modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006}.modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) max(var(--space-6), env(safe-area-inset-right)) var(--space-3) max(var(--space-6), env(safe-area-inset-left));flex-shrink:0;display:flex}.modal-header h2{font-size:var(--font-size-section-title);letter-spacing:-.025em}.modal-header h2:focus{outline:none}.modal-header .icon-button{width:44px;height:44px;min-height:44px;color:var(--color-text-secondary);border-radius:50%}.modal-body{align-content:start;gap:var(--space-6);overscroll-behavior-y:contain;min-height:0;padding:var(--space-3) max(var(--space-6), env(safe-area-inset-right)) calc(var(--space-6) + env(safe-area-inset-bottom)) max(var(--space-6), env(safe-area-inset-left));scroll-padding-block:var(--space-6) 120px;display:grid;overflow-y:auto}@keyframes sheet-enter{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@media (width>=768px){.modal{inset:0 0 var(--keyboard-inset,0px);width:min(100% - 48px,520px);max-height:calc(var(--viewport-height,100dvh) - 48px);border-radius:var(--radius-sheet);margin:auto}}@media (width<=359px){.modal-header,.modal-body{padding-inline:max(var(--space-4), env(safe-area-inset-left)) max(var(--space-4), env(safe-area-inset-right))}}@media (width>=1024px){.app-shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:240px minmax(0,1fr);display:grid}.app-shell>.access-error{grid-area:1/2}.app-shell>.page{max-width:none;padding-inline:max(var(--space-8), calc((100% - 1200px) / 2));scrollbar-gutter:stable;grid-area:2/2;grid-template-columns:minmax(0,1fr) auto;margin:0}.app-shell>.page>*{grid-column:1/-1;min-width:0}.app-shell>.page>.page-header{grid-area:1/1}.app-shell .page-header .brand-content{display:none}.app-shell>.page>.page-refresh{grid-area:1/2;align-self:center}.page-refresh .button{width:auto}.bottom-navigation{min-height:0;padding:var(--space-8) var(--space-4);background:var(--color-surface);border-right:1px solid var(--color-border);box-shadow:none;-webkit-backdrop-filter:none;flex-direction:column;grid-area:1/1/-1;display:flex;overflow-y:auto}.navigation-brand{align-items:center;gap:var(--space-3);padding:0 var(--space-4) var(--space-8);display:flex}.navigation-brand .brand-name{font-size:var(--font-size-body)}.navigation-brand .brand-name span{font-size:var(--font-size-small);display:block}.navigation-items{align-items:stretch;gap:var(--space-2);flex-direction:column;flex:1;width:100%;max-width:none;height:auto;padding:0;display:flex}.navigation-link{justify-content:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-direction:row;font-size:14px}.navigation-link[aria-current=page]{background:var(--color-surface-secondary)}.navigation-add.button{width:100%;height:auto;padding:var(--space-3);border-radius:var(--radius-default);flex-shrink:0;margin-top:auto;font-size:14px}.navigation-add span{display:inline}.navigation-add svg{width:20px;height:20px}.home-overview{gap:var(--space-8);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.summary-card{padding-top:var(--space-6)}.home-add{margin-top:var(--space-6)}.page-accueil .expense-group .expense-list{padding-inline:var(--space-6)}.page .expense-row{padding-block:var(--space-6)}.app-shell>.page-profil>:not(.page-header){justify-self:center;width:100%;max-width:640px}}@media (width>=1024px) and (hover:hover){.navigation-link:hover{color:var(--color-primary);background:var(--color-surface-secondary)}}*{box-sizing:border-box}html{font-family:var(--font-family);font-size:var(--font-size-body);color:var(--color-text);background:var(--color-background);font-synthesis:none;text-rendering:optimizelegibility;line-height:1.5}body,h1,h2,h3,p,dl,dd{margin:0}h1{font-size:var(--font-size-page-title);letter-spacing:-.04em;font-weight:700;line-height:1.15}h2{font-size:var(--font-size-section-title);font-weight:600}h3{font-size:var(--font-size-card-title);font-weight:600}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:var(--color-primary)}svg{flex-shrink:0}strong{font-weight:600}:focus-visible{outline:2px solid var(--color-primary);outline-offset:var(--space-1)}h1:focus,main:focus{outline:none}.secondary{color:var(--color-text-secondary)}.small{font-size:var(--font-size-small)}.inline{align-items:center;gap:var(--space-3);display:flex}.stack{gap:var(--space-4);display:grid}.amount,.metric-value,.expense-amount{font-variant-numeric:tabular-nums}@keyframes page-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page>:not(.page-header){animation:.18s ease-out page-enter}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
