:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#0b1210;--bg-elevated:#121c19;--surface:#17231f;--surface-hover:#1e2f29;--border:#26372f;--text:#eef3f0;--text-muted:#9db3aa;--accent:#22c55e;--accent-strong:#16a34a;--accent-contrast:#04160c;--danger:#f87171;--danger-strong:#ef4444;--warning:#fbbf24;--warning-strong:#f97316;--compare-mix-base:var(--surface);--compare-a:#3b82f6;--compare-b:var(--accent);--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--shadow:0 4px 20px #00000059;--nav-height:64px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (prefers-color-scheme:light){:root{--bg:#f5f7f6;--bg-elevated:#fff;--surface:#fff;--surface-hover:#eef2f0;--border:#dbe4e0;--text:#101915;--text-muted:#5c6d65;--accent:#16a34a;--accent-strong:#15803d;--accent-contrast:#fff;--shadow:0 4px 16px #10191514}}:root[data-theme=light]{--bg:#f5f7f6;--bg-elevated:#fff;--surface:#fff;--surface-hover:#eef2f0;--border:#dbe4e0;--text:#101915;--text-muted:#5c6d65;--accent:#16a34a;--accent-strong:#15803d;--accent-contrast:#fff;--shadow:0 4px 16px #10191514}:root[data-theme=dark]{--bg:#0b1210;--bg-elevated:#121c19;--surface:#17231f;--surface-hover:#1e2f29;--border:#26372f;--text:#eef3f0;--text-muted:#9db3aa;--accent:#22c55e;--accent-strong:#16a34a;--accent-contrast:#04160c;--shadow:0 4px 20px #00000059}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0}#root{min-height:100dvh}html.force-portrait-rotate #root{transform-origin:0 0;width:100vh;height:100vw;min-height:0;position:fixed;top:100%;left:0;overflow:hidden;transform:rotate(-90deg)}html.force-portrait-rotate .btn.header-action-desktop,html.force-portrait-rotate .desktop-header-row{display:none}html.force-portrait-rotate .app-shell{flex-direction:column;height:100%;min-height:0;padding-bottom:0}html.force-portrait-rotate .app-header{flex-shrink:0;display:flex;position:static}html.force-portrait-rotate .app-shell>main{-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto}html.force-portrait-rotate .nav-bottom{height:calc(var(--nav-height) + env(safe-area-inset-bottom));width:auto;padding:0 0 env(safe-area-inset-bottom);border-top:1px solid var(--border);border-right:none;flex-direction:row;flex-shrink:0;order:2;justify-content:flex-start;align-items:stretch;gap:0;position:static}html.force-portrait-rotate .nav-brand{display:none}html.force-portrait-rotate .nav-item{text-align:center;white-space:nowrap;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;min-width:0;padding:0;font-size:.7rem}html.force-portrait-rotate .nav-item.active{color:var(--accent);background:0 0}html.force-portrait-rotate .nav-sync-status{display:none}html.force-portrait-rotate .view{max-width:720px;padding:16px 16px 32px}html.force-portrait-rotate .fab{right:20px;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + 20px)}html.force-portrait-rotate .modal.modal-wide{max-width:520px}html.force-portrait-rotate .calendar-cell-badges{transform-origin:100% 0;transform:scale(.78)}html.force-portrait-rotate .toast{bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + 16px)}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-width:0;padding:10px 12px}input[type=date],input[type=month]{box-sizing:border-box;appearance:none;max-width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}button{cursor:pointer}h1,h2,h3,p{margin:0}.app-shell{min-height:100dvh;padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));flex-direction:column;display:flex}.app-header{z-index:5;padding:calc(14px + env(safe-area-inset-top)) 16px 14px;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.app-header h1{letter-spacing:.01em;font-size:1.1rem;font-weight:700}.app-header-actions{flex-shrink:0;align-items:center;display:flex}.btn.header-action-desktop{display:none}.manage-btn{font-size:1.05rem}.desktop-header-row{display:none}@media (width>=860px){.btn.header-action-desktop{display:inline-flex}.desktop-header-row{justify-content:flex-end;display:flex}}.view{flex-direction:column;flex:1;gap:16px;width:100%;max-width:720px;margin:0 auto;padding:16px 16px 32px;display:flex}.view:has(.fab){padding-bottom:92px}.nav-bottom{z-index:10;height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--bg-elevated);border-top:1px solid var(--border);display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{min-width:0;color:var(--text-muted);white-space:nowrap;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:.7rem;font-weight:600;display:flex}.nav-item .nav-icon{font-size:1.25rem;line-height:1}.nav-brand,.nav-sync-status{display:none}@media (width>=860px){.app-shell{flex-direction:row;padding-bottom:0}.app-header{display:none}.nav-bottom{border-top:none;border-right:1px solid var(--border);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:4px;width:220px;height:100dvh;padding:28px 12px;position:sticky;top:0;left:auto;right:auto}.nav-brand{padding:0 12px 24px;font-size:1.1rem;font-weight:800;display:block}.nav-item{border-radius:var(--radius-sm);text-align:left;white-space:normal;flex-direction:row;flex:none;justify-content:flex-start;align-items:center;gap:10px;padding:10px 12px;font-size:.92rem}.nav-item.active{background:color-mix(in srgb, var(--accent) 16%, transparent)}.nav-sync-status{border-top:1px solid var(--border);margin-top:auto;margin-bottom:-16px;padding:12px 12px 0;display:block}.nav-sync-status span{font-size:.75rem}.view{max-width:880px;padding:32px 40px 48px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px}.budget-summary-card{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;display:block}.card.budget-summary-card.budget-level-green{background:color-mix(in srgb, var(--accent) 14%, var(--compare-mix-base));border:none}.card.budget-summary-card.budget-level-yellow{background:color-mix(in srgb, var(--warning) 18%, var(--compare-mix-base));border:none}.card.budget-summary-card.budget-level-orange{background:color-mix(in srgb, var(--warning-strong) 16%, var(--compare-mix-base));border:none}.card.budget-summary-card.budget-level-red{background:color-mix(in srgb, var(--danger-strong) 14%, var(--compare-mix-base));border:none}.view.dashboard-view{max-width:1600px;padding-top:16px}.dashboard-top-row{justify-content:space-between;align-items:center;margin-bottom:-8px;display:flex}.dashboard-theme-toggle{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;display:flex}.dashboard-grid{grid-auto-flow:dense;gap:16px;display:grid}.dashboard-stack{flex-direction:column;gap:16px;display:flex}.dashboard-cell{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex-direction:column;min-width:0;display:flex;position:relative}.dashboard-cell-grid.dashboard-cell-fixed{overflow:hidden}.dashboard-cell.dragging{opacity:.5}.dashboard-cell.drag-over{outline:2px dashed var(--accent);outline-offset:2px}.dashboard-drag-handle{border-radius:var(--radius-sm);width:100%;height:16px;color:var(--border);cursor:grab;touch-action:none;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:4px;font-size:.7rem;display:flex}.dashboard-drag-handle:active{cursor:grabbing;color:var(--text-muted)}.dashboard-card{flex-direction:column;height:100%;display:flex}.dashboard-cell-stack .dashboard-card{height:auto}.dashboard-card-body{flex-direction:column;flex:1;min-height:0;display:flex}.dashboard-card-body.no-scroll{overflow:hidden}.dashboard-card-header{flex-shrink:0;align-items:center;gap:10px;margin-bottom:12px;display:flex}.dashboard-card-header h3{flex:1;font-size:1rem;font-weight:700}.dashboard-card-eye-toggle{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:4px;display:flex}.dashboard-card-totals{flex-wrap:wrap;gap:6px 14px;display:flex}.dashboard-card-total{font-size:1.3rem;font-weight:800}.dashboard-card-totals .dashboard-card-total:not(:last-child):after{content:","}.dashboard-card-list{flex-direction:column;gap:6px;margin-top:12px;display:flex}.dashboard-card-list-row{justify-content:space-between;gap:10px;font-size:.85rem;display:flex}.dashboard-card .dashboard-card-link{color:var(--accent);text-align:left;cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-top:12px;padding:0;font-size:.85rem;font-weight:600;display:block}.dashboard-card-trend{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.dashboard-trend-badge{white-space:nowrap;font-size:.8rem;font-weight:700}.dashboard-trend-up{color:var(--accent)}.dashboard-trend-down{color:var(--danger)}.card.dashboard-card.dashboard-networth-card{background:linear-gradient(180deg, var(--accent-strong) 0%, var(--accent) 100%);color:#fff;border:none}.dashboard-networth-card .dashboard-card-header h3,.dashboard-networth-card .dashboard-card-total,.dashboard-networth-card .dashboard-networth-line{color:#fff}.boucoup-scope .dashboard-networth-card .muted{color:#ffffffc7}.dashboard-networth-card .pocket-type-icon{color:#fff;background:#fff3}.dashboard-networth-card .dashboard-card-eye-toggle{color:#ffffffd9}.dashboard-networth-card .dashboard-card-divider{border-top-color:#ffffff40}.dashboard-card-divider,.dashboard-budget-gauge{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.dashboard-budget-gauge-label{margin-bottom:4px;font-size:.75rem}.dashboard-budget-gauge-row+.dashboard-budget-gauge-row{margin-top:12px}.dashboard-gauge-track{background:var(--surface-hover);border-radius:999px;height:10px;margin:6px 0;overflow:hidden}.dashboard-gauge-fill{background:var(--accent);border-radius:999px;height:100%}.dashboard-budget-gauge-footer{justify-content:space-between;font-size:.75rem;display:flex}.section-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.net-worth-card{padding-bottom:18px;position:relative}.card-expand-toggle{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:1px 10px;line-height:1;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.card-expand-toggle svg{transition:transform .15s}.entry-pin-badge{color:var(--accent);display:flex;position:absolute;bottom:6px;right:14px}.card-expand-toggle.open svg{transform:rotate(180deg)}.net-worth-eye-toggle{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;line-height:1;display:flex;position:absolute;top:18px;right:18px}.savings-view .net-worth-amount,.savings-view .net-worth-breakdown-amount,.savings-view .total-chip .amount,.savings-view .entry-amount,.dashboard-view .dashboard-card-total,.dashboard-view .dashboard-networth-line,.dashboard-view .dashboard-amount{will-change:filter;transition:filter .15s;transform:translateZ(0)}.balances-blurred .net-worth-amount,.balances-blurred .net-worth-breakdown-amount,.balances-blurred .total-chip .amount,.balances-blurred .entry-amount,.balances-blurred .dashboard-card-total,.balances-blurred .dashboard-networth-line,.balances-blurred .dashboard-amount{filter:blur(8px);-webkit-user-select:none;user-select:none}.section-title h2{font-size:1rem;font-weight:700}.muted{color:var(--text-muted);font-size:.85rem}.totals-row{flex-wrap:wrap;gap:10px;display:flex}.total-chip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex:1;min-width:140px;padding:14px 16px}.total-chip .amount{margin-top:2px;font-size:1.35rem;font-weight:800}.chip-currency-row:not(:first-child){margin-top:8px}.compare-totals-row .total-chip.compare-chip-a{background:color-mix(in srgb, var(--compare-a) 14%, var(--compare-mix-base));border:none}.compare-totals-row .total-chip.compare-chip-b{background:color-mix(in srgb, var(--compare-b) 14%, var(--compare-mix-base));border:none}#compareMonthA,#compareMonthB{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}#compareMonthA{background:color-mix(in srgb, var(--compare-a) 12%, var(--compare-mix-base))}#compareMonthB{background:color-mix(in srgb, var(--compare-b) 12%, var(--compare-mix-base))}.entry-list{flex-direction:column;gap:10px;display:flex}.pocket-group-divider{border-top:1px solid var(--border);margin:20px 0}.subtab-content{flex-direction:column;gap:16px;display:flex}.entry-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);text-align:left;flex-direction:column;gap:6px;width:100%;padding:14px 16px 18px;display:flex;position:relative}.entry-menu-options{border-top:1px solid var(--border);flex-direction:column;gap:2px;margin-top:4px;padding-top:8px;display:flex}.entry-menu-option{cursor:pointer;text-align:left;color:var(--text);width:100%;font-size:.88rem;font:inherit;background:0 0;border:none;border-radius:6px;align-items:center;padding:8px 6px;display:flex}.entry-menu-option:hover{background:var(--surface-hover)}.note-indicator{opacity:.6;cursor:pointer;padding:4px;font-size:.95rem;line-height:1;position:absolute;bottom:10px;right:14px}.note-indicator-text{color:var(--text);opacity:1;cursor:pointer;font-size:.85rem;font-weight:400;text-decoration:underline}.pocket-link-text{color:var(--text);width:fit-content;font-size:.85rem;text-decoration:underline}.entry-footer{justify-content:space-between;align-items:center;gap:10px;margin-top:6px;display:flex}.pocket-name{font-size:.95rem}.entry-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.entry-top-left{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pocket-type-icon{color:var(--text);flex-shrink:0;align-items:center;display:flex}.pocket-adjust-btn{color:var(--accent);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px 6px;font-size:1.3rem;font-weight:700;line-height:1;display:flex}.entry-amount{font-size:1.15rem;font-weight:700}.price-trend{font-size:.9rem}.price-trend-up{color:var(--accent)}.price-trend-down{color:var(--danger-strong)}.entry-sub{color:var(--text-muted);font-size:.82rem}.entry-sub-row{align-items:center;gap:8px;display:flex}.entry-note{color:var(--text);opacity:.85;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.85rem;display:-webkit-box;overflow:hidden}.badge{background:var(--surface-hover);border:1px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;padding:3px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.badge-cash{color:var(--warning)}.badge-card{color:#60a5fa}.badge-default{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}.badge-savings{color:var(--accent)}.badge-spending{color:#a78bfa}.btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);justify-content:center;align-items:center;gap:6px;padding:11px 16px;font-size:.9rem;font-weight:600;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-accent-outline{color:var(--accent)}.btn-danger{color:var(--danger-strong);border-color:color-mix(in srgb, var(--danger) 40%, var(--border))}.btn-transfer{background:0 0;border-color:#0000;padding:2px 10px;font-size:.95rem}.section-title-bottom{align-items:baseline}.btn-block{width:100%}.btn-icon{border-radius:999px;padding:8px;font-size:1rem;line-height:1}.btn-ghost{background:0 0;border-color:#0000}.fab{right:20px;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + 20px);z-index:8;background:var(--accent);width:56px;height:56px;color:var(--accent-contrast);box-shadow:var(--shadow);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.6rem;display:flex;position:fixed}@media (width>=860px){.fab{bottom:32px;right:40px}}.modal-overlay{z-index:30;background:#0408068c;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:520px;max-height:90dvh;padding:20px 20px calc(20px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex;overflow:hidden auto}.modal-overlay-popup{touch-action:none;align-items:center;padding:0 20px}.modal-popup{border-radius:var(--radius-lg);will-change:transform, opacity;width:min(100%,420px);padding:20px}@media (width>=640px){.modal-overlay{align-items:center}.modal{border-radius:var(--radius-lg)}}@media (width>=860px){.modal.modal-wide{max-width:900px}}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:1.05rem;font-weight:700}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-muted);font-size:.8rem;font-weight:600}.section-subheader{color:var(--text-muted);font-size:.8rem;font-weight:600;display:block}.form-group-header{justify-content:space-between;align-items:center;display:flex}.form-group-header label{margin:0}.form-row{gap:10px;display:flex}.form-row>*{flex:1;min-width:0}.transfer-row-icon{background:var(--accent);color:#fff;border-radius:50%;flex:none;justify-content:center;align-self:flex-end;align-items:center;width:32px;height:32px;margin-bottom:6px;display:flex}.segmented{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);gap:3px;padding:3px;display:flex}.segmented button{color:var(--text-muted);background:0 0;border:none;border-radius:6px;flex:1;padding:9px 10px;font-size:.85rem;font-weight:600}.segmented button.active{background:var(--accent);color:var(--accent-contrast)}.modal-actions{gap:10px;margin-top:4px;display:flex}.modal-actions>*{flex:1}.empty-state{text-align:center;color:var(--text-muted);padding:40px 16px}.empty-state .icon{margin-bottom:8px;font-size:2rem;display:block}.history-list{flex-direction:column;gap:8px;max-height:320px;display:flex;overflow-y:auto}.history-item{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;font-size:.85rem}.history-item .delta-pos{color:var(--accent);font-weight:700}.history-item .delta-neg{color:var(--danger-strong);font-weight:700}.history-item-reversed{opacity:.6;text-decoration:line-through}.history-item-reversed-label{font-style:italic;text-decoration:none;display:inline-block}.history-item-edit-trail{border-left:2px solid var(--border);flex-direction:column;gap:6px;margin-top:8px;padding-left:10px;display:flex}.history-item-edit{font-size:.8rem}.calendar-header{justify-content:space-between;align-items:center;display:flex}.calendar-header .month-label{font-size:1rem;font-weight:700}.calendar-nav-btn{font-size:1.6rem}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.weekday-label{text-align:center;color:var(--text-muted);padding-bottom:2px;font-size:.7rem;font-weight:700}.calendar-cell{aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;padding:2px;font-size:.75rem;display:flex;position:relative}.entry-badge-icons{color:var(--text-muted);flex-shrink:0;align-items:center;gap:3px;display:inline-flex}.calendar-cell-badges{z-index:1;transform-origin:100% 0;background:0 0;border-radius:999px;padding:2px 4px;position:absolute;top:-7px;right:-7px;transform:scale(.78)}@media (width>=860px){.calendar-cell-badges{transform:none}}.calendar-cell.pad{background:0 0;border:none}.calendar-cell.today{border-color:var(--accent)}.calendar-cell.has-spend{background:color-mix(in srgb, var(--accent) 10%, var(--surface))}.calendar-cell .day-num{font-weight:700}.calendar-cell .day-total{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.62rem;font-weight:700;overflow:hidden}.category-list{flex-direction:column;gap:8px;display:flex}.category-row{border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:10px 12px;display:flex}.category-row.as-button{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0}.list-frame{border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.list-frame-row{align-items:center;gap:10px;padding:10px 12px;display:flex}.list-frame-row:not(:last-child){border-bottom:1px solid var(--border)}.list-frame-row.as-button{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:0}.list-frame-row.as-button:not(:last-child){border-bottom:1px solid var(--border)}.switch{flex-shrink:0;align-items:center;width:46px;height:26px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch input:disabled{cursor:not-allowed}.switch-track{background:var(--border);pointer-events:none;border-radius:999px;transition:background .15s;position:absolute;inset:0}.switch-thumb{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch input:checked~.switch-track{background:var(--accent)}.switch input:checked~.switch-track .switch-thumb{transform:translate(20px)}.switch input:disabled~.switch-track{opacity:.5}.lock-screen{background:var(--bg);z-index:100;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.lock-card{text-align:center;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:320px;display:flex}.lock-card .lock-icon{margin-bottom:6px;font-size:2.5rem}.lock-card .btn{margin-top:14px}.menu-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:left;cursor:pointer;align-items:center;gap:10px;width:100%;padding:12px 14px;display:flex}.menu-row:hover{background:var(--surface-hover)}.swatch{border-radius:50%;flex-shrink:0;width:16px;height:16px}.swatch-picker{flex-wrap:wrap;gap:8px;display:flex}.swatch-btn{border:2px solid #0000;border-radius:50%;width:28px;height:28px}.swatch-btn.selected{border-color:var(--text)}.icon-picker{gap:10px;display:flex}.icon-picker-btn{border:2px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.icon-picker-btn.selected{border-color:var(--accent);color:var(--accent)}.category-breakdown{flex-direction:column;gap:8px;display:flex}.category-breakdown-row{text-align:left;width:100%;color:inherit;background:0 0;border:none;align-items:center;gap:10px;padding:10px 0;font-size:.85rem;display:flex}.category-breakdown-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:10px;font-size:.72rem;font-weight:600;display:flex}.category-breakdown-row .bar-track{background:var(--surface-hover);border-radius:999px;flex:1;height:12px;overflow:hidden}.category-breakdown-row .bar-fill{border-radius:999px;height:100%}.category-compare-row{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding:8px 0;display:flex}.category-compare-row:last-child{border-bottom:none}.category-compare-row .compare-header{align-items:center;gap:8px;font-size:.85rem;font-weight:700;display:flex}.category-compare-row .compare-line{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:6px 0;font-family:inherit;font-size:.78rem;display:flex}.category-compare-row .compare-line .compare-label{width:32px;color:var(--text-muted);flex-shrink:0}.category-compare-row .compare-line .compare-label-a{color:var(--compare-a);font-weight:700}.category-compare-row .compare-line .compare-label-b{color:var(--compare-b);font-weight:700}.category-compare-row .compare-line .bar-track{background:var(--surface-hover);border-radius:999px;flex:1;height:10px;overflow:hidden}.category-compare-row .compare-line .bar-fill{border-radius:999px;height:100%}.category-compare-row .compare-line strong{flex-shrink:0}.year-bar-chart{align-items:flex-end;gap:4px;height:140px;display:flex}.year-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;height:100%;display:flex}.year-bar-value{color:var(--text-muted);white-space:nowrap;font-size:.6rem}.year-bar{background:var(--accent);border-radius:4px 4px 0 0;width:100%;min-height:2px}.year-bar-label{color:var(--text-muted);font-size:.65rem}.year-adherence-strip{gap:4px;display:flex}.year-adherence-dot{background:var(--surface-hover);border-radius:999px;flex:1;height:8px}.year-adherence-dot.green{background:var(--accent)}.year-adherence-dot.yellow{background:var(--warning)}.year-adherence-dot.orange{background:var(--warning-strong)}.year-adherence-dot.red{background:var(--danger-strong)}.day-entry-row{border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.day-entry-row .info{align-items:center;gap:8px;min-width:0;display:flex}.day-entry-row .text{min-width:0}.day-entry-row .text .cat{font-size:.88rem;font-weight:600}.entry-badges{align-items:center;gap:4px;display:flex}.day-entry-row .text .note{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.icon-btn-row{gap:4px;display:flex}.toast{bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + 16px);background:var(--text);color:var(--bg);z-index:40;box-shadow:var(--shadow);border-radius:999px;padding:10px 18px;font-size:.85rem;font-weight:600;position:fixed;left:50%;transform:translate(-50%)}@media (width>=860px){.toast{bottom:32px}}.settings-list{flex-direction:column;gap:12px;display:flex}.settings-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-row.wrap{flex-direction:column;align-items:flex-start;gap:8px}.currency-dropdown{width:100%;max-width:320px;position:relative}.currency-dropdown-trigger{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.currency-dropdown-trigger .chevron{color:var(--text-muted);font-size:.75rem}.currency-dropdown-panel{z-index:20;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0}.currency-dropdown-option{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:.88rem;display:flex}.currency-dropdown-option:hover{background:var(--surface-hover)}.currency-dropdown-option input{width:auto;margin:0}.btn-accent-text{color:var(--accent);background:0 0;border-color:#0000;padding:8px 6px}.datalist-hint{color:var(--text-muted);font-size:.72rem}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.drive-reconnect-dim{z-index:25;pointer-events:none;background:#04080673;position:fixed;inset:0}.drive-reconnect-banner{z-index:26;padding:calc(14px + env(safe-area-inset-top)) 16px 14px;background:var(--bg-elevated);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:12px;display:flex;position:fixed;top:0;left:0;right:0}.drive-reconnect-row{align-items:center;gap:10px;min-width:0;display:flex}.drive-reconnect-text{min-width:0;font-size:.75rem;font-weight:600;line-height:1.3}.drive-reconnect-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:10px;display:flex}.drive-reconnect-close{color:var(--text-muted);background:0 0;border:none;padding:2px 0;font-size:.7rem;line-height:1}.drive-reconnect-connect{color:var(--accent);background:0 0;border:none;padding:2px 0;font-size:.78rem;font-weight:600;line-height:1}.boucoup-scope{--brand-primary:var(--accent-strong);--brand-action:var(--accent-strong);--brand-accent:color-mix(in srgb, var(--accent) 18%, var(--surface));--brand-accent-light:color-mix(in srgb, var(--accent) 8%, var(--surface));--brand-contrast:var(--accent-contrast);--tint-savings-bg:color-mix(in srgb, var(--accent) 16%, var(--surface));--tint-savings-fg:var(--accent-strong);--tint-spending-bg:color-mix(in srgb, var(--warning) 18%, var(--surface));--tint-spending-fg:var(--warning-strong);--tint-credit-bg:color-mix(in srgb, var(--danger) 16%, var(--surface));--tint-credit-fg:var(--danger-strong);--tint-neutral-bg:var(--surface-hover);--tint-neutral-fg:var(--text-muted);--font-display:"Nunito", system-ui, -apple-system, sans-serif;--font-ui:"Lato", "Nunito", system-ui, -apple-system, sans-serif;--radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:24px;--shadow-sm:0px 4px 12px 0px #1010100f;--shadow-md:0px 6px 16px 0px #00000014;--shadow-lg:0px 12px 32px 0px #10101029;background:var(--bg);color:var(--text)}.boucoup-scope,.boucoup-scope input,.boucoup-scope select,.boucoup-scope textarea{font-family:var(--font-display)}@media (prefers-reduced-motion:no-preference){@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes sheetSlideUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes panelFadeIn{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}@keyframes bannerSlideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}.boucoup-scope .modal-overlay{animation:.2s both overlayFadeIn}.boucoup-scope .modal{animation:.32s cubic-bezier(.16,1,.3,1) both sheetSlideUp}.boucoup-scope .currency-dropdown-panel,.boucoup-scope .entry-menu-options,.boucoup-scope .modal-popup{animation:.16s both panelFadeIn}.boucoup-scope .net-worth-breakdown{animation:.2s both panelFadeIn}.boucoup-scope .subtab-content{animation:.2s both fadeIn}.drive-reconnect-banner{animation:.25s cubic-bezier(.16,1,.3,1) both bannerSlideDown}.toast{animation:.2s both panelFadeIn}}.boucoup-scope .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.boucoup-scope .muted{color:var(--text-muted)}.boucoup-scope input,.boucoup-scope select,.boucoup-scope textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text)}.boucoup-scope input:focus,.boucoup-scope select:focus,.boucoup-scope textarea:focus{outline-color:var(--brand-primary)}.boucoup-scope .currency-dropdown-trigger{background:var(--surface);border:1px solid var(--border);color:var(--text)}.boucoup-scope .currency-dropdown-panel{background:var(--surface);border:1px solid var(--border)}.boucoup-scope .currency-dropdown-option:hover{background:var(--surface-hover)}.boucoup-scope .btn{font-family:var(--font-ui);border-radius:var(--radius-md);background:var(--surface);border-color:var(--border);color:var(--brand-action);font-weight:700}.boucoup-scope .btn-primary{background:var(--brand-action);border-color:var(--brand-action);color:var(--brand-contrast)}.boucoup-scope .btn-ghost{color:var(--brand-primary);background:0 0;border-color:#0000}.boucoup-scope .switch input:checked~.switch-track{background:var(--brand-action)}.boucoup-scope .form-group label{color:var(--text-muted)}.boucoup-scope .menu-row,.boucoup-scope .category-row{background:var(--surface);border-color:var(--border);border-radius:var(--radius-sm);color:var(--text)}.boucoup-scope .menu-row:hover{background:var(--surface-hover)}.boucoup-scope .modal-overlay{background:#10101080}.boucoup-scope .modal{background:var(--surface);color:var(--text);border:none;box-shadow:0 -2px 20px #00000029}.boucoup-scope .modal-grabber{background:var(--border);border-radius:999px;width:40px;height:5px;margin:0 auto}.boucoup-scope .modal-header h2{color:var(--text);font-size:1.25rem;font-weight:800}@media (width>=640px){.boucoup-scope .modal-grabber{display:none}}.boucoup-scope .calendar-header .month-label{color:var(--text)}.boucoup-scope .weekday-label{color:var(--text-muted)}.boucoup-scope .calendar-cell{background:var(--surface);border-color:var(--border);border-radius:var(--radius-xs)}.boucoup-scope .calendar-cell.today{border-color:var(--brand-primary)}.boucoup-scope .calendar-cell.has-spend{background:var(--brand-accent-light)}.boucoup-scope .calendar-cell .day-total{color:var(--brand-primary)}.boucoup-scope .category-breakdown-row{color:var(--text)}.boucoup-scope .category-breakdown-row .bar-track{background:var(--surface-hover)}.boucoup-scope .net-worth-card{background:linear-gradient(180deg, var(--accent-strong) 0%, var(--accent) 100%);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;border:none;padding:24px}.boucoup-scope .net-worth-label{color:#ffffffc7;font-size:13px;line-height:19px}.boucoup-scope .net-worth-amount{letter-spacing:1px;color:#fff;margin:6px 0 2px;font-size:2.5rem;font-weight:700;line-height:1.15}.boucoup-scope .net-worth-breakdown{text-align:left;flex-direction:column;gap:3px;margin-top:14px;display:flex}.boucoup-scope .net-worth-card .muted,.boucoup-scope .net-worth-card .card-expand-toggle,.boucoup-scope .net-worth-card .net-worth-eye-toggle{color:#ffffffc7}.boucoup-scope .entry-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.boucoup-scope .pocket-type-icon{border-radius:13px;justify-content:center;width:40px;height:40px}.boucoup-scope .tint-green{background:var(--tint-savings-bg);color:var(--tint-savings-fg)}.boucoup-scope .tint-orange{background:var(--tint-spending-bg);color:var(--tint-spending-fg)}.boucoup-scope .tint-red{background:var(--tint-credit-bg);color:var(--tint-credit-fg)}.boucoup-scope .tint-indigo{background:var(--tint-neutral-bg);color:var(--tint-neutral-fg)}.boucoup-scope .pocket-adjust-btn{border-radius:var(--radius-sm);background:var(--brand-accent-light);width:28px;height:28px;color:var(--brand-primary);font-size:1.1rem}.boucoup-scope .entry-amount{color:var(--text);font-weight:700}.boucoup-scope .entry-sub,.boucoup-scope .entry-card .card-expand-toggle{color:var(--text-muted)}.boucoup-scope .entry-menu-options{border-top-color:var(--border)}.boucoup-scope .entry-menu-option{color:var(--text)}.boucoup-scope .entry-menu-option:hover{background:var(--surface-hover)}.boucoup-scope .badge{background:var(--surface-hover);border-color:var(--border);color:var(--text-muted)}.boucoup-scope .badge-savings{background:var(--tint-savings-bg);color:var(--tint-savings-fg);border-color:#0000}.boucoup-scope .badge-spending{background:var(--tint-spending-bg);color:var(--tint-spending-fg);border-color:#0000}.boucoup-scope .segmented{background:var(--surface-hover);border-color:#0000;border-radius:999px;padding:4px}.boucoup-scope .segmented button{color:var(--text-muted);border-radius:999px;font-weight:700}.boucoup-scope .segmented button.active{background:var(--brand-primary);color:var(--brand-contrast)}.boucoup-scope .total-chip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.boucoup-scope .total-chip .muted{color:var(--text-muted)}.boucoup-scope .total-chip .amount{color:var(--text);font-weight:800}.boucoup-scope .section-title h2{color:var(--text);font-size:1.25rem;font-weight:700}.boucoup-scope .section-title-bottom{margin-top:24px}.boucoup-scope .btn-transfer{font-family:var(--font-ui);border-radius:var(--radius-md);background:var(--brand-accent);color:#fff;padding:8px 16px;font-weight:700}.boucoup-scope .btn-accent-text{font-family:var(--font-ui);color:var(--brand-primary);background:0 0;border-color:#0000;font-weight:700}.boucoup-scope .empty-state{color:var(--text-muted)}.boucoup-scope .lock-card .lock-icon{background:var(--brand-accent);width:64px;height:64px;color:var(--brand-primary);border-radius:20px;justify-content:center;align-items:center;font-size:1.6rem;display:flex}.boucoup-scope .lock-card h2{color:var(--text);font-size:1.375rem;font-weight:800}.boucoup-scope .fab{border-radius:var(--radius-md);background:var(--brand-action);color:var(--brand-contrast);box-shadow:var(--shadow-lg)}.app-header,.nav-bottom,.drive-reconnect-banner,.toast{--brand-primary:var(--accent-strong);--brand-action:var(--accent-strong);--brand-accent:color-mix(in srgb, var(--accent) 18%, var(--surface));--font-display:"Nunito", system-ui, -apple-system, sans-serif;--font-ui:"Lato", "Nunito", system-ui, -apple-system, sans-serif}.app-header{padding-top:calc(18px + env(safe-area-inset-top));padding-bottom:18px}.app-header-actions{font-family:var(--font-display)}.app-header h1{font-family:var(--font-display);color:var(--brand-primary);font-size:1.5rem;font-weight:700;line-height:2.25rem}.app-header .btn-accent-text{font-family:var(--font-ui);color:var(--brand-primary);font-weight:700}.nav-bottom{box-shadow:0 -2px 20px #00000029}.nav-item{font-family:var(--font-display);font-weight:700}.nav-item .nav-icon{font-size:1.35rem}.nav-item.active{color:var(--brand-action)}.nav-brand{font-family:var(--font-display);color:var(--brand-action)}.drive-reconnect-banner{padding:calc(18px + env(safe-area-inset-top)) 16px 18px}.drive-reconnect-text{font-family:var(--font-display)}.drive-reconnect-close{font-family:var(--font-ui)}.drive-reconnect-connect{font-family:var(--font-ui);color:var(--brand-primary);font-weight:700}.toast{font-family:var(--font-display);font-weight:700}@media (width>=860px){.nav-bottom{box-shadow:none}.nav-item.active{background:var(--brand-accent)}}
