.welcome-screen,.startup-loading{z-index:1000;color:#202923;background:#f7f7f1;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.welcome-screen{opacity:1;transition:opacity .25s;animation:.5s ease-out both welcome-background-in}.welcome-screen.welcome-exit{opacity:0;pointer-events:none}.welcome-content{z-index:1;text-align:center;flex-direction:column;align-items:center;width:min(90vw,430px);display:flex;position:relative}.welcome-mark{width:clamp(150px,30vw,190px);margin-bottom:12px;animation:.7s cubic-bezier(.2,.8,.2,1) both welcome-mark-in;position:relative}.welcome-mark>img{border-radius:28%;width:100%;display:block}.welcome-grocery{z-index:1;opacity:0;border:2px solid #315940;border-radius:55% 45% 50% 50%;width:20px;height:24px;animation:.65s cubic-bezier(.2,.8,.25,1) both welcome-grocery-drop;position:absolute}.welcome-grocery-apple{fill:#d8a44b;background:#d8a44b;width:22px;height:22px;animation-delay:.25s;top:21%;left:28%}.welcome-grocery-pear{fill:#8eb07f;background:#8eb07f;animation-delay:.45s;top:17%;left:47%}.welcome-grocery-carrot{fill:#e49a58;background:#e49a58;border-radius:60% 40% 55% 45%;width:14px;height:27px;animation-delay:.65s;top:23%;right:24%}.welcome-brand{flex-direction:column;align-items:center;gap:7px;animation:.5s ease-out .75s both welcome-copy-in;display:flex}.welcome-brand-name{letter-spacing:-.065em;font-size:clamp(2.4rem,8vw,3.25rem);font-weight:750;line-height:1}.welcome-brand-name>span{color:#d1a34b}.welcome-tagline{color:#657369;letter-spacing:.015em;font-size:1rem;font-weight:500}.welcome-loading{gap:6px;margin-top:30px;animation:.4s ease-out .95s both welcome-copy-in;display:flex}.welcome-loading i{background:#477a5b;border-radius:50%;width:5px;height:5px;animation:.9s ease-in-out infinite welcome-dot}.welcome-loading i:nth-child(2){animation-delay:.12s}.welcome-loading i:nth-child(3){animation-delay:.24s}.welcome-orbit{aspect-ratio:1;border:1px solid #477a5b14;border-radius:50%;width:min(68vw,570px);animation:1s ease-out both welcome-orbit-in;position:absolute}.welcome-orbit-one{transform:translate(-60%,-33%)}.welcome-orbit-two{border-color:#d1a34b1f;width:min(76vw,660px);animation-delay:.12s;transform:translate(62%,46%)}.startup-loading{color:#657369;align-content:center;gap:14px;font-size:.9rem;position:fixed}.startup-loading-mark{color:#315940;background:#e7f0e8;border-radius:14px;place-items:center;width:42px;height:42px;font-size:1.3rem;font-weight:750;display:grid}.startup-loading-mark img{border-radius:inherit;width:100%;height:100%}.welcome-reduced-motion *,.welcome-reduced-motion :before,.welcome-reduced-motion :after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}@keyframes welcome-background-in{0%{opacity:0}to{opacity:1}}@keyframes welcome-mark-in{0%{opacity:0;transform:translateY(18px)scale(.93)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes welcome-grocery-drop{0%{opacity:0;transform:translateY(-30px)scale(.7)rotate(-8deg)}70%{opacity:1;transform:translateY(0)scale(1)rotate(0)}to{opacity:0;transform:translateY(20px)scale(.65)rotate(4deg)}}@keyframes welcome-copy-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes welcome-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes welcome-orbit-in{0%{opacity:0;scale:.94}to{opacity:1;scale:1}}@media (width<=520px){.welcome-orbit-one{transform:translate(-50%,-40%)}.welcome-orbit-two{transform:translate(55%,58%)}}@media (prefers-reduced-motion:reduce){.welcome-screen *,.welcome-screen :before,.welcome-screen :after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.static{position:static}.table{display:table}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{color:#202923;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;--primary:#477a5b;--primary-dark:#356447;--primary-light:#e7f0e8;--canvas:#f7f7f1;--surface:#fff;--text:#202923;--muted:#7a857c;--muted-2:#a0aaa2;--border:#e6eae4;--border-strong:#d7dfd8;--shadow-card:0 2px 6px #20292306, 0 12px 32px #20292309;--radius-card:18px;--radius-control:11px;--error:#b94b44;background:#f7f7f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth;min-width:320px}body{background:var(--canvas);min-width:320px;min-height:100vh;color:var(--text);margin:0;font-size:14px}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #477a5b45}a{color:inherit;text-decoration:none}button{color:inherit}img,svg{flex-shrink:0}::selection{color:#fff;background:var(--primary)}.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--primary:#8dbb98;--primary-dark:#aed2b5;--primary-light:#263b2d;--canvas:#141b17;--surface:#202923;--text:#eff3ef;--muted:#abb6ad;--muted-2:#87948b;--border:#354139;--border-strong:#46534a;--shadow-card:0 3px 14px #00000021;--error:#f29a91}.app-root{background:var(--canvas);min-height:100vh;color:var(--text)}.app-main{flex-direction:column;min-height:100vh;margin-left:258px;display:flex}.sidebar{z-index:20;overscroll-behavior:contain;background:var(--surface);border-right:1px solid var(--border);flex-direction:column;width:258px;padding:22px 15px 15px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand-lockup{align-items:center;gap:10px;height:40px;margin:0 0 26px 8px;display:flex}.brand-mark{color:#fff;background:var(--primary);border-radius:12px;place-items:center;width:35px;height:35px;display:grid;box-shadow:0 5px 12px #477a5b29}.brand-mark img,.brand-mark svg{border-radius:inherit;width:100%;height:100%;display:block}.brand-name{letter-spacing:-1.05px;font-size:21px;font-weight:730}.brand-name span{color:var(--primary)}.workspace-switcher{border:1px solid var(--border);background:color-mix(in srgb, var(--canvas) 55%, var(--surface));border-radius:13px;align-items:center;gap:10px;min-height:57px;margin-bottom:24px;padding:9px 10px;display:flex}.workspace-avatar{color:#7a6346;background:#f3eadb;border-radius:10px;place-items:center;width:31px;height:31px;font-weight:700;display:grid}.workspace-label{flex:1;gap:3px;min-width:0;display:grid}.workspace-label strong,.sidebar-profile strong{font-size:12px;font-weight:650}.workspace-label small,.sidebar-profile small{color:var(--muted);font-size:10px}.workspace-switcher>svg{color:var(--muted)}.sidebar-navigation{flex-direction:column;gap:4px;display:flex}.nav-caption{color:var(--muted-2);letter-spacing:1px;margin:0 0 7px;padding:0 11px;font-size:9px;font-weight:750}.nav-caption-bottom{margin-top:23px}.nav-link{min-height:41px;color:var(--muted);border-radius:10px;align-items:center;gap:12px;padding:0 11px;font-size:12px;font-weight:540;transition:background .16s,color .16s,transform .16s;display:flex;position:relative}.nav-link:hover{color:var(--text);background:var(--canvas)}.nav-link.active{color:var(--primary-dark);background:var(--primary-light);font-weight:650}.nav-link.active:before{content:"";background:var(--primary);border-radius:0 4px 4px 0;width:3px;position:absolute;top:10px;bottom:10px;left:-15px}.nav-count{min-width:20px;height:20px;color:var(--muted);background:var(--canvas);border-radius:7px;place-items:center;margin-left:auto;padding:0 5px;font-size:10px;display:grid}.sidebar-bottom{margin-top:auto}.sidebar-plan{border:1px solid var(--border);background:linear-gradient(140deg, var(--surface), var(--primary-light));border-radius:13px;gap:10px;margin-bottom:8px;padding:12px 10px;display:flex}.plan-icon{width:29px;height:29px;color:var(--primary-dark);background:var(--surface);border-radius:9px;flex:none;place-items:center;display:grid}.sidebar-plan div:last-child{align-content:center;gap:4px;display:grid}.sidebar-plan strong{font-size:10px;font-weight:700}.sidebar-plan small{color:var(--muted);font-size:9px}.sidebar-reset{width:100%;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;font-size:11px;display:flex}.sidebar-reset:hover{color:var(--text);background:var(--canvas)}.sidebar-profile{border-top:1px solid var(--border);align-items:center;gap:10px;margin-top:8px;padding:14px 5px 2px;display:flex}.sidebar-profile>span:nth-child(2){flex:1;gap:4px;display:grid}.presence-dot{width:7px;height:7px;box-shadow:0 0 0 3px var(--primary-light);background:#9dc2a2;border-radius:50%}.avatar{color:#48604d;background:#e0eadf;border:1px solid #477a5b1a;border-radius:50%;flex:none;place-items:center;width:39px;height:39px;font-size:12px;font-weight:700;display:grid}.avatar-small{width:31px;height:31px;font-size:10px}.topbar{z-index:15;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 96%, transparent);align-items:center;gap:20px;min-height:70px;padding:0 38px;display:flex;position:sticky;top:0}.topbar-context{gap:3px;min-width:165px;display:grid}.topbar-title{font-size:13px;font-weight:670}.topbar-tagline{color:var(--muted);font-size:10px}.topbar-tools{align-items:center;gap:14px;margin-left:auto;display:flex}.global-search-wrap{border:1px solid var(--border);width:min(295px,28vw);height:38px;color:var(--muted);background:var(--canvas);border-radius:11px;align-items:center;gap:9px;padding:0 12px;display:flex;position:relative}.global-search-wrap:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #477a5b14}.global-search-wrap input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-size:11px}.global-search-wrap input::placeholder{color:var(--muted-2)}.search-results{z-index:50;border:1px solid var(--border);background:var(--surface);border-radius:13px;padding:6px;position:absolute;top:calc(100% + 9px);left:0;right:0;overflow:hidden;box-shadow:0 12px 34px #1421181f}.search-results button{width:100%;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:9px;display:flex}.search-results button:hover{color:var(--text);background:var(--canvas)}.search-results button span{gap:3px;display:grid}.search-results button strong{color:var(--text);font-size:11px}.search-results button small{color:var(--muted);font-size:10px}.search-no-results{color:var(--muted);padding:13px 10px;font-size:11px;display:block}.search-results .search-view-all{border-top:1px solid var(--border);color:var(--primary);border-radius:0;justify-content:center;margin-top:4px;font-weight:650}.icon-button{width:35px;height:35px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:10px;flex:none;place-items:center;padding:0;transition:background .15s,color .15s,border-color .15s;display:inline-grid}.icon-button:hover,.icon-button.selected{color:var(--text);border-color:var(--border);background:var(--canvas)}.popover-anchor{position:relative}.topbar-icon{border-color:var(--border);background:var(--surface);width:38px;height:38px;position:relative}.notification-dot{color:#fff;border:1.5px solid var(--surface);background:#c76b52;border-radius:99px;place-items:center;min-width:16px;height:16px;padding:0 3px;font-size:8px;font-weight:750;line-height:1;display:grid;position:absolute;top:2px;right:1px}.profile-trigger{background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;padding:3px 3px 3px 6px;display:flex}.profile-trigger:hover{background:var(--canvas)}.profile-trigger-name{font-size:11px;font-weight:630}.profile-trigger>svg{color:var(--muted)}.popover{z-index:60;border:1px solid var(--border);background:var(--surface);border-radius:15px;width:315px;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 16px 42px #13211821}.popover-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:15px 16px;display:flex}.popover-heading>div{gap:3px;display:grid}.popover-heading strong{font-size:13px}.popover-heading span{color:var(--muted);font-size:10px}.text-button{color:var(--primary);background:0 0;border:0;align-items:center;gap:5px;padding:4px;font-size:10px;font-weight:630;display:inline-flex}.text-button:hover{color:var(--primary-dark);text-decoration:underline}.notification-list{max-height:340px;overflow-y:auto}.notification-item{border-bottom:1px solid var(--border);align-items:flex-start;gap:10px;padding:12px 13px;display:flex;position:relative}.notification-item.unread{background:color-mix(in srgb, var(--primary-light) 35%, var(--surface))}.notification-icon{width:30px;height:30px;color:var(--primary);background:var(--primary-light);border-radius:9px;flex:none;place-items:center;display:grid}.notification-budget{color:#946739;background:#f7eddd}.notification-complete{color:#567d60;background:#e9f1e8}.notification-content{text-align:left;background:0 0;border:0;flex:1;gap:4px;padding:0;display:grid}.notification-content strong{font-size:11px}.notification-content span{color:var(--muted);font-size:10px;line-height:1.45}.notification-content small{color:var(--muted-2);font-size:9px}.notification-remove{color:var(--muted-2);background:0 0;border:0;padding:3px}.notification-remove:hover{color:var(--error)}.notification-clear-all{width:100%;color:var(--muted);background:var(--surface);border:0;padding:12px;font-size:10px}.notification-clear-all:hover{color:var(--error);background:var(--canvas)}.popover-empty{color:var(--muted);text-align:center;padding:22px;font-size:11px}.profile-popover{width:245px;padding:7px}.profile-popover-intro{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:5px;padding:10px;display:flex}.profile-popover-intro>span:last-child{gap:4px;min-width:0;display:grid}.profile-popover-intro strong{font-size:11px}.profile-popover-intro small{color:var(--muted);text-overflow:ellipsis;font-size:9px;overflow:hidden}.profile-popover>a,.profile-popover>button{width:100%;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;padding:10px;font-size:11px;display:flex}.profile-popover>a:hover,.profile-popover>button:hover{color:var(--text);background:var(--canvas)}.demo-banner{border-bottom:1px solid var(--border);min-height:34px;color:var(--muted);background:color-mix(in srgb, var(--primary-light) 45%, var(--surface));align-items:center;gap:8px;padding:0 38px;font-size:10px;display:flex}.demo-banner strong{color:var(--primary-dark);font-weight:700}.demo-banner-dot{background:#72a47b;border-radius:50%;width:7px;height:7px}.demo-banner a{color:var(--primary-dark);align-items:center;gap:4px;margin-left:auto;font-weight:620;display:inline-flex}.banner-arrow{transform:rotate(-90deg)}.page-content{flex:1;width:100%;max-width:1600px;margin:0 auto;padding:30px 38px 56px}.mobile-menu-toggle,.mobile-list-shortcut,.mobile-sidebar-overlay,.mobile-scrim{display:none}.button{border-radius:var(--radius-control);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-weight:630;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)}.button:disabled{cursor:not-allowed;opacity:.48}.button-md{min-height:39px;padding:0 14px;font-size:11px}.button-sm{border-radius:9px;min-height:32px;padding:0 10px;font-size:10px}.button-lg{border-radius:13px;min-height:48px;padding:0 18px;font-size:12px}.button-icon{width:37px;padding:0}.button-primary{color:#fff;background:var(--primary);box-shadow:0 4px 9px #477a5b21}.button-primary:hover:not(:disabled){background:var(--primary-dark);box-shadow:0 6px 15px #477a5b2e}.button-secondary{border-color:var(--border);color:var(--text);background:var(--surface)}.button-secondary:hover:not(:disabled){border-color:var(--border-strong);background:var(--canvas)}.button-outline{border-color:var(--border);color:var(--primary-dark);background:0 0}.button-outline:hover:not(:disabled){background:var(--primary-light)}.button-ghost{color:var(--muted);background:0 0}.button-ghost:hover:not(:disabled){color:var(--text);background:var(--canvas)}.button-danger{color:#fff;background:#b8524a}.button-danger:hover:not(:disabled){background:#9f413b}.card{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);min-width:0;box-shadow:var(--shadow-card);padding:21px}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:25px;display:flex}.page-heading h1,.welcome-copy h1,.detail-heading h1,.shopping-mode-heading h1{letter-spacing:-1.15px;margin:7px 0 6px;font-size:clamp(25px,2.3vw,32px);font-weight:670;line-height:1.18}.page-heading p,.detail-heading p,.shopping-mode-heading p{max-width:620px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.eyebrow{color:var(--primary);letter-spacing:1.2px;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;font-weight:750;display:inline-flex}.page-heading-action{align-items:center;gap:9px;display:flex}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px;display:flex}.section-heading h2{letter-spacing:-.35px;align-items:center;gap:8px;margin:5px 0 0;font-size:16px;font-weight:670;display:flex}.section-heading>.eyebrow{display:flex}.section-count,.heading-count{min-width:21px;height:21px;color:var(--muted);background:var(--canvas);border-radius:7px;place-items:center;padding:0 5px;font-size:10px;font-weight:600;display:grid}.subtle-link{color:var(--primary);white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;font-size:10px;font-weight:650;display:inline-flex}.subtle-link:hover{color:var(--primary-dark)}.icon-link{border:1px solid var(--border);width:31px;height:31px;color:var(--muted);border-radius:9px;place-items:center;display:grid}.icon-link:hover{color:var(--primary);background:var(--canvas)}.status-pill{width:max-content;color:var(--muted);background:var(--canvas);border-radius:7px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:650;line-height:1;display:inline-flex}.status-green{color:#416e4b;background:#edf5eb}.status-red{color:#a13d34;background:#f9e9e7}.status-peach{color:#996647;background:#f8efe6}.theme-dark .status-green{color:#a5cbaa;background:#2b3f31}.theme-dark .status-red{color:#efaaa2;background:#472d2a}.theme-dark .status-peach{color:#e5b996;background:#46382c}.status-neutral{color:var(--muted);background:var(--canvas)}.progress-track{background:color-mix(in srgb, var(--primary-light) 75%, var(--border));border-radius:99px;width:100%;height:7px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--primary);height:100%;transition:width .3s}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:22px;display:flex}.empty-icon{width:44px;height:44px;color:var(--primary);background:var(--primary-light);border-radius:14px;place-items:center;margin-bottom:12px;display:grid}.empty-state h3{margin:0 0 5px;font-size:14px;font-weight:660}.empty-state p{max-width:320px;color:var(--muted);margin:0 0 13px;font-size:11px;line-height:1.6}.muted-copy{color:var(--muted);font-size:11px;line-height:1.55}.muted-icon{color:var(--muted-2)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.welcome-panel{background:linear-gradient(105deg,#fff 0% 60%,#f1f5ea 100%);border:1px solid #e6ebe3;border-radius:19px;justify-content:space-between;align-items:center;min-height:204px;margin-bottom:17px;padding:24px 31px;display:flex;position:relative;overflow:hidden}.theme-dark .welcome-panel{border-color:var(--border);background:linear-gradient(110deg, var(--surface), #26372d)}.welcome-copy{z-index:2;position:relative}.welcome-copy h1{margin:10px 0 7px;font-size:clamp(23px,2.15vw,30px)}.wave-emoji{color:#9b8b57;vertical-align:2px;background:#f4eedb;border-radius:50%;place-items:center;width:27px;height:27px;font-size:17px;display:inline-grid}.welcome-copy>p{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.welcome-meta{color:var(--muted);align-items:center;gap:7px;margin-top:14px;font-size:10px;display:flex}.welcome-action{margin-top:13px}.welcome-art{width:39%;position:absolute;top:0;bottom:0;right:0;overflow:hidden}.art-sun{background:#ebefdaad;border:1px solid #7a926829;border-radius:50%;width:138px;height:138px;position:absolute;top:22px;right:70px;box-shadow:0 0 0 18px #ebefda52,0 0 0 36px #ebefda33}.art-label{color:#53624a;text-align:center;font-family:Georgia,serif;font-size:15px;font-style:italic;line-height:1.4;position:absolute;top:79px;right:103px;transform:rotate(-5deg)}.art-leaf{z-index:1;background:#7da184;border-radius:100% 0;width:36px;height:67px;display:block;position:absolute;transform:rotate(38deg)}.leaf-one{background:#769d79;height:95px;bottom:18px;right:38px;transform:rotate(29deg)}.leaf-two{background:#adc59c;width:28px;height:57px;bottom:41px;right:16px;transform:rotate(74deg)}.leaf-three{background:#9cb48d;width:30px;height:74px;bottom:-16px;right:76px;transform:rotate(-28deg)}.art-fruit{background:#dfab77;border-radius:50%;width:24px;height:24px;display:block;position:absolute;box-shadow:inset -4px -3px #744d2a1f}.fruit-one{bottom:18px;right:25px}.fruit-two{background:#c8b668;width:18px;height:18px;bottom:27px;right:88px}.fruit-three{background:#c98574;width:17px;height:17px;bottom:75px;right:7px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px;display:grid}.stat-card{-moz-column-gap:11px;grid-template-rows:22px 31px 18px;grid-template-columns:39px 1fr;align-content:center;gap:3px 11px;min-height:117px;padding:16px;display:grid}.stat-icon{border-radius:11px;grid-row:1/span 2;place-items:center;width:36px;height:36px;display:grid}.stat-green{color:var(--primary);background:var(--primary-light)}.stat-peach{color:#a96d46;background:#f8eee5}.stat-lavender{color:#747da0;background:#eeeff8}.stat-sage{color:#648b68;background:#edf3e9}.theme-dark .stat-peach{color:#d9aa87;background:#47382e}.theme-dark .stat-lavender{color:#b1b8df;background:#33364a}.stat-label{color:var(--muted);align-self:center;font-size:10px}.stat-value{letter-spacing:-.5px;font-variant-numeric:tabular-nums;align-self:center;font-size:clamp(17px,1.5vw,21px);font-weight:680}.stat-note{color:var(--muted-2);grid-column:2;align-self:end;font-size:9px}.dashboard-grid{grid-template-columns:minmax(0,1.22fr) minmax(300px,.78fr);gap:15px;display:grid}.dashboard-grid-main{margin-bottom:15px}.progress-card,.upcoming-card,.spending-card,.frequent-card{min-height:250px}.progress-list-title{align-items:center;gap:10px;margin:18px 0 15px;display:flex}.list-type-icon{width:38px;height:38px;color:var(--primary);background:var(--primary-light);border-radius:12px;flex:none;place-items:center;display:grid}.list-type-home{color:#9a6d4a;background:#f6ede2}.list-type-care{color:#9a6d88;background:#f7ecf2}.theme-dark .list-type-home{color:#d7ad8a;background:#46382d}.theme-dark .list-type-care{color:#dab0ca;background:#433343}.progress-list-title>span:nth-child(2){flex:1;gap:4px;display:grid}.progress-list-title strong{font-size:12px}.progress-list-title small{color:var(--muted);font-size:9px}.progress-counts{color:var(--muted);justify-content:space-between;padding:11px 0;font-size:10px;display:flex}.progress-counts strong{color:var(--text);font-weight:680}.progress-total{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;margin-bottom:12px;padding:12px 0;font-size:10px;display:flex}.progress-total strong{color:var(--text);font-size:12px}.full-width{width:100%}.reminder-preview{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:11px 0;display:flex}.reminder-calendar{border:1px solid var(--border);background:var(--canvas);border-radius:10px;flex:none;align-content:center;justify-items:center;gap:2px;width:40px;height:45px;display:grid}.reminder-calendar span{color:var(--muted);text-transform:uppercase;font-size:8px;font-weight:650}.reminder-calendar strong{font-size:15px;font-weight:690}.reminder-copy{flex:1;gap:4px;display:grid}.reminder-copy strong{font-size:11px}.reminder-copy span{color:var(--muted);font-size:9px}.reminder-copy small{color:var(--muted-2);font-size:9px}.reminder-footnote{color:var(--muted-2);align-items:center;gap:6px;padding:11px 0 7px;font-size:9px;display:flex}.upcoming-card .subtle-link{margin-top:5px}.dashboard-grid-lower{margin-bottom:22px}.spending-summary{align-items:center;gap:22px;display:flex}.spending-summary>div{gap:4px;display:grid}.spending-summary>div>strong{letter-spacing:-.4px;font-size:21px;font-weight:690}.spending-summary span{color:var(--muted);font-size:9px}.spending-budget{border-left:1px solid var(--border);padding-left:18px}.spending-budget strong{font-size:12px!important}.spending-trend{background:#edf5eb;border-radius:8px;align-items:center;gap:4px;margin-left:auto;padding:6px 8px;display:inline-flex;color:#55845b!important;font-size:9px!important}.chart-container{height:132px;margin-top:9px}.chart-caption{color:var(--muted-2);margin:5px 0 0;font-size:9px;line-height:1.45}.frequent-list{display:grid}.frequent-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:9px 0;display:flex}.frequent-emoji{border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.frequent-mint{color:#567f5d;background:#eaf3e9}.frequent-blue{color:#6286aa;background:#eaf0f6}.frequent-peach{color:#a06d49;background:#f7eee3}.frequent-rose{color:#a06872;background:#f7ecee}.frequent-lavender{color:#767ca4;background:#efeff8}.frequent-yellow{color:#987e3f;background:#f7f1dc}.frequent-info{flex:1;gap:4px;display:grid}.frequent-info strong{font-size:10px}.frequent-info small{color:var(--muted);font-size:9px}.quick-add-icon{border:1px solid var(--border);width:29px;height:29px;color:var(--primary);background:var(--surface);border-radius:9px;place-items:center;display:grid}.quick-add-icon:hover{border-color:var(--primary);background:var(--primary-light)}.quick-add-icon:disabled{cursor:not-allowed;opacity:.5}.frequent-footer{color:var(--muted-2);align-items:center;gap:6px;padding-top:11px;font-size:9px;display:flex}.dashboard-section{margin-top:10px}.section-heading-outside{margin-bottom:13px}.list-cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.list-card{border:1px solid var(--border);background:var(--surface);min-width:0;box-shadow:var(--shadow-card);border-radius:16px;padding:17px;transition:transform .18s,box-shadow .18s;position:relative}.list-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #20292312}.list-card-top{justify-content:space-between;align-items:flex-start;display:flex}.list-card .list-type-icon{border-radius:11px;width:35px;height:35px}.list-menu-wrap{position:relative}.list-menu-button{width:30px;height:30px}.list-action-menu{z-index:8;border:1px solid var(--border);background:var(--surface);border-radius:11px;width:166px;padding:5px;position:absolute;top:34px;right:0;box-shadow:0 12px 25px #19281e21}.list-action-menu button{width:100%;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:8px;font-size:10px;display:flex}.list-action-menu button:hover{color:var(--text);background:var(--canvas)}.list-action-menu .menu-danger{color:var(--error)}.list-card-link{min-width:0;padding-top:12px;display:block}.list-card-type{color:var(--muted);font-size:9px;display:block}.list-card-link h3{letter-spacing:-.3px;text-overflow:ellipsis;white-space:nowrap;margin:4px 0;font-size:14px;font-weight:670;overflow:hidden}.list-card-description{min-height:15px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:9px;overflow:hidden}.list-card-stats{color:var(--muted);justify-content:space-between;gap:5px;padding:13px 0 9px;font-size:9px;display:flex}.list-card-stats strong{color:var(--text);font-weight:680}.list-card .progress-track{height:5px}.list-card-footer{color:var(--muted);justify-content:space-between;align-items:center;padding-top:10px;font-size:9px;display:flex}.dot-separator{color:var(--muted-2);padding:0 3px}.circle-arrow{border:1px solid var(--border);width:27px;height:27px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.circle-arrow:hover{border-color:var(--primary);color:var(--primary)}.list-card-compact{padding:14px}.list-card-compact .list-card-link h3{font-size:12px}.list-cards-list{gap:9px;display:grid}.list-cards-list .list-card{grid-template-columns:39px minmax(0,1fr) 230px;align-items:center;gap:12px;display:grid}.list-cards-list .list-card-top{display:contents}.list-cards-list .list-type-icon{grid-area:1/1/span 2}.list-cards-list .list-menu-wrap{position:absolute;top:15px;right:15px}.list-cards-list .list-card-link{grid-area:1/2;padding-top:0}.list-cards-list .list-card-stats{grid-area:2/2;justify-content:flex-start;gap:15px;padding:4px 0 0}.list-cards-list .progress-track{grid-area:1/3}.list-cards-list .list-card-footer{grid-area:2/3;padding-top:5px}.list-cards-list .list-action-menu{right:0}.list-toolbar{border:1px solid var(--border);background:var(--surface);border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:15px;padding:11px 12px;display:flex}.list-filters,.filter-pills{align-items:center;gap:4px;display:flex}.filter-tab{min-height:32px;color:var(--muted);background:0 0;border:0;border-radius:9px;align-items:center;gap:7px;padding:0 10px;font-size:10px;font-weight:560;display:flex}.filter-tab:hover{color:var(--text);background:var(--canvas)}.filter-tab.selected{color:var(--primary-dark);background:var(--primary-light);font-weight:650}.filter-tab span{min-width:17px;height:17px;color:var(--muted);background:color-mix(in srgb, var(--surface) 75%, var(--border));border-radius:6px;place-items:center;padding:0 4px;font-size:9px;display:grid}.list-toolbar-controls{align-items:center;gap:8px;display:flex}.list-search{border:1px solid var(--border);min-width:180px;height:34px;color:var(--muted);background:var(--surface);border-radius:9px;align-items:center;gap:7px;padding:0 10px;display:flex}.list-search:focus-within{border-color:var(--primary)}.list-search input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-size:10px}.list-search input::placeholder{color:var(--muted-2)}.select-control{border:1px solid var(--border);height:34px;color:var(--muted);background:var(--surface);border-radius:9px;align-items:center;gap:6px;padding:0 9px;font-size:10px;display:inline-flex;position:relative}.select-control select{appearance:none;max-width:135px;color:var(--text);background:0 0;border:0;outline:0;padding:0 13px 0 0;font-size:10px}.select-control>svg:last-child{pointer-events:none;position:absolute;right:8px}.view-switch{border:1px solid var(--border);border-radius:9px;gap:2px;padding:3px;display:flex}.view-switch button{width:27px;height:25px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.view-switch button.selected{color:var(--primary-dark);background:var(--primary-light)}.empty-card{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);padding:10px}.back-link{color:var(--muted);align-items:center;gap:6px;margin-bottom:18px;font-size:10px;font-weight:560;display:inline-flex}.back-link:hover{color:var(--primary)}.detail-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.detail-heading h1{margin-top:10px}.detail-eyebrow{color:var(--muted);align-items:center;gap:9px;font-size:9px;display:flex}.detail-actions{align-items:center;gap:8px;display:flex}.list-progress-panel{margin-bottom:14px;padding:16px 19px}.detail-stats{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:14px;display:grid}.detail-stats>div{gap:5px;display:grid}.detail-stats span{color:var(--muted);font-size:9px}.detail-stats strong{letter-spacing:-.25px;font-size:16px;font-weight:690}.detail-stats strong small{color:var(--muted);font-size:10px;font-weight:500}.list-items-card{padding:20px}.list-items-heading{margin-bottom:15px}.list-items-heading h2{font-size:16px}.quick-add{border:1px dashed var(--border-strong);min-height:42px;color:var(--muted);background:color-mix(in srgb, var(--canvas) 65%, var(--surface));border-radius:11px;align-items:center;gap:9px;padding:5px 8px 5px 12px;display:flex}.quick-add:focus-within{border-color:var(--primary);background:var(--surface);border-style:solid}.quick-add-plus{color:var(--primary)}.quick-add input{min-width:70px;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:11px}.quick-add input::placeholder{color:var(--muted-2)}.quick-add-category{border:1px solid var(--border);max-width:160px;height:30px;color:var(--muted);background:var(--surface);border-radius:8px;padding:0 7px;font-size:9px}.quick-add-close{width:26px;height:26px;color:var(--muted);background:0 0;border:0;place-items:center;display:grid;transform:rotate(180deg)}.list-item-tools{justify-content:space-between;align-items:center;gap:10px;padding:13px 0 8px;display:flex}.filter-pills button{min-height:29px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:0 9px;font-size:9px}.filter-pills button:hover{color:var(--text);background:var(--canvas)}.filter-pills button.selected{color:var(--primary-dark);background:var(--primary-light);font-weight:650}.inline-search{border:1px solid var(--border);width:160px;height:31px;color:var(--text);background:var(--surface);border-radius:8px;padding:0 9px;font-size:10px}.item-group{margin-top:12px}.item-group-heading{color:var(--muted);align-items:center;gap:7px;margin:0 0 4px;font-size:10px;font-weight:700;display:flex}.item-group-heading span{background:var(--canvas);border-radius:6px;place-items:center;min-width:17px;height:17px;padding:0 3px;font-size:9px;display:grid}.item-list{display:grid}.item-row{border-bottom:1px solid var(--border);align-items:center;gap:11px;min-height:59px;display:flex}.item-row:last-child{border-bottom-color:#0000}.item-checkbox{border:1.5px solid var(--border-strong);color:#fff;background:var(--surface);border-radius:8px;flex:none;place-items:center;width:23px;height:23px;padding:0;transition:background .15s,border-color .15s,transform .15s;display:grid}.item-checkbox:hover{border-color:var(--primary);transform:scale(1.05)}.item-checkbox.is-checked{border-color:var(--primary);background:var(--primary)}.item-row-main{flex:1;min-width:0}.item-name-line{align-items:center;gap:6px;display:flex}.item-name-line strong{text-overflow:ellipsis;font-size:11px;font-weight:620;overflow:hidden}.item-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:2px;margin-top:5px;font-size:9px;display:flex}.item-note{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.favorite-mark{color:#bc816a}.item-price{min-width:72px;color:var(--text);font-variant-numeric:tabular-nums;justify-items:end;gap:3px;font-size:10px;font-weight:620;display:grid}.item-price small,.item-price .actual-price{color:var(--muted);font-size:8px;font-weight:500}.item-price .actual-price{color:var(--primary)}.item-purchased .item-row-main strong{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--muted-2);text-decoration-color:var(--muted-2)}.item-purchased .item-price{color:var(--muted)}.item-action{width:30px;height:30px}.item-delete:hover{color:var(--error);background:color-mix(in srgb, var(--error) 8%, var(--surface))}.move-item-select{border:1px solid var(--border);max-width:90px;height:28px;color:var(--muted);background:var(--surface);border-radius:7px;font-size:9px}.item-groups>.empty-state{min-height:125px}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f181261;place-items:center;padding:18px;animation:.14s fade-in;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{border:1px solid var(--border);background:var(--surface);border-radius:17px;width:min(100%,450px);max-height:min(90vh,760px);padding:21px;animation:.18s modal-in;overflow-y:auto;box-shadow:0 24px 70px #0d1a1133}.modal-lg{width:min(100%,570px)}.modal-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.modal-heading h2{letter-spacing:-.3px;margin:0;font-size:17px;font-weight:680}.modal-heading p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.5}.form-stack{gap:13px;display:grid}.field{min-width:0;color:var(--text);gap:6px;font-size:10px;font-weight:620;display:grid}.field input,.field select,.field textarea{border:1px solid var(--border-strong);width:100%;min-height:39px;color:var(--text);background:var(--surface);border-radius:9px;outline:0;padding:9px 11px;font-size:11px;font-weight:450}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #477a5b14}.field textarea{resize:vertical}.field input::-moz-placeholder{color:var(--muted-2)}.field textarea::-moz-placeholder{color:var(--muted-2)}.field input::placeholder,.field textarea::placeholder{color:var(--muted-2)}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.required{color:var(--error)}.optional{color:var(--muted-2);margin-left:4px;font-size:9px;font-weight:450}.field-hint{color:var(--muted);font-size:9px;font-weight:450;line-height:1.4}.field-error{color:var(--error);font-size:9px;font-weight:500}.check-field{color:var(--text);align-items:center;gap:8px;font-size:10px;display:flex}.check-field input{width:15px;height:15px;accent-color:var(--primary)}.modal-actions{justify-content:flex-end;gap:8px;margin-top:5px;padding-top:6px;display:flex}.demo-note{border:1px solid var(--border);color:var(--muted);background:var(--canvas);border-radius:9px;padding:10px 11px;font-size:9px;line-height:1.5}.toast-viewport{z-index:120;pointer-events:none;gap:8px;width:min(390px,100vw - 32px);display:grid;position:fixed;bottom:20px;right:20px}.toast{border:1px solid var(--border);min-height:48px;color:var(--text);background:var(--surface);pointer-events:auto;border-radius:12px;align-items:center;gap:9px;padding:10px 11px;font-size:10px;line-height:1.4;animation:.18s toast-in;display:flex;box-shadow:0 10px 32px #1421181f}.toast>svg{color:var(--primary)}.toast-error>svg{color:var(--error)}.toast>span{flex:1}.toast-action{color:var(--primary);background:0 0;border:0;padding:4px 6px;font-size:10px;font-weight:700}.toast-close{width:24px;height:24px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.toast-close:hover{background:var(--canvas)}.route-skeleton{gap:13px;padding-top:12px;display:grid}.route-skeleton div{background:linear-gradient(90deg, var(--border) 20%, var(--surface) 45%, var(--border) 70%);background-size:220% 100%;border-radius:14px;height:90px;animation:1.1s linear infinite skeleton}.shopping-mode-page{max-width:1000px;margin:0 auto;padding-bottom:45px}.shopping-mode-top{justify-content:space-between;align-items:center;display:flex}.shopping-mode-top .back-link{margin:0 0 13px}.mode-indicator{color:var(--primary);letter-spacing:1px;align-items:center;gap:7px;font-size:9px;font-weight:760;display:inline-flex}.mode-indicator span{background:var(--primary);width:7px;height:7px;box-shadow:0 0 0 4px var(--primary-light);border-radius:50%}.shopping-mode-heading{justify-content:space-between;align-items:flex-end;gap:15px;margin:4px 0 17px;display:flex}.shopping-mode-heading h1{margin-top:6px}.list-picker{border:1px solid var(--border);min-width:185px;height:38px;color:var(--muted);background:var(--surface);border-radius:10px;align-items:center;padding:0 10px;display:flex;position:relative}.list-picker select{appearance:none;width:100%;color:var(--text);background:0 0;border:0;outline:0;padding-right:20px;font-size:10px}.list-picker svg{pointer-events:none;position:absolute;right:10px}.shopping-progress-card{margin-bottom:13px;padding:17px 19px}.shopping-progress-title{align-items:center;gap:10px;margin-bottom:14px;display:flex}.shopping-progress-badge{width:37px;height:37px;color:var(--primary);background:var(--primary-light);border-radius:11px;place-items:center;display:grid}.shopping-progress-title>div:nth-child(2){flex:1;gap:4px;display:grid}.shopping-progress-title strong{font-size:12px}.shopping-progress-title span{color:var(--muted);font-size:9px}.shopping-progress-title .shopping-progress-percent{color:var(--primary-dark);font-size:18px}.shopping-progress-footer{color:var(--muted);justify-content:space-between;padding-top:10px;font-size:9px;display:flex}.shopping-progress-footer strong{color:var(--text);font-size:10px}.shopping-items-panel{padding:18px 20px}.shopping-tools{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.shopping-search{border:1px solid var(--border);width:min(310px,60%);height:36px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:flex}.shopping-search:focus-within{border-color:var(--primary)}.shopping-search input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:10px}.shopping-search input::placeholder{color:var(--muted-2)}.show-done-toggle{border:1px solid var(--border);min-height:32px;color:var(--muted);background:var(--surface);border-radius:8px;align-items:center;gap:6px;padding:0 9px;font-size:9px;display:inline-flex}.show-done-toggle.active{color:var(--primary-dark);border-color:color-mix(in srgb, var(--primary) 30%, var(--border));background:var(--primary-light)}.show-done-toggle span{min-width:17px;height:17px;color:var(--muted);background:var(--surface);border-radius:6px;place-items:center;padding:0 3px;font-size:9px;display:grid}.shopping-section{padding-top:18px}.shopping-section-heading{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.shopping-section-heading h2{align-items:center;gap:7px;margin:0;font-size:13px;font-weight:680;display:flex}.shopping-section-heading h2 span{min-width:19px;height:19px;color:var(--muted);background:var(--canvas);border-radius:7px;place-items:center;padding:0 4px;font-size:9px;display:grid}.shopping-mode-group{margin:11px 0 2px}.shopping-mode-group h3{color:var(--muted);letter-spacing:.3px;text-transform:uppercase;margin:0 0 4px;font-size:9px;font-weight:730}.shopping-mode-item{border-bottom:1px solid var(--border);align-items:center;gap:13px;min-height:65px;display:flex}.shopping-mode-item .item-checkbox{border-radius:9px;width:27px;height:27px}.shopping-mode-item-copy{flex:1;gap:5px;display:grid}.shopping-mode-item-copy strong{font-size:13px;font-weight:620}.shopping-mode-item-copy span{color:var(--muted);font-size:10px}.shopping-mode-item-prices{font-variant-numeric:tabular-nums;justify-items:end;gap:4px;font-size:10px;display:grid}.shopping-mode-item-prices small{color:var(--muted);font-size:8px}.shopping-mode-item-actions{gap:1px;display:flex}.shopping-mode-item-actions .icon-button{width:31px;height:31px}.purchased-section{border-top:1px solid var(--border);margin-top:10px}.shopping-mode-footer{z-index:8;border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 95%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:15px;justify-content:space-between;align-items:center;gap:15px;margin:15px 0 5px;padding:12px 16px;display:flex;position:sticky;bottom:0;box-shadow:0 8px 26px #192a1e14}.shopping-mode-footer>div{color:var(--muted);align-items:baseline;gap:7px;font-size:9px;display:flex}.shopping-mode-footer>div strong{color:var(--text);font-size:12px}.shopping-mode-footer>div i{background:var(--border-strong);width:1px;height:15px;margin:0 4px}.shopping-mode-note{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin:8px 0 0;font-size:9px;display:flex}.budget-highlight{background:linear-gradient(110deg,#f3f7ef,#fff);border:1px solid #dfe9df;border-radius:17px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 24px;margin-bottom:14px;padding:21px;display:grid}.theme-dark .budget-highlight{border-color:var(--border);background:linear-gradient(110deg, #203127, var(--surface))}.budget-highlight-copy{align-items:center;gap:13px;display:flex}.budget-highlight-icon{width:43px;height:43px;color:var(--primary);background:var(--primary-light);border-radius:13px;place-items:center;display:grid}.budget-highlight h2{letter-spacing:-.6px;margin:4px 0;font-size:23px;font-weight:690}.budget-highlight h2 span{color:var(--muted);letter-spacing:0;font-size:11px;font-weight:500}.budget-highlight p{color:var(--muted);margin:0;font-size:9px}.budget-meter-copy{justify-items:end;gap:4px;display:grid}.budget-meter-copy strong{font-size:18px;font-weight:690}.budget-meter-copy span{color:var(--muted);font-size:9px}.budget-highlight>.progress-track{grid-column:1/-1;height:8px}.budget-meter-foot{color:var(--muted);grid-column:1/-1;justify-content:space-between;align-items:center;font-size:9px;display:flex}.budget-stat-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;display:grid}.budget-stat{grid-template-rows:20px 29px auto;grid-template-columns:39px minmax(0,1fr);align-items:center;gap:2px 10px;padding:15px;display:grid}.budget-stat .stat-icon{grid-row:1/span 2}.budget-stat>span:nth-child(2){color:var(--muted);font-size:9px}.budget-stat>strong{font-variant-numeric:tabular-nums;font-size:17px;font-weight:690}.budget-stat>small{color:var(--muted-2);grid-column:2;font-size:8px}.budget-charts-grid{grid-template-columns:minmax(0,1.25fr) minmax(270px,.75fr);gap:13px;margin-bottom:14px;display:grid}.budget-chart-card{min-height:285px}.budget-chart{height:185px}.category-pie-wrap{width:min(100%,220px);height:190px;margin:4px auto 10px;position:relative}.pie-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pie-center strong{font-size:14px;font-weight:690}.pie-center span{color:var(--muted);margin-top:3px;font-size:8px}.category-legend{gap:7px;display:grid}.category-legend>div{grid-template-columns:8px 1fr auto;align-items:center;gap:7px;font-size:9px;display:grid}.category-legend>div>span:first-child{border-radius:50%;width:7px;height:7px}.category-legend>div>span:nth-child(2){color:var(--muted)}.category-legend strong{font-size:9px;font-weight:630}.chart-empty{text-align:center;align-content:center;justify-items:center;min-height:180px;display:grid}.chart-empty .empty-icon{margin:0 0 9px}.chart-empty strong{font-size:11px}.chart-empty p{max-width:230px;color:var(--muted);font-size:9px;line-height:1.5}.expenses-card{padding:19px}.expense-table{display:grid}.expense-row{border-top:1px solid var(--border);align-items:center;gap:11px;min-height:60px;display:flex}.expense-icon{width:33px;height:33px;color:var(--primary);background:var(--primary-light);border-radius:10px;place-items:center;display:grid}.expense-main{flex:1;gap:4px;display:grid}.expense-main strong{font-size:10px}.expense-main small,.expense-data small{color:var(--muted);font-size:8px}.expense-data{justify-items:end;gap:4px;display:grid}.expense-data strong{font-size:10px}.category-info-banner{border:1px solid var(--border);background:var(--surface);border-radius:12px;align-items:center;gap:10px;margin-bottom:15px;padding:12px;display:flex}.category-info-icon{width:32px;height:32px;color:var(--primary);background:var(--primary-light);border-radius:9px;place-items:center;display:grid}.category-info-banner>span:last-child{gap:3px;display:grid}.category-info-banner strong{font-size:10px}.category-info-banner small{color:var(--muted);font-size:9px;line-height:1.5}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.category-card{align-items:center;gap:11px;min-height:84px;padding:14px;display:flex}.category-icon{border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.category-mint{color:#557c5b;background:#eaf3e9}.category-blue{color:#5a7fa4;background:#eaf0f6}.category-peach{color:#9c6a43;background:#f7eee3}.category-rose{color:#a46773;background:#f7ecee}.category-lavender{color:#757ba2;background:#eeeff8}.category-yellow{color:#967f44;background:#f7f1dc}.theme-dark .category-mint{color:#a7caaa;background:#2b3f31}.theme-dark .category-blue{color:#aac3dd;background:#2b3948}.theme-dark .category-peach{color:#dfb895;background:#47392f}.theme-dark .category-rose{color:#ddaeb6;background:#453238}.theme-dark .category-lavender{color:#b7bee2;background:#33364a}.theme-dark .category-yellow{color:#d7c58c;background:#423c2c}.category-copy{flex:1;min-width:0}.category-copy h2{text-overflow:ellipsis;white-space:nowrap;margin:0 0 5px;font-size:11px;font-weight:660;overflow:hidden}.category-copy span{color:var(--muted);font-size:9px}.category-card-actions{opacity:.8;gap:1px;display:flex}.icon-choice-field{border:0;min-width:0;padding:0}.icon-choice-field legend,.field legend{margin-bottom:6px;padding:0;font-size:10px;font-weight:620}.icon-choice-grid{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.icon-choice-grid button{border:1px solid var(--border);height:36px;color:var(--muted);background:var(--surface);border-radius:9px;place-items:center;display:grid}.icon-choice-grid button.selected{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.color-choice-row{gap:9px;display:flex}.color-choice{border:2px solid var(--surface);width:25px;height:25px;box-shadow:0 0 0 1px var(--border);border-radius:50%}.color-choice.selected{box-shadow:0 0 0 2px var(--primary)}.color-choice.color-mint{background:#cfe2cf}.color-choice.color-blue{background:#d1dfed}.color-choice.color-peach{background:#f0dcc7}.color-choice.color-rose{background:#ebd0d5}.color-choice.color-lavender{background:#d9d9ed}.color-choice.color-yellow{background:#ece2b7}.history-summary-row{grid-template-columns:1fr 1fr 1.35fr;gap:11px;margin-bottom:14px;display:grid}.history-summary{grid-template-rows:20px 25px;grid-template-columns:33px 1fr;align-items:center;gap:0 9px;padding:13px;display:grid}.history-summary-icon{width:31px;height:31px;color:var(--primary);background:var(--primary-light);border-radius:10px;grid-row:1/span 2;place-items:center;display:grid}.history-summary>span:nth-child(2){color:var(--muted);font-size:9px}.history-summary strong{font-size:15px;font-weight:680}.history-note{border:1px solid var(--border);color:var(--muted);background:var(--surface);border-radius:14px;align-items:center;gap:8px;padding:13px;font-size:9px;line-height:1.5;display:flex}.history-note .demo-banner-dot{flex:none}.history-card{padding:16px 19px}.history-toolbar{justify-content:space-between;gap:10px;margin-bottom:10px;display:flex}.history-toolbar .list-search{width:min(390px,70%)}.history-session{border-top:1px solid var(--border);align-items:center;gap:12px;min-height:69px;display:flex}.history-session-icon{width:36px;height:36px;color:var(--primary);background:var(--primary-light);border-radius:11px;place-items:center;display:grid}.history-session-main{flex:1;gap:4px;display:grid}.history-session-main strong{font-size:11px}.history-session-main span,.history-session-main small{color:var(--muted);font-size:9px}.history-session-spend{justify-items:end;gap:4px;min-width:85px;display:grid}.history-session-spend strong{font-size:11px}.history-session .button{margin-left:3px}.history-detail-list{max-height:270px;display:grid;overflow-y:auto}.history-detail-list>div{border-bottom:1px solid var(--border);justify-content:space-between;padding:10px 0;font-size:10px;display:flex}.history-detail-list>div>span{gap:3px;display:grid}.history-detail-list small{color:var(--muted);font-size:9px}.history-pricing-note{color:var(--muted);background:var(--canvas);border-radius:8px;margin:-4px 0 8px;padding:8px 9px;font-size:9px;line-height:1.45}.history-detail-total{justify-content:space-between;padding:13px 0;font-size:11px;display:flex}.history-detail-total strong{font-size:14px}.reminder-demo-notice{background:#fbf8ed;border:1px solid #e8e5d6;border-radius:12px;align-items:center;gap:10px;margin-bottom:14px;padding:11px 13px;display:flex}.theme-dark .reminder-demo-notice{background:#302e23;border-color:#494533}.reminder-demo-notice>span{color:#947a43;background:#f3edda;border-radius:9px;place-items:center;width:31px;height:31px;display:grid}.theme-dark .reminder-demo-notice>span{color:#d7c58c;background:#48422f}.reminder-demo-notice div{gap:3px;display:grid}.reminder-demo-notice strong{font-size:10px}.reminder-demo-notice small{color:var(--muted);font-size:9px}.reminders-card{padding:19px}.reminder-list{display:grid}.reminder-row{border-top:1px solid var(--border);align-items:center;gap:12px;min-height:76px;display:flex}.reminder-row-main{flex:1;gap:4px;display:grid}.reminder-row-main>strong{font-size:11px}.reminder-row-main>span{color:var(--muted);align-items:center;gap:5px;font-size:9px;display:flex}.reminder-row-main>small{color:var(--muted-2);font-size:9px}.reminder-disabled{opacity:.58}.switch{flex:none;align-items:center;width:34px;height:20px;display:inline-flex;position:relative}.switch input{cursor:pointer;opacity:0;width:100%;height:100%;margin:0;position:absolute}.switch>span{background:var(--border-strong);pointer-events:none;border-radius:99px;transition:background .16s;position:absolute;inset:0}.switch>span:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000026}.switch input:checked+span{background:var(--primary)}.switch input:checked+span:after{transform:translate(14px)}.switch input:focus-visible+span{outline-offset:2px;outline:3px solid #477a5b45}.favorites-card{padding:17px 19px}.favorites-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding-bottom:12px;display:flex}.favorite-list-picker{min-width:220px}.favorite-list{display:grid}.favorite-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;display:flex}.favorite-row>.item-row{border:0;flex:1}.favorite-no-list{color:var(--muted);gap:7px;padding:13px 0 0;font-size:10px;display:flex}.favorite-no-list a{color:var(--primary);font-weight:650}.profile-hero-card{align-items:center;gap:15px;margin-bottom:14px;padding:21px;display:flex}.profile-avatar-large{border:3px solid var(--surface);color:#3e654a;width:67px;height:67px;box-shadow:0 0 0 1px var(--border);background:#dce8da;border-radius:50%;flex:none;place-items:center;font-size:20px;font-weight:700;display:grid}.profile-hero-copy{flex:1;justify-items:start;gap:5px;display:grid}.profile-hero-copy h2{margin:0;font-size:18px;font-weight:680}.profile-hero-copy p{color:var(--muted);margin:0 0 3px;font-size:10px}.profile-camera{border:1px solid var(--border);width:33px;height:33px;color:var(--muted);background:var(--surface);border-radius:10px;place-items:center;display:grid}.profile-camera:hover{color:var(--primary);background:var(--canvas)}.spending-over{background:color-mix(in srgb, var(--error) 10%, var(--surface));color:var(--error)!important}.compact-view .list-card{padding:12px}.compact-view .list-card-link{padding-top:8px}.compact-view .list-card-stats{padding:8px 0 6px}.compact-view .list-card-footer{padding-top:7px}.profile-content-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.profile-details-card,.profile-preferences-card{padding:19px}.profile-detail-row{border-top:1px solid var(--border);align-items:center;gap:10px;padding:12px 0;display:flex}.profile-detail-icon{width:32px;height:32px;color:var(--primary);background:var(--primary-light);border-radius:9px;place-items:center;display:grid}.profile-detail-row>span:last-child{gap:4px;display:grid}.profile-detail-row small{color:var(--muted);font-size:9px}.profile-detail-row strong{font-size:10px;font-weight:620}.profile-preferences-card>.field{margin-top:18px}.profile-preference-note{color:var(--muted);background:var(--canvas);border-radius:9px;align-items:flex-start;gap:7px;margin-top:12px;padding:10px;font-size:9px;line-height:1.5;display:flex}.profile-preference-note svg{color:var(--primary)}.profile-settings-link{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding-top:13px;display:flex}.profile-settings-link>span,.profile-settings-link a{align-items:center;gap:6px;font-size:9px;display:flex}.profile-settings-link>span{color:var(--muted)}.profile-settings-link a{color:var(--primary);font-weight:650}.settings-sections{gap:13px;max-width:820px;display:grid}.settings-card{padding:18px 19px}.settings-section-head{align-items:center;gap:10px;margin-bottom:15px;display:flex}.settings-section-icon{width:34px;height:34px;color:var(--primary);background:var(--primary-light);border-radius:10px;place-items:center;display:grid}.settings-section-head>span:last-child{gap:4px;display:grid}.settings-section-head strong{font-size:11px;font-weight:680}.settings-section-head small{color:var(--muted);font-size:9px}.theme-options{grid-template-columns:1fr 1fr;gap:9px;display:grid}.theme-option{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:11px;align-items:center;gap:10px;min-width:0;padding:10px;display:flex}.theme-option.selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 12%, transparent)}.theme-preview{border:1px solid var(--border);width:43px;height:37px;color:var(--primary);background:#fafaf6;border-radius:7px;flex-direction:column;flex:none;justify-content:center;gap:3px;padding:5px;display:flex}.theme-preview svg{width:12px;height:12px}.theme-preview i{background:#dce8dc;border-radius:4px;width:75%;height:3px}.theme-option-dark .theme-preview{color:#c3dbc7;background:#1b241f;border-color:#38453d}.theme-option-dark .theme-preview i{background:#405448}.theme-option>span:nth-child(2){flex:1;gap:4px;display:grid}.theme-option strong{font-size:10px}.theme-option small{color:var(--muted);font-size:8px}.preference-switch-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding:11px 0;display:flex}.preference-switch-row>span:first-child{gap:4px;display:grid}.preference-switch-row strong{font-size:10px;font-weight:620}.preference-switch-row small{color:var(--muted);font-size:9px}.settings-footnote{color:var(--muted-2);margin:5px 0 0;font-size:9px}.pwa-install-guidance{border:1px solid var(--border);background:color-mix(in srgb, var(--canvas) 72%, var(--surface));border-radius:12px;gap:8px;max-width:720px;padding:12px 14px;display:grid}.pwa-install-guidance p{color:var(--muted);margin:0;font-size:10px;line-height:1.55}.pwa-install-guidance strong{color:var(--text)}.pwa-install-guidance small{color:var(--muted-2);font-size:9px}.notification-status{justify-items:start;gap:5px;margin:0 0 10px;display:grid}.notification-reminder-note{background:var(--canvas);border-radius:9px;gap:5px;margin-top:13px;padding:10px 12px;font-size:9px;line-height:1.5;display:grid}.notification-reminder-note strong{font-weight:650}.notification-reminder-note span{color:var(--muted)}.notification-reminder-note a{color:var(--primary);font-weight:650}.app-error-screen{z-index:1200;background:var(--canvas);color:var(--text);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.app-error-card{border:1px solid var(--border);background:var(--surface);width:min(100%,440px);box-shadow:var(--shadow-card);border-radius:18px;padding:28px}.app-error-card h1{letter-spacing:-.04em;margin:12px 0 8px;font-size:clamp(24px,5vw,32px)}.app-error-card p{color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.6}.runtime-error-notice{z-index:1100;color:#74322c;background:#fff6f4;border:1px solid #e8c1bd;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;width:min(100% - 24px,540px);padding:11px 14px;font-size:11px;display:flex;position:fixed;top:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 26px #2029231f}.runtime-error-notice button{color:inherit;background:0 0;border:0;flex:none;font-size:10px;font-weight:700}.settings-currency-field{max-width:300px;margin-top:14px}.reset-settings-card{justify-content:space-between;align-items:center;gap:10px;display:flex}.reset-settings-card .settings-section-head{margin:0}.settings-bottom-note{color:var(--muted);align-items:center;gap:6px;margin-top:15px;font-size:9px;display:flex}.settings-bottom-note a{color:var(--primary);font-weight:650}.help-search-card{grid-template-columns:42px minmax(180px,1fr) minmax(210px,.8fr);align-items:center;gap:12px;margin-bottom:14px;padding:17px;display:grid}.help-search-icon{width:40px;height:40px;color:var(--primary);background:var(--primary-light);border-radius:12px;place-items:center;display:grid}.help-search-card h2{margin:0 0 4px;font-size:13px}.help-search-card p{color:var(--muted);margin:0;font-size:9px}.help-search-card .list-search{width:100%}.help-content-grid{grid-template-columns:minmax(0,1fr) 260px;gap:13px;display:grid}.faq-card{padding:19px}.faq-item{border-top:1px solid var(--border)}.faq-item>button{text-align:left;background:0 0;border:0;align-items:center;gap:9px;width:100%;padding:12px 0;display:flex}.faq-icon{width:29px;height:29px;color:var(--primary);background:var(--primary-light);border-radius:9px;flex:none;place-items:center;display:grid}.faq-item>button strong{flex:1;font-size:10px;font-weight:630}.faq-item>button>svg{color:var(--muted);transition:transform .15s}.faq-open>button>svg{transform:rotate(180deg)}.faq-item>p{color:var(--muted);margin:-1px 0 0;padding:0 10px 12px 38px;font-size:9px;line-height:1.65}.help-links-card{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.help-links-icon{width:43px;height:43px;color:var(--primary);background:var(--primary-light);border-radius:13px;place-items:center;margin-bottom:12px;display:grid}.help-links-card h2{margin:0 0 7px;font-size:14px}.help-links-card p{color:var(--muted);margin:0 0 15px;font-size:9px;line-height:1.55}.help-links-card .subtle-link{margin-top:12px}.help-arrow{transform:rotate(-90deg)}.help-demo-note{max-width:680px;color:var(--muted);gap:8px;margin-top:10px;padding:12px 0;font-size:9px;line-height:1.6;display:flex}.help-demo-note>span{color:var(--primary)}.not-found-page{place-items:center;min-height:60vh;display:grid}.not-found-page>.card{width:min(100%,520px)}.reserved-placement{border:1px dashed var(--border-strong);color:var(--muted);background:color-mix(in srgb, var(--surface) 78%, var(--canvas));border-radius:12px;align-items:center;gap:10px;margin:0 0 21px;padding:11px 13px;display:flex}.reserved-placement-icon{width:29px;height:29px;color:var(--primary);background:var(--primary-light);border-radius:9px;flex:none;place-items:center;display:grid}.reserved-placement>span:nth-child(2){flex:1;gap:3px;display:grid}.reserved-placement strong{color:var(--text);font-size:9px;font-weight:650}.reserved-placement small{color:var(--muted);font-size:8px;line-height:1.4}.reserved-placement-badge{border:1px solid var(--border);color:var(--muted);letter-spacing:.5px;white-space:nowrap;border-radius:6px;padding:4px 6px;font-size:7px;font-weight:750}.advertisement-slot{border:1px dashed var(--border-strong);width:100%;min-width:0;max-width:970px;min-height:clamp(88px,12vw,130px);color:var(--muted);background:color-mix(in srgb, var(--surface) 78%, var(--canvas));text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:12px;justify-content:center;align-items:center;gap:8px 18px;margin:0 auto 21px;padding:14px;display:flex;position:relative;overflow:hidden}.advertisement-slot span{gap:4px;min-width:0;display:grid}.advertisement-banner-copy{overflow-wrap:anywhere}.advertisement-slot strong{font-size:9px;font-weight:650}.advertisement-slot small{font-size:8px}.advertisement-slot-badge{border:1px solid var(--border);letter-spacing:.5px;border-radius:6px;padding:4px 6px;font-size:7px;font-weight:750}.ads-settings-summary{gap:9px;display:grid}.ads-settings-admin-note{color:var(--muted);background:var(--canvas);border-radius:9px;padding:10px 12px;font-size:9px;line-height:1.5}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:.75;transform:translateY(6px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes skeleton{to{background-position:-220% 0}}@media (width<=1200px){.app-main{margin-left:236px}.sidebar{width:236px}.topbar,.demo-banner,.page-content{padding-left:25px;padding-right:25px}.list-cards-grid,.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=980px){.app-main{margin-left:0}.sidebar{display:none}.mobile-menu-toggle,.mobile-list-shortcut{display:inline-grid}.topbar{gap:12px;min-height:64px;padding:0 20px}.topbar-context{min-width:130px}.demo-banner{padding-left:20px;padding-right:20px}.page-content{padding:25px 20px 45px}.mobile-scrim{z-index:25;background:#0f181261;border:0;display:block;position:fixed;inset:0}.mobile-sidebar-overlay{z-index:30;background:var(--surface);width:min(300px,100vw - 42px);padding-top:46px;animation:.16s modal-in;display:block;position:fixed;inset:0 auto 0 0;box-shadow:15px 0 44px #0c181029}.mobile-sidebar-overlay .sidebar{border-right:0;width:100%;display:flex;position:absolute;inset:46px 0 0;overflow-y:auto}.mobile-sidebar-heading{z-index:2;border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;height:46px;padding:0 14px;font-size:11px;font-weight:660;display:flex;position:absolute;top:0;left:0;right:0}.dashboard-grid{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr)}.welcome-art{width:35%}.art-sun{right:40px}.art-label{right:73px}.list-toolbar{flex-direction:column;align-items:flex-start}.list-toolbar-controls{width:100%}.list-toolbar-controls .list-search{flex:1}.help-content-grid{grid-template-columns:1fr}.help-links-card{grid-template-columns:43px 1fr auto;align-items:center;gap:0 12px;display:grid}.help-links-icon{grid-row:1/span 2;margin:0}.help-links-card h2{align-self:end}.help-links-card p{grid-column:2;margin:5px 0 0}.help-links-card .button{grid-area:1/3/span 2}.help-links-card .subtle-link{grid-column:1/-1;margin-top:12px}}@media (width<=760px){.topbar-context{min-width:80px}.topbar-tagline{display:none}.topbar-tools{gap:8px}.global-search-wrap{width:min(250px,38vw)}.profile-trigger-name,.profile-trigger>svg{display:none}.profile-trigger{padding:2px}.page-content,.demo-banner{padding-left:16px;padding-right:16px}.welcome-art{opacity:.5}.welcome-copy{max-width:74%}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.dashboard-grid-lower{grid-template-columns:1fr}.upcoming-card,.progress-card,.spending-card,.frequent-card{min-height:auto}.list-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-charts-grid{grid-template-columns:1fr}.budget-chart-card{min-height:auto}.category-spend-card{min-height:290px}.history-summary-row{grid-template-columns:1fr 1fr}.history-note{grid-column:1/-1}.profile-content-grid{grid-template-columns:1fr}}@media (width<=560px){.topbar{gap:8px;min-height:59px;padding:0 12px}.topbar-context{flex:1;min-width:0}.topbar-title{font-size:11px}.topbar-tools{margin-left:0}.global-search-wrap{background:0 0;border-color:#0000;justify-content:center;width:35px;height:35px;padding:0}.global-search-wrap:focus-within{border-color:var(--primary);background:var(--surface);justify-content:flex-start;width:min(185px,48vw);padding:0 8px}.global-search-wrap input{width:0;padding:0}.global-search-wrap:focus-within input{width:100%}.search-results{width:min(280px,100vw - 24px);left:auto;right:-88px}.topbar-icon{width:34px;height:34px}.avatar-small{width:29px;height:29px}.topbar-tools{gap:5px}.demo-banner{gap:6px;min-height:34px;padding:0 12px;font-size:8px}.demo-banner a{gap:1px;font-size:8px}.page-content{padding:21px 12px 38px}.page-heading{flex-direction:column;align-items:flex-start;gap:13px;margin-bottom:18px}.page-heading h1,.welcome-copy h1,.detail-heading h1,.shopping-mode-heading h1{font-size:25px}.page-heading p{font-size:10px}.page-heading-action,.page-heading-action .button{width:100%}.welcome-panel{min-height:205px;padding:19px 16px}.welcome-copy{max-width:100%}.welcome-copy h1{max-width:280px;font-size:24px}.welcome-copy>p{max-width:245px;font-size:10px}.welcome-art{opacity:.24;width:38%}.art-sun{width:130px;height:130px;top:24px;right:-43px}.art-label{right:-20px}.stats-grid{gap:8px}.stat-card{grid-template-rows:19px 28px 16px;grid-template-columns:32px 1fr;gap:2px 8px;min-height:102px;padding:11px}.stat-icon{border-radius:9px;width:30px;height:30px}.stat-value{font-size:17px}.stat-label{font-size:9px}.stat-note{font-size:8px}.card{border-radius:15px;padding:15px}.section-heading h2{font-size:14px}.section-heading{align-items:flex-start}.list-cards-grid{grid-template-columns:1fr}.list-card-compact .list-card-link h3{font-size:13px}.list-toolbar{padding:9px}.list-filters{width:100%}.filter-tab{flex:1;justify-content:center;padding:0 5px;font-size:9px}.list-toolbar-controls{flex-wrap:wrap}.list-toolbar-controls .list-search{flex-basis:100%}.list-toolbar-controls .select-control{flex:1}.select-control select{max-width:none}.view-switch{margin-left:auto}.detail-heading{flex-direction:column;align-items:flex-start}.detail-actions{width:100%}.detail-actions .button{flex:1}.detail-stats{grid-template-columns:repeat(2,1fr);gap:13px 8px}.list-progress-panel{padding:14px}.list-items-card{padding:13px}.list-items-heading{align-items:center}.list-items-heading .button{padding:0 6px;font-size:8px}.quick-add{flex-wrap:wrap;min-height:42px}.quick-add-category{max-width:115px}.quick-add-expanded .button{margin-left:auto}.list-item-tools{flex-direction:column;align-items:flex-start}.filter-pills{justify-content:space-between;width:100%}.filter-pills button{padding:0 5px;font-size:8px}.inline-search{width:100%}.item-row{gap:7px}.item-price{min-width:56px;font-size:9px}.item-meta{font-size:8px}.item-action{width:27px;height:28px}.move-item-select{max-width:69px;font-size:8px}.field-row{grid-template-columns:1fr;gap:12px}.modal-backdrop{align-items:end;padding:8px}.modal{border-radius:17px 17px 13px 13px;max-height:88vh;padding:17px}.modal-actions{background:var(--surface);padding:11px 0 2px;position:sticky;bottom:-17px}.shopping-mode-heading{flex-direction:column;align-items:flex-start}.list-picker{width:100%}.shopping-tools{align-items:stretch}.shopping-search{flex:1;width:auto}.show-done-toggle{white-space:nowrap}.shopping-items-panel{padding:13px}.shopping-mode-item{gap:9px;min-height:66px}.shopping-mode-item .item-checkbox{width:30px;height:30px}.shopping-mode-item-copy strong{font-size:12px}.shopping-mode-item-copy span,.shopping-mode-item-prices{font-size:9px}.shopping-mode-item-actions{gap:0}.shopping-mode-item-actions .icon-button{width:28px;height:28px}.shopping-mode-footer{gap:5px;padding:9px}.shopping-mode-footer .button{min-height:42px;padding:0 10px;font-size:10px}.shopping-mode-footer>div{gap:4px;font-size:8px}.shopping-mode-footer>div strong{font-size:10px}.shopping-mode-note{align-items:flex-start;font-size:8px}.budget-highlight{grid-template-columns:1fr;padding:15px}.budget-meter-copy{grid-row:2;justify-items:start}.budget-highlight>.progress-track{grid-row:3}.budget-meter-foot{grid-row:4}.budget-highlight h2{font-size:20px}.budget-stat-grid{grid-template-columns:1fr;gap:8px}.budget-stat{min-height:83px}.category-grid{grid-template-columns:1fr}.history-summary-row{grid-template-columns:1fr 1fr;gap:7px}.history-summary{padding:10px}.history-summary strong{font-size:12px}.history-note{padding:10px;font-size:8px}.history-toolbar{flex-direction:column;align-items:stretch}.history-toolbar .list-search{width:100%}.history-toolbar .select-control{align-self:flex-end}.history-session{gap:7px}.history-session-icon{width:30px;height:30px}.history-session-main strong{font-size:9px}.history-session-main span,.history-session-main small{font-size:8px}.history-session-spend{min-width:56px}.history-session-spend strong{font-size:9px}.history-session .button{min-height:29px;padding:0 6px;font-size:8px}.history-session>.icon-button{width:26px}.reminder-row{gap:7px}.reminder-row .status-pill{display:none}.reminder-row .icon-button{width:28px}.reminder-calendar{width:35px;height:42px}.reminder-row-main>strong{font-size:10px}.theme-options{grid-template-columns:1fr}.reset-settings-card{flex-direction:column;align-items:flex-start}.profile-hero-card{padding:15px}.profile-avatar-large{width:56px;height:56px}.profile-hero-copy h2{font-size:16px}.profile-settings-link{flex-direction:column;align-items:flex-start}.help-search-card{grid-template-columns:38px 1fr;gap:9px}.help-search-icon{width:36px;height:36px}.help-search-card .list-search{grid-column:1/-1}.help-links-card{align-items:flex-start;display:flex}.help-links-icon{margin-bottom:10px}.help-links-card .button{width:100%}.faq-item>button strong{font-size:9px}.favorite-row{align-items:flex-start;gap:4px}.favorite-row>.button{align-self:center;min-height:30px;padding:0 6px;font-size:8px}.favorite-row>.item-row{gap:6px}.favorite-row .item-action,.favorite-row .item-price{display:none}.popover{width:min(315px,100vw - 20px);position:fixed;top:59px;right:10px}.profile-popover{width:min(245px,100vw - 20px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;clip-path:inset(50%)!important;border:0!important;width:1px!important;height:1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.avatar img,.profile-avatar-large img{-o-object-fit:cover;object-fit:cover;border-radius:inherit;width:100%;height:100%}.workspace-switcher>.avatar{width:31px;height:31px;font-size:9px}.search-results button[aria-selected=true]{color:var(--text);background:var(--canvas)}.search-clear{width:23px;height:23px;color:var(--muted);background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.search-clear:hover{color:var(--text);background:var(--surface)}.quick-actions-section{margin:20px 0 16px}.quick-actions-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.quick-action-card{border:1px solid var(--border);min-height:74px;color:var(--text);background:var(--surface);text-align:left;box-shadow:var(--shadow-card);border-radius:13px;align-items:center;gap:11px;padding:12px;transition:transform .16s,border-color .16s,background .16s;display:flex}.quick-action-card:hover{border-color:color-mix(in srgb, var(--primary) 36%, var(--border));background:color-mix(in srgb, var(--primary-light) 35%, var(--surface));transform:translateY(-2px)}.quick-action-card>span{width:36px;height:36px;color:var(--primary-dark);background:var(--primary-light);border-radius:11px;flex:none;place-items:center;display:grid}.quick-action-card strong{font-size:11px;font-weight:650;line-height:1.35}.profile-hero-card>.button{min-height:38px}.auth-page{background:radial-gradient(ellipse at 50% 0%, var(--primary-light), transparent 55%), var(--canvas);place-items:center;min-height:100vh;padding:28px 16px;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);width:min(100%,470px);box-shadow:var(--shadow-card);border-radius:20px;padding:30px}.auth-brand{align-items:center;gap:10px;margin-bottom:24px;display:inline-flex}.auth-card>.eyebrow{margin-bottom:8px;display:block}.auth-card h1{letter-spacing:-.8px;margin:0;font-size:clamp(24px,5vw,30px)}.auth-subtitle{color:var(--muted);margin:8px 0 22px;font-size:13px;line-height:1.55}.auth-demo-warning{border:1px solid color-mix(in srgb, #c99f4d 35%, var(--border));color:var(--text);background:color-mix(in srgb, #f3ead4 56%, var(--surface));border-radius:10px;gap:4px;margin-bottom:22px;padding:10px 12px;font-size:11px;line-height:1.45;display:grid}.theme-dark .auth-demo-warning{background:color-mix(in srgb, #55472b 36%, var(--surface))}.auth-demo-warning strong{color:#80642b;font-size:11px}.theme-dark .auth-demo-warning strong{color:#ebcf84}.auth-form{gap:15px}.password-input{align-items:center;display:flex;position:relative}.password-input input{width:100%;padding-right:43px}.password-input button{width:36px;height:36px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;right:4px}.password-input button:hover{color:var(--text);background:var(--canvas)}.auth-options{justify-content:space-between;align-items:center;gap:10px;display:flex}.auth-options>a,.auth-switch a{color:var(--primary-dark);font-size:11px;font-weight:650}.auth-switch{border-top:1px solid var(--border);color:var(--muted);text-align:center;margin:16px 0 0;padding-top:16px;font-size:11px}.auth-back{width:fit-content;color:var(--muted);align-items:center;gap:6px;margin-top:18px;font-size:11px;display:flex}.auth-back:hover,.auth-options>a:hover,.auth-switch a:hover{color:var(--primary)}.auth-terms{align-items:flex-start}.auth-success{border:1px solid color-mix(in srgb, var(--primary) 28%, var(--border));color:var(--primary-dark);background:var(--primary-light);border-radius:9px;margin:0;padding:10px 12px;font-size:11px;line-height:1.5}.auth-card code{overflow-wrap:anywhere;font-size:.92em}.pwa-prompt{z-index:80;border:1px solid var(--border);max-width:min(520px,100vw - 32px);color:var(--text);background:var(--surface);box-shadow:var(--shadow-card);border-radius:14px;align-items:center;gap:12px;padding:10px 12px;font-size:12px;display:flex;position:fixed;bottom:18px;right:18px}.pwa-prompt>span{flex:1}.pwa-prompt .icon-button{width:30px;height:30px}.push-section-head{border-top:1px solid var(--border);margin-top:12px;padding-top:16px}.import-preview{border:1px solid var(--border);color:var(--muted);background:var(--canvas);border-radius:11px;gap:5px;padding:12px;font-size:11px;line-height:1.45;display:grid}.import-preview strong{color:var(--text);font-size:12px}@media (width<=760px){.quick-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-action-card{min-height:64px;padding:9px}.quick-action-card>span{width:34px;height:34px}}@media (width<=560px){.profile-hero-card{flex-wrap:wrap}.profile-hero-copy{min-width:calc(100% - 80px)}.profile-hero-card>.button{flex:1;justify-content:center}.quick-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-action-card{gap:8px;font-size:10px}.auth-card{border-radius:16px;padding:22px 18px}.auth-options{flex-direction:column;align-items:flex-start}.auth-card .field-row{grid-template-columns:1fr}.pwa-prompt{gap:7px;padding:8px;font-size:10px;bottom:10px;right:10px}}.workspace-loading,.workspace-error{background:var(--canvas);place-items:center;min-height:100dvh;padding:24px;display:grid}.workspace-loading{color:var(--muted);text-align:center;align-content:center;gap:12px}.workspace-loading strong{color:var(--text);font-size:16px}.workspace-error-card{border:1px solid var(--border);background:var(--surface);width:min(100%,520px);box-shadow:var(--shadow-card);border-radius:20px;padding:32px}.workspace-error-card h1{letter-spacing:-.04em;margin:10px 0;font-size:clamp(24px,5vw,34px)}.workspace-error-card p{color:var(--muted);overflow-wrap:anywhere;margin:0 0 22px;line-height:1.65}.workspace-page-loading{min-width:0}.workspace-list-skeleton{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:13px;display:grid}.workspace-skeleton-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;align-content:start;gap:12px;padding:17px;display:grid}.workspace-skeleton-card i,.workspace-content-skeleton i{background:linear-gradient(90deg, var(--border) 20%, var(--surface) 45%, var(--border) 70%);background-size:220% 100%;border-radius:7px;min-height:12px;animation:1.1s linear infinite skeleton;display:block}.workspace-skeleton-card i:first-child{width:38%;min-height:32px}.workspace-skeleton-card i:nth-child(2){width:72%}.workspace-skeleton-card i:nth-child(3){width:55%}.workspace-skeleton-card i:last-child{width:100%;min-height:6px;margin-top:8px}.workspace-content-skeleton{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.workspace-content-skeleton i{min-height:145px}.workspace-inline-error,.route-error-card{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);justify-items:start;gap:10px;padding:clamp(20px,4vw,34px);display:grid}.workspace-inline-error h1,.route-error-card h1{letter-spacing:-.04em;margin:0;font-size:clamp(20px,4vw,28px)}.workspace-inline-error p,.route-error-card p{max-width:620px;color:var(--muted);overflow-wrap:anywhere;margin:0 0 5px;line-height:1.6}.sync-banner{flex-wrap:wrap;height:auto;min-height:38px;padding-top:7px;padding-bottom:7px;font-size:11px;line-height:1.45}.sync-banner>span:nth-of-type(2){overflow-wrap:anywhere;flex:280px}.sync-error .demo-banner-dot,.sync-offline .demo-banner-dot,.sync-conflict .demo-banner-dot{background:var(--error)}.sync-saving .demo-banner-dot{background:#d1a34b}.sync-retry{border:1px solid var(--border-strong);background:var(--surface);min-height:30px;color:var(--primary-dark);border-radius:8px;padding:4px 10px;font-weight:650}.sync-retry:disabled{cursor:not-allowed;opacity:.55}.sync-delayed{color:var(--muted);flex:100%}.avatar-upload-progress{background:var(--primary-light);border-radius:999px;flex:1 0 100%;height:5px;overflow:hidden}.avatar-upload-progress>span{border-radius:inherit;background:var(--primary);height:100%;transition:width .15s;display:block}@media (width<=720px){.sync-banner{align-items:flex-start;padding:8px 16px;font-size:10px}.sync-banner>span:nth-of-type(2){flex-basis:calc(100% - 25px)}.workspace-content-skeleton{grid-template-columns:1fr}}
