:root{--ink:#1d261f;--muted:#788078;--line:#e4e8e2;--paper:#fbfcf9;--green:#356b4b;--green-soft:#e8f0e9}*{box-sizing:border-box}html{background:#eef1ec}body{color:var(--ink);font-family:var(--font-geist-sans), Arial, sans-serif;-webkit-font-smoothing:antialiased;background:#eef1ec;margin:0}button,input{font:inherit}button{color:inherit}.app-shell{--list-gutter-left:20px;--list-gutter-right:20px;width:min(100%,560px);min-height:100svh;padding:max(18px, env(safe-area-inset-top)) var(--list-gutter-right) calc(92px + env(safe-area-inset-bottom)) var(--list-gutter-left);background:var(--paper);margin:0 auto;position:relative;box-shadow:0 0 60px #25312814}.topbar{justify-content:space-between;align-items:center;min-height:52px;margin-bottom:23px;display:flex}.list-switcher{letter-spacing:-.035em;background:0 0;border:0;align-items:center;gap:9px;padding:5px 0;font-size:22px;font-weight:680;display:flex}.chevron{color:var(--muted);font-size:19px;transform:translateY(-2px)}.avatar{color:#fff;background:var(--green);letter-spacing:.03em;border:0;border-radius:50%;width:38px;height:38px;font-size:12px;font-weight:750}.quick-add-shell{margin-bottom:31px;position:relative}.quick-add{background:#fff;border:1px solid #dce2db;border-radius:17px;grid-template-columns:auto 1fr auto;align-items:center;min-height:58px;padding:0 8px 0 17px;display:grid;box-shadow:0 5px 20px #2137270f}.add-mark{color:var(--green);margin-right:13px;font-size:27px;font-weight:350}.quick-add input{min-width:0;height:54px;color:var(--ink);background:0 0;border:0;outline:0;font-size:17px}.quick-add input::placeholder{color:#989f98}.quick-add button{color:#fff;background:var(--green);border:0;border-radius:12px;min-width:54px;min-height:42px;font-size:14px;font-weight:700}.sync-status{color:#5f675f;background:#eef0ec;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;min-height:38px;margin:-20px 0 22px;padding:7px 9px 7px 12px;font-size:12px;display:flex}.sync-status--error{color:#8c332d;background:#f7ece9}.sync-status div{gap:3px;display:flex}.sync-status button{min-height:30px;color:var(--green);background:#fff;border:0;border-radius:8px;padding:0 8px;font-size:11px;font-weight:700}.sync-status--error button:last-child{color:#9b342c}.category{border-radius:10px;margin-bottom:30px;transition:background .12s,box-shadow .12s;position:relative}.category-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding:0 4px 10px;display:flex}.category--drop-target{background:#f0f6f0;box-shadow:inset 0 0 0 2px #8db09a}.category--drop-target .category-heading{border-bottom-color:var(--green)}.category-heading h2{letter-spacing:.075em;text-transform:uppercase;margin:0;font-size:13px;font-weight:750}.category-heading span{color:var(--muted);font-size:12px}.category-title{align-items:center;gap:2px;display:flex}.category-fold{background:0 0;border:0;place-items:center;width:28px;min-height:28px;margin:-6px 0 -4px -7px;padding:0;display:grid}.category-fold>span{font-size:15px;transition:transform .12s;transform:rotate(0)}.category-fold[aria-expanded=false]>span{transform:rotate(-90deg)}.category ul{margin:0;padding:0;list-style:none}.item{border-bottom:1px solid var(--line);touch-action:pan-y;-webkit-user-select:none;user-select:none;grid-template-columns:46px 1fr 42px;align-items:center;min-height:46px;transition:transform .13s,box-shadow .13s,opacity .13s,background .13s;display:grid;position:relative}.check{background:0 0;border:0;place-items:center;width:44px;height:44px;padding:0;display:grid}.check span{color:#fff;border:1.7px solid #aeb6ad;border-radius:50%;place-items:center;width:24px;height:24px;font-size:14px;font-weight:800;display:grid}.item-name{text-align:left;background:0 0;border:0;align-self:stretch;padding:0;font-size:16px}.item-edit{border:0;border-bottom:2px solid var(--green);background:0 0;outline:0;width:100%;min-width:0;height:42px;font-size:16px}.item-actions{color:#8e978e;touch-action:manipulation;background:0 0;border:0;justify-self:end;place-items:center;width:42px;height:44px;padding:0;display:grid}.item-actions span{font-size:19px;line-height:1;transform:scaleX(1.08)}.item--dragging{opacity:.55;touch-action:none;background:#eef4ed;border:1px dashed #9eb3a4;border-radius:10px}.item--dragging>*{visibility:hidden}.drag-overlay{z-index:100;pointer-events:none;background:#fff;border:1px solid #d7e0d6;border-radius:11px;grid-template-columns:46px 1fr 42px;align-items:center;min-height:46px;animation:.16s ease-out item-pickup;display:grid;position:fixed;transform:translateY(-3px)scale(1.018);box-shadow:-4px 14px 34px #1935234d,0 3px 10px #19352326}@keyframes item-pickup{0%{transform:none;box-shadow:0 1px 3px #1935231a}to{transform:translateY(-3px)scale(1.018);box-shadow:-4px 14px 34px #1935234d,0 3px 10px #19352326}}.drag-overlay-name{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.drag-overlay-actions{color:#8e978e;justify-self:center;font-size:19px}.drag-scroll-lock,.drag-scroll-lock body{overscroll-behavior:none}.item--drop-before:before,.item--drop-after:after,.category--drop-target:after{z-index:3;right:calc(0px - var(--list-gutter-right));left:calc(0px - var(--list-gutter-left));background:var(--green);height:4px;box-shadow:0 0 0 2px var(--paper);pointer-events:none;content:"";border-radius:2px;position:absolute}.item--drop-before:before{top:-2px}.item--drop-after:after,.category--drop-target:after{bottom:-2px}.item--checked .check span{border-color:var(--green);background:var(--green)}.item--checked .item-name{color:#8a928a;text-decoration:line-through;text-decoration-thickness:1px}.item--completing{pointer-events:none}.item--completing .check span{border-color:var(--green);background:var(--green)}.item--completing .item-name{color:#7f887f}.item--completing:after{z-index:2;content:"";pointer-events:none;transform-origin:0;background:#6e786f;border-radius:2px;height:1.5px;animation:.5s ease-out forwards item-strike;position:absolute;top:50%;left:46px;right:42px;transform:scaleX(0)}@keyframes item-strike{to{transform:scaleX(1)}}.item--skipped .check span{color:#899187;border-color:#aeb6ad}.item--skipped .item-name{color:#929992;-webkit-text-decoration:line-through dashed;text-decoration:line-through dashed}.category--tint-rose .item--active{background:#fdf4f3}.category--tint-amber .item--active{background:#fdf8eb}.category--tint-sage .item--active{background:#f0f7ef}.category--tint-aqua .item--active{background:#edf8f7}.category--tint-blue .item--active{background:#f0f5fb}.category--tint-lavender .item--active{background:#f6f2fb}.bottom-actions{right:max(20px,50vw - 260px);bottom:max(14px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border:1px solid #dce2db;border-radius:19px;grid-template-columns:1fr 1fr 1fr;gap:5px;padding:8px;display:grid;position:fixed;left:max(20px,50vw - 260px);box-shadow:0 8px 30px #1e2f221f}.bottom-actions button{background:0 0;border:0;border-radius:13px;min-height:46px;font-size:13px;font-weight:670}.bottom-actions button:first-child{color:var(--green);background:var(--green-soft)}.bottom-actions button:disabled{opacity:.5}.bottom-actions span{margin-right:8px;font-size:16px}.bottom-actions button[aria-current=page]{color:var(--green);background:var(--green-soft)}.bottom-actions--four{grid-template-columns:repeat(4,1fr)}.bottom-actions--four button{align-content:center;place-items:center;gap:1px;min-width:0;padding:0 2px;font-size:11px;display:grid}.bottom-actions--four span{margin:0;font-size:15px;line-height:1}.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}:is(button:focus-visible,input:focus-visible){outline-offset:2px;outline:3px solid #8fba9e}.recipes-view{min-height:420px}.section-toolbar{grid-template-columns:minmax(70px,auto) 1fr minmax(70px,auto);align-items:center;min-height:42px;margin:-8px 0 24px;display:grid}.section-toolbar h1{letter-spacing:-.025em;text-align:center;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:19px;font-weight:700;overflow:hidden}.section-toolbar button{min-height:40px;color:var(--green);background:0 0;border:0;padding:0;font-size:13px;font-weight:680}.section-toolbar button:first-child{text-align:left}.section-toolbar button:last-child{text-align:right}.recipe-create,.ingredient-composer form{grid-template-columns:1fr auto;gap:7px;margin-bottom:14px;display:grid}.recipe-create input,.ingredient-composer input{background:#fff;border:1px solid #d8ded7;border-radius:13px;outline:0;min-width:0;min-height:50px;padding:0 13px;font-size:16px}.recipe-create button,.ingredient-composer form button{color:#fff;background:var(--green);border:0;border-radius:12px;min-width:64px;font-size:13px;font-weight:700}.recipe-list{display:grid}.recipe-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;justify-content:space-between;align-items:center;min-height:56px;padding:0 4px;display:flex}.recipe-list>button span{font-size:16px;font-weight:610}.recipe-list>button small{color:var(--muted);font-size:12px}.ingredient-composer{margin-bottom:22px;position:relative}.ingredient-composer form{background:#fff;border:1px solid #d8ded7;border-radius:15px;grid-template-columns:auto 1fr auto;min-height:54px;margin:0;padding:0 7px 0 15px;box-shadow:0 4px 16px #2137270d}.ingredient-composer form>span{color:var(--green);align-self:center;font-size:23px}.ingredient-composer input{background:0 0;border:0;min-height:52px;padding:0 7px}.ingredient-composer form button{align-self:center;min-width:54px;min-height:40px}.ingredient-composer form button:disabled{opacity:.45}.ingredient-suggestions{z-index:3;background:#fff;border:1px solid #dce2db;border-radius:13px;max-height:245px;padding:5px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #1e2f2224}.ingredient-suggestions button{text-align:left;background:0 0;border:0;border-radius:9px;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:0 9px;display:flex}.ingredient-suggestions button:active{background:var(--green-soft)}.ingredient-suggestions small{color:var(--muted);font-size:11px}.quick-add-suggestions{top:calc(100% + 5px)}.recipe-ingredients{margin-bottom:20px;display:grid}.recipe-ingredients>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 42px;align-items:center;min-height:49px;display:grid}.recipe-owned-toggle{text-align:left;background:0 0;border:0;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:11px;width:100%;min-width:0;min-height:48px;padding:0;display:grid}.recipe-owned-toggle>span{color:#fff;border:1.7px solid #aeb6ad;border-radius:50%;place-items:center;width:23px;height:23px;font-size:13px;font-weight:800;display:grid}.recipe-owned-toggle strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:500;overflow:hidden}.recipe-owned-toggle[aria-checked=true]>span{border-color:var(--green);background:var(--green)}.recipe-ingredient--owned{background:#f5f7f3}.recipe-ingredient--owned .recipe-owned-toggle strong{color:#778077;text-decoration:line-through}.recipe-ingredients>div>.recipe-remove{color:#929992;background:0 0;border:0;width:42px;min-height:42px;font-size:20px}.recipe-add-required{color:#fff;background:var(--green);border:0;border-radius:14px;width:100%;min-height:51px;font-size:14px;font-weight:720}.recipe-add-required:disabled{opacity:.42}.recipe-delete{color:#a12e27;background:0 0;border:0;width:100%;min-height:44px;margin-top:10px;font-size:13px;font-weight:650}.auth-shell{background:var(--paper);place-items:center;min-height:100svh;padding:24px;display:grid}.brand{color:var(--green);letter-spacing:-.05em;font-size:28px;font-weight:750}.auth-panel{width:min(100%,380px)}.auth-panel h1{color:var(--green);letter-spacing:-.05em;margin:0 0 34px;font-size:32px}.auth-tabs{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;margin-bottom:28px;display:grid}.auth-tabs button{min-height:46px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;font-weight:650}.auth-tabs button.active{border-bottom-color:var(--green);color:var(--ink)}.auth-panel form{gap:18px;display:grid}.auth-panel label{color:var(--muted);gap:7px;font-size:13px;font-weight:650;display:grid}.auth-panel input,.popover input{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #d6ddd5;border-radius:12px;padding:0 13px;font-size:16px}.primary{color:#fff;background:var(--green);border:0;border-radius:13px;min-height:50px;margin-top:4px;font-weight:720}.primary:disabled{opacity:.6}.status-error{color:#9b342c;margin:-14px 0 18px;font-size:13px;line-height:1.4}.auth-panel .status-error{margin:-2px 0}.empty{color:var(--muted);text-align:center;padding:56px 0}.popover-dismiss{z-index:4;cursor:default;background:0 0;border:0;width:100%;position:fixed;inset:0}.popover{z-index:5;background:#fff;border:1px solid #dce2db;border-radius:17px;max-height:calc(100svh - 98px);padding:12px;position:absolute;top:74px;left:20px;right:20px;overflow-y:auto;box-shadow:0 15px 45px #1e2f2226}.popover-title{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:8px 10px 12px;font-size:12px;font-weight:750}.popover>button{text-align:left;background:0 0;border:0;border-radius:11px;justify-content:space-between;align-items:center;width:100%;min-height:46px;padding:0 11px;display:flex}.popover>button.selected{color:var(--green);background:var(--green-soft);font-weight:700}.popover>button span{color:var(--muted);font-size:12px;font-weight:500}.popover>form{grid-template-columns:1fr auto;gap:8px;margin-top:8px;display:grid}.popover>form button{color:#fff;background:var(--green);border:0;border-radius:11px;min-width:70px;font-weight:700}.new-action{color:var(--green);margin-top:6px}.members{gap:6px;padding:12px 2px 5px;display:grid}.members>div{background:#f1f3ef;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;min-height:38px;padding:4px 5px 4px 9px;display:flex}.members span{gap:6px;font-size:12px;display:flex}.members small{color:var(--muted)}.members button{background:0 0;border:0;min-height:30px;padding:0 7px;font-size:12px;font-weight:650}.panel-note{color:var(--muted);margin:6px 3px;font-size:12px}.regulars-list{gap:3px;display:grid}.regulars-panel{top:max(18px, env(safe-area-inset-top));max-height:calc(100svh - max(18px, env(safe-area-inset-top)) - max(18px, env(safe-area-inset-bottom)));position:fixed;left:max(16px,50vw - 260px);right:max(16px,50vw - 260px)}.regulars-list button{text-align:left;background:#f5f6f3;border:0;border-radius:11px;justify-content:space-between;align-items:center;width:100%;min-height:50px;padding:0 11px;display:flex}.regulars-list button>span{gap:2px;display:grid}.regulars-list strong{font-size:14px;font-weight:650}.regulars-list small{color:var(--muted);font-size:11px}.regulars-list em{color:var(--green);font-size:12px;font-style:normal;font-weight:750}.completed-list{gap:3px;display:grid}.completed-row{background:#f5f6f3;border-radius:11px;grid-template-columns:40px 1fr auto;align-items:center;gap:7px;min-height:50px;padding:0 11px 0 4px;display:grid}.completed-restore{border:1.7px solid var(--green);width:30px;height:30px;color:var(--green);background:#fff;border-radius:50%;place-items:center;font-size:20px;line-height:1;display:grid}.completed-date{color:var(--muted);white-space:nowrap;font-size:11px}.settings-label{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin:10px 10px 5px;font-size:11px;font-weight:750}.setting-toggle{background:#f5f6f3;border-radius:10px;justify-content:space-between;align-items:center;min-height:46px;padding:0 10px;font-size:14px;font-weight:620;display:flex}.setting-toggle+.setting-toggle{margin-top:6px}.setting-toggle input{width:20px;min-height:20px;accent-color:var(--green)}.category-settings{gap:2px;display:grid}.category-settings>div{background:#f5f6f3;border-radius:10px;grid-template-columns:minmax(72px,1fr) auto auto auto auto;align-items:center;min-height:42px;padding-left:11px;display:grid}.category-settings span{font-size:14px}.category-settings button{min-height:40px;color:var(--green);background:0 0;border:0;padding:0 9px;font-size:12px;font-weight:650}.category-order{display:flex}.category-order button{min-width:34px;padding:0;font-size:16px}.category-order button:disabled{opacity:.25}.category-settings .category-color{place-items:center;min-width:36px;padding:0;display:grid}.category-color span{background:#fff;border:1px solid #2332271f;border-radius:50%;width:18px;height:18px;box-shadow:inset 0 0 0 2px #ffffff8c}.category-color--none span{background:linear-gradient(135deg,#fff 44%,#bdc4bc 46% 54%,#fff 56%)}.category-color--rose span{background:#efd0cc}.category-color--amber span{background:#eedca5}.category-color--sage span{background:#c9ddc5}.category-color--aqua span{background:#bee1de}.category-color--blue span{background:#c8d9ed}.category-color--lavender span{background:#d9ccec}.category-palette{grid-column:1/-1;grid-template-columns:repeat(7,1fr);width:100%;padding:2px 6px 9px 0;display:grid}.category-settings .category-palette button{border-radius:8px;place-items:center;gap:2px;min-width:0;min-height:44px;padding:3px 0;display:grid}.category-settings .category-palette button.selected{background:#1e714117;box-shadow:inset 0 0 0 1px #1e71412e}.category-settings .category-palette span{width:20px;height:20px}.category-settings .category-palette small{width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:600;overflow:hidden}.danger-text{color:#a12e27!important}.undo-toast{z-index:9;right:max(20px,50vw - 260px);bottom:calc(max(14px, env(safe-area-inset-bottom)) + 72px);color:#fff;background:#263129;border-radius:14px;justify-content:space-between;align-items:center;min-height:48px;padding:0 9px 0 16px;font-size:13px;display:flex;position:fixed;left:max(20px,50vw - 260px);box-shadow:0 10px 28px #141e1738}.undo-toast button{color:#d7eadc;background:0 0;border:0;border-radius:10px;min-width:64px;min-height:38px;font-weight:750}.run-toast{z-index:9;right:max(20px,50vw - 260px);bottom:calc(max(14px, env(safe-area-inset-bottom)) + 72px);color:#fff;background:#263129;border-radius:14px;min-height:48px;padding:15px 16px;font-size:13px;position:fixed;left:max(20px,50vw - 260px);box-shadow:0 10px 28px #141e1738}.scrim{z-index:10;background:#12181447;place-items:end center;padding:18px;display:grid;position:fixed;inset:0}.action-sheet{background:#fff;border-radius:20px;gap:5px;width:min(100%,520px);padding:10px;display:grid;box-shadow:0 14px 50px #0000002e}.action-sheet strong{padding:12px 13px 8px;font-size:14px}.action-sheet button{text-align:left;background:#f2f4f1;border:0;border-radius:12px;min-height:48px;padding:0 13px}.action-sheet button:disabled{opacity:.5}.action-sheet .danger{color:#a12e27}@media (max-width:420px){.app-shell{--list-gutter-left:16px;--list-gutter-right:16px}.bottom-actions,.undo-toast{left:16px;right:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}.item--completing:after{animation:none;transform:scaleX(1)}}.pwa-update{background:#f0f4ee;border:1px solid #dce2db;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:6px 10px 6px 14px;font-size:13px;display:flex}.pwa-update button{background:var(--green);color:#fff;border:0;border-radius:8px;flex:none;min-width:64px;min-height:44px;padding:0 10px;font-weight:650}.pwa-update button:disabled{opacity:.5}.bottom-actions--back{grid-template-columns:1fr}.more-panel-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.more-panel-header>button{min-height:44px;color:var(--green);background:var(--green-soft);border:0;border-radius:11px;padding:0 20px;font-weight:650}.settings-label--separate{border-top:1px solid #dce2db;margin-top:20px;padding-top:18px}button,input,select{font:inherit}.topbar{gap:8px}.list-switcher{min-width:0}.list-switcher>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.list-settings-trigger{width:44px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:12px;flex:none;margin-right:auto}.avatar{flex:none}.item,.drag-overlay,.completed-row{min-height:var(--row-height,46px)}.item{grid-template-columns:46px minmax(0,1fr) 42px}.item-name{overflow-wrap:anywhere;padding-block:10px}.category--tint-rose{--category-ink:#924840}.category--tint-amber{--category-ink:#85611b}.category--tint-sage{--category-ink:#416b39}.category--tint-aqua{--category-ink:#286e67}.category--tint-blue{--category-ink:#3e638f}.category--tint-lavender{--category-ink:#745294}.category-heading{background:var(--category-ink,#526354);color:#fff;border:0;border-radius:9px;align-items:center;min-height:42px;padding:7px 12px}.category-heading h2,.category-heading span{color:#fff}.category-heading>span{opacity:.85}.category-fold{min-height:30px;margin:0 3px 0 -5px}.list-state-switch{background:#eef1ec;border-radius:12px;gap:4px;width:fit-content;margin:-10px 0 25px;padding:4px;display:flex}.list-state-switch button{min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:9px;padding:0 18px;font-size:14px}.list-state-switch button[aria-pressed=true]{color:var(--green);background:#fff;font-weight:650;box-shadow:0 2px 6px #26312912}.completed-item-copy{justify-items:start;gap:4px;min-width:0;display:grid}.completed-item-label{text-overflow:ellipsis;white-space:nowrap;color:#697169;transform-origin:50%;max-width:100%;font-size:14px;text-decoration:line-through;display:inline-block;overflow:hidden}.completed-category{text-align:right;overflow-wrap:anywhere;max-width:100%;color:var(--green);border-radius:7px;justify-self:end;padding:5px 0 5px 7px;font-size:12px;font-weight:600}.completed-row{grid-template-columns:40px minmax(0,1fr) minmax(60px,32%);padding-block:7px}.completed-restore{width:40px;height:40px}.completed-restore:disabled{opacity:.35}.completed-row--returning .completed-item-label{z-index:2;animation:.36s cubic-bezier(.4,0,.2,1) forwards completed-return;position:relative}.completed-row--returning .completed-category{animation:.36s ease-out .26s both category-receive}.completed-row--returning .completed-date,.completed-row--returning .completed-restore{opacity:0;transition:opacity .18s}.completed-row--returning{animation:.14s ease-in .62s forwards completed-depart}@keyframes completed-return{to{transform:translate(var(--restore-x), var(--restore-y)) scale(.12);opacity:0}}@keyframes category-receive{0%,to{background:0 0;transform:scale(1)}45%{background:var(--green-soft);transform:scale(1.08)}}@keyframes completed-depart{to{opacity:0}}.bottom-actions--compact{background:var(--paper);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin-top:24px;position:static}.app-shell.app-shell--shopping{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.popover{top:max(74px, calc(env(safe-area-inset-top) + 58px));max-height:calc(100dvh - max(74px, calc(env(safe-area-inset-top) + 58px)) - max(16px, env(safe-area-inset-bottom)));overscroll-behavior:contain;position:fixed;left:max(16px,50vw - 260px);right:max(16px,50vw - 260px)}.settings-fields{border:0;min-width:0;margin:0;padding:0}.field-label{color:var(--muted);gap:7px;margin:8px 0 14px;font-size:13px;display:grid}.field-label input,.field-label select{width:100%;min-width:0;min-height:44px;color:var(--ink);background:#fff;border:1px solid #d6ddd5;border-radius:10px;padding:8px 12px;font-size:16px}.field-label input[type=range]{accent-color:var(--green);padding:0}.settings-add{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:8px 0;display:grid}.settings-add input{min-width:0}.settings-add button{color:#fff;background:var(--green);border:0;border-radius:10px;min-width:64px}.category-settings>.category-setting{background:0 0;min-width:0;padding:0;display:block}.category-setting-row{background:#f5f6f3;grid-template-columns:auto minmax(0,1fr) 38px auto;align-items:center;min-height:50px;padding-right:6px;display:grid}.category-settings .category-name-edit{text-align:left;overflow-wrap:anywhere;min-width:0;color:var(--ink);font-size:14px}.category-setting-row>input{min-width:0;min-height:44px;padding:4px}.category-order button{min-height:44px}.once-off-toggle{color:var(--muted);justify-items:center;gap:2px;padding:5px;font-size:10px;display:grid}.popover .once-off-toggle input{width:20px;height:20px;min-height:20px;accent-color:var(--green);margin:0}.settings-fields>.setting-toggle{margin-top:12px}.settings-footer{grid-template-columns:1fr 1fr;gap:10px;padding:16px 0 3px;display:grid}.settings-footer button{background:#eef1ec;border:0;border-radius:11px;min-height:46px;margin:0;font-weight:650}.settings-footer .primary{color:#fff;background:var(--green)}.settings-footer button:disabled{opacity:.5}.settings-delete{text-align:left;background:0 0;border:0;width:100%;min-height:44px;padding:10px}.settings-error{color:#a12e27;font-size:13px}.action-sheet{max-height:calc(100dvh - 36px - env(safe-area-inset-bottom));overflow-y:auto}.action-sheet .field-label{margin:0;padding:5px 12px}.usual-category{color:var(--muted);padding:0 12px 6px}.scrim{padding-bottom:max(18px, env(safe-area-inset-bottom))}.swipe-reveal{touch-action:pan-y;border-radius:10px;position:relative;overflow:hidden}.swipe-reveal-content{transition:transform .1s ease-out;position:relative}.category-settings .swipe-delete{color:#fff;background:#a63831;width:64px;font-size:28px;position:absolute;inset:0 0 0 auto}.item{display:block}.item-content{z-index:1;min-height:var(--row-height,46px);background:var(--paper);transform:translateX(var(--swipe-x,0px));grid-template-columns:46px minmax(0,1fr) 42px;align-items:center;transition:transform .16s ease-out;display:grid;position:relative}.item-content--editing{grid-template-columns:46px minmax(0,2fr) minmax(44px,1fr) 42px}.item-edit-dismiss{background:0 0;border:0;align-self:stretch;min-width:44px;min-height:44px;padding:0}.item-content>.item-name{padding-left:max(0px, calc(0px - var(--swipe-x,0px)));transition:padding-left .16s ease-out}.category--tint-rose{--category-tint:#fdf4f3}.category--tint-amber{--category-tint:#fdf8eb}.category--tint-sage{--category-tint:#f0f7ef}.category--tint-aqua{--category-tint:#edf8f7}.category--tint-blue{--category-tint:#f0f5fb}.category--tint-lavender{--category-tint:#f6f2fb}.item--active .item-content{background:var(--category-tint,var(--paper))}.item--swiping{overflow:hidden}.item--swipe-tracking .item-content,.item--swipe-tracking .item-name{transition:none}.swipe-item-action{color:#fff;background:var(--green);border:0;place-items:center;width:80px;padding:0;font-size:26px;display:grid;position:absolute;inset:0 auto 0 0}.swipe-item-action--delete{background:#a63831;inset:0 0 0 auto}.swipe-item-action:focus-visible{outline-offset:-4px}@media (prefers-reduced-motion:reduce){.drag-overlay{animation:none;transform:none}.completed-row--returning,.completed-row--returning .completed-item-label,.completed-row--returning .completed-category{animation:none}.completed-row--returning .completed-item-label{opacity:0}.completed-row--returning .completed-category{background:var(--green-soft)}}@media (orientation:landscape) and (max-height:600px){.app-shell{--list-gutter-left:max(24px, env(safe-area-inset-left));--list-gutter-right:max(24px, env(safe-area-inset-right));width:min(100%,900px);padding:max(8px, env(safe-area-inset-top)) var(--list-gutter-right) calc(76px + env(safe-area-inset-bottom)) var(--list-gutter-left)}.topbar{min-height:44px;margin-bottom:12px}.quick-add-shell{margin-bottom:20px}.quick-add{min-height:48px}.quick-add input{height:46px}.bottom-actions{left:max(24px, calc((100vw - 852px) / 2), env(safe-area-inset-left));right:max(24px, calc((100vw - 852px) / 2), env(safe-area-inset-right));bottom:max(8px, env(safe-area-inset-bottom));padding:4px}.popover{top:max(12px, env(safe-area-inset-top));max-height:calc(100dvh - 24px - env(safe-area-inset-bottom))}.recipes-view{min-height:0}}
