:root{--bg-app:#f4f7f9;--bg-surface:#fff;--bg-surface-hover:#f1f5f9;--bg-input:#fff;--text-primary:#0f172a;--text-secondary:#64748b;--border-color:#e2e8f0;--accent-cyan:#06b6d4;--accent-cyan-hover:#0891b2;--danger:#ef4444;--success:#10b981;--bg:var(--bg-app);--surface:var(--bg-surface);--surface-soft:var(--bg-surface-hover);--text:var(--text-primary);--muted:var(--text-secondary);--border:var(--border-color);--cyan-light:var(--accent-cyan);--cyan-main:var(--accent-cyan);--cyan-dark:var(--accent-cyan-hover);--navy-pill:#111827;--navy-dark:#0b1d48;--accent-amber:#f59e0b;--positive:var(--success);--positive-bg:#ecfdf5;--negative:var(--danger);--negative-bg:#fef2f2;--accent-soft:#f0f9ff;--shadow-card:0 4px 20px #0000000d;--radius-xl:28px;--radius-lg:20px;--radius-md:14px;--radius-pill:999px;--shadow-hero:0 16px 32px -8px #0284c759;--shadow-dock:0 12px 30px #0f172a1f}[data-theme=dark]{--bg-app:#0f172a;--bg-surface:#1e293b;--bg-surface-hover:#334155;--bg-input:#0f172a;--text-primary:#f8fafc;--text-secondary:#94a3b8;--border-color:#334155;--accent-cyan:#22d3ee;--accent-cyan-hover:#06b6d4;--danger:#f87171;--success:#34d399;--navy-pill:#0f172a;--navy-dark:#111c33;--positive-bg:#064e3b;--negative-bg:#7f1d1d;--accent-soft:#164e63;--shadow-card:0 4px 20px #0006;--shadow-dock:0 12px 30px #0006}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation;overflow-x:hidden}body{background:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.45;transition:background-color .3s,color .3s;overflow-x:hidden}input,textarea{-webkit-user-select:auto;user-select:auto;font-size:16px!important}.overflow-y-auto,.overflow-x-auto,.spaces-modal{scrollbar-width:none;-ms-overflow-style:none}.overflow-y-auto::-webkit-scrollbar{display:none}.overflow-x-auto::-webkit-scrollbar{display:none}.spaces-modal::-webkit-scrollbar{display:none}.app-shell{max-width:480px;min-height:100vh;padding:1rem 1rem calc(6.5rem + env(safe-area-inset-bottom));margin:0 auto;position:relative;overflow-x:hidden}.top-pill-bar{background:var(--bg-surface);background:color-mix(in srgb, var(--bg-surface) 90%, transparent);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-pill);box-shadow:var(--shadow-card);flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem .75rem;display:flex;overflow:hidden}.spaces-modal-backdrop{z-index:80;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);background:#0f172a6b;place-items:center;animation:.18s ease-out both onboarding-card-enter;display:grid;position:fixed;inset:0;overflow-y:auto}.spaces-modal{width:min(100%,440px);max-height:calc(100vh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));background:var(--bg-surface);background:color-mix(in srgb, var(--bg-surface) 90%, transparent);-webkit-backdrop-filter:blur(16px);overflow-y:auto}.spaces-modal h2{margin:0 0 .75rem}.space-list{gap:.4rem;margin-bottom:.85rem;display:grid}.space-row,.space-select{align-items:center;gap:.65rem;display:flex}.space-row{justify-content:space-between}.space-select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);text-align:left;flex:1;min-width:0;padding:.7rem}.space-select.selected{border-color:var(--cyan-main);background:var(--accent-soft);font-weight:700}.space-color,.accent-dot{background:#09c;border:0;border-radius:50%;width:1rem;height:1rem}.space-color.emerald,.accent-dot.emerald{background:#059669}.space-color.amber,.accent-dot.amber{background:#d97706}.space-color.indigo,.accent-dot.indigo{background:#4f46e5}.space-delete{color:var(--negative)}.accent-picker{margin:1rem 0 0}.accent-options{gap:.65rem;display:flex}.accent-dot{cursor:pointer;width:1.65rem;height:1.65rem}.accent-dot[aria-pressed=true]{outline:2px solid var(--text);outline-offset:2px}.card,.tx-row,.account-card,.top-pill-bar,.spaces-modal,input,select,textarea,button{transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s}.create-space-form{border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--bg-surface-hover) 82%, transparent);margin:.85rem 0;padding:1rem;animation:.18s ease-out both onboarding-card-enter}.create-space-form h3{margin:0 0 .8rem}.theme-settings-card{gap:.75rem;display:grid}.theme-settings-card h2{margin-bottom:.2rem}.theme-settings-card p{margin:0}.theme-toggle{border-radius:var(--radius-md);background:var(--bg-surface-hover);grid-template-columns:1fr 1fr;gap:.35rem;padding:.3rem;display:grid}.theme-toggle button{color:var(--text-secondary);white-space:nowrap;background:0 0;border-color:#0000}.theme-toggle button.active{border-color:var(--border-color);background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-card)}.create-space-actions{gap:.5rem;display:flex}.create-space-actions button,.create-space-trigger,.space-manage-sync{width:100%}.space-manage-sync{margin-top:.5rem}.header-space-trigger{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;padding:0;display:flex}.profile-cluster{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;min-width:0;padding:0;display:flex}.avatar-circle{background:linear-gradient(135deg, var(--cyan-light), var(--cyan-dark));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.95rem;font-weight:700;display:inline-flex}.profile-meta{min-width:0}.profile-title{white-space:nowrap;text-overflow:ellipsis;max-width:160px;margin:0;font-size:.95rem;font-weight:700;overflow:hidden}.profile-dropdown{color:var(--muted);flex-shrink:0;font-size:.8rem}.pill-badges{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.icon-chip{background:var(--accent-soft);color:var(--cyan-dark);border-radius:var(--radius-pill);cursor:pointer;border:none;padding:.35rem .65rem;font-size:.75rem;font-weight:700}.update-prompt{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.7rem .8rem .7rem 1rem;display:flex}.update-prompt p{color:var(--text);margin:0;font-size:.8rem}.update-prompt-actions{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.update-prompt-actions .primary,.update-dismiss{border-radius:var(--radius-pill);padding:.5rem .75rem;font-size:.75rem;font-weight:700}.update-dismiss{border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer}@media (width<=380px){.update-prompt{border-radius:var(--radius-lg);flex-direction:column;align-items:flex-start}.header-space-trigger .profile-cluster{max-width:100%}.app-shell[data-accent=emerald] .avatar-circle{background:linear-gradient(135deg,#34d399,#047857)}.app-shell[data-accent=amber] .avatar-circle{background:linear-gradient(135deg,#fbbf24,#b45309)}.app-shell[data-accent=indigo] .avatar-circle{background:linear-gradient(135deg,#818cf8,#4338ca)}.app-shell[data-accent=emerald] .hero-card{background:linear-gradient(135deg,#34d399,#047857)}.app-shell[data-accent=amber] .hero-card{background:linear-gradient(135deg,#fbbf24,#b45309)}.app-shell[data-accent=indigo] .hero-card{background:linear-gradient(135deg,#818cf8,#4338ca)}.app-shell[data-accent=emerald] .primary,.app-shell[data-accent=emerald] .dock-item[aria-current=page]{background-color:#059669}.app-shell[data-accent=amber] .primary,.app-shell[data-accent=amber] .dock-item[aria-current=page]{background-color:#d97706}.app-shell[data-accent=indigo] .primary,.app-shell[data-accent=indigo] .dock-item[aria-current=page]{background-color:#4f46e5}.share-actions,.export-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.55rem;margin-bottom:.9rem;display:flex}.budget-meter{gap:.28rem;margin-top:.45rem;font-size:.66rem;display:grid}.budget-track{border-radius:var(--radius-pill);background:#ffffff6b;height:5px;overflow:hidden}.budget-track>span{border-radius:inherit;background:#fff;height:100%;display:block}.budget-track.near>span{background:#fbbf24}.budget-track.over>span{background:#ef4444}.report-preview{margin:1rem 0}.report-preview summary{cursor:pointer;font-weight:750}.report-preview h3{margin:.9rem 0 .3rem;font-size:.85rem}.report-row{border-top:1px solid var(--border);padding:.5rem 0;font-size:.8rem}.report-row small{color:var(--muted);display:block}.preset-chips{gap:.4rem;margin:.35rem 0 .85rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.preset-chip{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-soft);flex-shrink:0;padding:.45rem .7rem;font-size:.75rem}.amount-preview{color:var(--positive);margin-top:.2rem;font-weight:700;display:block}.compact-disclosure{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);margin:.2rem 0 .85rem;padding:.7rem .8rem;font-size:.82rem}.compact-disclosure summary{cursor:pointer;font-weight:700}.inline-toggle{align-items:center;gap:.45rem;margin:.7rem 0;display:flex}.inline-toggle input{width:auto}.personal-item-row{margin:.5rem 0}.personal-item-row input{max-width:125px}.snapshot-banner{border-color:var(--border-color);background:linear-gradient(145deg, var(--bg-surface), var(--accent-soft));margin-bottom:1rem}.snapshot-banner h2{margin:0;font-size:1rem}.snapshot-transfer{border-top:1px solid var(--border);padding:.55rem 0}.snapshot-balances{border-top:1px solid var(--border);gap:.35rem;margin-top:.55rem;padding-top:.55rem;font-size:.82rem;display:grid}.budget-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.share-snapshot{gap:.55rem;margin-top:.85rem;display:grid}.share-card-preview{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft);align-items:center;gap:.75rem;padding:.8rem;display:flex}.share-card-preview svg{flex-shrink:0;width:4.5rem}.share-card-preview small{color:var(--muted);display:block}.share-snapshot input{min-width:0}@media (width<=380px){.home-tools{flex-direction:column;align-items:stretch}.period-filter{justify-content:space-between}.budget-input-grid{grid-template-columns:1fr}}}.filter-pill-bar{white-space:nowrap;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;align-items:center;gap:.4rem;margin-bottom:1rem;display:flex;overflow-x:auto}.filter-pill-bar::-webkit-scrollbar{display:none}.filter-pill-bar button{flex-shrink:0}.period-filter{border-radius:var(--radius-pill);background:var(--surface);box-shadow:var(--shadow-card);flex-shrink:0;gap:.15rem;padding:.22rem;display:flex}.period-filter button{border-radius:var(--radius-pill);color:var(--muted);background:0 0;border:0;padding:.45rem .62rem;font-size:.72rem}.period-filter button.active{background:var(--navy-pill);color:#fff}.report-button{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--cyan-dark);border:0;padding:.55rem .8rem;font-weight:700}.hero-card{color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-hero);background:linear-gradient(135deg,#06b6d4 0%,#0284c7 100%);margin-bottom:1.25rem;padding:1.35rem 1.25rem;position:relative;overflow:hidden}.hero-card:after{content:"";pointer-events:none;background:#ffffff1a;border-radius:50%;width:140px;height:140px;position:absolute;top:-30px;right:-30px}.hero-card:before{content:"";pointer-events:none;background:#ffffff14;border-radius:50%;width:100px;height:100px;position:absolute;bottom:-40px;left:-20px}.hero-label{opacity:.9;flex-direction:row;justify-content:space-between;font-size:.82rem;font-weight:500;display:flex}.hero-amount{letter-spacing:-.03em;margin:.3rem 0 .15rem;font-size:2.15rem;font-weight:800}.hero-amount .cents-part{opacity:.65;font-size:1.55rem;font-weight:700}.hero-sub{opacity:.85;margin:0 0 1.15rem;font-size:.8rem}.hero-budget-track{background:#fff3;border-radius:999px;width:100%;height:6px;margin:8px 0;overflow:hidden}.hero-budget-fill{background:#fff;border-radius:999px;height:100%;transition:width .18s}.hero-budget .hero-sub{margin:0 0 1.15rem}.hero-actions{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.btn-hero-solid{color:#0f172a;border-radius:var(--radius-pill);cursor:pointer;text-align:center;background:#fff;border:none;padding:.65rem .9rem;font-size:.88rem;font-weight:700;box-shadow:0 4px 12px #00000014}.btn-hero-glass{color:#fff;border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(6px);cursor:pointer;text-align:center;background:#ffffff38;border:1px solid #ffffff59;padding:.65rem .9rem;font-size:.88rem;font-weight:600}.split-summary-bar{background:var(--navy-dark);border-radius:var(--radius-lg);color:#fff;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:1rem 1.1rem;display:grid}.summary-metric{flex-direction:column;gap:.2rem;display:flex}.summary-metric .metric-label{opacity:.7;align-items:center;gap:.35rem;font-size:.72rem;font-weight:500;display:flex}.summary-metric .metric-value{font-size:1.05rem;font-weight:800}.summary-divider{background:#fff3;width:1px;height:32px}.arrow-up{color:var(--positive)}.arrow-down{color:#f59e0b}.section-head{justify-content:space-between;align-items:center;margin:1.1rem 0 .65rem;display:flex}.section-head h2{margin:0;font-size:1rem;font-weight:700}.link-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.82rem;font-weight:600}.accounts-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.25rem;display:grid}.account-card{background:var(--surface);box-shadow:var(--shadow-card);border:1px solid var(--border-color);border-radius:20px;flex-direction:column;gap:.45rem;padding:.95rem;display:flex}.account-icon{border-radius:12px;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:inline-flex}.account-icon.pos{background:var(--positive-bg);color:var(--positive)}.account-icon.neg{background:var(--negative-bg);color:var(--negative)}.account-icon.neutral{background:var(--bg-surface-hover);color:var(--muted)}.account-name{color:var(--muted);margin-top:.15rem;font-size:.82rem;font-weight:600}.account-balance{letter-spacing:-.02em;font-size:1.1rem;font-weight:800}.account-meta{color:var(--muted);font-size:.72rem}.progress-track{background:var(--bg-surface-hover);border-radius:2px;width:100%;height:4px;margin-top:.25rem;overflow:hidden}.progress-fill{background:var(--cyan-main);border-radius:2px;height:100%;transition:width .3s}.category-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.65rem;margin-bottom:1.25rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.category-scroll::-webkit-scrollbar{display:none}.category-card{color:#fff;scroll-snap-align:start;border-radius:18px;flex-shrink:0;min-width:110px;padding:.85rem .75rem;position:relative;overflow:hidden}.category-card .cat-rank{background:#ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.7rem;font-weight:700;display:inline-flex;position:absolute;top:.6rem;right:.6rem}.category-card .cat-name{opacity:.9;font-size:.78rem;font-weight:600}.category-card .cat-amount{margin-top:.25rem;font-size:1.15rem;font-weight:800}.card{background:var(--surface);box-shadow:var(--shadow-card);border:1px solid var(--border-color);border-radius:20px;margin-bottom:1rem;padding:1.15rem}.card h2{margin-top:0;font-size:1.05rem;font-weight:700}.tx-list{flex-direction:column;gap:.65rem;display:flex}.tx-row{background:var(--surface);box-shadow:var(--shadow-card);border:1px solid var(--border-color);border-radius:18px;flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex}.tx-left{align-items:center;gap:.75rem;min-width:0;display:flex}.tx-avatar{background:var(--bg-surface-hover);width:42px;height:42px;color:var(--text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:inline-flex}.tx-info{min-width:0}.tx-title{color:var(--text);margin:0;font-size:.92rem;font-weight:700}.tx-sub{color:var(--muted);margin-top:.1rem;font-size:.76rem}.tx-right{text-align:right;flex-shrink:0}.segmented-control{background:var(--bg-surface-hover);border-radius:var(--radius-md);grid-template-columns:1fr 1fr;gap:.3rem;margin-bottom:.9rem;padding:.3rem;display:grid}.segment-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:11px;padding:.55rem .75rem;font-family:inherit;font-size:.85rem;font-weight:700;transition:background-color .15s,color .15s}.segment-btn.active{background:var(--navy-pill);color:#fff;box-shadow:0 2px 8px #1118272e}.stack{flex-direction:column;gap:.75rem;display:flex}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.form-group{flex-direction:column;gap:.35rem;margin-bottom:.85rem;display:flex}label{color:var(--text);font-size:.84rem;font-weight:600}input,select{font:inherit;border:1px solid var(--border);background:var(--bg-input);color:var(--text);border-radius:12px;width:100%;padding:.65rem .8rem;font-size:.92rem;transition:border-color .15s,background-color .15s}input::placeholder,textarea::placeholder{color:var(--text-secondary);opacity:.8}input:focus,select:focus{background:var(--bg-input);border-color:var(--cyan-main);outline:none}select option{background:var(--bg-surface);color:var(--text-primary)}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:12px;padding:.55rem .9rem;font-size:.86rem;font-weight:600;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s,background-color .3s,color .3s,border-color .3s,box-shadow .3s}button:active,.card-pressable:active{opacity:.9;transform:scale(.96)}.card-pressable{transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s}button.primary{background:linear-gradient(135deg, var(--cyan-light), var(--cyan-dark));color:#fff;border:none;box-shadow:0 4px 14px -3px #0284c766}button.danger{background:var(--negative);color:#fff;border:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent-amber);outline-offset:2px}.sync-status-chip{background:var(--bg-surface-hover);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-family:inherit;font-size:.9rem;display:inline-flex}.sync-status-chip.sync-live{background:var(--positive-bg);color:var(--positive)}.cloud-sync-card .room-code{letter-spacing:.06em;color:var(--cyan-dark)}.onboarding-backdrop{z-index:80;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);background:#0f172a94;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.onboarding-card{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface);width:min(100%,420px);max-height:100%;padding:1.6rem;animation:.22s ease-out both onboarding-card-enter;overflow-y:auto;box-shadow:0 24px 70px #0f172a4d}.onboarding-card h2{text-align:center;margin:0 0 .45rem}.onboarding-card>.tx-sub{text-align:center;margin:0 0 1.25rem}.onboarding-welcome-avatar{background:var(--accent-soft);border-radius:50%;place-items:center;width:4.25rem;height:4.25rem;margin:0 auto .9rem;font-size:2rem;display:grid}.onboarding-card input:focus-visible{outline:3px solid var(--cyan-dark);outline-offset:2px;border-color:var(--cyan-dark)}.onboarding-avatar-picker{border:0;min-width:0;margin:0 0 1rem;padding:0}.onboarding-avatar-picker legend{margin-bottom:.55rem;font-size:.85rem;font-weight:700}.onboarding-avatar-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;display:grid}.onboarding-avatar-option{aspect-ratio:1;border:2px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);place-items:center;min-width:0;padding:0;font-size:1.55rem;display:grid}.onboarding-avatar-option[aria-pressed=true]{border-color:var(--cyan-dark);background:var(--accent-soft);box-shadow:0 0 0 3px #0284c726}.onboarding-actions{gap:.6rem;margin-top:1rem;display:grid}@keyframes onboarding-card-enter{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=639px){input,select,textarea{font-size:1rem}}@media (prefers-reduced-motion:reduce){.onboarding-card{animation:none}}.badge{background:var(--bg-surface-hover);color:var(--muted);border-radius:var(--radius-pill);padding:.18rem .55rem;font-size:.72rem;font-weight:600;display:inline-block}.amount-pos{color:var(--positive);font-weight:700}.amount-neg{color:var(--negative);font-weight:700}.empty-state{text-align:center;color:var(--muted);background:var(--surface-soft);border:1px dashed var(--border);border-radius:20px;padding:1.75rem 1rem;font-size:.88rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.needs-ledger{padding-bottom:.5rem}.needs-summary{background:linear-gradient(135deg, var(--accent-soft), var(--surface));justify-content:space-between;align-items:center;gap:1rem;margin-bottom:0;display:flex}.needs-summary-label{color:var(--muted);font-size:.8rem;font-weight:650}.needs-summary h2{margin:.2rem 0 0;font-size:1.35rem}.needs-summary-icon{width:2.8rem;height:2.8rem;color:var(--cyan-dark);background:var(--surface);border-radius:15px;flex:none;place-items:center;display:grid}.needs-summary-icon svg{stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:1.45rem;height:1.45rem}.needs-add-form{top:max(.5rem, env(safe-area-inset-top));z-index:4;box-shadow:var(--shadow-card);gap:.55rem;margin-bottom:0;padding:.7rem;display:flex;position:sticky}.needs-add-form input{min-width:0}.needs-add-form button{flex:none}.needs-error{color:var(--negative);flex-basis:100%;margin:0;font-size:.82rem}.needs-list{flex-direction:column;gap:.6rem;display:flex}.needs-item{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-card);border-radius:17px;padding:.8rem .9rem;transition:opacity .18s,background-color .18s;animation:.18s ease-out both onboarding-card-enter}.needs-item.is-checked{background:color-mix(in srgb, var(--surface) 88%, var(--positive-bg))}.needs-item-main{align-items:center;gap:.7rem;min-width:0;display:flex}.needs-checkbox{border:1.5px solid var(--border);background:var(--surface);border-radius:50%;flex:none;place-items:center;width:1.55rem;height:1.55rem;padding:0;display:grid}.needs-checkbox.checked{border-color:var(--positive);background:var(--positive);color:#fff}.needs-checkbox svg{stroke:currentColor;stroke-width:2.3px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.needs-item-name{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:650}.is-checked .needs-item-name{color:var(--muted)}.needs-item-price{color:var(--muted);flex:none;font-size:.84rem;font-weight:650}.needs-delete{width:2rem;height:2rem;color:var(--muted);background:0 0;border:0;flex:none;place-items:center;padding:.35rem;display:grid}.needs-delete svg{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem}.needs-price-form{gap:.45rem;padding:.8rem 0 0 2.25rem;animation:.16s ease-out both onboarding-card-enter;display:grid}.needs-price-form label{font-size:.8rem}.needs-price-controls{gap:.45rem;display:flex}.needs-price-controls input{flex:1;min-width:0}.needs-price-controls button{flex:none;padding-inline:.7rem}.bottom-dock-wrap{bottom:max(.85rem, env(safe-area-inset-bottom));pointer-events:none;z-index:30;justify-content:center;padding:0 1rem;display:flex;position:fixed;left:0;right:0}.bottom-dock{pointer-events:auto;background:var(--bg-surface);background:color-mix(in srgb, var(--bg-surface) 85%, transparent);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);width:100%;max-width:448px;padding:.4rem .6rem;padding-bottom:calc(.4rem + env(safe-area-inset-bottom));box-shadow:var(--shadow-dock);border-radius:26px;grid-template-columns:repeat(5,minmax(0,1fr));place-items:center;gap:.25rem;display:grid}.dock-item{width:100%;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.4rem .2rem;font-family:inherit;font-size:.75rem;font-weight:500;transition:color .15s;display:flex}.dock-item[aria-current=page]{color:var(--cyan-dark);font-weight:700}.dock-icon{place-items:center;font-size:1.05rem;line-height:1;display:grid}.dock-icon svg{stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}.dock-fab{background:var(--accent-cyan);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;font-size:1.35rem;font-weight:700;display:inline-flex;transform:translateY(-20%);box-shadow:0 4px 14px -3px #0284c766}@media (width<=360px){.accounts-grid{grid-template-columns:1fr}}
