:root{--bg:#f6f7f3;--surface:#ffffff;--surface-strong:#ffffff;--ink:#18201d;--muted:#718078;--line:#e3e8e3;--primary:#225c45;--primary-hover:#194736;--accent:#ff7657;--success:#3d956b;--danger:#c95345;--green:var(--success);--green-strong:var(--primary);--mint-soft:#e9f3df;--yellow:#e8bd33;--yellow-soft:#fff1cb;--blue:#426b88;--amber:#9d7430;--red:var(--danger);--category-groente-fruit:#e5f5df;--category-zuivel:#e8f1ff;--category-vlees-vis:#ffe8e1;--category-vriesvak:#e7f5f7;--category-conserven:#fff1cb;--category-droogwaren:#f3ebdd;--category-olie-azijn:#edf2d0;--category-sauzen:#ffe6d8;--category-bakken:#f1e6f6;--category-noten-zaden:#f5ecd2;--category-kruiden:#e9f3df;--category-brood:#f5e7d8;--category-overig:#eee8ff;--shadow:0 8px 24px rgba(24,32,29,0.06);color-scheme:light}*{box-sizing:border-box}body,html{min-height:100%;background:var(--bg)}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}button:disabled{cursor:not-allowed;opacity:.55}button:active:not(:disabled),summary:active{transform:translateY(1px)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid rgba(34,92,69,.24);outline-offset:2px}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-root{min-height:100svh}.shell{width:min(1080px,100%);margin:0 auto;padding:32px 20px 40px}.app-root[data-shopping-focus=true] .shell{width:min(760px,100%);padding:0 14px 28px}.topbar{justify-content:space-between;gap:16px;margin-bottom:20px}.brand,.topbar{display:flex;align-items:center}.brand{min-width:0;gap:12px}.brand-mark{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border:1px solid rgba(34,92,69,.12);border-radius:14px;background:#ffffff;color:var(--primary);box-shadow:0 6px 18px rgba(24,32,29,.05)}.brand h1{margin:0;overflow-wrap:anywhere;font-size:1.9rem;font-weight:700;line-height:1.08;letter-spacing:0}.brand p{margin:4px 0 0;color:var(--muted);font-size:.94rem}.sync-pill{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid rgba(61,149,107,.16);border-radius:999px;background:rgba(255,255,255,.72);color:var(--muted);font-size:.84rem;font-weight:650;white-space:nowrap}.sync-pill svg{color:var(--success)}.sync-pill[data-status=loading] svg,.sync-pill[data-status=saving] svg{animation:sync-spin .9s linear infinite}.sync-pill[data-status=offline]{border-color:rgba(157,116,48,.2);color:var(--amber)}.sync-pill[data-status=offline] svg{color:var(--amber)}.sync-dot{width:8px;height:8px;border-radius:999px;background:var(--success);box-shadow:0 0 0 3px rgba(61,149,107,.14)}.sync-pill[data-status=offline] .sync-dot{background:var(--yellow);box-shadow:0 0 0 3px rgba(232,189,51,.18)}@keyframes sync-spin{to{transform:rotate(1turn)}}.tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:4px;gap:4px;margin-bottom:20px;padding:4px;border:1px solid rgba(227,232,227,.86);border-radius:14px;background:rgba(255,255,255,.68)}.tab-button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:42px;gap:7px;border:0;border-radius:11px;background:transparent;color:var(--muted);font-size:.94rem;font-weight:650}.tab-button:hover{background:rgba(233,243,223,.68);color:var(--primary)}.tab-button[data-active=true]{background:var(--mint-soft);color:var(--primary);box-shadow:inset 0 0 0 1px rgba(34,92,69,.08)}.tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-badge{display:inline-grid;min-width:20px;height:20px;padding:0 6px;place-items:center;border-radius:999px;background:var(--accent);color:#ffffff;font-size:.75rem;font-weight:750;line-height:1}.workspace{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:20px;gap:20px}.panel{border:1px solid rgba(227,232,227,.84);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.panel-header{justify-content:space-between;gap:16px;padding:20px 20px 14px;border-bottom:1px solid rgba(227,232,227,.78)}.panel-header,.panel-title{display:flex;align-items:center}.panel-title{min-width:0;gap:10px;color:var(--primary)}.panel-title h2{margin:0;color:var(--ink);font-size:1.18rem;font-weight:700;letter-spacing:0}.panel-title span{color:var(--muted);font-size:.88rem}.panel-title-back{flex:0 0 auto;margin-left:-4px;color:var(--primary)}.panel-body{padding:18px 20px 20px}.grid-two{display:grid;grid-template-columns:minmax(0,.88fr) minmax(320px,1.12fr);grid-gap:18px;gap:18px}.inbox-grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(430px,1.18fr);grid-gap:18px;gap:18px;align-items:start}.review-panel-body{min-height:520px}.section-stack{display:grid;grid-gap:18px;gap:18px}.section-band{overflow:visible;border:0;border-radius:14px;background:transparent}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:10px 12px;border:0;border-radius:14px;background:var(--category-bg,var(--category-overig))}.section-heading strong{display:inline-flex;align-items:center;min-width:0;gap:9px;color:var(--ink);font-size:.98rem;font-weight:700;overflow-wrap:anywhere}.section-icon{display:inline-grid;width:30px;height:30px;place-items:center;border-radius:999px;background:rgba(255,255,255,.72);color:var(--primary)}.count{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:999px;background:rgba(255,255,255,.58);color:var(--muted);font-size:.82rem;font-weight:650;white-space:nowrap}.item-list{display:grid;grid-gap:0;gap:0;padding-top:8px;background:transparent}.inbox-row,.recipe-row,.shopping-row{display:grid;grid-gap:10px;gap:10px;padding:12px;background:var(--surface-strong)}.shopping-row{position:relative;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;min-height:66px;padding:10px 0;border-bottom:1px solid rgba(227,232,227,.72);transform:translateX(var(--swipe-offset,0));transition:transform .17s ease;touch-action:pan-y}.shopping-row:last-child{border-bottom:0}.shopping-row:hover{background:#fbfdfa}.shopping-row[data-checked=true]{opacity:.78}.shopping-row[data-checked=true] .item-name{color:var(--muted);text-decoration:line-through}.check-button,.icon-button{display:inline-grid;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}.check-button:hover,.icon-button:hover{border-color:rgba(34,92,69,.22);background:var(--mint-soft);color:var(--primary)}.check-button[data-checked=true]{border-color:rgba(61,149,107,.26);background:rgba(61,149,107,.12);color:var(--success)}.icon-button.danger{color:var(--red)}.item-name{min-width:0;overflow-wrap:anywhere;font-size:.98rem;font-weight:650;line-height:1.25}.item-meta{margin-top:4px;color:var(--muted);font-size:.86rem}.item-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.recipe-tag{display:inline-flex;align-items:center;max-width:min(100%,220px);min-height:26px;gap:5px;padding:0 9px;border:1px solid rgba(34,92,69,.14);border-radius:999px;background:var(--mint-soft);color:var(--primary);font-size:.8rem;font-weight:800}.recipe-tag:hover{border-color:rgba(34,92,69,.28);background:#e7f3eb}.recipe-tag svg{flex:0 0 auto}.recipe-tag{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-copy{min-width:0}.swipe-row{position:relative;overflow:visible;border-bottom:1px solid rgba(227,232,227,.72)}.swipe-row:last-child{border-bottom:0}.swipe-row:has(.item-menu[data-open=true]){z-index:30}.swipe-row .shopping-row{border-bottom:0}.swipe-actions{position:absolute;inset:0 0 0 auto;display:flex;align-items:center;justify-content:flex-end;width:min(320px,78%);gap:6px;padding:8px 0 8px 8px;background:#f7fbf7}.swipe-action{min-height:38px;border:0;border-radius:10px;background:var(--mint-soft);color:var(--primary);font-size:.82rem;font-weight:750;padding:0 10px;white-space:nowrap}.swipe-action.danger{background:rgba(201,83,69,.1);color:var(--danger)}.swipe-move{min-width:96px}.compact-select,.swipe-move select{min-height:38px;border-radius:10px;font-size:.82rem}.item-menu{position:relative;justify-self:end}.item-menu[data-open=true]{z-index:50}.item-menu-button{-webkit-user-select:none;-moz-user-select:none;user-select:none}.item-menu-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:40;display:grid;width:min(260px,calc(100vw - 32px));grid-gap:10px;gap:10px;padding:10px;border:1px solid rgba(227,232,227,.95);border-radius:14px;background:#ffffff;box-shadow:0 18px 48px rgba(24,32,29,.14)}.menu-field{display:grid;grid-gap:6px;gap:6px}.menu-field span{color:var(--muted);font-size:.78rem;font-weight:750}.menu-edit-form{display:grid;grid-gap:10px;gap:10px}.menu-button-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:8px;gap:8px}.menu-button-row .primary-button,.menu-button-row .secondary-button{min-width:0;min-height:40px;padding:0 10px;white-space:nowrap}.menu-action,.menu-danger{display:inline-flex;align-items:center;justify-content:flex-start;min-height:40px;gap:8px;border:0;border-radius:10px;background:transparent;color:var(--danger);font-weight:700}.menu-action{color:var(--ink)}.menu-action:hover{background:rgba(34,92,69,.08);color:var(--primary)}.menu-danger:hover{background:rgba(201,83,69,.08)}.field,.section-select,.textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:#ffffff;color:var(--ink);transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.field:hover,.section-select:hover,.textarea:hover{border-color:rgba(34,92,69,.26)}.field,.section-select{min-height:44px;padding:0 12px}.textarea{min-height:104px;resize:vertical;padding:12px;line-height:1.45}.form-grid{display:grid;grid-gap:12px;gap:12px}.textarea-with-actions{display:grid;grid-gap:8px;gap:8px}.field-action-row{display:flex;justify-content:flex-end}.inline-notice{margin-bottom:14px;padding:10px 12px;border:1px solid rgba(34,92,69,.12);border-radius:12px;background:var(--mint-soft);color:var(--primary);font-size:.88rem;font-weight:700}.danger-notice{border-color:rgba(201,83,69,.16);background:rgba(201,83,69,.08);color:var(--danger)}.access-panel{max-width:520px;margin:56px auto 0}.access-form,.access-message{display:grid;grid-gap:12px;gap:12px}.access-message strong{font-size:1.02rem}.access-message p{margin:0;color:var(--muted);line-height:1.45}.input-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:10px;gap:10px}.input-row.compact{align-items:stretch;grid-template-columns:minmax(0,1fr) minmax(180px,240px)}.file-drop{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 11px;border:1px dashed rgba(34,92,69,.28);border-radius:12px;background:#fbfdfa;cursor:pointer;font-weight:700;transition:background-color .16s ease,border-color .16s ease}.file-drop:hover{border-color:rgba(34,92,69,.42);background:var(--mint-soft)}.file-drop input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.attachment-list{display:grid;grid-gap:8px;gap:8px}.attachment-chip{display:grid;grid-template-columns:44px minmax(0,1fr) 40px;align-items:center;grid-gap:8px;gap:8px;min-height:50px;padding:6px 8px;border:1px solid var(--line);border-radius:12px;background:#fff}.attachment-chip img{width:38px;height:38px;border-radius:10px;object-fit:cover}.attachment-placeholder{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:var(--yellow-soft);color:#7c5c14}.attachment-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.button-row{display:flex;flex-wrap:wrap;gap:8px}.recipe-add-form{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid rgba(227,232,227,.78)}.recipes-header{align-items:stretch}.recipes-actions{width:100%}.recipes-actions>.primary-button{flex:0 0 auto}.recipes-filter-stack{display:grid;flex:1 1 320px;min-width:min(100%,260px);max-width:420px;grid-gap:8px;gap:8px}.recipes-filter-stack .search-field{width:100%;flex-basis:auto}.panel-actions{display:flex;align-items:center;justify-content:flex-end;flex:1 1 auto;flex-wrap:wrap;gap:10px}.list-actions{align-items:stretch}.manual-item-form{display:flex;flex:1 1 360px;max-width:520px;min-width:min(100%,300px);gap:4px;padding:4px;border:1px solid var(--line);border-radius:14px;background:#fbfdfa}.manual-item-form .field{flex:1 1 180px;min-height:40px;border:0;background:transparent;box-shadow:none}.manual-item-form .field:focus-visible{outline:0}.manual-item-form:focus-within{border-color:rgba(34,92,69,.34);box-shadow:0 0 0 3px rgba(34,92,69,.1)}.manual-item-form .primary-button{min-height:40px;white-space:nowrap}.search-field{display:inline-flex;align-items:center;flex:0 1 260px;min-width:min(100%,180px);min-height:42px;gap:8px;padding:0 11px;border:1px solid var(--line);border-radius:12px;background:#ffffff;color:var(--muted)}.search-field:focus-within{border-color:rgba(34,92,69,.34);box-shadow:0 0 0 3px rgba(34,92,69,.1)}.search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink)}.ghost-button,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;gap:8px;border-radius:12px;padding:0 14px;font-size:.92rem;font-weight:700}.primary-button{border:1px solid var(--primary);background:var(--primary);color:#ffffff}.primary-button:hover:not(:disabled){border-color:var(--primary-hover);background:var(--primary-hover);box-shadow:0 8px 18px rgba(34,92,69,.16)}.secondary-button{border:1px solid var(--line);background:#fff;color:var(--ink)}.secondary-button:hover:not(:disabled){border-color:rgba(34,92,69,.22);background:#fbfdfa;color:var(--primary)}.checked-switch{position:relative;display:inline-flex;align-items:center;min-height:42px;gap:9px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:#ffffff;color:var(--ink);font-size:.9rem;font-weight:700;cursor:pointer}.checked-switch:hover{border-color:rgba(34,92,69,.22);color:var(--primary)}.checked-switch:has(input:focus-visible){outline:3px solid rgba(34,92,69,.24);outline-offset:2px}.checked-switch input{position:absolute;opacity:0;pointer-events:none}.switch-track{display:inline-flex;align-items:center;width:36px;height:22px;padding:2px;border-radius:999px;background:#d9e1dc;transition:background-color .16s ease}.switch-track span{width:18px;height:18px;border-radius:999px;background:#ffffff;box-shadow:0 1px 4px rgba(24,32,29,.16);transition:transform .16s ease}.checked-switch input:checked+.switch-track{background:var(--primary)}.checked-switch input:checked+.switch-track span{transform:translateX(14px)}.speech-control{display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.speech-button[data-listening=true]{border-color:rgba(35,115,93,.55);background:var(--mint-soft);color:var(--primary)}.speech-status{color:var(--muted);font-size:.82rem;font-weight:700}.secondary-button.danger-text{color:var(--red)}.secondary-button.danger-text:hover:not(:disabled){border-color:rgba(201,83,69,.22);background:rgba(201,83,69,.08);color:var(--danger)}.ghost-button{border:1px solid transparent;background:transparent;color:var(--muted)}.confidence-badge,.present-badge,.source-badge,.status-badge{display:inline-flex;align-items:center;min-height:26px;gap:6px;padding:0 9px;border-radius:999px;font-size:.8rem;font-weight:700}.source-badge{background:#eef5fb;color:var(--blue)}.status-badge{background:#eef3ef;color:var(--muted)}.recipe-category-badge{display:inline-flex;align-items:center;flex:0 0 auto;min-height:26px;max-width:180px;gap:6px;padding:0 9px;border-radius:999px;font-size:.8rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confidence-badge,.recipe-category-badge{background:var(--mint-soft);color:var(--primary)}.present-badge{background:#fff4bf;color:#7c5c14}.inbox-row{border:1px solid var(--line);border-radius:14px;text-align:left}.inbox-row:hover,.recipe-row:hover{border-color:rgba(34,92,69,.22);background:#fbfdfa}.inbox-row[data-selected=true]{border-color:rgba(34,92,69,.36);box-shadow:0 0 0 3px rgba(34,92,69,.1)}.row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.row-title{min-width:0}.row-title strong{display:block;overflow-wrap:anywhere;font-weight:700}.row-title small{display:block;margin-top:3px;color:var(--muted)}.preview-text{margin:0;color:var(--muted);line-height:1.45;overflow-wrap:anywhere}.review-layout{display:grid;grid-gap:12px;gap:12px}.review-summary{align-items:center;padding-bottom:2px}.review-summary .row-title strong{font-size:1.08rem;line-height:1.2}.dish-title-field{min-height:52px;font-size:1.04rem;font-weight:650}.ingredient-editor{display:grid;grid-gap:10px;gap:10px}.ingredient-swipe-row{border:1px solid var(--line);border-radius:14px;background:#f7fbf7}.ingredient-swipe-row .shopping-row{border-bottom:0;border-radius:14px;padding:10px 12px}.ingredient-review-row{grid-template-columns:minmax(0,1fr) 44px}.ingredient-swipe-row .swipe-actions{border-radius:14px}.review-actions{display:grid;grid-template-columns:minmax(136px,1.15fr) minmax(124px,1fr) minmax(108px,.9fr) minmax(124px,1fr);align-items:center;grid-gap:8px;gap:8px}.review-actions .primary-button,.review-actions .secondary-button{min-width:0;padding:0 12px;white-space:nowrap}.review-actions .approve-button{justify-self:end}.smart-summary{display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px;border:1px solid rgba(34,92,69,.12);border-radius:12px;background:#fbfdfa;color:var(--primary);font-size:.86rem;font-weight:700}.recipe-row{border:1px solid var(--line);border-radius:14px;text-align:left}.recipe-row[data-selected=true]{border-color:rgba(34,92,69,.36);box-shadow:0 0 0 3px rgba(34,92,69,.1)}.recipe-row-toggle{display:grid;width:100%;grid-gap:10px;gap:10px;padding:0;border:0;background:transparent;color:inherit;text-align:left}.recipe-expanded{display:grid;grid-gap:12px;gap:12px;padding-top:12px;border-top:1px solid rgba(227,232,227,.78)}.recipe-expanded .section-stack{gap:8px}.recipe-actions{display:flex;justify-content:flex-end}.panel[data-mode=shopping]{min-height:100svh;border:0;border-radius:0;background:transparent;box-shadow:none}.panel[data-mode=shopping] .panel-body{padding:56px 0 24px}.shopping-exit-button{position:fixed;top:12px;right:max(12px,env(safe-area-inset-right));z-index:80;box-shadow:0 10px 24px rgba(24,32,29,.12)}.panel[data-mode=shopping] .section-stack{gap:14px}.panel[data-mode=shopping] .section-band{border-radius:0}.panel[data-mode=shopping] .item-list{padding-top:6px}.panel[data-mode=shopping] .shopping-row{grid-template-columns:56px minmax(0,1fr) 44px;min-height:78px;padding-top:12px;padding-bottom:12px}.panel[data-mode=shopping] .check-button{width:52px;height:52px;border-radius:16px}.panel[data-mode=shopping] .section-heading{position:-webkit-sticky;position:sticky;top:8px;z-index:10;min-height:44px;box-shadow:0 8px 18px rgba(24,32,29,.06)}.meal-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.meal-day{display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#ffffff}.meal-day-heading{display:flex;align-items:center;gap:10px}.meal-day-heading span{display:inline-grid;width:36px;height:36px;place-items:center;border-radius:999px;background:var(--mint-soft);color:var(--primary);font-size:.84rem;font-weight:800}.meal-day-heading strong{overflow-wrap:anywhere}.meal-day-controls{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;grid-gap:8px;gap:8px}.meal-choice-stack{display:grid;min-width:0;grid-gap:8px;gap:8px}.meal-cart-button{width:44px;height:44px;color:var(--primary)}.empty-state{display:grid;min-height:180px;place-items:center;border:1px dashed rgba(34,92,69,.18);border-radius:14px;background:#fbfdfa;color:var(--muted);text-align:center}.empty-state strong{display:block;margin-bottom:4px;color:var(--ink)}.link-button{text-decoration:none}.recipe-ingredient,.recipe-method,.source-box{border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px 12px}.recipe-ingredient{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:center;grid-gap:10px;gap:10px}.recipe-ingredient-copy{min-width:0}.recipe-ingredient-copy strong{display:block;overflow-wrap:anywhere}.recipe-ingredient-copy span{display:block;margin-top:3px;color:var(--muted)}.recipe-method{display:grid;grid-gap:8px;gap:8px}.recipe-method strong{color:var(--primary)}.recipe-method p{margin:0;color:var(--ink);line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}.source-box{display:grid;grid-gap:8px;gap:8px}.source-box a,.source-box code,.source-box p{margin:0;overflow-wrap:anywhere}.source-box a{color:var(--primary);font-weight:700}.source-box p{color:var(--muted);line-height:1.45;white-space:pre-wrap}.pantry-layout{display:grid;grid-gap:16px;gap:16px}.pantry-form{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;grid-gap:8px;gap:8px;align-items:center}.pantry-section-stack{gap:14px}.pantry-list{display:grid;grid-gap:0;gap:0;padding-top:6px}.pantry-row{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:center;justify-content:space-between;grid-gap:10px;gap:10px;min-height:46px;padding:5px 0;border-bottom:1px solid rgba(227,232,227,.72);background:transparent}.pantry-row:last-child{border-bottom:0}.pantry-row:hover{background:#fbfdfa}.pantry-row strong{min-width:0;overflow-wrap:anywhere}@media (max-width:860px){.shell{padding:18px 14px 28px}.topbar{align-items:flex-start;flex-wrap:wrap}.grid-two,.inbox-grid{grid-template-columns:1fr}.panel-header{align-items:flex-start;flex-direction:column}.panel-actions{justify-content:flex-start;width:100%}.manual-item-form{max-width:none;width:100%}.tabs{position:-webkit-sticky;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.tab-button{flex-direction:column;min-height:52px;gap:3px;font-size:.72rem}.tab-badge{position:absolute;top:6px;right:12px}.shopping-row{grid-template-columns:44px minmax(0,1fr) 44px;align-items:start;padding:11px 0}.panel[data-mode=shopping] .shopping-row{grid-template-columns:56px minmax(0,1fr) 44px}.item-menu{grid-column:3/4;grid-row:1}.ingredient-review-row{grid-template-columns:minmax(0,1fr) 44px;align-items:start}.input-row.compact,.input-row:not(.compact),.pantry-form{grid-template-columns:1fr}.search-field{width:100%;flex-basis:auto}.pantry-row{grid-template-columns:minmax(0,1fr) 40px}.review-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.review-actions .approve-button{justify-self:stretch}}@media (max-width:470px){.topbar{flex-wrap:nowrap}.brand{align-items:flex-start}.brand-mark{width:40px;height:40px;border-radius:12px}.brand h1{font-size:1.62rem}.sync-pill{flex:0 0 auto;width:auto;min-width:42px;padding:0 9px;justify-content:center}.sync-label{display:none}.button-row{width:100%}.button-row>button{flex:1 1 auto}.manual-item-form{flex-direction:column}.manual-item-form .field{flex:0 0 auto;min-height:44px}.manual-item-form .primary-button{width:100%}.checked-switch,.list-actions>.secondary-button{flex:1 1 100%}.tabs{gap:2px;padding:3px}.tab-button{min-height:48px;font-size:.67rem}.review-actions .primary-button,.review-actions .secondary-button{gap:6px;padding:0 10px;font-size:.88rem}}