:root{color-scheme:light;--pea-primary:#63b84a;--pea-primary-hover:#4e9a3e;--pea-primary-soft:#b7e59a;--pea-primary-tint:#f1faea;--pea-bg:#f7faf6;--pea-surface:#fff;--pea-surface-soft:#f1f5ef;--pea-border:#e5ece3;--pea-text:#243024;--pea-text-muted:#5c6a5c;--pea-text-soft:#8a968a;--pea-blue:#6d92d6;--pea-orange:#e8a163;--pea-yellow:#e9b23b;--pea-pink:#d989a8;--pea-error:#d96b5f;--pea-success:#4e9a3e;--pea-warning:#cf9430;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:20px;--text-xl:28px;--text-2xl:36px;--font-regular:400;--font-medium:500;--font-semibold:600;--font-bold:700;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--shadow-card:0 4px 14px rgba(20,40,20,.08);--shadow-button:0 2px 8px rgba(70,110,50,.16);--shadow-soft:0 6px 20px rgba(30,60,30,.06);--bg:var(--pea-bg);--surface:var(--pea-surface);--surface-strong:var(--pea-surface-soft);--border:var(--pea-border);--text:var(--pea-text);--muted:var(--pea-text-muted);--primary:var(--pea-primary);--primary-strong:var(--pea-primary-hover);--success:var(--pea-success);--warning:var(--pea-warning);--danger:var(--pea-error);--shadow:var(--shadow-card);--radius:var(--radius-md)}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--pea-text);background:radial-gradient(circle at top left,hsla(97,59%,75%,.2),transparent 28%),linear-gradient(180deg,#fbfdf9 0,var(--pea-bg) 180px);font-size:var(--text-md);line-height:1.5}body.body-lock{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{-webkit-appearance:none;-moz-appearance:none;appearance:none}label{display:grid;grid-gap:var(--space-2);gap:var(--space-2);color:var(--pea-text);font-size:var(--text-sm);font-weight:var(--font-medium)}input[type=checkbox]{accent-color:var(--pea-primary)}:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(99,184,74,.12)}.app-shell{display:flex;min-height:100vh}.sidebar{width:280px;padding:var(--space-6);background:hsla(0,0%,100%,.82);border-right:1px solid var(--pea-border);display:flex;flex-direction:column;gap:var(--space-6);position:-webkit-sticky;position:sticky;top:0;height:100vh;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:40}.sidebar-mobile-header{display:none}.brand-block{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.brand-lockup{display:flex;align-items:center;gap:var(--space-3)}.brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(180deg,#fff 0,var(--pea-primary-tint) 100%);border:1px solid rgba(99,184,74,.22);box-shadow:var(--shadow-soft);flex-shrink:0}.brand-mark svg{display:block}.brand-meta{display:grid;grid-gap:2px;gap:2px;min-width:0}.brand-title-row{display:flex;align-items:center;gap:var(--space-2)}.brand{margin:0;font-size:var(--text-xl);line-height:1;font-weight:var(--font-bold);letter-spacing:-.04em;color:var(--pea-text)}.brand-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:var(--pea-primary-tint);color:var(--pea-primary-hover);font-size:var(--text-xs);font-weight:var(--font-semibold)}.brand-subtitle{margin:0;color:var(--pea-text-muted);font-size:var(--text-sm)}.nav{display:flex;flex-direction:column;gap:var(--space-2)}.nav-link{padding:11px 14px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--pea-text-muted);display:flex;align-items:center;gap:10px;transition:background-color .15s ease,color .15s ease,transform .15s ease}.nav-link.active,.nav-link:hover{color:var(--pea-primary-hover);background:var(--pea-primary-tint)}.nav-link.active{box-shadow:inset 0 0 0 1px rgba(99,184,74,.16)}.sidebar-footer{margin-top:auto;color:var(--pea-text-soft);font-size:var(--text-xs)}.app-main{flex:1 1;min-width:0;display:flex;flex-direction:column}.topbar{justify-content:space-between;gap:var(--space-4);padding:24px 32px 18px;border-bottom:1px solid rgba(229,236,227,.95)}.topbar,.topbar-leading{display:flex;align-items:center}.topbar-leading{gap:var(--space-3);min-width:0}.topbar-brand{display:none;min-width:0}.topbar-brand .brand-mark{width:38px;height:38px}.topbar-brand .brand{font-size:var(--text-lg)}.topbar-brand .brand-subtitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-nav-toggle{display:none;width:44px;height:44px;padding:0;border:1px solid var(--pea-border);border-radius:var(--radius-md);background:hsla(0,0%,100%,.94);box-shadow:var(--shadow-soft);align-items:center;justify-content:center;gap:4px;cursor:pointer;flex-direction:column;flex-shrink:0}.mobile-nav-toggle span{width:16px;height:2px;border-radius:999px;background:var(--pea-text);transition:transform .15s ease,opacity .15s ease}.app-shell.mobile-nav-open .mobile-nav-toggle span:first-child{transform:translateY(6px) rotate(45deg)}.app-shell.mobile-nav-open .mobile-nav-toggle span:nth-child(2){opacity:0}.app-shell.mobile-nav-open .mobile-nav-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--pea-border);background:hsla(0,0%,100%,.9);box-shadow:var(--shadow-soft);cursor:pointer;list-style:none;transition:border-color .15s ease,background-color .15s ease}.user-menu-trigger:hover{border-color:rgba(99,184,74,.28);background:#fff}.user-menu-trigger::-webkit-details-marker{display:none}.user-menu-email{font-weight:var(--font-semibold);color:var(--pea-text)}.user-menu-chevron{color:var(--pea-text-soft)}.user-menu-panel{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:var(--pea-surface);border:1px solid var(--pea-border);border-radius:var(--radius-lg);padding:var(--space-2);box-shadow:var(--shadow-card);display:grid;grid-gap:4px;gap:4px;z-index:20}.mobile-nav-backdrop{display:none}.user-menu-item{padding:10px 12px;border-radius:var(--radius-sm);color:var(--pea-text);text-align:left;display:block}.user-menu-item:hover{background:var(--pea-surface-soft)}.user-menu-action{width:100%;background:none;border:none;font:inherit;cursor:pointer}.divider,.user-menu-divider{height:1px;background:var(--pea-border)}.content{width:min(1280px,100%);margin:0 auto;padding:32px}.page-stack{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5)}.page-title{font-size:var(--text-xl);line-height:1.1;font-weight:var(--font-semibold);letter-spacing:-.03em;color:var(--pea-text)}.page-title-sm{font-size:var(--text-lg)}.page-subtitle{color:var(--pea-text-muted);margin:4px 0 0;font-size:var(--text-sm)}.card{background:hsla(0,0%,100%,.94);border:1px solid var(--pea-border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-card)}.card+.card{margin-top:var(--space-4)}.card-muted{background:var(--pea-surface-soft);box-shadow:none}.grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.metric-card{background:linear-gradient(180deg,#fff,#fbfdf9);border:1px solid var(--pea-border);border-radius:var(--radius-lg);padding:20px;box-shadow:none}.metric-label{margin:0 0 var(--space-2);color:var(--pea-text-muted);font-size:var(--text-sm)}.metric-value{margin:0;color:var(--pea-text);font-size:30px;line-height:1.1;font-weight:var(--font-bold);letter-spacing:-.04em}.metric-value-sm{font-size:24px}.budget-value-negative,.metric-value-negative{color:var(--pea-error)}.stack{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.control-inline,.inline-actions,.pagination,.section-actions,.table-toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.control-inline>*{min-width:0}.table-toolbar{margin-bottom:var(--space-3)}.pagination{margin-top:var(--space-3)}.control-compact{width:min(240px,100%)}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:var(--text-xs);color:var(--pea-text-soft);font-weight:var(--font-semibold);letter-spacing:.03em;text-transform:uppercase;padding:0 0 12px}.table td{padding:14px 0;border-top:1px solid var(--pea-border);vertical-align:middle}.table-amount{padding-right:28px}.table-category{padding-left:28px}.table-category .select{margin-left:12px}.table-fixed{table-layout:fixed}.table-header-control{position:relative}.table-header-button{width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:0 0 12px;border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;cursor:pointer}.table-header-button.is-sorted{color:var(--pea-text)}.table-header-indicator{color:var(--pea-text-soft);font-size:13px}.table-column-menu{position:absolute;top:calc(100% + 8px);left:0;width:min(260px,92vw);display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid var(--pea-border);border-radius:var(--radius-md);background:hsla(0,0%,100%,.98);box-shadow:var(--shadow-card);z-index:15}.table-column-menu-actions{display:flex;flex-wrap:wrap;gap:8px}.transactions-table .table-header-control.table-category .table-column-menu{left:auto;right:0}.cell{display:flex;align-items:center;min-height:44px}.cell-display{padding:0 12px;font-size:var(--text-md)}.flow-icon{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:999px;background:var(--pea-surface-soft);color:var(--pea-text-muted);border:1px solid rgba(229,236,227,.95)}.flow-icon svg{width:16px;height:16px;display:block}.table tr.selected td{background:hsla(94,62%,95%,.9)}.table td:first-child{padding-right:12px}.table td:last-child,.table th:last-child{padding-right:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.color-menu{width:100%;position:relative}.color-summary{list-style:none;border:1px solid var(--pea-border);border-radius:var(--radius-md);padding:11px 12px;background:var(--pea-surface);display:flex;align-items:center;gap:8px;cursor:pointer;min-height:44px;font-size:var(--text-md);font-family:inherit}.color-summary::-webkit-details-marker{display:none}.color-swatch{width:18px;height:18px;border-radius:6px;border:1px solid rgba(36,48,36,.08)}.color-chip{width:32px;height:32px;display:inline-block;border-radius:10px;border:1px solid rgba(36,48,36,.08);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.28)}.color-options{position:absolute;top:calc(100% + 6px);left:0;right:0;display:grid;grid-template-columns:repeat(6,1fr);grid-gap:8px;gap:8px;padding:12px;background:var(--pea-surface);border:1px solid var(--pea-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);z-index:5}.color-option{width:100%;aspect-ratio:1;border-radius:10px;border:2px solid transparent;cursor:pointer}.color-option.active{border-color:var(--pea-text)}.row-actions{display:flex;gap:8px;justify-content:flex-end;opacity:0;pointer-events:none;transition:opacity .15s ease}.row-actions.row-actions-start{justify-content:flex-start}.category-row.is-editing .row-actions,.category-row:hover .row-actions,.row-actions.row-actions-visible,.rule-row.is-editing .row-actions,.rule-row:hover .row-actions,.transaction-row:hover .row-actions,.upload-row:hover .row-actions{opacity:1;pointer-events:auto}.badge,.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:var(--text-xs);font-weight:var(--font-semibold);background:var(--pea-surface-soft);color:var(--pea-text-muted);border:1px solid rgba(229,236,227,.95)}.badge-primary{background:var(--pea-primary-tint);color:var(--pea-primary-hover)}.btn{border:1px solid transparent;background:var(--pea-surface-soft);color:var(--pea-text);min-height:42px;padding:10px 16px;border-radius:var(--radius-md);font-weight:var(--font-semibold);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.2;white-space:nowrap;transition:transform .15s ease,background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.icon-btn{width:42px;min-width:42px;height:42px;padding:0}.icon-btn svg{width:16px;height:16px}.icon-btn-round{border-radius:999px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--pea-primary);color:#fff;box-shadow:var(--shadow-button)}.btn-primary:hover:not(:disabled){background:var(--pea-primary-hover)}.btn-outline{background:var(--pea-surface-soft);border-color:var(--pea-border)}.btn-outline:hover:not(:disabled){background:#eaf1e7}.btn-danger{background:hsla(6,62%,61%,.1);border-color:hsla(6,62%,61%,.18);color:var(--pea-error)}.btn-danger:hover:not(:disabled){background:hsla(6,62%,61%,.16)}.btn-ghost{background:transparent;color:var(--pea-text-muted)}.input,.select{width:100%;padding:0 12px;border-radius:var(--radius-md);border:1px solid var(--pea-border);background:var(--pea-surface);color:var(--pea-text);font-size:var(--text-md);line-height:1.2;min-height:44px}.input::-webkit-file-upload-button{margin-right:12px;padding:8px 12px;border:1px solid var(--pea-border);border-radius:10px;background:var(--pea-surface-soft);color:var(--pea-text)}.input::file-selector-button{margin-right:12px;padding:8px 12px;border:1px solid var(--pea-border);border-radius:10px;background:var(--pea-surface-soft);color:var(--pea-text)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--pea-text-soft) 50%),linear-gradient(135deg,var(--pea-text-soft) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:36px}.input:focus,.select:focus{border-color:var(--pea-primary)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.form-row-single{grid-template-columns:1fr}.manual-transaction-form{margin-bottom:16px;padding:20px;border:1px solid var(--pea-border);border-radius:var(--radius-lg);background:linear-gradient(180deg,hsla(94,62%,95%,.8),hsla(0,0%,100%,.94))}.manual-transaction-form .page-header{margin-bottom:16px}.modal-form{margin-bottom:0}.form-actions-end{display:flex;align-items:flex-end}.status-message{margin:0;font-size:var(--text-sm)}.status-error{color:var(--pea-error)}.status-success{color:var(--pea-success)}.status-warning{color:var(--pea-warning)}.transaction-merchant{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.transaction-account{display:inline-block;max-width:9ch;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;-webkit-mask-image:linear-gradient(90deg,#000,#000 72%,transparent);mask-image:linear-gradient(90deg,#000,#000 72%,transparent)}.transactions-table .table-amount{padding-right:12px}.transactions-table .table-category{padding-left:12px}.transactions-table .table-category .select{margin-left:0}.transactions-table .row-actions{opacity:1;pointer-events:auto}.modal-backdrop{position:fixed;inset:0;background:rgba(36,48,36,.28);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.modal{background:var(--pea-surface);border:1px solid var(--pea-border);border-radius:var(--radius-xl);padding:24px;width:min(680px,100%);box-shadow:var(--shadow-card)}.modal-wide{width:min(880px,100%)}.modal-list{max-height:320px;overflow-y:auto;padding-left:18px;margin:0}.modal-section{margin-bottom:16px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-bottom:16px}.upload-account-cell{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.upload-account-label{max-width:220px;white-space:normal}.skeleton{background:linear-gradient(90deg,#eef4ea,#f8fbf6,#eef4ea);background-size:200% 100%;animation:shimmer 1.4s ease infinite;border-radius:var(--radius-md)}.skeleton-line{height:12px;width:100%}.skeleton-card{height:120px}.skeleton-table{height:220px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.chart{width:100%;height:220px}.chart-legend{display:flex;gap:12px;flex-wrap:wrap;color:var(--pea-text-muted);font-size:var(--text-sm)}.legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block;margin-right:6px}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:min(440px,100%)}.auth-brand{display:grid;grid-gap:var(--space-5);gap:var(--space-5);margin-bottom:var(--space-5)}.auth-link{display:inline-block;margin-top:12px;color:var(--pea-text-muted);font-size:var(--text-sm)}.text-content{white-space:pre-wrap;line-height:1.7;color:var(--pea-text)}.insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:var(--space-5);gap:var(--space-5)}.insight-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--space-4);gap:var(--space-4);align-items:end;padding:24px 28px;border-radius:28px;background:radial-gradient(circle at top left,hsla(95,79%,87%,.8),transparent 34%),linear-gradient(135deg,hsla(0,0%,100%,.96),hsla(99,54%,95%,.9));border:1px solid rgba(148,163,184,.2)}.insight-hero-copy{display:grid;grid-gap:10px;gap:10px}.insight-hero-kicker{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--pea-text-muted);font-weight:var(--font-semibold)}.insight-hero-title{margin:0;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.05;letter-spacing:-.04em;color:var(--pea-text)}.insight-hero-text{margin:0;max-width:56ch;color:var(--pea-text-muted);line-height:1.6}.insight-hero-meta{align-self:start;padding:10px 14px;border-radius:999px;background:hsla(0,0%,100%,.75);border:1px solid rgba(148,163,184,.18);color:var(--pea-text-muted);font-size:var(--text-sm);white-space:nowrap}.insight-card{border:1px solid var(--pea-border);border-radius:24px;padding:22px;background:radial-gradient(circle at top right,hsla(0,0%,100%,.92),transparent 38%),linear-gradient(180deg,hsla(0,0%,100%,.98),hsla(94,62%,95%,.82));box-shadow:0 14px 36px rgba(30,41,59,.08);display:grid;grid-gap:14px;gap:14px;position:relative;overflow:hidden}.insight-card:after{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:linear-gradient(180deg,rgba(93,135,77,.95),rgba(177,208,91,.65))}.insight-card[data-tone=changes]:after{background:linear-gradient(180deg,rgba(37,99,235,.95),rgba(56,189,248,.7))}.insight-card[data-tone=watchlist]:after{background:linear-gradient(180deg,rgba(234,88,12,.95),rgba(251,191,36,.75))}.insight-card[data-tone=next]:after{background:linear-gradient(180deg,rgba(21,128,61,.95),rgba(74,222,128,.7))}.insight-card-kicker{font-size:.72rem;font-weight:var(--font-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--pea-text-muted)}.insight-card-title{margin:0;font-size:var(--text-lg);line-height:1.2;font-weight:var(--font-semibold);letter-spacing:-.02em;color:var(--pea-text)}.insight-card-body{margin:0;color:var(--pea-text-muted);line-height:1.55}.insight-card-footer{margin-top:auto;padding-top:8px;font-size:.82rem;color:var(--pea-text-muted);text-transform:uppercase;letter-spacing:.08em}@media (max-width:780px){.insight-hero{grid-template-columns:1fr}.insight-hero-meta{justify-self:start;white-space:normal}}.info-list{display:grid;grid-gap:10px;gap:10px}.info-block{border:1px solid var(--pea-border);border-radius:var(--radius-md);padding:16px;background:var(--pea-surface-soft)}.warning-list{margin:0;padding-left:18px}.surface-section{border:1px solid var(--pea-border);border-radius:var(--radius-md);padding:16px;background:hsla(0,0%,100%,.78)}.surface-section-title{margin:0 0 8px;font-weight:var(--font-semibold);color:var(--pea-text)}.file-note,.table-note{margin-top:12px}.budget-toolbar{justify-content:flex-end}.budget-average-card,.budget-average-overview{display:grid;grid-gap:12px;gap:12px}.budget-average-meta{margin:0;color:var(--pea-text-soft);font-size:var(--text-sm)}.budget-row td{padding-top:18px;padding-bottom:18px}.budget-category-cell,.budget-category-trigger{display:flex;align-items:center;gap:12px}.budget-category-trigger{width:100%;padding:0;border:none;background:none;text-align:left;color:inherit;cursor:pointer}.budget-category-trigger:hover .budget-category-name{text-decoration:underline}.budget-category-dot{width:14px;height:14px;border-radius:999px;border:1px solid rgba(36,48,36,.08);flex-shrink:0}.budget-category-name{font-weight:var(--font-medium);color:var(--pea-text)}.budget-category-meta{margin-top:2px;color:var(--pea-text-soft);font-size:var(--text-xs)}.budget-input{min-width:130px}.budget-status-stack{display:grid;grid-gap:8px;gap:8px}.budget-pill-danger{background:hsla(6,62%,61%,.1);color:var(--pea-error);border-color:hsla(6,62%,61%,.18)}.budget-meter{width:100%;height:8px;border-radius:999px;background:rgba(229,236,227,.9);overflow:hidden}.budget-meter-bar{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pea-primary),var(--pea-primary-soft))}.budget-meter-bar-danger{background:linear-gradient(90deg,#d96b5f,#e8a163)}.budget-meter-label{color:var(--pea-text-soft);font-size:var(--text-xs)}.budget-detail-summary{margin-bottom:16px}.budget-detail-table-wrap{max-height:420px;overflow-y:auto}.table-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px;border-top:1px solid var(--pea-border);background:hsla(96,38%,97%,.9)}.table-summary-label{color:var(--pea-text-muted);font-size:var(--text-sm)}.table-summary-value{color:var(--pea-text);font-size:var(--text-lg);font-weight:var(--font-semibold)}@media (max-width:900px){.sidebar{position:fixed;top:0;left:0;bottom:0;width:min(320px,calc(100vw - 56px));height:100vh;padding:20px;border-right:1px solid var(--pea-border);border-bottom:none;background:hsla(0,0%,100%,.92);box-shadow:0 18px 48px rgba(20,40,20,.18);transform:translateX(-100%);transition:transform .18s ease}.app-shell.mobile-nav-open .sidebar,.sidebar.is-open{transform:translateX(0)}.sidebar-mobile-header{display:flex;justify-content:flex-end}.topbar{padding:18px 20px 16px}.topbar-brand{display:flex}.mobile-nav-backdrop,.mobile-nav-toggle{display:inline-flex}.mobile-nav-backdrop{position:fixed;inset:0;width:100%;height:100%;border:0;padding:0;background:rgba(36,48,36,.24);z-index:30}.brand-block{display:none}.nav{flex:1 1;overflow-y:auto}.control-inline,.inline-actions,.pagination,.row-actions,.section-actions,.table-toolbar{align-items:stretch}.pagination,.table-toolbar{flex-direction:column}.control-compact,.form-actions-end .btn,.section-actions .btn,.section-actions .input,.section-actions .select,.table-toolbar .btn,.table-toolbar .select{width:100%}.form-row{grid-template-columns:1fr}.form-actions-end{align-items:stretch}.row-actions{opacity:1;pointer-events:auto;justify-content:flex-start;flex-wrap:wrap}.content{padding:20px}.page-header{flex-direction:column;align-items:stretch}.table-wrap{overflow:visible}.table-mobile-cards{display:block;table-layout:auto}.table-mobile-cards colgroup,.table-mobile-cards thead{display:none}.table-mobile-cards tbody,.table-mobile-cards tr{display:grid;grid-gap:12px;gap:12px}.table-mobile-cards tr{padding:16px;border:1px solid var(--pea-border);border-radius:var(--radius-md);background:hsla(0,0%,100%,.96);box-shadow:var(--shadow-soft)}.table-mobile-cards tr.selected{background:hsla(94,62%,95%,.9)}.table-mobile-cards tr.selected td{background:transparent}.table-mobile-cards td{display:grid;grid-template-columns:minmax(92px,108px) minmax(0,1fr);grid-gap:12px;gap:12px;padding:0;border-top:none;align-items:start;overflow-wrap:anywhere}.table-mobile-cards td:before{content:attr(data-label);color:var(--pea-text-soft);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.03em;text-transform:uppercase;line-height:1.4}.table-mobile-cards td:first-child,.table-mobile-cards td:last-child{padding-right:0}.table-mobile-cards td>*{min-width:0}.table-mobile-cards .cell{min-height:0}.table-mobile-cards .cell-display{padding:0}.table-mobile-cards .table-amount,.table-mobile-cards .table-category{padding-right:0;padding-left:0}.table-mobile-cards .table-category .select{margin-left:0}.table-mobile-cards td[data-label=Select]{grid-template-columns:auto 1fr;align-items:center}.table-mobile-cards td[data-label=Actions]{grid-template-columns:1fr}.table-mobile-cards td[data-label=Actions]:before{margin-bottom:4px}.table-mobile-cards .inline-actions,.table-mobile-cards .row-actions{width:100%;justify-content:flex-start}.table-mobile-cards .inline-actions .btn,.table-mobile-cards .inline-actions a.btn,.table-mobile-cards .row-actions .btn{flex:1 1 120px;min-width:0}.budget-input{min-width:0}.table-category{padding-left:16px}.user-menu{min-width:0}.user-menu-trigger{max-width:100%}.user-menu-email{max-width:min(42vw,220px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width:640px){.content,.topbar{padding:16px}.card,.modal{padding:18px}.info-block,.surface-section{padding:14px}.btn{min-height:44px;padding-inline:14px}.topbar-brand .brand-subtitle{display:none}}