@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#fff7ec;--card:#fff;--text:#15132b;--muted:#5f5a7a;--line:#15132b;--soft-line:#e6dfd2;--fill:#f4ecdf;--accent:#5b3df5;--accent-ink:#fff;--lime:#c6f24e;--pink:#ff6fa8;--sun:#ffc93c;--danger:#d42620;--danger-text:#d42620;--link:#5b3df5;--edge:var(--line);--ink:#15132b;--cart:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2315132b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2.5l2.2 11h10.6L20.5 8H7'/%3E%3Ccircle cx='9.5' cy='19.5' r='1.5'/%3E%3Ccircle cx='17' cy='19.5' r='1.5'/%3E%3C/svg%3E");--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2315132b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3C/svg%3E");--shadow:3px 3px 0 var(--line);--display:"Bricolage Grotesque Variable", ui-sans-serif, system-ui, sans-serif;color:var(--text);background:var(--bg);font-family:Inter Variable,ui-sans-serif,system-ui,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#15132b;--card:#221f40;--text:#fff7ec;--muted:#b8b2d6;--line:#000;--soft-line:#34305a;--fill:#2b2750;--accent:#8a74ff;--accent-ink:#15132b;--danger-text:#ff7a72;--link:#b3a6ff;--edge:#8f88c4;--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff7ec' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3C/svg%3E")}}[data-store=aldi]{--store:#2f6fe4;--store-ink:#fff}[data-store=wholefoods]{--store:#0d8559;--store-ink:#fff}[data-store=gianteagle]{--store:#ff4f3d;--store-ink:#15132b}[data-store=costco]{--store:#ffc93c;--store-ink:#15132b}*{box-sizing:border-box}body{margin:0}button,input{font:inherit;color:inherit}input{background:var(--card);border:2px solid var(--edge);border-radius:12px;outline:none;min-width:0;padding:9px 12px}input:focus{box-shadow:var(--shadow)}button{background:var(--accent);color:var(--accent-ink);border:2px solid var(--line);font-family:var(--display);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow);border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:9px 16px;font-weight:700;display:inline-flex}button:active{box-shadow:1px 1px 0 var(--line);transform:translate(2px,2px)}button:disabled{opacity:.55;cursor:default}:focus-visible{outline:3px solid var(--link);outline-offset:2px}input:focus-visible{outline:none}button.ghost{background:var(--card);color:var(--text);border-color:var(--edge);padding:7px 11px}button.danger{background:var(--danger);color:#fff}a{color:var(--link);font-weight:600}.icon{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.15em;height:1.15em}.small{font-size:.82rem}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--muted)}.boot{text-align:center;min-height:100dvh;font-family:var(--display);color:var(--muted);align-content:center;place-items:center;gap:14px;padding:24px;font-size:1.1rem;font-weight:700;display:grid}.boot:before{content:"";border:2px solid var(--line);width:44px;height:44px;box-shadow:3px 3px 0 var(--line);background:var(--lime) var(--cart) center / 26px no-repeat;border-radius:13px;animation:1.2s ease-in-out infinite boot-bob;transform:rotate(-6deg)}.boot.boot-error{color:var(--danger-text)}.boot.boot-error:before{background-color:var(--pink);animation:none}@keyframes boot-bob{50%{transform:rotate(6deg)translateY(-4px)}}@media (prefers-reduced-motion:reduce){.boot:before{animation:none}}input[type=checkbox]{appearance:none;border:2px solid var(--edge);background:var(--card) center / 16px no-repeat;cursor:pointer;border-radius:8px;flex:none;width:26px;height:26px;margin:0;padding:0}input[type=checkbox]:checked{border-color:var(--line);background-color:var(--lime);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2315132b' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}.app{max-width:1320px;padding:0 16px calc(48px + env(safe-area-inset-bottom));margin:0 auto}.topbar{background:var(--bg);z-index:5;align-items:center;gap:8px;padding:14px 0 10px;display:flex;position:sticky;top:0}.brand{font-family:var(--display);letter-spacing:-.03em;color:var(--text);align-items:center;gap:8px;font-size:1.6rem;font-weight:800;display:flex}.brand .icon{background:var(--lime);width:36px;height:36px;color:var(--ink);border:2px solid var(--line);box-shadow:2px 2px 0 var(--line);border-radius:11px;padding:6px;transform:rotate(-6deg)}.list-picker{flex:1;gap:6px;min-width:0;display:flex}.list-picker .picker{flex:1;min-width:0;max-width:360px}.list-picker .picker-value{font-family:var(--display);font-size:1.05rem;font-weight:700}.icon-button{padding:8px!important}.household-button{background:var(--pink)!important;color:var(--ink)!important;border-color:var(--line)!important}.tabs{display:none}.panes{grid-template-columns:minmax(380px,1fr) 1.6fr;align-items:start;gap:24px;display:grid}.pane{min-width:0}.summary{background:var(--accent);color:var(--accent-ink);border:2px solid var(--line);box-shadow:4px 4px 0 var(--line);border-radius:20px;flex-direction:column;gap:12px;padding:16px 18px 18px;display:flex}.summary .label{font-family:var(--display);font-size:.95rem;font-weight:700}.summary .muted{color:inherit}.grand{font-family:var(--display);letter-spacing:-.04em;font-size:3.3rem;font-weight:800;line-height:1}.store-totals{flex-wrap:wrap;gap:6px;display:flex}.store-totals .chip{background:var(--store);color:var(--store-ink)}.store-totals .chip .dot{display:none}.chip{border:2px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:.86rem;font-weight:600;display:inline-flex}.dot{background:var(--store);border:2px solid var(--line);border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.quick-add{gap:6px;margin:18px 0 4px;display:flex}.quick-add input{flex:1}.quick-add .picker{flex:none;width:118px}.quick-add button{background:var(--lime);color:var(--ink)}.toggle{color:var(--muted);align-items:center;gap:8px;margin:10px 2px 16px;font-size:.86rem;font-weight:600;display:flex}.toggle input[type=checkbox]{background-size:12px;border-radius:6px;width:20px;height:20px}.empty{color:var(--muted);text-align:center;border:2px dashed var(--line);border-radius:18px;padding:28px}.store-group{background:var(--card);border:2px solid var(--line);box-shadow:4px 4px 0 var(--line);border-radius:18px;margin-bottom:18px;overflow:hidden}.store-head{background:var(--store);color:var(--store-ink);border-bottom:2px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;display:flex}.store-head h3{font-family:var(--display);letter-spacing:-.02em;align-items:center;gap:8px;margin:0;font-size:1.3rem;font-weight:800;display:flex}.store-head .dot{display:none}.store-head .small{color:inherit;text-align:right;font-weight:600}.item{border-bottom:2px solid var(--soft-line);grid-template-columns:auto 48px 1fr auto auto;align-items:center;gap:12px;padding:11px 16px;display:grid}.item:last-child{border-bottom:none}.item img,.item .noimg,.product img,.product .noimg{object-fit:contain;background:#fff;border-radius:12px;width:48px;height:48px}.item .noimg,.product .noimg{background:var(--fill)}button.item-main{min-width:0;color:inherit;box-shadow:none;text-align:left;white-space:normal;font:inherit;background:0 0;border:none;border-radius:6px;padding:0;display:block}button.item-main:active{box-shadow:none;transform:none}.item-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.item-main .small{margin-top:2px;display:block}.item.checked{background:repeating-linear-gradient(-45deg, transparent 0 10px, color-mix(in srgb, var(--lime) 18%, transparent) 10px 20px)}.item.checked .item-name{color:var(--muted);text-decoration:line-through;text-decoration-thickness:2px}.item.checked img{opacity:.45}.qty{align-items:center;gap:4px;display:flex}.qty button{width:32px;height:32px;box-shadow:2px 2px 0 var(--line);border-radius:9px;padding:0}.qty .icon{stroke-width:3px;width:14px;height:14px}.qty span{text-align:center;min-width:1.5em;font-family:var(--display);font-size:1.05rem;font-weight:800}.line-total{font-family:var(--display);text-align:right;min-width:64px;font-size:1.1rem;font-weight:800}.item-edit{flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:10px;padding:8px 0 4px;display:flex}.item-edit label,.item-edit .field{color:var(--muted);flex-direction:column;gap:4px;font-size:.8rem;font-weight:700;display:flex}.item-edit label input{width:100px}.item-edit .grow{flex:1}.item-edit .grow input{width:100%}.item-edit .field .picker{min-width:140px}.item-error{flex-basis:100%}.item-edit a{align-items:center;gap:4px;padding:10px 0;display:inline-flex}.search-bar{gap:6px;display:flex}.search-bar input{box-shadow:var(--shadow);flex:1;padding:12px 14px;font-size:1.05rem}.search-bar button{background:var(--lime);color:var(--ink)}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0;display:flex}.filters .chip{cursor:pointer;background:var(--card);color:var(--muted);padding:6px 12px;position:relative}.filters .chip input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.filters .chip:has(input:focus-visible){outline:3px solid var(--link);outline-offset:2px}.filters .chip:before{content:"";box-sizing:border-box;border:2px solid;border-radius:50%;width:12px;height:12px;margin-left:-2px}.filters .chip:has(input:checked):before{background:currentColor;border:none;width:12px;height:12px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") 50%/contain no-repeat}.filters .chip:has(input:checked){background:var(--store);color:var(--store-ink);box-shadow:2px 2px 0 var(--line)}.hint{background:var(--sun);color:#15132b;border:2px solid var(--line);box-shadow:4px 4px 0 var(--line);border-radius:16px;margin-bottom:16px;padding:12px 14px;line-height:1.45}.hint:before{content:"Best deal";font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;background:var(--ink);color:var(--sun);border-radius:6px;margin-right:8px;padding:2px 8px;font-size:.75rem;font-weight:800;display:inline-block;transform:rotate(-2deg)}.columns{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;display:grid}.column{background:var(--card);border:2px solid var(--line);box-shadow:4px 4px 0 var(--line);border-radius:18px;align-self:start;overflow:hidden}.column h3{background:var(--store);color:var(--store-ink);font-family:var(--display);letter-spacing:-.02em;align-items:center;gap:8px;margin:0;padding:10px 16px 0;font-size:1.3rem;font-weight:800;display:flex}.column h3 .dot{display:none}.column-store{background:var(--store);opacity:1;border-bottom:2px solid var(--line);align-items:center;gap:4px;margin:0;padding:0 16px 10px;font-weight:600;display:flex;color:var(--store-ink)!important}.column-store-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.column-store-address{font-weight:400}.column>.error,.column>.muted:not(.column-store){margin:12px 16px}.product{border-bottom:2px solid var(--soft-line);grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:11px 16px;display:grid}.product:last-child{border-bottom:none}.product.unavailable{opacity:.55}.product-main{min-width:0}.product-name{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.94rem;font-weight:600;line-height:1.25;text-decoration:none;display:-webkit-box;overflow:hidden}.product-price{text-align:right;flex-direction:column;align-items:end;gap:2px;display:flex}.product-price .price{font-family:var(--display);font-size:1.2rem;font-weight:800}.product-price .was{color:var(--danger-text);font-weight:600;text-decoration:line-through}.product-price button{box-shadow:2px 2px 0 var(--line);gap:3px;margin-top:4px;padding:5px 11px 5px 8px;font-size:.82rem}.product-price button .icon{stroke-width:3.2px;width:13px;height:13px}.product-price button.ghost{background:var(--lime);color:var(--ink);opacity:1}.error{color:var(--danger-text);font-weight:600}body:has(dialog.sheet[open]){overflow:hidden}dialog.sheet{inset:var(--vv-top,0) 0 auto;width:100%;max-width:none;height:var(--vv-height,100dvh);max-height:none;color:var(--text);background:0 0;border:none;place-items:center;margin:0;padding:16px;display:grid;position:fixed;overflow:hidden}dialog.sheet:not([open]){display:none}dialog.sheet::backdrop{background:#15132b8c}.sheet-panel{background:var(--bg);border:2px solid var(--line);overscroll-behavior:contain;width:min(520px,100%);max-height:100%;box-shadow:6px 6px 0 var(--line);border-radius:22px;outline:none;flex-direction:column;gap:12px;padding:20px;animation:.18s ease-out sheet-in;display:flex;overflow:auto}.sheet-panel.confirm,.sheet-panel.picker-sheet{width:min(440px,100%)}@keyframes sheet-in{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){.sheet-panel{animation:none}}.sheet-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet h2{font-family:var(--display);letter-spacing:-.03em;overflow-wrap:anywhere;margin:2px 0;font-size:1.8rem;font-weight:800;line-height:1.1}.sheet h3{font-family:var(--display);margin:10px 0 0;font-size:1.15rem;font-weight:800}.sheet p{margin:0;line-height:1.5}.sheet-form{flex-direction:column;gap:10px;display:flex}.sheet-form>label{font-size:.9rem;font-weight:700}.sheet-form>input{padding:12px 14px;font-size:17px}.sheet input[aria-invalid=true]{border-color:var(--danger-text)}.sheet-message{background:var(--card);border:2px solid var(--line);border-radius:14px;padding:14px}.sheet-toggle{color:var(--text);margin:4px 0;font-size:.92rem}.sheet-actions{justify-content:end;gap:8px;margin-top:8px;display:flex}.sheet-actions button{padding:11px 18px}.sheet .adj{justify-content:space-between;align-items:center;gap:10px;font-weight:600;display:flex}.sheet .adj-input{align-items:center;gap:4px;font-weight:700;display:inline-flex}.sheet .adj input{text-align:right;width:80px}.store-pick{flex-direction:column;gap:6px;font-size:.9rem;display:flex}.store-pick-name{align-items:center;gap:8px;font-weight:700;display:flex}.store-pick .picker{width:100%}button.picker{background:var(--card);min-width:0;color:var(--text);border:2px solid var(--edge);box-shadow:none;text-align:left;border-radius:12px;align-items:center;gap:8px;padding:9px 12px;font-family:inherit;font-weight:600;display:flex}button.picker:active{box-shadow:var(--shadow);transform:none}.picker-value{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.picker-detail{color:var(--muted);text-overflow:ellipsis;flex:0 auto;min-width:0;font-size:.82rem;font-weight:600;overflow:hidden}.picker-chevron{background:var(--chevron) center / contain no-repeat;flex:none;width:15px;height:15px}button.picker.pill{border-radius:999px;padding:6px 12px;font-size:.86rem}.picker-options{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}button.picker-option{background:var(--card);width:100%;color:var(--text);border-color:var(--edge);box-shadow:none;text-align:left;white-space:normal;justify-content:start;gap:10px;padding:12px 14px;font-family:inherit}button.picker-option.selected{background:var(--lime);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow)}button.picker-option.selected .muted{color:var(--ink)}.picker-option-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.picker-option-label{font-family:var(--display);font-size:1.02rem;font-weight:700}.picker-option .icon{stroke-width:3.2px}.toast{left:50%;top:max(14px, env(safe-area-inset-top));z-index:30;background:var(--sun);color:#15132b;border:2px solid var(--line);width:min(480px,100% - 32px);box-shadow:4px 4px 0 var(--line);border-radius:16px;align-items:center;gap:10px;padding:10px 10px 10px 14px;font-weight:600;display:flex;position:fixed;transform:translate(-50%)}.toast.error{background:var(--danger);color:#fff}.toast span{flex:1}.toast button{color:#15132b;box-shadow:none;background:#fff7ec;border-color:#15132b}button.link{box-shadow:none;color:var(--link);text-underline-offset:3px;background:0 0;border:none;padding:4px 0;font-family:inherit;text-decoration:underline;text-decoration-thickness:2px}button.small{padding:4px 9px;font-size:.82rem}.auth{min-height:100dvh;padding:18px;padding-top:max(18px, env(safe-area-inset-top));grid-template-columns:minmax(0,1fr);place-items:center;display:grid}.auth-card{background:var(--card);border:2px solid var(--line);width:min(420px,100%);box-shadow:6px 6px 0 var(--line);border-radius:24px;flex-direction:column;gap:14px;padding:24px 22px;display:flex;position:relative}.auth-card .brand{font-size:1.4rem}.auth-card h1{font-family:var(--display);letter-spacing:-.04em;margin:0;font-size:2.4rem;font-weight:800;line-height:1}.auth-card p{margin:0;line-height:1.5}.auth-card form{flex-direction:column;gap:14px;display:flex}.auth-card label{flex-direction:column;gap:6px;font-size:.9rem;font-weight:700;display:flex}.auth-card input{padding:13px 14px;font-size:17px}.auth-card button{padding:13px 16px;font-size:1.05rem}.auth-card .code-input{font-family:var(--display);letter-spacing:.4em;text-align:center;font-size:2rem;font-weight:800}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.auth-links button.link{padding:4px 0;font-size:.9rem}.household-list{flex-direction:column;gap:8px;display:flex}.household-list button{justify-content:start}.members{background:var(--card);border:2px solid var(--line);border-radius:14px;flex-direction:column;margin:0;padding:0 14px;list-style:none;display:flex}.members li{border-bottom:2px solid var(--soft-line);align-items:center;gap:8px;padding:11px 0;display:flex}.members li:last-child{border-bottom:none}.members li .small.muted{background:var(--fill);border-radius:999px;padding:2px 8px;font-weight:600}.member-email{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.invite-link,.invite-email{gap:6px;display:flex}.invite-link input,.invite-email input{flex:1}.household-actions{flex-wrap:wrap;gap:8px;display:flex}.account{border-top:2px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:6px;padding-top:14px;display:flex}@media (width<=900px){.topbar{padding:max(12px, env(safe-area-inset-top)) 0 10px;flex-wrap:wrap;row-gap:10px}.brand{flex:1}.household-button{text-overflow:ellipsis;max-width:45vw;overflow:hidden}.list-picker{flex-basis:100%;order:2}.list-picker .picker{max-width:none}.tabs{left:16px;right:16px;bottom:max(14px, env(safe-area-inset-bottom));z-index:10;background:var(--text);border:2px solid var(--line);box-shadow:4px 4px 0 var(--accent);border-radius:18px;gap:6px;padding:6px;display:flex;position:fixed}.tabs button{color:var(--bg);box-shadow:none;background:0 0;border:none;border-radius:12px;flex:1;padding:11px}.tabs button.active{background:var(--lime);color:#15132b}.app{padding-bottom:calc(104px + env(safe-area-inset-bottom))}.panes{display:block}.panes.show-list .search-pane,.panes.show-search .list-pane,.hide-sm{display:none}dialog.sheet{padding:max(24px, env(safe-area-inset-top)) 0 0;place-items:end stretch}.sheet-panel{box-shadow:none;padding-bottom:max(20px, env(safe-area-inset-bottom));border-width:2px 0 0;border-radius:22px 22px 0 0;width:100%!important}.sheet input{font-size:16px}.item{grid-template-columns:auto 48px 1fr auto;grid-template-areas:"check img main total""check img main qty";row-gap:6px}.item>.check{grid-area:check}.item>img,.item>.noimg{grid-area:img}.item .item-main{grid-area:main}.item .qty{grid-area:qty;justify-self:end}.item .line-total{grid-area:total;align-self:end}.item-edit{grid-area:auto/1/auto/-1}}
