/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.list-item{display:list-item}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#20232a;--muted:#70747f;--line:#20232a1a;--paper:#fffdf8;--surface:#fff;--green:#17795e;--mint:#c7f1dc;--red:#e04b3f;--yellow:#f6c65b;--blue:#4566d1;--shadow:0 22px 70px #1f232b2e;--soft-edge:inset 0 1px 0 #ffffffc7, inset 0 -1px 0 #322b220f;--pressed-edge:inset 0 2px 5px #342b2229, inset 0 -1px 0 #ffffffbd;--scroll-progress:0%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 14% 8%,#f6c65b3d,#0000 28rem),radial-gradient(circle at 84% 12%,#4566d129,#0000 24rem),linear-gradient(135deg,#f7faf6 0%,#f0f3f8 42%,#fff4ef 100%);margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0;transition:transform .18s,box-shadow .18s,background-color .18s,color .18s,filter .18s}button:active{transform:translateY(1px)scale(.97)}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:2px;outline:2px solid #17795ea6}.add-row:focus-within{box-shadow:var(--soft-edge), 0 0 0 3px #17795e1a, 0 12px 26px #473d3014;border-color:#17795e61}.stage{place-items:center;min-height:100vh;padding:28px;display:grid}.phone-shell{width:min(100%,430px);min-width:0}.phone{background:linear-gradient(180deg, #fffdf7fa, #f7efe2f5), var(--paper);height:min(920px,100vh - 56px);min-height:760px;box-shadow:var(--shadow);border:10px solid #22242b;border-radius:38px;flex-direction:column;display:flex;position:relative;overflow:hidden}.phone:after{content:"";z-index:0;pointer-events:none;mix-blend-mode:multiply;background:repeating-linear-gradient(90deg,#28221c05 0 1px,#0000 1px 5px),linear-gradient(#ffffff6b,#0000 34%);position:absolute;inset:0}.phone:before{content:"";z-index:3;background:#22242b;border-radius:0 0 18px 18px;width:92px;height:24px;position:absolute;top:9px;left:50%;transform:translate(-50%)}.scroll-progress{z-index:4;opacity:0;pointer-events:none;background:#20232a12;border-radius:999px;width:4px;transition:opacity .18s;position:absolute;top:78px;bottom:104px;right:8px;overflow:hidden}.phone.is-scrolling .scroll-progress{opacity:1}.scroll-progress span{width:100%;height:var(--scroll-progress);border-radius:inherit;background:linear-gradient(180deg, var(--green), #2e9a7d, var(--yellow));min-height:22px;display:block;box-shadow:0 0 18px #17795e57}.screen-content{z-index:1;min-height:0;margin-bottom:calc(90px + env(safe-area-inset-bottom,0px));scroll-behavior:smooth;scrollbar-width:none;flex:1;padding-bottom:18px;position:relative;overflow-y:auto}.screen-content::-webkit-scrollbar{display:none}.scroll-vignette{z-index:1;pointer-events:none;opacity:1;height:42px;transition:opacity .18s;position:absolute;left:0;right:0}.scroll-vignette.top{background:linear-gradient(#fffdf8f5,#fffdf800);top:0}.scroll-vignette.bottom{-webkit-backdrop-filter:blur(.5px);backdrop-filter:blur(.5px);background:linear-gradient(#fffdf800,#fffdf8b8);height:30px;bottom:90px}.app-topbar,.section-heading,.budget-strip,.input-panel,.store-stack,.shopping-list{margin-inline:18px}.app-topbar{grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;margin-bottom:14px;padding-top:30px;display:grid}.list-page .app-topbar{margin-bottom:10px}.topbar-brand{text-overflow:ellipsis;white-space:nowrap;color:#1d2a21;letter-spacing:-.05em;background:#fffdf8c2;border:1px solid #20232a14;border-radius:999px;justify-self:center;align-items:center;gap:7px;min-width:0;max-width:62%;height:34px;padding-inline:13px;font-size:17px;font-weight:900;display:inline-flex;overflow:hidden;box-shadow:inset 0 1px #ffffffad,0 8px 22px #4a3e2f12}.topbar-brand:before{content:"";background:var(--green);border-radius:3px;width:8px;height:8px;box-shadow:0 0 0 3px #5b8f6a29}.login-screen-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;padding:32px;display:flex}.login-screen-content h1{margin:0;font-size:22px}.login-screen-copy{color:var(--muted);max-width:30ch;margin:0;font-size:14px}.login-google-button{background:var(--green);color:#fff;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:10px;margin-top:12px;padding:14px 22px;font-weight:700;text-decoration:none;display:inline-flex}.login-screen-error{color:var(--red);margin:0;font-size:13px}.settings-logout-button{border:1px solid var(--line);color:var(--red);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:8px;margin-top:12px;padding:10px 16px;font-size:13px;font-weight:700;display:inline-flex}.kicker,.label{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}h1,h2,h3,h4,p{margin:0}h1{font-size:24px;line-height:1}h2{max-width:310px;margin-top:5px;font-size:25px;line-height:1.05}h3{font-size:20px;line-height:1.1}.icon-button,.round-action,.text-button{min-width:0;color:var(--ink);place-items:center;display:inline-grid}.icon-button{background:#fff;border-radius:15px;width:44px;height:44px;box-shadow:0 10px 28px #20232a14}.icon-button:hover{transform:translateY(-1px);box-shadow:0 14px 30px #20232a1f}.icon-button.accent{color:#fff;background:#20232a}.icon-button.flat{box-shadow:none;background:#20232a0f}.spinning-icon-button{width:40px;height:40px;color:var(--green);background:radial-gradient(circle at 34% 16%,#ffffff75,#0000 34%),linear-gradient(145deg,#e6f5ed,#cfeadb);border:1px solid #17795e2e;border-radius:14px;place-items:center;display:inline-grid;box-shadow:inset 0 1px #ffffffc7,0 7px 15px #2e56401f}.spinning-icon-button:hover{border-color:#17795e47;transform:translateY(-.5px);box-shadow:inset 0 1px #ffffffd1,0 9px 18px #2e564029}.icon-button svg,.round-action svg,.text-button svg,.add-row svg,.bottom-nav svg,.spinning-icon-button svg{stroke-width:2.2px;width:20px;height:20px}.hero-panel{background:#f5e9d8;border-radius:24px;height:188px;margin:0 18px 14px;position:relative;overflow:hidden;box-shadow:0 18px 36px #5046351f}.hero-panel:before{content:"";z-index:1;background:linear-gradient(90deg,#fffdf8e0 0%,#fffdf885 42%,#fffdf814 100%),linear-gradient(#fffdf800 44%,#fffdf894 100%);position:absolute;inset:0}.hero-photo{object-fit:cover;object-position:58% 52%;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.08)}.list-page .hero-panel{border-radius:22px;height:128px;margin-bottom:10px;box-shadow:0 8px 24px #50463514,inset 0 1px 1px #ffffff7a}.list-page .hero-panel:before{background:linear-gradient(90deg,#fffdf8e6 0%,#fffdf894 48%,#fffdf81a 100%),linear-gradient(#fffdf800 42%,#fffdf880 100%)}.list-page .hero-photo{object-position:60% 50%;transform:scale(1.04)}.list-page .budget-strip{background:#ffffffd6;border-color:#20232a14;border-radius:20px;padding:10px 12px;box-shadow:inset 0 1px 1px #ffffffb3,0 8px 22px #4a3e2f0e}.list-page .budget-strip strong{font-size:22px}.budget-strip{border:1px solid var(--line);background:#fff;border-radius:22px;grid-template-columns:minmax(0,1fr);align-items:center;padding:12px;display:grid}.budget-strip strong{margin-top:2px;font-size:25px;line-height:1;display:block}.budget-strip span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.text-button{isolation:isolate;color:#fff;background:#20232a;border-radius:14px;grid-auto-flow:column;gap:7px;height:42px;padding-inline:13px;font-size:13px;font-weight:800;position:relative;overflow:hidden;box-shadow:0 12px 26px #20232a2e}.text-button:before{content:"";z-index:-1;background:linear-gradient(115deg,#0000 0 30%,#ffffffb8 43%,#0000 56% 100%),#20232a;animation:4.2s ease-in-out infinite button-shimmer;position:absolute;inset:-1px;transform:translate(-120%)}.text-button:hover{transform:translateY(-1px);box-shadow:0 16px 32px #20232a38}.text-button.secondary{color:#20232ab8;box-shadow:none;background:#20232a14}.text-button.secondary:before{display:none}.input-panel{margin-top:14px}.list-page .input-panel{margin-top:10px}.add-row{height:56px;box-shadow:var(--soft-edge), 0 12px 26px #473d3014;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffb8;border:1px solid #ffffffc7;border-radius:18px;grid-template-columns:22px 1fr 42px;align-items:center;gap:10px;padding-left:16px;padding-right:7px;display:grid}.list-page .add-row{background:#ffffffad;border-color:#ffffffb8;border-radius:17px;height:52px;box-shadow:inset 0 1px 1px #ffffffb8,inset 0 2px 4px #2f29220b,0 8px 18px #473d300e}.add-row>svg{color:var(--muted)}.add-row input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.round-action{color:#fff;background:linear-gradient(145deg,#2e9a78,#176b51);border-radius:14px;width:42px;height:42px;box-shadow:inset 0 1px #ffffff61,0 9px 18px #176b5147}.list-page .round-action{background:linear-gradient(145deg,#35a17e,#1d7a5c);border-radius:13px;width:40px;height:40px;box-shadow:inset 0 1px #ffffff57,0 7px 14px #176b512e}.round-action:active{box-shadow:inset 0 2px 7px #0f3d2f4d,0 4px 10px #176b5133}.quick-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.quick-chips button,.location-chips button{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;background:#ffffffad;border-radius:999px;height:34px;padding-inline:5px;font-size:11px;font-weight:800;overflow:hidden}.quick-chips button{isolation:isolate;box-shadow:var(--soft-edge), inset 0 3px 7px #41342414, 0 8px 18px #4a3e2f1a, 0 0 0 1px #ffffff57;border:1px solid #ffffffb8;justify-content:center;align-items:center;gap:3px;display:inline-flex;position:relative}.quick-chips button:after{content:"";z-index:-1;border-radius:inherit;filter:blur(7px);background:#fff9;height:42%;position:absolute;inset:4px 7px auto}.quick-chips button svg{stroke-width:2px;flex:none;width:14px;height:14px}.quick-chips button span{text-overflow:ellipsis;min-width:0;overflow:hidden}.quick-chips button:first-child{color:#42563e;box-shadow:var(--pressed-edge), 0 10px 22px #9669302b;background:linear-gradient(145deg,#fff7e8,#efe5d4)}.quick-chips button:nth-child(2){color:#4a3729;box-shadow:var(--pressed-edge), 0 10px 22px #6f52312b;background:linear-gradient(145deg,#fbf2df,#e4d8c4)}.quick-chips button:nth-child(3){color:#244d44;box-shadow:var(--pressed-edge), 0 10px 22px #2c5f4e29;background:linear-gradient(145deg,#f4f7f2,#dfe7df)}.quick-chips button:nth-child(4){color:#574331;box-shadow:var(--pressed-edge), 0 10px 22px #735b3a29;background:linear-gradient(145deg,#fff9ee,#eadfcd)}.quick-chips button:hover,.location-chips button:hover{filter:brightness(1.015)saturate(1.03)}.quick-chips button:active{transform:translateY(1px)scale(.975);box-shadow:inset 0 3px 8px #3b30232e,inset 0 -1px #ffffffbd,0 4px 10px #4a3e2f12}.location-chips{flex-wrap:wrap;gap:8px;display:flex}.location-chips button{cursor:pointer;padding-inline:14px}.location-chips button.is-active{background:var(--green);color:#fff}.location-chips button:disabled{opacity:.55;cursor:default}.section-heading{justify-content:space-between;align-items:end;gap:14px;margin-top:22px;margin-bottom:12px;display:flex}.section-heading h3{letter-spacing:0;font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:500}.shopping-list{align-content:start;gap:10px;margin-block:0;padding:0;list-style:none;display:grid;overflow:visible}.list-page .shopping-list{margin-top:10px;padding-bottom:20px}.item-swipe-shell{z-index:0;touch-action:pan-y;transform:scale(var(--item-scale,1));transform-origin:50%;border-radius:22px;transition:transform .16s,filter .16s;position:relative;overflow:visible}.swipe-delete-bg{border-radius:inherit;color:#fff;opacity:0;background:linear-gradient(90deg,#e04b3f,#bb3027);align-items:center;gap:8px;padding-left:20px;font-size:12px;font-weight:900;transition:opacity .14s;display:flex;position:absolute;inset:0}.item-swipe-shell.is-dragging .swipe-delete-bg{opacity:1}.swipe-delete-bg svg{stroke-width:2.4px;width:19px;height:19px}.item-card{isolation:isolate;z-index:1;-webkit-backdrop-filter:blur(14px)saturate(1.03);backdrop-filter:blur(14px)saturate(1.03);width:100%;min-height:68px;transform:translate3d(var(--swipe-x,0px), 10px, 0);opacity:0;touch-action:pan-y;-webkit-user-select:none;user-select:none;transition:transform .36s cubic-bezier(.2,.8,.2,1),opacity .28s,box-shadow .18s,border-color .18s,background-color .22s,min-height .22s,padding .22s;transition-delay:inherit;will-change:transform;cursor:default;background:#fffdf9eb;border:1px solid #78664e29;border-radius:16px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px 12px;display:grid;position:relative;box-shadow:inset 0 1px #ffffffb3,0 4px 10px #41332212}.item-complete-button{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;grid-template-columns:minmax(0,1fr) minmax(68px,100px);align-items:center;gap:9px;padding:4px 2px;display:grid}.item-complete-button:focus-visible,.item-action-button:focus-visible,.qty-chip:focus-visible,.qty-button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.item-complete-button:disabled{cursor:default}.item-card.done{background:#e4f3ebd1;border-color:#2e7d3229;min-height:50px;padding-block:7px}.item-card:before{content:"";z-index:-1;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,#ffffff80,#0000 34%),linear-gradient(#ffffff38,#0000 58%);position:absolute;inset:1px}.item-card.is-visible,.store-card.is-visible{transform:translate3d(var(--swipe-x,0px), 0, 0);opacity:1}.item-swipe-shell.is-dragging .item-card{transition:none}.item-card:hover{border-color:#78664e3d;box-shadow:inset 0 1px #ffffffbd,0 6px 14px #4133221a}.done-tag{z-index:2;color:#17795e7a;pointer-events:none;width:58px;height:44px;margin:auto;position:absolute;inset:0;transform:rotate(-8deg)}.done-tag path{fill:none;stroke:currentColor;stroke-width:8.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:0;animation:.26s ease-out tag-draw}@keyframes tag-draw{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}.item-card.done .item-name{color:#20232a8f;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;-webkit-text-decoration:line-through #20232a57;text-decoration:line-through #20232a57;text-decoration-thickness:1px}.item-card.done .qty-stepper{opacity:.54}.item-card.done .item-price{opacity:.76;filter:saturate(.72)}.item-main{align-self:center;gap:4px;min-width:0;max-width:100%;display:grid}.item-name{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:break-word;white-space:normal;letter-spacing:0;-webkit-box-orient:vertical;min-width:0;max-width:100%;padding-block:1px 2px;font-size:17px;font-weight:560;line-height:1.2;display:-webkit-box;overflow:hidden}.item-offer-selected{color:#305f47ad;overflow-wrap:anywhere;min-width:0;max-width:100%;margin-top:-3px;font-size:11px;font-weight:720;line-height:1.25;display:block}.item-count{color:#1f242a;text-align:center;flex:none;min-width:24px;font-size:12.5px;font-weight:700}.qty-stepper{flex:none;align-items:center;gap:6px;min-height:28px;display:inline-flex}.qty-chip{color:#1f242ab8;cursor:pointer;background:#ffffff8c;border:1px solid #78664e2e;border-radius:999px;align-items:center;height:28px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.qty-chip:hover:not(:disabled){color:#1f242a;border-color:#17795e52}.qty-chip.quiet{opacity:.45}.qty-chip.quiet:hover:not(:disabled){opacity:1}.qty-chip:disabled{opacity:.4;cursor:default}.qty-button{color:#29303a;cursor:pointer;background:linear-gradient(145deg,#fbfaf5,#e9e4da);border:1px solid #fffc;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex;box-shadow:inset 0 1px #ffffffd6,0 4px 9px #2f292214}.qty-button svg{width:14px;height:14px}.qty-button:hover:not(:disabled){border-color:#17795e52}.qty-button:active:not(:disabled){box-shadow:inset 0 2px 5px #2f292224,0 2px 5px #2f29220f}.qty-button:disabled{opacity:.4;cursor:default}.item-row-actions{align-items:center;gap:3px;display:inline-flex}.item-action-button{color:#1f242aa8;cursor:pointer;background:#ffffff7a;border:1px solid #78664e29;border-radius:10px;place-items:center;width:30px;height:30px;padding:0;display:inline-grid}.item-action-button.danger{color:var(--red)}.item-action-button svg{stroke-width:2.2px;width:15px;height:15px}.item-action-button:hover:not(:disabled){background:#ffffffc7;border-color:#17795e4d}.item-action-button:disabled{opacity:.38;cursor:default}.item-edit-form{-webkit-user-select:text;user-select:text;border-top:1px solid #78664e1f;grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(100px,.65fr);gap:8px;padding-top:10px;display:grid}.item-edit-form label{min-width:0;color:var(--muted);gap:4px;font-size:11px;font-weight:800;display:grid}.item-edit-form input{border:1px solid var(--line);width:100%;min-width:0;height:38px;color:var(--ink);font:inherit;background:#ffffffd1;border-radius:11px;outline:0;padding:0 10px;font-size:14px}.item-edit-form input:focus{border-color:var(--green);box-shadow:0 0 0 2px #17795e1f}.item-edit-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.pack-input{color:#4a4f57;background:#ffffff94;border:1px solid #ffffffc7;border-radius:999px;max-width:150px;height:28px;padding:3px 10px;font-size:11px;font-weight:700;box-shadow:inset 0 1px 3px #352d230f}.pack-input:focus{border-color:var(--green);outline:none}.fresh{background:var(--green)}.pantry{background:var(--yellow)}.household{background:var(--blue)}.item-variant{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;margin-top:8px;font-size:12px;display:flex}.match-dropdown{align-items:center;display:inline-flex;position:relative}.match-dropdown select{appearance:none;color:#4a4f57;cursor:pointer;background:#ffffff94;border:1px solid #ffffffc7;border-radius:999px;max-width:150px;height:28px;padding:3px 25px 3px 10px;font-size:11px;font-weight:700;box-shadow:inset 0 1px 3px #352d230f}.match-dropdown select:hover{border-color:var(--green)}.match-dropdown svg{width:13px;height:13px;color:var(--muted);pointer-events:none;position:absolute;right:8px}.match-dropdown[aria-busy=true]{opacity:.6;pointer-events:none}.item-price{text-align:right;white-space:nowrap;place-self:center end;min-width:0;max-width:112px;font-family:Georgia,Times New Roman,serif;font-size:19px;font-weight:500;line-height:1.05}.item-price small{width:fit-content;max-width:112px;color:var(--green);justify-content:center;margin-top:5px;margin-left:auto;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:10.5px;display:flex}.price-chip{isolation:isolate;text-overflow:ellipsis;color:#fff;text-shadow:0 1px 1px #0000003d;border:1px solid #ffffff3d;border-radius:999px;align-items:center;min-height:22px;padding:4px 9px;font-weight:820;line-height:1;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff6b,inset 0 -2px 5px #1c14103d,0 5px 10px #2f292233}.item-price small.price-chip{color:#fff}.price-chip:before{content:"";z-index:-1;border-radius:inherit;filter:blur(3px);background:#ffffff38;height:42%;position:absolute;inset:1px 4px auto}.price-chip.meny{background:linear-gradient(145deg,#a2445d 0%,#7c2339 52%,#5c182a 100%)}.price-chip.rema{background:linear-gradient(145deg,#527fb7 0%,#285690 52%,#1d4070 100%);border-color:#d2e1ff4d;box-shadow:inset 0 1px #ebf5ff7a,inset 0 -2px 5px #0c22484d,0 5px 11px #22467942}.price-chip.obs{background:linear-gradient(145deg,#d9b867 0%,#b89035 54%,#8d6e25 100%);border-color:#fff3be57;box-shadow:inset 0 1px #fffbdc80,inset 0 -2px 5px #5b400e47,0 5px 10px #85651e3d}.price-chip.coop{background:linear-gradient(145deg,#4c9872 0%,#2b7455 56%,#20593f 100%)}.price-chip.save,.price-chip.known{background:linear-gradient(145deg,#27966f,#176b51)}.price-chip.normal{background:linear-gradient(145deg,#8b8174,#665f55)}.price-chip.unknown{min-height:auto;box-shadow:none;color:#2a28249e;text-shadow:none;background:0 0;border:0;padding:0;font-size:10px;font-weight:700;line-height:1.15}.price-chip.unknown:before{display:none}.item-price small.price-chip.unknown{color:#2a28249e}.store-title{margin-top:16px}.store-stack{gap:9px;padding-bottom:8px;display:grid}.store-card{color:#fff;opacity:0;border-radius:19px;grid-template-columns:1fr auto;gap:12px;padding:13px;transition:transform .36s cubic-bezier(.2,.8,.2,1),opacity .28s,filter .18s;display:grid;transform:translateY(10px)}.store-card:hover{filter:saturate(1.06)brightness(1.02)}.store-card.best{background:linear-gradient(135deg,#17795e,#275246)}.store-card.fast{background:linear-gradient(135deg,#4566d1,#263866)}.store-card h4{margin:0;font-size:16px}.store-card p{color:#ffffffc7;margin-top:4px;font-size:12px}.store-save{text-align:center;background:#ffffff29;border-radius:13px;align-self:center;min-width:78px;padding:8px 10px;font-size:12px;font-weight:900}.basket-plan{gap:8px;margin-bottom:6px;display:grid}.basket-plan-total{align-items:center;gap:8px;margin:2px 2px 0;font-size:13px;font-weight:800;display:flex}.basket-plan-total svg{color:#17795e;flex-shrink:0;width:16px;height:16px}.basket-plan-note{color:#141e1c9e;margin:0 2px;font-size:12px}.item-price.unknown{color:#1e1e1c94;font-weight:600}.buy-now-list{gap:9px;display:grid}.buy-now-card{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:12px;display:grid}.buy-now-card.great_deal{border-color:var(--green);background:var(--mint)}.buy-now-card strong{font-size:15px}.buy-now-card p{color:#3e4550;margin-top:3px;font-size:12px}.buy-now-was{color:var(--muted)}.buy-now-was s{text-decoration-thickness:1px}.buy-now-valid{color:var(--muted);align-items:center;gap:4px;margin-top:4px;font-size:11px;display:inline-flex}.buy-now-valid svg{width:12px;height:12px}.buy-now-icon{background:var(--mint);width:42px;height:42px;color:var(--green);border-radius:14px;place-items:center;display:grid}.buy-now-icon svg{width:20px;height:20px}.buy-now-save{background:var(--green);color:#fff;text-align:center;border-radius:13px;align-self:center;min-width:74px;padding:8px 10px;font-size:12px;font-weight:900}.bottom-nav{left:18px;right:18px;bottom:max(6px, env(safe-area-inset-bottom,0px));z-index:2;grid-template-columns:repeat(4,1fr);gap:8px;padding:8px;display:grid;position:absolute}.bottom-nav button{color:#222427a3;background:0 0;border-radius:18px;place-items:center;gap:3px;height:50px;display:grid}.bottom-nav .nav-label{letter-spacing:.01em;font-size:10px;font-weight:700;line-height:1}.bottom-nav svg{width:19px;height:19px}.bottom-nav button.active{color:#fff8e5;background:radial-gradient(circle at 36% 18%,#fffae05c,#0000 38%),linear-gradient(145deg,#4e493a,#2c2a22 58%,#1f201b);box-shadow:inset 0 2px 5px #ffffff38,inset 0 -5px 10px #00000047,0 10px 22px #20232a33}.phone-page{gap:14px;padding:30px 18px 22px;display:grid}.page-heading{gap:6px;display:grid}.page-heading h2{max-width:340px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.metric-grid article{border:1px solid var(--line);background:#fff;border-radius:18px;align-content:space-between;gap:9px;min-height:92px;padding:13px;display:grid}.metric-grid svg{width:20px;height:20px;color:var(--green)}.metric-grid span,.offer-card span,.insight-card span,.receipt-fields span,.receipt-summary span{color:var(--muted);font-size:12px;font-weight:800}.metric-grid strong{font-size:27px;line-height:1}.section-heading.compact{margin-inline:0;margin-top:4px}.offer-list,.insight-list,.receipt-lines,.offer-groups{gap:9px;display:grid}.offer-group{border:1px solid var(--line);background:#fff;border-radius:18px}.offer-group-header{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:18px;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:10px;width:100%;padding:12px 14px;display:grid}.offer-group-header:disabled{cursor:default}.offer-group-name{overflow-wrap:anywhere;font-size:14px;font-weight:800}.offer-group-meta{color:var(--green);white-space:nowrap;font-size:12px;font-weight:800}.offer-group-meta.none{color:var(--muted);font-weight:600}.offer-group-header svg{width:16px;height:16px;color:var(--muted);transition:transform .15s}.offer-group-header svg.open{transform:rotate(180deg)}.offer-group.open{background:#ffffffd9}.offer-group-body{gap:8px;padding:0 10px 10px;display:grid}.offer-group-body .offer-card{background:#fbfaf5;border-radius:14px}.offer-show-more{color:var(--green);cursor:pointer;background:0 0;border:1px dashed #20232a33;border-radius:12px;padding:8px;font-size:13px;font-weight:700}.offer-others{gap:9px;display:grid}.offer-others-toggle{color:var(--muted);cursor:pointer;background:#fff9;border:1px dashed #20232a33;border-radius:18px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.offer-others-toggle svg{width:16px;height:16px;transition:transform .15s}.offer-others-toggle svg.open{transform:rotate(180deg)}.offer-card,.insight-card{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:12px;display:grid}.offer-card p{color:#3e4550;margin-top:3px;font-size:12px}.offer-card.browser-card{grid-template-columns:44px minmax(0,1fr) auto 34px;align-items:start}.offer-card.browser-card strong,.offer-card.browser-card p,.offer-card.browser-card span{overflow-wrap:anywhere}.offer-card.browser-card strong{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.3;display:-webkit-box;overflow:hidden}.offer-card span{margin-top:4px;display:block}.offer-icon{background:var(--mint);width:42px;height:42px;color:var(--green);border-radius:14px;place-items:center;display:grid}.offer-icon svg{width:20px;height:20px}.offer-thumb{border:1px solid var(--line);object-fit:cover;background:#f7f4ec;border-radius:14px;width:44px;height:44px}.offer-price{text-align:right;min-width:74px;font-weight:900}.offer-price small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.offer-add-button{color:#2f7c55;cursor:pointer;background:linear-gradient(145deg,#e8f4ed,#cfe8da);border:1px solid #2e7d3238;border-radius:12px;place-items:center;width:34px;height:34px;display:grid;box-shadow:inset 0 1px #ffffffc2,0 7px 14px #2e7d3224}.offer-add-button:hover:not(:disabled){border-color:#2e7d3257;transform:translateY(-.5px);box-shadow:inset 0 1px #fffc,0 9px 18px #2e7d322e}.offer-add-button:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 5px #2051372e,0 3px 8px #2e7d321a}.offer-add-button:disabled{cursor:default;opacity:.48;color:#20232a70;box-shadow:none;background:#20232a12}.offer-add-button.added,.offer-add-button.added:disabled{opacity:1;color:#2f7c55;background:#e1f5eae0;border-color:#2e7d322e}.offer-add-button[aria-busy=true]{opacity:.66}.offer-add-button svg{width:17px;height:17px}.empty-panel{min-height:76px;color:var(--muted);text-align:center;background:#fff9;border:1px dashed #20232a33;border-radius:18px;place-items:center;padding:16px;font-size:13px;font-weight:800;display:grid}.insights-empty{gap:6px;padding:26px 20px}.insights-empty strong{color:#2e3035;font-size:14px}.insights-empty p{max-width:300px;font-weight:600;line-height:1.45}.empty-list-state{background:linear-gradient(180deg, #ffffffbd, #ffffff7a), var(--surface);text-align:center;border:1px dashed #20232a33;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:420px;margin:18px;padding:34px 22px;display:flex;box-shadow:inset 0 1px 1px #ffffffb3}.list-page-empty{flex-direction:column;min-height:100%;display:flex}.list-page-empty .empty-list-state{flex:1;min-height:0}.empty-list-icon{background:var(--mint);width:52px;height:52px;color:var(--ink);border-radius:18px;place-items:center;display:grid}.empty-list-icon svg{width:25px;height:25px}.empty-list-state h2{max-width:260px;color:var(--ink);margin:0;font-family:Georgia,Times New Roman,serif;font-size:28px;line-height:1.02}.empty-list-state p{max-width:280px;color:var(--muted);margin:0;font-size:13px;font-weight:700;line-height:1.45}.empty-list-create{width:auto;min-width:150px;margin-top:8px}.empty-list-note{color:var(--red)!important;font-size:12px!important}.sync-banner{color:#9d3328;background:#fff5f2e0;border:1px solid #c0392b2e;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:12px;font-weight:800;display:flex}.list-page .sync-banner{background:#fff9f6c7;border-color:#9d332824;border-radius:16px;margin:0 12px 10px;padding:8px 10px;font-size:11.5px;line-height:1.25;box-shadow:inset 0 1px 1px #ffffff9e,0 7px 18px #783e2d0b}.sync-banner button{color:#fff;font:inherit;white-space:nowrap;cursor:pointer;background:#20232a;border:0;border-radius:10px;flex:none;padding:6px 10px}.household-invite-banner{color:#244d3d;background:#e8f6eedb;border:1px solid #2e7d322e;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 12px 10px;padding:10px;font-size:11.5px;font-weight:820;line-height:1.25;display:grid;box-shadow:inset 0 1px 1px #ffffffad,0 7px 18px #2e56400f}.household-invite-banner span{overflow-wrap:anywhere;min-width:0}.household-invite-banner div{gap:6px;display:inline-flex}.household-invite-banner button{color:#fff;background:#244d3d;border-radius:11px;align-items:center;gap:4px;min-height:32px;padding:6px 9px;font-size:11px;font-weight:900;display:inline-flex}.household-invite-banner button:last-child{color:#20232ab8;background:#20232a1a}.household-invite-banner button svg{width:14px;height:14px}.list-sharing-controls{grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:9px;margin:10px 18px 0;display:grid}.list-sharing-state{align-items:center;gap:7px;min-width:0;display:flex;overflow:hidden}.share-select-shell,.shared-static-badge,.shared-owner-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:7px;min-width:0;min-height:34px;padding:6px 10px;font-size:11px;font-weight:900;display:inline-flex}.share-select-shell,.shared-static-badge{box-sizing:border-box;height:40px;min-height:40px;color:var(--green);background:radial-gradient(circle at 34% 16%,#ffffff75,#0000 34%),linear-gradient(145deg,#e6f5ed,#cfeadb);border:1px solid #17795e2e;border-radius:14px;padding:0 12px;box-shadow:inset 0 1px #ffffffc7,0 7px 15px #2e56401f}.share-select-shell{flex:0 auto}.share-select-shell select{min-width:0;max-width:160px;color:inherit;background:0 0;border:0;outline:0;font-size:11px;font-weight:900}.share-select-shell svg,.shared-static-badge svg,.shared-owner-badge svg{flex:none;width:14px;height:14px}.shared-static-badge{flex:0 auto}.shared-owner-badge{color:#20232aa3;text-overflow:ellipsis;background:#20232a0f;flex:0 10 auto;overflow:hidden}.list-refresh-button{align-self:center}.offer-controls,.offer-location{gap:8px;margin-bottom:18px;display:grid}.offer-controls{background:linear-gradient(#ffffffdb,#fffbf3c2);border:1px solid #0000000f;border-radius:22px;gap:10px;padding:12px;box-shadow:0 8px 24px #0000000a,0 22px 42px #4a3e2f14,inset 0 1px 1px #ffffffb8}.offer-field>span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:900;display:block}.offer-field{gap:6px;display:grid}.offer-control-input{background:linear-gradient(#ffffffd1,#f8f7f2d6);border:1px solid #00000014;border-radius:14px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:52px;padding:0 13px;display:grid;box-shadow:inset 0 2px 4px #20232a14,inset 0 1px 1px #ffffffb8,0 1px #ffffffc2}.offer-control-input:focus-within{border-color:#2e7d3259;box-shadow:inset 0 2px 4px #20232a12,0 0 0 3px #2e7d321a,0 10px 22px #4a3e2f14}.offer-control-input>svg{width:19px;height:19px;color:var(--muted)}.offer-control-input input,.offer-control-input select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:14px;font-weight:850}.offer-control-input input::placeholder{color:#20232a73;font-weight:750}.offer-control-input select:disabled{color:#20232a70}.location-picker{position:relative}.location-suggestions{z-index:20;overscroll-behavior:contain;background:#fffffffa;border:1px solid #00000014;border-radius:14px;max-height:244px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 14px 30px #4a3e2f29}.location-suggestions button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:baseline;gap:10px;width:100%;min-height:44px;padding:8px 10px;display:flex}.location-suggestions button.active,.location-suggestions button:hover{background:#2e7d3217}.location-suggestion-name{color:var(--ink);font-size:14px;font-weight:850}.location-suggestion-detail{color:var(--muted);flex:none;font-size:12px;font-weight:750}.offer-control-actions{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.text-button.embossed-action,.offer-control-actions .text-button{color:#f8fcf9;text-shadow:0 1px 1px #00000024;background:radial-gradient(circle at 50% 0,#ffffff24,#0000 42%),linear-gradient(#557b6c 0%,#426b58 48%,#345744 100%);border:1px solid #ffffff1f;border-bottom-color:#1e3f303d;border-radius:13px;grid-template-columns:22px minmax(0,1fr) 22px;gap:0;width:100%;height:48px;font-size:15px;font-weight:850;transition:transform .18s ease-out,box-shadow .18s ease-out,filter .18s ease-out;box-shadow:0 1px #1d3e2f70,0 5px 10px #28433429,0 11px 20px #0000000b,inset 0 1px 1px #ffffff3d,inset 0 -4px 9px #18362733}.text-button.embossed-action:before,.offer-control-actions .text-button:before{display:none}.text-button.embossed-action>svg,.offer-search-button svg{justify-self:start}.text-button.embossed-action>span,.offer-search-button span{justify-self:center}.text-button.embossed-action:after,.offer-search-button:after{content:""}.text-button.embossed-action:hover:not(:disabled),.offer-control-actions .text-button:hover:not(:disabled){transform:translateY(-.5px);box-shadow:0 1.5px #1d3e2f7a,0 7px 12px #2843342e,0 13px 22px #0000000d,inset 0 1px 1px #ffffff40,inset 0 -4px 9px #1836272e}.text-button.embossed-action:active:not(:disabled),.offer-control-actions .text-button:active:not(:disabled){transform:translateY(1px)scale(.997);box-shadow:0 .5px #1d3e2f5c,0 3px 6px #28433421,inset 0 3px 7px #122e214d,inset 0 1px 1px #ffffff1f}.offer-status{color:var(--muted);padding:0 4px;font-size:12px;font-weight:700}.offer-status.error{color:#c0392b}.offer-status.ok{color:#1e8449}.offer-status.partial{color:#9a6a12}.offer-expired-notice{color:#77520f;background:#9a6a1214;border-radius:12px;gap:8px;padding:10px;font-size:12px;font-weight:750;display:grid}.offer-expired-notice p{margin:0}.offer-expired-actions{flex-wrap:wrap;gap:8px;display:flex}.page-title-row{justify-content:space-between;align-items:center;gap:12px;min-height:42px;display:flex}.page-title-row h2{letter-spacing:-.035em;max-width:none;margin:0;font-family:Georgia,Times New Roman,serif;font-size:35px;font-weight:500;line-height:.98}.page-link-button{color:#20232ab8;background:#ffffffbd;border:1px solid #20232a14;border-radius:999px;grid-auto-flow:column;align-items:center;gap:7px;max-width:185px;min-height:36px;padding:7px 10px;font-size:12px;font-weight:850;display:inline-grid;box-shadow:inset 0 1px 1px #ffffffb8,0 6px 16px #4a3e2f0e}.page-link-button.linked{color:#235b42;background:#e1f5eab8;border-color:#2e7d3229}.page-link-button svg{width:15px;height:15px}.page-link-button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.receipt-link-button{color:#315d49;background:linear-gradient(#ffffffeb,#f1f8f4d6);border-color:#2e7d3224;box-shadow:0 1px #2e56402e,0 7px 15px #2e56401a,inset 0 1px 1px #ffffffd1,inset 0 -2px 5px #2e564014}.receipt-link-button:hover:not(:disabled){border-color:#2e7d323d;transform:translateY(-.5px);box-shadow:0 1.5px #2e564033,0 9px 18px #2e56401f,inset 0 1px 1px #ffffffd6,inset 0 -2px 5px #2e564012}.receipt-link-button:active:not(:disabled){transform:translateY(1px)scale(.995);box-shadow:0 .5px #2e564024,0 3px 8px #2e564014,inset 0 2px 5px #2e56402e}.receipt-save-notice{padding-inline:2px}.receipt-upload{gap:12px;display:grid}.receipt-upload-actions{grid-template-columns:minmax(0,1fr) 50px;align-items:center;gap:9px;display:grid}.receipt-capture-button{min-width:0}.receipt-capture-button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.receipt-file-button{color:#2f7c55;background:linear-gradient(145deg,#f4fbf6,#d8ecdf);border:1px solid #2e7d3233;border-radius:13px;width:50px;height:48px;box-shadow:0 1px #2e564029,0 7px 14px #2e7d321f,inset 0 1px 1px #ffffffc7,inset 0 -3px 6px #2e564014}.receipt-file-button:hover:not(:disabled){border-color:#2e7d3252;transform:translateY(-.5px);box-shadow:0 1.5px #2e56402e,0 9px 18px #2e7d3229,inset 0 1px 1px #ffffffd1,inset 0 -3px 6px #2e564012}.receipt-file-button:active:not(:disabled){transform:translateY(1px)scale(.995);box-shadow:0 .5px #2e56401f,0 3px 8px #2e7d321a,inset 0 2px 6px #2051372e}.receipt-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.receipt-preview-grid figure{aspect-ratio:4/5;border:1px solid var(--line);background:#fff;border-radius:18px;margin:0;position:relative;overflow:hidden}.receipt-preview-grid img{object-fit:cover;width:100%;height:100%}.receipt-preview-grid figure button{color:#fff;background:#20232ac7;border-radius:12px;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:7px;right:7px}.receipt-preview-grid figure svg{width:16px;height:16px}.receipt-fields{grid-template-columns:1fr 1fr;gap:9px;display:grid}.receipt-fields label{gap:6px;display:grid}.receipt-fields label:first-child{grid-column:1/-1}.receipt-fields input{border:1px solid var(--line);min-width:0;height:43px;color:var(--ink);background:#fff;border-radius:14px;outline:0;padding:0 12px}.text-button.wide{width:100%}.text-button.receipt-next-action{height:52px;font-size:15px}.spin{animation:.9s linear infinite receipt-spin}.receipt-review{border:1px solid var(--line);background:#fff;border-radius:19px;gap:12px;padding:13px;display:grid}.receipt-review-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.receipt-review-header>span,.receipt-review-meta>span:last-child{background:var(--mint);min-width:46px;height:36px;color:var(--green);border-radius:999px;place-items:center;font-weight:900;display:grid}.receipt-review-meta{align-items:center;gap:7px;display:flex}.receipt-review-meta .receipt-store-type{min-height:30px;color:var(--muted);white-space:nowrap;background:#20232a12;border-radius:999px;place-items:center;padding:5px 9px;font-size:10px;font-weight:900;display:inline-grid}.receipt-review-meta .receipt-store-type.grocery{color:var(--green);background:#17795e1a}.receipt-review-meta .receipt-store-type.other{color:var(--blue);background:#4566d11a}.compact-fields{grid-template-columns:1fr 110px}.compact-fields label:first-child{grid-column:auto}.receipt-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.receipt-summary div{background:#f2f5f4;border-radius:14px;padding:10px}.receipt-summary strong{margin-top:3px;display:block}.receipt-lines article{grid-template-columns:1fr 82px;gap:8px;display:grid}.receipt-line-name{gap:4px;display:grid}.receipt-line-name span{color:var(--green);font-size:11px;font-weight:900}.receipt-line-name span.receipt-line-discount,.receipt-detail-lines span.receipt-line-discount{color:var(--green);font-variant-numeric:tabular-nums;font-size:11px;font-weight:800}.receipt-budget-category{background:#20232a0e;border-radius:11px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:min(100%,210px);margin-top:3px;padding:3px;display:grid}.receipt-budget-category button{min-width:0;min-height:36px;color:var(--muted);background:0 0;border-radius:8px;padding:4px 5px;font-size:11px;font-weight:900}.receipt-budget-category button.active{background:var(--surface);color:var(--green);box-shadow:0 3px 9px #3338351c}.receipt-lines input{border:1px solid var(--line);border-radius:13px;outline:0;min-width:0;height:40px;padding:0 10px}.insight-card{grid-template-columns:1fr auto}.insight-card div{gap:3px;display:grid}.insight-card div:last-child{text-align:right}.insights-page{grid-template-columns:minmax(0,1fr);gap:12px;padding-bottom:28px}.insights-title-row{align-items:flex-start}.insights-title-row .icon-button{margin-top:2px}.insights-subtitle{color:var(--muted);margin:5px 0 0;font-size:13px;font-weight:750}.insights-range-control{background:linear-gradient(#ffffffd6,#f8f4ecb8),#f8f3eabd;border:1px solid #20232a14;border-radius:17px;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;padding:5px;display:grid;box-shadow:inset 0 1px 1px #ffffffb8,0 10px 24px #4a3e2f0f}.insights-scope-picker{background:radial-gradient(circle at 12% 0,#eaf6ecdb,#0000 42%),#fffdf8e0;border:1px solid #20232a17;border-radius:21px;gap:8px;padding:10px;display:grid;box-shadow:0 11px 24px #4a3e2f12}.insights-scope-kicker{color:#20232a94;letter-spacing:.07em;text-transform:uppercase;padding-inline:4px;font-size:10px;font-weight:900}.insights-scope-control{background:#ffffffad;border:1px solid #20232a17;border-radius:17px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px;display:grid;box-shadow:inset 0 1px 2px #2d35300d}.insights-range-control button,.insights-scope-control button,.insights-granularity-toggle button{color:#20232aad;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:12px;min-width:0;font-size:11px;font-weight:850}.insights-range-control button{height:34px;padding-inline:3px}.insights-scope-control button{text-overflow:ellipsis;max-width:100%;min-height:46px;padding-inline:8px;font-size:12px;overflow:hidden}.insights-member-rail{overscroll-behavior-inline:contain;scrollbar-width:none;gap:7px;padding:1px 1px 4px;display:flex;overflow-x:auto}.insights-member-rail::-webkit-scrollbar{display:none}.insights-member-rail button{color:#20232aad;background:#fffdf8d1;border:1px solid #20232a17;border-radius:999px;flex:none;min-height:40px;padding:0 14px;font-size:12px;font-weight:850;box-shadow:0 4px 12px #4a3e2f0a}.insights-member-rail button.active{color:#2f684a;background:#e1f1e7e6;border-color:#315b423d}.insights-member-scope-note{color:#20232aad;background:#edf6efb8;border:1px solid #315b421c;border-radius:15px;margin:-2px 2px 0;padding:11px 13px;font-size:12px;font-weight:700;line-height:1.4}.insights-range-control button.active,.insights-scope-control button.active,.insights-granularity-toggle button.active{color:#fff9ea;background:radial-gradient(circle at 40% 0,#fffcea47,#0000 42%),linear-gradient(145deg,#4e6d5a,#335741);box-shadow:inset 0 1px 1px #ffffff38,inset 0 -3px 7px #16382638,0 6px 14px #2e56402e}.weekly-budget-card{background:radial-gradient(circle at 88% 0,#c7f1dc70,#0000 36%),linear-gradient(145deg,#f6faf4fa,#fffaeff0);border:1px solid #315b4226;border-radius:22px;gap:10px;min-height:132px;padding:16px;display:grid;overflow:hidden;box-shadow:inset 0 1px 1px #ffffffd1,0 14px 32px #3b60431a}.weekly-budget-card.empty{background:linear-gradient(145deg,#ffffffeb,#f8f4ece0);border-color:#20232a17}.weekly-budget-loading{color:var(--muted);place-self:center;font-size:13px;font-weight:800}.weekly-budget-empty-copy{justify-content:space-between;align-items:center;gap:14px;display:flex}.weekly-budget-empty-copy>div{gap:5px;display:grid}.weekly-budget-empty-copy h3,.weekly-budget-heading h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:21px;font-weight:500;line-height:1.08}.weekly-budget-empty-copy p,.weekly-budget-copy p{color:var(--muted);margin:0;font-size:11px;font-weight:750;line-height:1.35}.weekly-budget-content{grid-template-columns:minmax(0,1fr) 112px;align-items:stretch;gap:12px;display:grid}.weekly-budget-copy{align-content:start;gap:7px;min-width:0;display:grid}.weekly-budget-heading{justify-content:space-between;align-items:start;gap:8px;display:flex}.weekly-budget-heading>div{gap:4px;min-width:0;display:grid}.weekly-budget-heading .icon-button{flex:none;width:34px;height:34px}.weekly-budget-heading .icon-button svg{width:15px;height:15px}.weekly-budget-type-chip,.weekly-budget-admin-note{width:fit-content;max-width:100%;color:var(--green);background:#17795e17;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900}.weekly-budget-admin-note{color:var(--muted);text-align:center;background:#20232a12}.weekly-budget-spent{margin-top:3px;font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:500;line-height:1}.weekly-budget-remaining{color:var(--green);font-size:13px;font-weight:900}.weekly-budget-remaining.watch,.weekly-budget-remaining.close{color:#936719}.weekly-budget-remaining.over,.weekly-budget-error{color:var(--red)}.weekly-budget-copy p.weekly-budget-uncertain{color:#8b671f}.weekly-budget-error{margin:0;font-size:12px;font-weight:800}.budget-cylinder-figure{--budget-fill:#55a77f;grid-template-columns:48px 56px;justify-content:end;align-items:stretch;gap:7px;min-height:184px;padding:5px 0;display:grid;position:relative}.budget-cylinder-figure.watch{--budget-fill:#d2aa4d}.budget-cylinder-figure.close{--budget-fill:#df8b42}.budget-cylinder-figure.over{--budget-fill:#d94d43}.budget-cylinder-scale{color:#20232a8f;font-variant-numeric:tabular-nums;font-size:10px;font-weight:850;position:relative}.budget-cylinder-scale span{white-space:nowrap;align-items:center;gap:5px;display:flex;position:absolute;right:0}.budget-cylinder-scale span:after{content:"";background:#20232a3d;width:10px;height:1px}.budget-cylinder-scale .top{top:-1px}.budget-cylinder-scale .middle{top:50%;transform:translateY(-50%)}.budget-cylinder-scale .bottom{bottom:-1px}.budget-cylinder{background:linear-gradient(90deg,#f1f4efe0,#ffffffe6 46%,#e2eae3cc);border:1px solid #26433333;border-radius:50%/7%;align-self:stretch;position:relative;overflow:hidden;box-shadow:inset 8px 0 12px #2946340e,inset -7px 0 10px #2946340f,0 9px 20px #34493b1a}.budget-cylinder:before,.budget-cylinder:after{content:"";z-index:2;pointer-events:none;border:1px solid #2643332e;border-radius:50%;height:12px;position:absolute;left:-1px;right:-1px}.budget-cylinder:before{background:#ffffff6b;top:-2px}.budget-cylinder:after{background:var(--budget-fill);bottom:-2px}@supports (color:color-mix(in lab, red, red)){.budget-cylinder:after{background:color-mix(in srgb, var(--budget-fill) 60%, transparent)}}.budget-cylinder-fill{background:linear-gradient(90deg, #ffffff2e, transparent 32%, #23382c1f), var(--budget-fill);border-radius:50% 50% 0 0/8px 8px 0 0;min-height:0;transition:height .52s cubic-bezier(.2,.75,.25,1),background-color .22s;position:absolute;inset:auto 0 0}.budget-cylinder-fill:before{content:"";background:var(--budget-fill);border-radius:50%;height:11px;position:absolute;top:-5px;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.budget-cylinder-fill:before{background:color-mix(in srgb, var(--budget-fill) 78%, white)}}.budget-cylinder-figure.overflow .budget-cylinder:before{border-color:#e04b3f8f;box-shadow:0 -4px 12px #e04b3f3d}.weekly-budget-sheet{gap:16px}.weekly-budget-amount-field{color:var(--ink);gap:7px;font-size:12px;font-weight:850;display:grid}.weekly-budget-amount-field>div{border:1px solid var(--line);background:#fffdf8;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:9px;height:54px;padding:0 14px;display:grid}.weekly-budget-amount-field>div>span{color:var(--muted);font-size:17px;font-weight:900}.weekly-budget-amount-field input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:24px;font-weight:900}.weekly-budget-amount-field small{color:var(--muted);font-size:10px}.weekly-budget-type-field{border:0;gap:8px;margin:0;padding:0;display:grid}.weekly-budget-type-field legend{margin-bottom:7px;font-size:12px;font-weight:850}.weekly-budget-type-field>div{background:#20232a0f;border-radius:15px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:4px;display:grid}.weekly-budget-type-field button{min-height:40px;color:var(--muted);background:0 0;border-radius:11px;padding:6px 8px;font-size:11px;font-weight:900}.weekly-budget-type-field button.active{background:var(--surface);color:var(--green);box-shadow:0 5px 13px #3338351c}.weekly-budget-type-field p{color:var(--muted);font-size:11px;line-height:1.4}.weekly-budget-actions{grid-template-columns:1fr auto}.weekly-budget-actions>:only-child{grid-column:2}.insights-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.insights-kpi-card{background:linear-gradient(#fffffff0,#faf7f0d6),#fff;border:1px solid #20232a14;border-radius:19px;align-content:space-between;gap:8px;min-height:112px;padding:14px;display:grid;box-shadow:inset 0 1px 1px #ffffffb8,0 12px 28px #4a3e2f12}.insights-kpi-card.primary{background:radial-gradient(circle at 18% 0,#fffff1c7,#0000 35%),linear-gradient(155deg,#ebf6edfa,#fffaeee6 56%,#f6e8c7c7);border-color:#2e7d322e;box-shadow:inset 0 1px 1px #ffffffd1,0 14px 32px #3b604321,0 3px 10px #4a3e2f12}.insights-kpi-card svg{color:#3f7657;width:20px;height:20px}.insights-kpi-card span,.insights-kpi-card small,.insights-bar-label span,.insights-trip-row span,.receipt-detail-total span,.receipt-detail-stats span,.receipt-detail-lines span,.settings-section-title span,.settings-row span,.insights-price-card span{color:var(--muted);font-size:12px;font-weight:800}.insights-kpi-card>span{text-transform:uppercase;letter-spacing:.04em}.insights-kpi-card strong{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:22px;line-height:1}.insights-kpi-card.primary strong{font-family:Georgia,Times New Roman,serif;font-size:29px;font-weight:600}.insights-delta.up{color:#a04436}.insights-delta.down{color:#2f7c55}.insights-delta.flat{color:#20232a94}.insights-chart-card,.insights-breakdown-card,.insights-trip-timeline,.insights-price-card{background:linear-gradient(#ffffffe6,#f8f4eccc),#fff;border:1px solid #20232a14;border-radius:21px;grid-template-columns:minmax(0,1fr);gap:13px;padding:14px;display:grid;box-shadow:inset 0 1px 1px #ffffffbd,0 14px 30px #4a3e2f13}.insights-chart-card{background:radial-gradient(circle at 15% 0,#f6e9c257,#0000 42%),linear-gradient(#ffffffeb,#f9f4eadb);padding-bottom:10px}.insights-card-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.insights-card-header.compact{margin-bottom:-1px}.insights-card-header h3{letter-spacing:0;margin:0;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500;line-height:1.02}.insights-card-header p{color:var(--muted);margin:5px 0 0;font-size:11px;font-weight:800}.insights-granularity-toggle{background:#ffffff9e;border:1px solid #20232a14;border-radius:14px;flex:none;grid-template-columns:repeat(2,1fr);gap:3px;padding:3px;display:grid}.insights-granularity-toggle button{height:28px;padding-inline:9px}.insights-chart-shell{min-height:162px;overflow:hidden}.insights-svg-chart{width:100%;height:auto;display:block}.insights-chart-axis{stroke:#20232a1f;stroke-width:1px}.insights-chart-gridline{stroke:#20232a13;stroke-width:1px;stroke-dasharray:3 4}.insights-chart-area{fill:url(#insights-spend-area)}.insights-chart-line{fill:none;stroke:#4e7e62;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.insights-chart-point{fill:#f8f4eb;stroke:#4e7e6259;stroke-width:1.5px}.insights-chart-point.active{fill:#4e7e62;stroke:#f8f4eb;stroke-width:2px}.insights-chart-label,.insights-chart-value,.insights-chart-empty{fill:#20232a94;font-size:10px;font-weight:850}.insights-chart-value{fill:#2f5f46;font-size:11px}.insights-stacked-chart{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.insights-stacked-plot-frame{min-height:170px;padding-top:3px;position:relative}.insights-stacked-grid{pointer-events:none;grid-template-rows:repeat(2,1fr);display:grid;position:absolute;inset:9px 0 31px}.insights-stacked-grid span{border-top:1px dashed #20232a13}.insights-stacked-grid span:last-child{border-bottom:1px solid #20232a1a}.insights-stacked-scroll{z-index:1;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#315b4233 transparent;position:relative;overflow-x:auto}.insights-stacked-columns{align-items:stretch;gap:5px;width:max-content;min-width:100%;height:166px;display:flex}.insights-stacked-period{color:#20232a8f;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1 0 34px;grid-template-rows:132px 30px;min-width:34px;padding:0 2px;display:grid}.insights-stacked-period:focus-visible{outline-offset:-1px;outline:2px solid #315b4294}.insights-stacked-period.selected{background:#315b420f}.insights-stacked-column-slot{justify-content:center;align-items:flex-end;min-height:0;padding:8px 2px 4px;display:flex}.insights-stacked-column{background:#20232a0b;border-radius:7px 7px 4px 4px;flex-direction:column-reverse;width:min(100%,25px);min-height:3px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff40}.insights-stacked-column>span:not(.empty){background:var(--member-color);min-height:2px;display:block}.insights-stacked-column>span+span{box-shadow:inset 0 -1px #ffffff73}.insights-stacked-column .empty{background:#20232a14;width:100%;height:100%;display:block}.insights-stacked-period-label{text-overflow:ellipsis;white-space:nowrap;align-self:center;max-width:50px;font-size:9px;font-weight:850;overflow:hidden}.insights-stacked-period.selected .insights-stacked-period-label{color:#2f684a}.insights-period-breakdown{background:#ffffff8f;border:1px solid #20232a12;border-radius:15px;gap:9px;padding:11px 12px;display:grid}.insights-period-breakdown>div{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.insights-period-breakdown>div strong{font-family:Georgia,Times New Roman,serif;font-size:17px;font-weight:600}.insights-period-breakdown>div span{color:var(--muted);font-size:11px;font-weight:800}.insights-period-breakdown ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin:0;padding:0;list-style:none;display:grid}.insights-period-breakdown li{color:#20232aad;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;font-size:11px;font-weight:750;display:grid}.insights-period-breakdown li>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.insights-period-breakdown li strong{font-variant-numeric:tabular-nums;font-size:11px}.insights-member-swatch{background:var(--member-color);border-radius:3px;width:9px;height:9px}.insights-chart-empty-copy{color:var(--muted);text-align:center;padding:28px 12px;font-size:12px;font-weight:750}@media (width<=370px){.insights-period-breakdown ul{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.insights-stacked-scroll{scroll-behavior:auto}}.insights-breakdown-grid,.insights-bar-list,.insights-trip-list,.insights-price-list{gap:10px;display:grid}.insights-bar-row{gap:7px;display:grid}.insights-bar-label{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;display:grid}.insights-bar-label strong,.insights-trip-row strong,.insights-price-list strong{overflow-wrap:anywhere;min-width:0}.insights-bar-label span{text-align:right;white-space:nowrap}.insights-trip-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.insights-owner-chip{color:#3f5fbc;overflow-wrap:anywhere;background:#4566d117;border:1px solid #4566d124;border-radius:999px;align-items:center;width:fit-content;max-width:100%;min-height:23px;padding:4px 8px;font-size:11px;font-weight:850;line-height:1.15;display:inline-flex}.list-panel-head .insights-owner-chip{margin-top:7px}.insights-bar-track{background:#20232a14;border-radius:999px;height:9px;overflow:hidden}.insights-bar-track span{border-radius:inherit;background:linear-gradient(90deg,#426b58,#88a775);height:100%;display:block;box-shadow:inset 0 1px 1px #ffffff47}.insights-bar-track.product span{background:linear-gradient(90deg,#9c6a35,#d7a64f)}.insights-month-group{gap:8px;display:grid}.insights-month-group h4{color:#20232a94;text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:12px;font-weight:900}.insights-trip-row{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;border-bottom:1px solid #20232a14;grid-template-columns:minmax(0,1fr) auto 17px;align-items:center;gap:10px;padding:10px 0;display:grid}.insights-trip-row:last-child{border-bottom:0}.insights-trip-row>div{gap:4px;min-width:0;display:grid}.insights-trip-row>strong{text-align:right}.insights-trip-row svg{color:#20232a57;width:16px;height:16px}.insights-trip-toggle{min-height:42px;color:var(--green);cursor:pointer;background:#e8f6ee9e;border:1px solid #17795e2e;border-radius:14px;justify-content:center;align-items:center;gap:5px;padding:0 10px 0 12px;font-size:12px;font-weight:850;display:inline-flex}.insights-receipt-load-more{min-height:42px;color:var(--green);cursor:pointer;background:#ffffff8f;border:1px solid #17795e24;border-radius:13px;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:850;display:inline-flex}.insights-receipt-load-more span{color:var(--muted);font-size:11px;font-weight:750}.insights-receipt-collapse-bottom{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:850;display:inline-flex}.insights-receipt-collapse-bottom svg{width:15px;height:15px;transform:rotate(180deg)}.insights-trip-toggle svg{width:16px;height:16px;transition:transform .18s}.insights-trip-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.insights-trip-groups{gap:13px;animation:.18s ease-out insights-trip-reveal;display:grid}@keyframes insights-trip-reveal{0%{opacity:.55;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.insights-trip-toggle svg{transition:none}.insights-trip-groups{animation:none}}.insights-store-comparison{border-bottom:1px solid #20232a14}.insights-store-comparison:last-child{border-bottom:0}.insights-store-comparison summary{min-height:58px;color:var(--ink);cursor:pointer;grid-template-columns:minmax(0,1fr) minmax(112px,auto);align-items:center;gap:10px;padding:9px 22px 9px 0;list-style:none;display:grid;position:relative}.insights-store-comparison summary::-webkit-details-marker{display:none}.insights-store-comparison summary:after{content:"";border-bottom:2px solid #20232a66;border-right:2px solid #20232a66;width:8px;height:8px;transition:transform .16s;position:absolute;right:3px;transform:rotate(45deg)translateY(-2px)}.insights-store-comparison[open] summary:after{transform:rotate(225deg)translate(-2px,-2px)}.insights-store-comparison summary:focus-visible{outline-offset:2px;border-radius:10px;outline:2px solid #315b4294}.insights-store-comparison-copy,.insights-store-comparison-best{gap:4px;min-width:0;display:grid}.insights-store-comparison-best{text-align:right}.insights-store-comparison-best strong{font-size:12px}.insights-store-comparison-details{gap:8px;padding:2px 0 12px;display:grid}.insights-store-comparison-details p{color:var(--muted);font-size:11px;font-weight:750}.insights-store-comparison-details ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.insights-store-comparison-details li{background:#20232a0b;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.insights-store-comparison-details li>span{gap:3px;min-width:0;display:grid}.insights-store-comparison-details li>span:last-child{text-align:right}.insights-store-comparison-details small{color:var(--muted);font-size:10px;font-weight:750}@media (prefers-reduced-motion:reduce){.insights-store-comparison summary:after{transition:none}}.insights-price-summary{gap:9px;display:grid}.insights-price-summary>strong{font-size:22px;line-height:1.05}.insights-price-alerts{background:linear-gradient(#fff9f4e0,#ffffff94),#ffffff7a;border:1px solid #a044361f;border-radius:16px;gap:9px;padding:11px;display:grid}.insights-price-subhead{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.insights-price-subhead strong{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:14px}.insights-price-subhead span{flex:none}.insights-alert-list{gap:8px;display:grid}.insights-alert-list article{border-top:1px solid #20232a14;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;display:grid}.insights-alert-list article>div{gap:4px;min-width:0;display:grid}.insights-alert-list article>div:last-child{text-align:right}.insights-alert-list strong{overflow-wrap:anywhere;min-width:0}.insights-alert-list article>div:last-child strong,.insights-alert-list article>div:last-child span{color:#a04436}.insights-price-empty{color:#20232a94;text-align:center;background:#20232a0b;border-radius:13px;place-items:center;min-height:42px;padding:10px;font-size:12px;font-weight:850;display:grid}.trend-counts{flex-wrap:wrap;gap:7px;display:flex}.trend-counts span{color:#20232ab8;background:#20232a0f;border-radius:999px;grid-auto-flow:column;align-items:center;gap:5px;min-height:29px;padding:6px 9px;display:inline-grid}.trend-counts svg{width:14px;height:14px}.insights-price-card p{color:#3e4550;margin:0;font-size:13px;line-height:1.35}.list-panel.receipt-detail-sheet,.list-panel.settings-sheet,.modal-dialog-surface.receipt-detail-sheet,.modal-dialog-surface.settings-sheet{max-height:min(86%,690px);overflow-y:auto}.receipt-detail-total{background:#f6f3ec;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:13px;display:flex}.receipt-detail-total div{gap:4px;display:grid}.receipt-detail-total strong{font-size:28px;line-height:1}.sync-chip{background:var(--mint);min-height:31px;color:var(--green);white-space:nowrap;border-radius:999px;grid-auto-flow:column;align-items:center;gap:5px;padding:6px 9px;display:inline-grid}.sync-chip.failed{color:var(--red);background:#e04b3f1a}.sync-chip svg{width:14px;height:14px}.receipt-currency-note{color:var(--muted);background:#2e7d3212;border-radius:12px;margin:0;padding:9px 12px;font-size:12px;font-weight:750;line-height:1.4}.offer-price-nok{color:var(--muted);font-weight:800}.receipt-conversion{background:#2e7d320d;border:1px solid #2e7d3229;border-radius:15px;gap:6px;padding:12px 13px;display:grid}.receipt-conversion div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.receipt-conversion span{color:var(--muted);font-size:12px;font-weight:800}.receipt-conversion strong{color:var(--ink);text-align:right;overflow-wrap:anywhere;font-size:15px;font-weight:850}.receipt-conversion-source{color:var(--muted);margin:2px 0 0;font-size:11px;font-weight:700;line-height:1.4}.receipt-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.receipt-detail-stats div{background:#fff;border:1px solid #20232a12;border-radius:15px;gap:4px;min-height:67px;padding:10px;display:grid}.receipt-detail-stats strong{font-size:18px}.receipt-detail-lines{gap:8px;display:grid}.receipt-detail-lines article{border-bottom:1px solid #20232a14;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;display:grid}.receipt-detail-lines article:last-child{border-bottom:0}.receipt-detail-lines div{gap:3px;min-width:0;display:grid}.receipt-detail-delete{border-top:1px solid #20232a14;gap:9px;margin-top:4px;padding-top:13px;display:grid}.receipt-detail-delete-warning{color:var(--red);margin:0;font-size:12px;font-weight:700;line-height:1.35}.receipt-detail-delete-actions{gap:7px;display:flex}.receipt-detail-delete-actions .compact-action{flex:1;justify-content:center;align-items:center;gap:6px;display:inline-flex}.undo-toast{left:50%;bottom:calc(78px + env(safe-area-inset-bottom,0px));z-index:40;color:#fff;background:#1c1e24f2;border-radius:15px;align-items:center;gap:12px;max-width:calc(100% - 28px);padding:10px 12px 10px 15px;font-size:13px;font-weight:600;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 12px 30px #00000047}.undo-toast span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.undo-toast button{color:#fff;background:#ffffff24;border-radius:11px;flex-shrink:0;align-items:center;gap:5px;padding:6px 11px;font-size:12px;font-weight:800;display:inline-flex}.undo-toast button svg{width:15px;height:15px}.update-ready-toast{top:calc(env(safe-area-inset-top,0px) + 12px);bottom:auto}.receipt-edit-banner{background:#5f8f7314;border:1px solid #5f8f7347;border-radius:19px;justify-content:space-between;align-items:flex-start;gap:12px;padding:13px;display:flex}.receipt-edit-banner h3{margin:2px 0}.receipt-edit-banner p{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.receipt-edit-banner .compact-action{flex-shrink:0;width:auto}.settings-section{background:#ffffffc2;border:1px solid #20232a14;border-radius:19px;gap:11px;padding:13px;display:grid}.settings-section-title{grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;display:grid}.settings-section-title>svg,.settings-row-icon{background:var(--mint);width:36px;height:36px;color:var(--green);border-radius:13px;place-items:center;display:grid}.settings-section-title svg,.settings-row-icon svg{width:18px;height:18px}.settings-section-title div,.settings-row div{gap:3px;min-width:0;display:grid}.settings-row-list{gap:8px;display:grid}.settings-row{background:#20232a0b;border-radius:15px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;padding:10px;display:grid}.settings-row-icon{color:#20232aa8;background:#fff}.household-section{background:linear-gradient(#ffffffd6,#f6faf7b3),#ffffffc2}.household-form,.household-stack{gap:9px;display:grid}.household-field{gap:6px;display:grid}.household-field span{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:900}.household-field input,.household-inline-form input{min-width:0;height:42px;color:var(--ink);background:#ffffffbd;border:1px solid #20232a1a;border-radius:13px;outline:0;padding:0 11px;font-size:13px;font-weight:760}.household-field input:focus,.household-inline-form input:focus{border-color:#2e7d3259;box-shadow:0 0 0 3px #2e7d321a}.household-primary-action{width:100%}.household-name-button,.household-member-row,.household-pending-row{min-width:0;color:var(--ink);text-align:left;background:#20232a0b;border-radius:15px;grid-template-columns:30px minmax(0,1fr) 28px;align-items:center;gap:8px;padding:9px;display:grid}.household-name-button svg{color:#2f7657;width:17px;height:17px}.household-name-button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:900;overflow:hidden}.household-inline-form{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.household-inline-form .compact-action{min-width:76px}.household-member-list,.household-pending-list{gap:7px;display:grid}.household-member-row{grid-template-columns:minmax(0,1fr) auto}.household-pending-row{grid-template-columns:minmax(0,1fr) 36px}.household-member-row div,.household-pending-row div{gap:3px;min-width:0;display:grid}.household-member-row .household-row-actions{gap:4px;display:flex}.household-member-row strong,.household-pending-row strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.household-member-row span,.household-pending-row span,.household-note{color:var(--muted);font-size:11px;font-weight:800}.household-row-action{border-radius:12px;width:34px;height:34px}.household-row-action svg{width:16px;height:16px}.household-leave-button{width:fit-content;margin-top:2px}.household-error{color:var(--red);font-size:12px;font-weight:760;line-height:1.35}.local-data-panel{gap:10px;display:grid}.toggle-pill{height:36px;color:var(--muted);background:#20232a14;border-radius:999px;grid-auto-flow:column;align-items:center;gap:7px;padding-inline:12px;font-size:12px;font-weight:900;display:inline-grid}.toggle-pill.active{background:var(--mint);color:var(--green)}.toggle-pill svg,.compact-action svg{width:16px;height:16px}.local-metrics article{min-height:84px}.local-data-counts{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.local-data-counts span,.local-data-message{min-width:0;color:var(--muted);text-align:center;background:#20232a0f;border-radius:13px;padding:9px;font-size:11px;font-weight:900}.local-data-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.compact-action{border-radius:13px;height:40px;padding-inline:9px;font-size:12px}.compact-action.danger{color:var(--red);background:#fff;box-shadow:inset 0 0 0 1px #e04b3f47}.compact-action.danger.armed{background:var(--red);color:#fff}.local-data-message{text-align:left}.local-data-message.muted{background:0 0;padding-top:0}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);z-index:10;color:#fff;white-space:nowrap;background:#20232a;border-radius:8px;padding:5px 7px;font-size:11px;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%)}.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}@keyframes button-shimmer{0%,58%{transform:translate(-120%)}78%,to{transform:translate(120%)}}@keyframes receipt-spin{to{transform:rotate(360deg)}}@media (width<=520px){html,body,#root{overscroll-behavior:none;width:100%;height:100%;min-height:0;overflow:hidden}html,body{background:var(--paper)}.stage{background:var(--paper);width:100%;height:100dvh;min-height:0;padding:0;overflow:hidden}.phone-shell,.phone{width:100%;height:100%;min-height:0}.phone{box-shadow:none;border:0;border-radius:0}.screen-content{overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}.login-screen{overscroll-behavior-y:none;-webkit-overflow-scrolling:touch;overflow-y:auto}.login-screen-content{height:auto;min-height:100%}.phone:before{display:none}.scroll-progress{top:20px;right:4px}.app-topbar{padding-top:max(18px, env(safe-area-inset-top))}.hero-panel{height:174px}}@media (width<=380px){.budget-strip{grid-template-columns:56px 1fr}.text-button{grid-column:1/-1}.quick-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{flex-direction:column;align-items:start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.item-card,.store-card{opacity:1;transform:none}}.modal-dialog{width:min(100% - 32px,390px);max-width:none;color:var(--ink);background:0 0;border:0;border-radius:24px;margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 24px 64px #1f232b47}.modal-dialog::backdrop{background:#14161c7a}.modal-dialog.sheet{border-radius:28px 28px 0 0;width:min(100%,430px);max-height:min(86dvh,720px);margin:0 auto;inset:auto 0 0}.modal-dialog-surface{background:var(--surface);border-radius:24px;gap:14px;padding:22px;display:grid}.modal-dialog.sheet .modal-dialog-surface{max-height:inherit;overscroll-behavior:contain;padding-bottom:calc(22px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;overflow-y:auto}.modal-dialog-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.modal-dialog-surface h2,.modal-dialog-surface p{margin:0}.modal-dialog-surface h2{font-size:21px;line-height:1.2}.modal-dialog-surface>p{color:var(--muted);font-size:14px;line-height:1.45}.modal-dialog-surface>.modal-dialog-error{color:var(--red);font-weight:800}.modal-dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.modal-dialog-actions .text-button{min-height:46px}.list-panel-overlay{z-index:6;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.list-panel-scrim{cursor:pointer;background:#14161c57;border:none;padding:0;position:absolute;inset:0}.list-panel{z-index:1;padding:22px 20px calc(22px + env(safe-area-inset-bottom));background:var(--surface);border-radius:28px 28px 0 0;flex-direction:column;gap:14px;max-height:min(78%,540px);animation:.22s list-panel-rise;display:flex;position:relative;overflow:hidden;box-shadow:0 -20px 50px #1f232b38}@keyframes list-panel-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.list-panel-head{justify-content:space-between;align-items:flex-start;display:flex}.list-panel-head h3{margin:2px 0 0;font-size:20px}.list-panel-offline{color:var(--red);margin:0;font-size:13px}.list-collection{overscroll-behavior:contain;flex-direction:column;gap:8px;min-height:0;max-height:min(44vh,340px);margin:0;padding:0 2px 0 0;list-style:none;display:flex;overflow-y:auto}.list-collection li{background:#20232a0a;border-radius:16px;align-items:center;gap:8px;padding:6px 8px;display:flex}.list-collection li.active{background:var(--mint)}.list-select{cursor:pointer;color:var(--ink);text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:10px;padding:6px 4px;display:flex}.list-select svg{width:18px;height:18px}.list-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.list-count{color:var(--muted);background:#20232a14;border-radius:999px;padding:2px 9px;font-size:12px}.list-shared-chip{color:#245f46;background:#e8f6eee6;border-radius:999px;flex:none;padding:2px 8px;font-size:11px;font-weight:900}.list-actions{gap:4px;display:flex}.list-actions .icon-button{width:34px;height:34px}.list-actions .icon-button:disabled{opacity:.4;cursor:not-allowed}button:disabled,input:disabled,select:disabled{cursor:not-allowed}.text-button:disabled,.round-action:disabled,.quick-chips button:disabled,.list-create:disabled,.check-button:disabled{opacity:.45}.list-rename-input{border:1px solid var(--line);font:inherit;color:var(--ink);background:#fff;border-radius:12px;flex:1;padding:8px 10px}.list-create{border:1px dashed var(--line);color:var(--green);cursor:pointer;background:0 0;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:12px;font-weight:600;display:flex}.list-create svg{width:18px;height:18px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
