*{box-sizing:border-box}:root{--action-strong:#b0560d;--action-strong-hover:#984809}body{background:var(--s-soft,#fff8ed);color:var(--t-strong,#2d2118);margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}.page{max-width:1100px;margin:0 auto;padding:24px}.hero{padding:18px 0 8px}.heroFrame{background:linear-gradient(160deg,#fffaf2 0%,#fdeedd 60%,#f8ddbc 100%);border:1px solid #482e1a1f;border-radius:28px;max-width:1100px;margin:0 auto;overflow:hidden;box-shadow:0 18px 40px #5836121f}.heroContent{max-width:640px;padding:40px 36px 28px}.heroBanner{object-fit:cover;object-position:50% 45%;width:100%;height:200px;display:block}.heroContent h1{letter-spacing:-.04em;color:var(--t-strong,#2d2118);margin:0 0 8px;font-size:clamp(2rem,4vw,3rem);line-height:1.08}.heroContent .accent{color:var(--a-text,#d66b24)}.heroContent p{color:var(--t-muted,#6b5848);margin:0 0 16px;font-size:1.02rem;line-height:1.5}.heroCta{background:var(--action-strong);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 22px;font-size:1rem;font-weight:700;transition:background-color .18s,box-shadow .18s,transform .12s;display:inline-flex}.heroCta:hover{background:var(--action-strong-hover);box-shadow:0 6px 18px #d66b2452}.heroCta:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.heroCta:active{transform:scale(.97)}.card{background:#ffffffdb;border:1px solid #482e1a1f;border-radius:28px;margin:18px 0;padding:24px;box-shadow:0 18px 40px #58361214}h2{margin:0 0 18px;font-size:1.45rem}h3{margin:0 0 10px}.zone{margin-bottom:22px}.zone:last-child{margin-bottom:0}.zoneTitle{text-transform:uppercase;letter-spacing:.07em;color:var(--t-muted,#8a6a48);border-bottom:2px solid var(--b-soft,#eadbc4);margin:0 0 4px;padding-bottom:8px;font-size:1.1rem;font-weight:800}.catBlock{padding:12px 0}.catBlock+.catBlock{border-top:1px solid #482e1a1a}.catTitle{margin:0 0 9px;font-size:1.02rem}.aisle{margin-top:12px}.subLabel{text-transform:uppercase;letter-spacing:.06em;color:var(--t-muted,#a07d55);margin:0 0 6px;font-size:.72rem;font-weight:700;display:block}.pillWrap{flex-wrap:wrap;gap:8px;display:flex}.aisle .pill,.catBlock>.pillWrap .pill,.shelf .pill{min-height:44px;padding:10px 16px;font-size:.95rem}.groupNote{color:var(--t-muted,#7b6756);margin:4px 0 10px;font-size:.9rem;font-style:italic;line-height:1.4}.groupPill{border-style:dashed;align-items:center;gap:6px;display:inline-flex}.groupPill.open{background:var(--s-chip,#f6e7d3);border-style:solid;border-color:var(--b-strong,#d9b98c)}.groupPill .chev{color:var(--t-muted,#a07d55);font-size:.8rem}.groupPill.active .chev,.groupPill.open .chev{color:inherit}.groupPill .selDot{color:var(--a-text,#d66b24);font-size:.7rem;line-height:1}.groupPill.open .selDot{color:#fff}.shelf{background:var(--s-soft,#fdf6ec);border-left:3px solid var(--b-soft,#e2cdb0);border-radius:0 10px 10px 0;margin:8px 0 2px;padding:10px 12px}.shelfSign{color:var(--t-muted,#7a5c3a);margin:0 0 6px;font-size:.8rem;font-weight:700;display:block}.selectedBar{border-bottom:1px solid #482e1a1a;flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 14px;padding-bottom:12px;display:flex}.selectedBarLead{color:var(--t-muted,#8a6a48);margin-right:2px;font-size:.8rem;font-weight:700}.selectedBarEmpty{color:var(--t-muted,#a2917f);font-size:.85rem;font-style:italic}.selChip{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);min-height:30px;color:var(--t-body,#6b4f34);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.82rem;font-weight:600;display:inline-flex}.selChip:hover{background:var(--s-chip,#f7e9d6);border-color:var(--a-base,#d66b24);color:var(--action-text,var(--action-strong))}.selChip span{font-size:.95rem;line-height:1}.fieldLabel{align-items:center;gap:8px;margin:16px 0 8px;font-weight:700;display:flex}.textInput,select{border:1px solid var(--b-soft,#d9c4aa);background:var(--s-card,white);width:100%;color:var(--t-strong,#2d2118);border-radius:16px;padding:14px 16px}.hint{color:var(--t-muted,#7b6756);margin:-8px 0 16px;font-size:.95rem}.optionalTag{text-transform:uppercase;letter-spacing:.04em;color:var(--t-muted,#7a5c3a);background:var(--s-chip,#f2e7d7);vertical-align:middle;border-radius:999px;margin-left:8px;padding:3px 9px;font-size:.72rem;font-weight:600}.intro{margin:4px 0 20px;padding:0 4px}.introLead{color:var(--t-body,#5f4a38);max-width:62ch;margin:0 0 14px;font-size:1.05rem;line-height:1.5}.introSteps{flex-wrap:wrap;gap:12px 22px;margin:0;padding:0;list-style:none;display:flex}.introSteps li{color:var(--t-muted,#6b5645);align-items:center;gap:9px;font-size:.95rem;font-weight:600;display:flex}.introStepNum{background:var(--s-chip,#f2e7d7);width:24px;height:24px;color:var(--a-text,#a85a1c);border-radius:999px;justify-content:center;align-items:center;font-size:.82rem;font-weight:800;display:inline-flex}.introStepOpt{color:var(--t-muted,#a2917f);font-weight:500}@media (width<=640px){.introSteps{flex-direction:column;align-items:flex-start;gap:10px}.introLead{font-size:1rem}}.pillGrid{flex-wrap:wrap;gap:10px;display:flex}.pill{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);min-height:48px;color:var(--t-strong,#3d2c1f);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;padding:12px 18px;font-size:1rem;font-weight:600;line-height:1;transition:transform .12s,box-shadow .18s,background-color .18s,border-color .18s,color .18s}.pill:hover{border-color:var(--b-strong,#c89770)}.pill:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.pill:active{transform:scale(.96)}.pill.active{background:var(--action-strong);color:#fff;border-color:var(--a-base,#d66b24);box-shadow:0 6px 18px #d66b2452}.pill.active:hover{border-color:var(--action-strong);background:var(--action-strong-hover)}.applianceGroup{border:0;min-width:0;margin:18px 0 4px;padding:0}.applianceGroup>legend{color:var(--t-strong,#3d2c1f);margin:0 0 10px;padding:0;font-size:1rem;font-weight:700}.applianceGrid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.applianceOption{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);cursor:pointer;min-height:56px;color:var(--t-strong,#3d2c1f);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:16px;align-items:center;gap:12px;padding:12px 16px;font-size:1rem;font-weight:600;transition:box-shadow .18s,background-color .18s,border-color .18s;display:flex}.applianceOption:hover{border-color:var(--b-strong,#c89770)}.applianceOption.is-selected{background:var(--s-chip,#fff2e4);border-color:var(--action-strong);box-shadow:0 4px 14px #d66b2438}.applianceCheckbox{width:22px;height:22px;accent-color:var(--action-strong);cursor:pointer;flex:none}.applianceCheckbox:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.applianceOptionLabel{line-height:1.2}.controls{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;display:grid}.segmentRow{gap:8px;width:100%;display:flex}.segment{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);min-height:48px;color:var(--t-strong,#3d2c1f);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:14px;flex:1 1 0;padding:12px 8px;font-size:1rem;font-weight:600;transition:transform .12s,box-shadow .18s,background-color .18s,border-color .18s,color .18s}.segment:hover{border-color:var(--b-strong,#c89770)}.segment:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.segment:active{transform:scale(.96)}.segment:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.segment:disabled:hover{border-color:var(--b-soft,#d9c4aa);transform:none}.controlHint{margin:8px 0 0}.segment.active{background:var(--action-strong);color:#fff;border-color:var(--a-base,#d66b24);box-shadow:0 6px 18px #d66b2452}.mealSupportBadge{background:var(--a-fill,#b85a18);color:#fff;text-transform:uppercase;letter-spacing:.03em;border-radius:999px;margin-bottom:10px;padding:4px 12px;font-size:.74rem;font-weight:700;display:inline-block}.aiRecipeBadge{background:var(--info-fill,#4a3f8f);color:#fff;text-transform:uppercase;letter-spacing:.03em;border-radius:999px;margin-bottom:10px;margin-right:6px;padding:4px 12px;font-size:.74rem;font-weight:700;display:inline-block}.aiRecipeSuggestion{border:1px solid var(--b-soft,#d9d2e8);background:var(--s-soft,#f6f4fb);border-radius:14px;margin:16px 0;padding:14px}.aiRecipeSuggestion .hint{color:var(--t-body,#4a4458);margin:0 0 8px;font-size:.92rem}.aiRecipeSuggestion input[type=text]{box-sizing:border-box;border:1px solid var(--info-border,#c9c0dd);border-radius:10px;width:100%;min-height:48px;margin-bottom:8px;padding:10px 12px;font-size:1rem}.aiRecipeSuggestion .aiRecipeNeedMore{margin:8px 0 0}.mealSupportDetail{background:var(--s-soft,#fdf6ec);border:1px solid var(--b-soft,#e2cdb0);border-radius:14px;margin:6px 0 2px;padding:10px 12px}.mealSupportLine{margin:2px 0;font-size:.95rem}.results{gap:14px;display:grid}.recipe{border:1px solid var(--b-soft,#ead7bd);background:var(--s-soft,#fffdf9);border-radius:22px;padding:18px}.recipeHeader{justify-content:space-between;align-items:center;gap:12px;display:flex}.recipeHeader span{background:var(--warn-bg,#ffdf9e);white-space:nowrap;border-radius:999px;padding:7px 11px;font-weight:700}.recipe p{color:var(--t-body,#584637)}.prepNote{color:var(--t-muted,#7a5c3a);background:var(--s-chip,#fdf3e3);border-left:3px solid var(--a-base,#d66b24);border-radius:0 8px 8px 0;margin:4px 0;padding:5px 10px;font-size:.88rem}ol{padding-left:22px;line-height:1.55}.actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.actions a,.actions button,.ghost{background:var(--action-strong);color:#fff;cursor:pointer;border:0;border-radius:14px;align-items:center;gap:8px;padding:10px 13px;font-weight:700;text-decoration:none;display:inline-flex}.ghost,.actions a.ghost,.actions button.ghost{background:var(--s-soft,#fffaf2);color:var(--t-strong,#3d2c1f);border:1.5px solid var(--b-soft,#e2cdb0)}.empty{color:var(--t-muted,#6b5848);margin:0}.resultsCard{transition:box-shadow .2s}.resultsCard.isPulsing{animation:.4s resultsPulse}@keyframes resultsPulse{0%{transform:scale(1);box-shadow:0 18px 40px #58361214}45%{transform:scale(1.006);box-shadow:0 22px 46px #d66b2429}to{transform:scale(1);box-shadow:0 18px 40px #58361214}}@media (prefers-reduced-motion:reduce){.resultsCard.isPulsing{animation:none}}.resultsHeader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.resultsHeader h2{margin:0}.resultsHeaderRight{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.updatedBadge{color:var(--t-muted,#7b6756);background:var(--warn-bg,#fff3dc);opacity:0;border-radius:999px;padding:4px 10px;font-size:.85rem;animation:.2s forwards badgeFadeIn}@keyframes badgeFadeIn{to{opacity:1}}@media (prefers-reduced-motion:reduce){.updatedBadge{opacity:1;animation:none}}.madeConfirmation{background:var(--s-chip,#eaf6e6);border:1px solid var(--ok-border,#cfe8c6);color:var(--ok-text,#2f6a26);opacity:0;border-radius:12px;align-items:center;gap:6px;margin:0 0 12px;padding:9px 13px;font-size:.9rem;line-height:1.4;animation:.2s forwards badgeFadeIn;display:flex}.madeConfirmation svg{flex-shrink:0}@media (prefers-reduced-motion:reduce){.madeConfirmation{opacity:1;animation:none}}.refreshButton{background:var(--s-soft,#fffaf2);border:1.5px solid var(--b-soft,#e2cdb0);color:var(--t-strong,#3d2c1f);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:.92rem;font-weight:600;transition:border-color .18s,background-color .18s,transform .12s;display:inline-flex}.refreshButton:hover:not(:disabled){border-color:var(--b-strong,#c89770);background:var(--warn-bg,#fff3dc)}.refreshButton:active:not(:disabled){transform:scale(.97)}.refreshButton:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.refreshButton:disabled{opacity:.5;cursor:not-allowed}.moreOptions{border-top:1px dashed #482e1a2e;margin-top:18px;padding-top:16px}.moreOptionsToggle{color:var(--action-text,var(--action-strong));cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:.98rem;font-weight:700}.moreOptionsToggle:hover{text-decoration:underline}.moreOptionsToggle:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px;border-radius:4px}.moreOptionsResults{margin-top:12px}.cardHeader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.cardHeader h2{margin:0}.cardHeader .ghost{padding:8px 12px;font-size:.9rem}.collapsedSummary{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);width:100%;color:var(--t-strong,#3d2c1f);cursor:pointer;font:inherit;text-align:left;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.collapsedSummary:hover{border-color:var(--b-strong,#d9be9b);background:var(--s-soft,#fff6ea)}.collapsedSummary:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}.collapsedSummaryMain{align-items:center;gap:8px;min-width:0;display:inline-flex}.collapsedSummaryMain svg{color:var(--ok-text,#2f8a5b);flex:none}.collapsedSummaryName{font-weight:800}.collapsedSummaryDot{color:var(--t-muted,#b09877)}.collapsedSummaryCount{color:var(--t-muted,#7b6756)}.collapsedSummaryEdit{color:var(--a-text,#b9531d);flex:none;font-weight:700}.guidedAddEntry{margin:4px 0 16px}.guidedAddEntry .hint{margin:4px 0 0}.manualEntry{margin-top:10px}.manualPillWrap{margin-bottom:8px}.otherPill{align-items:center;gap:4px;display:inline-flex}.otherPill.open{background:var(--s-chip,#f6e7d3);border-color:var(--b-strong,#d9b98c)}.manualEntryOpen{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffdf9);border-radius:16px;padding:12px}.manualEntryLabel{color:var(--t-muted,#6b5848);margin-bottom:8px;font-size:.9rem;font-weight:700;display:block}.manualEntryRow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.manualEntryInput{border:1.5px solid var(--b-soft,#e2cdb0);min-width:0;max-width:100%;font:inherit;color:var(--t-strong,#3d2c1f);background:var(--s-card,#fff);border-radius:12px;flex:220px;padding:10px 12px}.manualEntryInput:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:1px;border-color:var(--a-base,#d66b24)}.manualEntryAdd{background:var(--action-strong);color:#fff;cursor:pointer;border:0;border-radius:12px;padding:10px 16px;font-weight:800}.manualEntryAdd:hover{background:var(--action-strong-hover)}.manualEntryAdd:disabled{opacity:.6;cursor:not-allowed}.manualEntryAdd:focus-visible,.manualEntryCancel:focus-visible{outline:3px solid var(--a-base,#7a3f12);outline-offset:2px}.manualEntryCancel{padding:9px 12px;font-size:.9rem}.manualEntryHint{color:var(--t-body,#6b4310);border-left:4px solid var(--a-base,#d66b24);background:var(--s-soft,#fff6ec);border-radius:8px;margin:8px 0 0;padding:8px 10px;font-size:.85rem;line-height:1.4}.manualSuggestions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.manualSuggestLead{color:var(--t-muted,#7b6756);margin-right:2px;font-size:.85rem;font-weight:700}.manualPill{background:var(--s-chip,#fbf1e2);color:var(--t-body,#6b4a26);border-style:dashed!important;border-color:var(--a-base,#c99a5b)!important}.selChipManual{border:1.5px dashed var(--a-base,#c99a5b)}@media (width<=640px){.manualEntryInput{flex:100%}.manualEntryAdd,.manualEntryCancel{flex:auto}}.historyHeader{justify-content:space-between;align-items:center;gap:12px;display:flex}.historyHeader h2{align-items:center;gap:8px;margin-bottom:0;display:flex}.historyList{gap:10px;display:grid}.historyItem{background:var(--s-soft,#fffaf2);border-radius:16px;gap:4px;padding:14px;display:grid}.historyItem span,.historyItem small{color:var(--t-muted,#6b5848)}footer{text-align:center;color:var(--t-muted,#7b6756);padding:22px 8px 36px;font-size:.92rem}@media (width<=640px){.page{padding:14px}.card{border-radius:22px;padding:18px}.recipeHeader{flex-direction:column;align-items:flex-start}.pillGrid{gap:8px}.pill{text-align:center;flex:auto;justify-content:center;padding:12px 16px;font-size:.98rem}.aisle .pill,.catBlock>.pillWrap .pill,.shelf .pill{text-align:left;flex:0 auto;justify-content:flex-start;min-height:44px;padding:11px 14px;font-size:.95rem}.selectedBar{flex-wrap:nowrap;overflow-x:auto}.selChip{flex:none}.hero{padding:8px 0 4px}.heroFrame{border-radius:22px}.heroContent{max-width:none;padding:24px 20px 18px}.heroContent h1{font-size:1.5rem;line-height:1.12}.heroContent p{margin-bottom:12px;font-size:.95rem}.heroCta{width:100%}.heroBanner{height:120px}}.localeSplash{justify-content:center;align-items:center;min-height:60vh;display:flex}.langGate{isolation:isolate;background:#0b0a0d;justify-content:center;align-items:center;max-width:none;min-height:100dvh;margin:0;padding:0;display:flex;position:relative;overflow:hidden}.langGateAmbient{z-index:-1;object-fit:cover;filter:blur(36px)brightness(.5)saturate(1.25);width:100%;height:100%;position:absolute;inset:0;transform:scale(1.2)}.langHero{width:min(100vw,83.3dvh,1024px);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 60px #0000008c;container:langHero/inline-size}.langHeroMedia{width:100%;height:auto;display:block}.langGateButtons{justify-content:center;gap:10px;width:100%;display:flex}.langBtn{background:var(--s-card,#fff);min-height:48px;color:var(--t-strong,#2d2118);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:1.5px solid #482e1a2e;border-radius:13px;flex:1 1 0;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:1rem;font-weight:700;transition:background-color .18s,border-color .18s,transform .12s;display:inline-flex}.langBtn:hover{border-color:var(--action-strong);background:var(--s-card,#fff)}.langBtn:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}.langBtn:active{transform:scale(.97)}.langBtnFlag{font-size:1.25rem;line-height:1}.langBtnLabel{line-height:1}.langHeroBtn{background:var(--s-card,#fff);min-height:44px;color:var(--t-strong,#2d2118);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;align-items:center;gap:5px;padding:8px 12px 8px 10px;font-size:.9rem;font-weight:600;transition:transform .12s,box-shadow .18s;display:inline-flex;position:absolute;top:8%;transform:translate(-50%)}.langHeroBtn.langHeroBtnEn{border:1.5px solid var(--a-base,#d2691e);left:37%;box-shadow:0 0 10px #d2691e73}.langHeroBtn.langHeroBtnEs{border:1.5px solid var(--info-border,#3b82c4);left:63%;box-shadow:0 0 10px #3b82c473}.langHeroBtn:hover{transform:translate(-50%)scale(1.03)}.langHeroBtn:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}.langHeroBtn:active{transform:translate(-50%)scale(.97)}.langHeroBtnIcon{flex:none;display:block}.langHeroBtnLabel{line-height:1}.langHeroBtn:after{content:"";position:absolute;inset:-6px 0}@container langHero (width<=560px){.langHeroBtn{border-width:1.25px;gap:3px;min-height:32px;padding:5px 8px 5px 7px;font-size:.74rem}.langHeroBtnIcon svg{width:11px;height:11px}}@container langHero (width<=380px){.langHeroBtn{gap:2px;padding:5px 7px 5px 6px;font-size:.68rem}.langHeroBtnIcon svg{width:10px;height:10px}}.langChooseOverlay{z-index:50;pointer-events:none;position:fixed;inset:0}.langChooseCanvas{width:100%;height:100%;display:block}.scanEntry{margin:2px 0 12px}.scanTrigger{border:1.5px dashed var(--a-base,#d66b24);background:var(--s-soft,#fff7ee);min-height:44px;color:var(--action-text,var(--action-strong));cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:.95rem;font-weight:700;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.scanTrigger:hover{background:var(--s-chip,#f7e9d6);border-color:var(--action-strong)}.scanTrigger:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.scanOverlay{z-index:1000;box-sizing:border-box;background:#2d211880;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.scanModal{box-sizing:border-box;background:var(--s-soft,#fffaf2);border:1px solid #482e1a24;border-radius:22px;flex-direction:column;width:100%;max-width:460px;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 24px 60px #58361247}.scanModal:focus{outline:none}.scanHeader{border-bottom:1px solid #482e1a1a;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.scanHeader h3{color:var(--t-strong,#3d2c1f);margin:0;font-size:1.15rem}.scanClose{width:44px;height:44px;color:var(--t-body,#6b4f34);cursor:pointer;background:0 0;border:none;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.scanClose:hover{background:var(--s-chip,#f2e2cf);color:var(--action-text,var(--action-strong))}.scanClose:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.scanBody{padding:16px 18px;overflow-y:auto}.scanCentered{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 18px;display:flex}.scanHint{color:var(--t-body,#6b4f34);margin:0 0 14px;font-size:.95rem;line-height:1.4}.scanFallback{color:var(--t-muted,#8a7256);margin:14px 0 0;font-size:.82rem}.scanActions{flex-direction:column;gap:10px;display:flex}.scanPrimary,.scanSecondary,.scanGhost{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;box-sizing:border-box;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;padding:12px 18px;font-size:1rem;font-weight:700;transition:background-color .18s,border-color .18s,color .18s,transform .12s;display:inline-flex}.scanPrimary{background:var(--action-strong);color:#fff;border:1.5px solid var(--a-base,#d66b24)}.scanPrimary:hover{background:var(--action-strong-hover);border-color:var(--action-strong)}.scanPrimary:active{transform:scale(.98)}.scanPrimary[aria-disabled=true]{background:var(--s-chip,#e7d3bd);border-color:var(--b-soft,#e7d3bd);color:var(--t-muted,#9c8a72);cursor:not-allowed}.scanPrimary[aria-disabled=true]:active{transform:none}.scanPrimary:disabled{background:var(--s-chip,#e7d3bd);border-color:var(--b-soft,#e7d3bd);color:var(--t-muted,#9c8a72);cursor:not-allowed}.scanSecondary{background:var(--s-soft,#fffaf2);color:var(--t-strong,#3d2c1f);border:1.5px solid var(--b-soft,#e2cdb0)}.scanSecondary:hover{background:var(--s-chip,#f7e9d6);border-color:var(--b-strong,#c89770)}.scanGhost{color:var(--t-body,#6b4f34);background:0 0;border:1.5px solid #0000;width:auto;padding:12px 16px}.scanGhost:hover{color:var(--action-text,var(--action-strong))}.scanPrimary:focus-visible,.scanSecondary:focus-visible,.scanGhost:focus-visible,.scanTrigger:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.candList{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.candRow{border:1.5px solid var(--b-soft,#ecdcc6);background:var(--s-soft,#fffdf9);border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;display:flex}.candRow.isIncluded{border-color:var(--a-base,#d66b24);background:var(--s-soft,#fff4e9)}.candMain{cursor:pointer;flex:60%;align-items:center;gap:10px;min-width:0;display:flex}.candCheck{width:22px;height:22px;accent-color:var(--a-base,#d66b24);flex:none}.candText{flex-direction:column;gap:3px;min-width:0;display:flex}.candLabel{color:var(--t-strong,#3d2c1f);overflow-wrap:anywhere;font-size:.98rem;font-weight:700}.candChip{border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:.72rem;font-weight:700}.candChip.matched{background:var(--s-chip,#e4f2e0);color:var(--ok-text,#3f7a34)}.candChip.uncertain{background:var(--warn-bg,#fdeccb);color:var(--warn-text,#9a6a12)}.candChip.ambiguous{background:var(--s-chip,#e7ecfb);color:var(--info-text,#3a52a4)}.candChip.unknown{background:var(--s-chip,#f1e4da);color:var(--t-muted,#8a6a52)}.candChip.dup{background:var(--s-chip,#eee7de);color:var(--t-muted,#7a6552)}.candSelect{box-sizing:border-box;border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);min-height:44px;color:var(--t-strong,#3d2c1f);border-radius:12px;flex:100%;padding:8px 12px;font-size:.95rem}.candSelect:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:1px}.candRemove{width:40px;height:40px;color:var(--t-muted,#a98d70);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:none;justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.candRemove:hover{background:var(--s-chip,#f2e2cf);color:var(--action-text,var(--action-strong))}.candRemove:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.scanFooter{border-top:1px solid #482e1a1a;align-items:center;gap:10px;margin-top:16px;padding-top:14px;display:flex}.scanFooter .scanGhost{flex:none}.scanFooter .scanPrimary{flex:auto}.spin{color:var(--a-text,#d66b24);animation:.9s linear infinite scanSpin}@keyframes scanSpin{to{transform:rotate(360deg)}}.haveAll{color:var(--ok-text,#3f7a34);margin:8px 0 4px;font-size:.92rem;font-weight:600}.missingBlock{border:1px dashed var(--b-soft,#e2cdb0);background:var(--s-soft,#fff7ee);border-radius:12px;flex-direction:column;gap:8px;margin:10px 0 4px;padding:10px 12px;display:flex}.missingLine{color:var(--t-body,#6b4f34);margin:0;font-size:.92rem;line-height:1.4}.subLine{color:var(--ok-text,#3f7a34);margin:0;font-size:.9rem;line-height:1.4}.subLine strong{color:var(--ok-text,#2f6a26)}.showMoreEnhancers{color:var(--a-text,#b5651d);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-self:flex-start;padding:2px 0;font-size:.88rem;font-weight:600;text-decoration:underline}.showMoreEnhancers:hover{color:var(--a-text,#8f4c14)}.addMissingBtn{border:1.5px solid var(--a-base,#d66b24);background:var(--action-strong);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;align-self:flex-start;min-height:44px;padding:10px 16px;font-size:.9rem;font-weight:700;transition:background-color .18s,border-color .18s,color .18s}.addMissingBtn:hover:not(:disabled){background:var(--action-strong-hover);border-color:var(--action-strong)}.addMissingBtn:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.addMissingBtn:disabled{background:var(--s-chip,#eef0e9);border-color:var(--b-soft,#cfe0c7);color:var(--ok-text,#4f7a42);cursor:default}.addedToList{color:var(--ok-text,#4f7a42);flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:.9rem;font-weight:600;display:flex}.missingBlock>.addedToList:has(>span:empty:only-child){margin-top:-8px}.addedToList button{min-height:44px;color:var(--a-text,#8f4c14);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;padding:10px 8px;text-decoration:underline;display:inline-flex}.addedToList button:hover{text-decoration-thickness:2px}.addedToList button:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.shoppingCard .cardHeader h2{align-items:center;gap:8px;display:inline-flex}.shopCount{color:var(--t-muted,#a98d70);font-weight:600}.shopAddRow{gap:8px;margin:4px 0 14px;display:flex}.shopInput{box-sizing:border-box;border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);min-width:0;min-height:44px;color:var(--t-strong,#3d2c1f);border-radius:12px;flex:auto;padding:10px 14px;font-size:1rem}.shopInput:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:1px}.shopAddBtn{border:1.5px solid var(--a-base,#d66b24);background:var(--action-strong);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:12px;flex:none;justify-content:center;align-items:center;width:48px;min-height:44px;display:inline-flex}.shopAddBtn:hover:not(:disabled){background:var(--action-strong-hover);border-color:var(--action-strong)}.shopAddBtn:disabled{background:var(--s-chip,#e7d3bd);border-color:var(--b-soft,#e7d3bd);cursor:default}.shopAddBtn:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.shopEmpty{color:var(--t-muted,#8a7256);margin:0;font-size:.92rem}.shopList{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.shopItem{border:1px solid var(--b-soft,#ecdcc6);background:var(--s-soft,#fffdf9);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.shopItem.done{background:var(--s-soft,#f3f6f0);border-color:var(--b-soft,#d9e6d1)}.shopItemMain{flex:auto;align-items:center;gap:10px;min-width:0;min-height:44px;display:flex;position:relative}.shopItemMain label:after{content:"";cursor:pointer;position:absolute;inset:0}.shopText{flex-direction:column;min-width:0;display:flex}.shopCheck{width:22px;height:22px;accent-color:var(--a-base,#d66b24);flex:none}.shopName{color:var(--t-strong,#3d2c1f);overflow-wrap:anywhere;cursor:pointer;font-size:.98rem}.shopItem.done .shopName{color:var(--t-muted,#6f7d66);text-decoration:line-through}.shopDoneIcon{color:var(--ok-text,#3f7a34);flex:none}.shopRemove{width:44px;height:44px;color:var(--t-muted,#7a5c3a);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:1.4rem;line-height:1;display:inline-flex}.shopRemove:hover{background:var(--s-chip,#f2e2cf);color:var(--action-text,var(--action-strong))}.shopRemove:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.dietarySection{margin-top:18px}.dietarySectionTitle{color:var(--t-strong,#3d2c1f);margin:0 0 4px;font-size:1rem;font-weight:700}.dietarySectionBlurb{color:var(--t-muted,#7a5c3a);margin:0 0 10px;font-size:.88rem}.dietaryPills{margin-bottom:4px}.dietaryPillNote{text-transform:uppercase;letter-spacing:.04em;background:var(--s-chip,#f2e7d7);color:var(--t-muted,#7a5c3a);border-radius:999px;margin-left:8px;padding:2px 7px;font-size:.68rem;font-weight:700;display:inline-block}.pill.active .dietaryPillNote{background:var(--s-card,#fff);color:var(--a-text,#8a430a)}.pill.active .dietaryPillNote.is-notApplied,.dietaryPillNote.is-notApplied{background:var(--warn-bg,#fff4d6);color:var(--warn-text,#6b4a00)}.dietaryReconfirm{background:var(--warn-bg,#fff4d6);border:1.5px solid var(--warn-border,#e0b64a);color:var(--warn-text,#4a3500);border-radius:14px;margin:0 0 16px;padding:12px 14px}.dietaryReconfirm p{margin:0 0 8px}.dietaryReconfirm button{cursor:pointer;background:var(--action-strong);color:#fff;border:0;border-radius:12px;min-height:44px;padding:10px 16px;font-weight:700}.dietaryReconfirm button:hover{background:var(--action-strong-hover)}.dietaryReconfirm button:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}.dietaryReminder{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-left:4px solid var(--b-strong,#c89770);border-radius:10px;margin:0 0 16px;padding:12px 14px}.dietaryReminder.is-allergy{border-left-color:var(--a-base,#d66b24);background:var(--s-soft,#fff6ec)}.dietaryReminderHeading{color:var(--t-strong,#3d2c1f);margin:0 0 4px;font-size:.95rem;font-weight:700}.dietaryReminderBody{color:var(--t-body,#5c4632);margin:0;font-size:.88rem;line-height:1.45}.dietaryReminder--recipe{color:var(--t-body,#5c4632);margin:12px 0;padding:10px 12px;font-size:.85rem}.dietaryEnforcementNotices{margin:10px 0 0;padding-left:18px}.dietaryEnforcement{color:var(--t-body,#5c4632);margin-bottom:4px;font-size:.82rem;line-height:1.45}.dietaryEnforcement.is-none{color:var(--t-muted,#7a5c3a)}.omitAddIns{color:var(--action-text,var(--action-strong));margin:6px 0;font-size:.88rem}.cookingConfidenceOptions{flex-direction:column;margin-top:6px}.confidenceOption{text-align:left;border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);width:100%;min-height:48px;color:var(--t-strong,#3d2c1f);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:16px;flex-direction:column;gap:4px;padding:14px 18px;transition:transform .12s,box-shadow .18s,background-color .18s,border-color .18s,color .18s;display:flex}.confidenceOption:hover{border-color:var(--b-strong,#c89770)}.confidenceOption:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.confidenceOption:active{transform:scale(.99)}.confidenceOption.active{background:var(--action-strong);color:#fff;border-color:var(--a-base,#d66b24);box-shadow:0 6px 18px #d66b2452}.confidenceOption.active:hover{border-color:var(--action-strong);background:var(--action-strong-hover)}.confidenceOptionLabel{font-size:1rem;font-weight:700}.confidenceOptionBlurb{color:var(--t-muted,#7a5c3a);font-size:.86rem;line-height:1.4}.confidenceOption.active .confidenceOptionBlurb{color:#ffffffe0}.confidenceClear{cursor:pointer;color:var(--action-text,var(--action-strong));background:0 0;border:none;margin-top:12px;padding:6px 2px;font-size:.88rem;font-weight:600;text-decoration:underline}.confidenceClear:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.disclaimerBackdrop{z-index:1000;background:#281c128c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.disclaimerDialog{background:var(--s-soft,#fffaf2);border-radius:16px;width:100%;max-width:540px;max-height:85vh;padding:24px;overflow-y:auto;box-shadow:0 18px 48px #281c1257}.disclaimerDialog h2{color:var(--t-strong,#3d2c1f);margin:0 0 6px;font-size:1.25rem}.disclaimerSubject{color:var(--t-muted,#7a5c3a);margin:0 0 14px;font-size:.92rem}.disclaimerBody p{color:var(--t-body,#5c4632);margin:0 0 12px;font-size:.9rem;line-height:1.5}.disclaimerCrossContact{color:var(--action-text,var(--action-strong));font-weight:600}.disclaimerActions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.disclaimerAffirm{background:var(--action-strong);color:#fff;cursor:pointer;border:none;border-radius:999px;min-height:48px;padding:12px 22px;font-size:1rem;font-weight:700}.disclaimerAffirm:hover{background:var(--action-strong-hover)}.disclaimerAffirm:focus-visible{outline:2px solid var(--b-strong,#3d2c1f);outline-offset:2px}@media (width<=480px){.disclaimerActions{flex-direction:column-reverse}.disclaimerActions button{width:100%}}.disclaimerAddendum{border-top:1px solid var(--b-soft,#e2cdb0);margin-top:14px;padding-top:12px}.disclaimerAddendum p{color:var(--t-body,#5c4632);margin:0 0 10px;font-size:.88rem;line-height:1.5}.disclaimerAddendum.is-medical p{color:var(--t-muted,#7a5c3a)}.disclaimerAddendum.is-allergy p{color:var(--action-text,var(--action-strong));font-weight:600}.householdRow{margin-top:16px}.householdRowLabel{color:var(--t-strong,#3d2c1f);margin-bottom:6px;font-size:.95rem;font-weight:700;display:block}.householdHint{color:var(--t-muted,#7a5c3a);margin:0 0 8px;font-size:.85rem;line-height:1.45}.householdInput{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);min-height:44px;color:var(--t-strong,#3d2c1f);border-radius:10px;width:100%;max-width:320px;padding:10px 14px;font-family:inherit;font-size:1rem}.householdInput:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.householdAddRow{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.householdRoster{margin:0;padding:0;list-style:none}.householdRoster li{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:10px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex}.householdRole{text-transform:uppercase;letter-spacing:.04em;background:var(--s-chip,#f2e7d7);color:var(--t-muted,#7a5c3a);border-radius:999px;padding:3px 9px;font-size:.7rem;font-weight:700}.householdSelf{color:var(--t-muted,#a98d70);font-size:.8rem}.scanPrivacyNotice{color:var(--t-body,#5c4632);background:var(--s-chip,#f6efe3);border-radius:8px;margin:0 0 8px;padding:8px 10px;font-size:.82rem;line-height:1.45}.scanReviewReminder{color:var(--t-muted,#7a5c3a);margin:0 0 12px;font-size:.82rem;line-height:1.45}.scanManualAdd{border-top:1px solid var(--b-soft,#e2cdb0);margin-top:14px;padding-top:12px}.scanManualAdd label{color:var(--t-strong,#3d2c1f);margin-bottom:6px;font-size:.88rem;font-weight:600;display:block}.scanManualList{margin:10px 0 0;padding:0;list-style:none}.scanManualList li{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;padding:8px 10px;font-size:.9rem;display:flex}.inventoryReviewList{margin:12px 0;padding:0;list-style:none}.inventoryReviewItem{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:10px 12px;font-size:.95rem;display:flex}.inventoryReviewName{color:var(--t-strong,#3d2c1f)}.inventoryReviewRemove{color:var(--t-muted,#8f4a2a);cursor:pointer;background:0 0;border:none;border-radius:8px;min-width:40px;min-height:40px;font-size:1.25rem;line-height:1}.inventoryReviewRemove:hover{background:var(--s-chip,#f3e4d2)}.inventoryReviewEmpty{color:var(--t-muted,#7b6756);margin:12px 0;font-size:.95rem}.inventoryReviewAdd{border-top:1px solid var(--b-soft,#e2cdb0);margin:14px 0;padding-top:12px}.inventoryReviewAdd label{color:var(--t-strong,#3d2c1f);margin:10px 0 6px;font-size:.9rem;font-weight:600;display:block}.inventoryAddSelect{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:8px;width:100%;padding:10px;font-size:.95rem}.inventoryManualRow{gap:8px;display:flex}.inventoryManualInput{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:8px;flex:1;padding:10px;font-size:.95rem}.inventoryManualAdd{border:1px solid var(--b-strong,#c9a97f);background:var(--s-chip,#f3e4d2);color:var(--t-strong,#3d2c1f);cursor:pointer;border-radius:8px;padding:10px 16px;font-weight:600}.stepBack{min-height:44px;color:var(--action-text,var(--action-strong));cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:6px;margin:0 0 6px;padding:8px 12px 8px 0;font-size:.98rem;font-weight:700;display:inline-flex}.stepBack:hover{color:var(--action-strong-hover);text-decoration:underline}.stepBack:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px;border-radius:8px}.liveCamBackdrop{z-index:60;background:#1c120a;flex-direction:column;display:flex;position:fixed;inset:0}.liveCamHeader{color:#fff;background:#0006;flex:none;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.liveCamHeader h2{color:#fff;margin:0;font-size:1.05rem}.liveCamHeader .scanClose{color:#fff}.liveCamHeader .scanClose:hover{color:#fff;background:#ffffff29}.liveCamStage{flex:auto;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.liveCamVideo{object-fit:cover;background:#000;width:100%;height:100%}.liveCamHint{color:var(--t-muted,#fdf3e7);text-align:center;background:#0000008c;border-radius:12px;margin:0;padding:8px 12px;font-size:.95rem;position:absolute;bottom:12px;left:12px;right:12px}.liveCamLive{display:contents}.liveCamScan{z-index:2;justify-content:center;min-width:220px;min-height:48px;position:absolute;bottom:64px;left:50%;transform:translate(-50%)}.liveCamMessage{color:var(--t-muted,#fdf3e7);text-align:center;padding:24px;font-size:1rem}.liveCamCaptureError{z-index:2;border-left:4px solid var(--a-base,#ffb469);max-width:calc(100% - 24px);color:var(--t-muted,#fdf3e7);text-align:center;background:#0000008c;border-radius:12px;margin:0;padding:8px 14px;font-size:.9rem;font-weight:700;position:absolute;bottom:128px;left:50%;transform:translate(-50%)}.snapReview{z-index:60;background:var(--bg,#fffaf2);color:var(--t-strong,#2d2118);flex-direction:column;gap:12px;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.guidedAddOverlay{z-index:60;background:var(--bg,#fffaf2);color:var(--t-strong,#2d2118);flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.guidedAddChrome{background:var(--bg,#fffaf2);z-index:1;border-bottom:1px solid #0000001a;flex:none;justify-content:space-between;align-items:center;padding:10px 16px;display:flex;position:sticky;top:0}.guidedAddProgress{color:var(--t-muted,#6a5a48);font-size:.95rem;font-weight:700}.guidedAddExit{justify-content:center;min-width:40px;min-height:40px;padding:8px}.guidedAddDone{text-align:center;flex-direction:column;align-items:center;gap:16px;max-width:420px;margin:auto;padding:24px;display:flex}.snapCentered{text-align:center;flex-direction:column;align-items:center;gap:16px;margin:auto;padding:24px;display:flex}.snapPreviewThumb{object-fit:cover;border:1px solid #00000026;border-radius:12px;max-width:220px;max-height:220px}.snapPreviewFigure{text-align:center;flex-direction:column;align-items:center;gap:6px;margin:0 0 4px;display:flex}.snapPreviewThumbReview{max-width:160px;max-height:160px}.snapBody{flex-direction:column;gap:14px;width:100%;max-width:560px;margin:0 auto;display:flex}.snapList{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.snapItem{border:1px solid #0000001f;border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.snapItemMain{justify-content:space-between;align-items:center;gap:8px;display:flex}.snapName{font-weight:700}.snapCorrectLink{color:var(--action-strong,#b0560d);cursor:pointer;background:0 0;border:none;margin-left:8px;padding:4px;font-size:.82rem;font-weight:600;text-decoration:underline}.snapCorrectLink:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:1px}.snapQty{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.snapQty label{flex:100%;font-size:.95rem}.snapQtyInput{border:1px solid #0003;border-radius:8px;min-width:88px;min-height:44px;padding:8px;font-size:1rem}.snapUnit{color:var(--t-muted,#6a5a48)}.snapHint{color:var(--t-muted,#6a5a48);flex:100%;font-size:.85rem}.snapCourtesy{border:1px solid var(--action-strong,#b0560d);background:var(--s-soft,#fff6ec);border-radius:12px;padding:12px}.snapActions{flex-wrap:wrap;gap:8px;display:flex}.snapActions>button,.snapFooter>button{min-height:44px}.snapFooter{background:var(--bg,#fffaf2);justify-content:space-between;gap:8px;margin-top:8px;padding-top:8px;display:flex;position:sticky;bottom:0}.snapFinalItem{border:1px solid #0000001f;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.snapFinalQty{font-variant-numeric:tabular-nums;color:var(--t-strong,#2d2118)}.snapUnknown{flex-direction:column;flex:1;gap:6px;display:flex}.snapIdentityInput{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.snapIdentityInput .ingSearchWrap{flex:160px}.snapIdentityInput button{flex:none;width:auto;min-height:44px}.ingSearchWrap{flex-direction:column;gap:6px;display:flex;position:relative}.ingSearchWrap label{color:var(--t-strong,#3d2c1f);font-size:.88rem;font-weight:600}.ingSearchList{z-index:5;background:var(--s-soft,#fffaf2);border:1.5px solid var(--b-soft,#e2cdb0);border-radius:12px;max-height:240px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 6px 18px #2d21182e}.ingSearchOption{text-align:left;width:100%;min-height:40px;color:var(--t-strong,#3d2c1f);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 10px;font-size:.92rem;display:block}.ingSearchOption:hover,.ingSearchOption.active{background:var(--warn-bg,#fdeccb)}.ingSearchOption:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:-2px}.snapNotInList{font-style:italic}.liveCamNotice{background:var(--s-soft,#fffaf2);max-width:420px;color:var(--t-strong,#2d2118);text-align:center;border-radius:16px;margin:16px;padding:20px}.liveCamNoticeTitle{margin:0 0 8px;font-size:1.05rem;font-weight:800}.liveCamNotice p{margin:0 0 12px;line-height:1.5}.liveCamWarn{color:var(--action-text,var(--action-strong));font-weight:600}.liveCamNotice .primaryCta{width:100%}.liveCamFooter{background:#0006;flex:none;padding:12px}.liveCamBack{justify-content:center;width:100%;min-height:48px}.liveCamOpen{background:var(--action-strong);color:#fff;cursor:pointer;border:0;border-radius:14px;width:100%;min-height:48px;margin:8px 0 14px;padding:12px 16px;font-size:1rem;font-weight:700;display:block}.liveCamOpen:hover{background:var(--action-strong-hover)}.liveCamOpen:focus-visible{outline:3px solid var(--a-base,#ffb469);outline-offset:2px}.liveCamOpen:active{transform:scale(.98)}.inventoryAddLabel{color:var(--t-strong,#3d2c1f);margin:10px 0 6px;font-size:.9rem;font-weight:600;display:block}.inventoryAddOpen{text-align:left;border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);width:100%;min-height:48px;color:var(--t-strong,#3d2c1f);cursor:pointer;border-radius:8px;padding:11px 12px;font-size:.95rem;display:block}.inventoryAddOpen:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.pickerBackdrop{z-index:50;background:#180f0880;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.pickerDialog{background:var(--s-soft,#fffaf2);border-radius:18px 18px 0 0;flex-direction:column;width:100%;max-width:560px;max-height:85svh;display:flex;box-shadow:0 -8px 40px #28180859}.pickerHeader{border-bottom:1px solid var(--b-soft,#e2cdb0);flex:none;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.pickerHeader h2{color:var(--t-strong,#3d2c1f);margin:0;font-size:1.1rem}.pickerClose{width:44px;height:44px;color:var(--t-body,#5a4636);cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.pickerClose:hover{background:var(--s-chip,#f2e2cf);color:var(--action-text,var(--action-strong))}.pickerClose:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.pickerList{flex:auto;margin:0;padding:6px;list-style:none;overflow-y:auto}.pickerOption{text-align:left;width:100%;min-height:48px;color:var(--t-strong,#2d2118);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:12px 14px;font-size:1rem;display:block}.pickerOption:hover{background:var(--s-chip,#f7e9d6)}.pickerOption:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:-2px}.pickerEmpty{color:var(--t-muted,#6b5848);text-align:center;padding:22px 16px}.pickerFooter{border-top:1px solid var(--b-soft,#e2cdb0);flex:none;padding:12px 14px}.pickerCancel{justify-content:center;width:100%;min-height:48px}@media (width>=560px){.pickerBackdrop{align-items:center}.pickerDialog{border-radius:18px}}.firstMealResults{margin:12px 0 4px}.firstMealNote{color:var(--t-body,#5c4632);margin:12px 0;font-size:.98rem;line-height:1.5}.firstMealConfidence{margin:8px 0 4px}.firstMealLoadError .firstMealRetry,.resultsLoadError .resultsRetry{margin-top:4px}.surfacePlaceholder{justify-content:center;align-items:center;min-height:96px;display:flex}.surfacePlaceholderText{color:var(--t-muted,#a98d70);margin:0;font-size:.9rem}.surfaceUnavailable{color:var(--t-muted,#7a5c3a);background:var(--s-chip,#f6efe3);border-radius:10px;margin:0 0 16px;padding:12px 14px;font-size:.9rem}.scanUnavailableTitle{color:var(--t-strong,#3d2c1f);margin:0 0 6px;font-size:1rem;font-weight:700}.scanSimulatedBanner{background:var(--warn-bg,#fdf0d5);border:1.5px solid var(--warn-border,#d99b2b);color:var(--t-body,#6b4a12);border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:.85rem;line-height:1.45}.scanSimulatedBanner strong{text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px;font-size:.75rem;display:block}.internalCard{border:2px dashed var(--warn-border,#d99b2b)}.internalBadge{text-transform:uppercase;letter-spacing:.05em;background:var(--warn-bg,#fdf0d5);color:var(--t-body,#6b4a12);border-radius:999px;margin-left:8px;padding:3px 9px;font-size:.7rem;font-weight:700}.internalBuildLine{color:var(--t-muted,#7a5c3a);margin:0 0 12px;font-family:ui-monospace,monospace;font-size:.78rem}.internalSection{border-top:1px solid var(--b-soft,#e2cdb0);margin-top:18px;padding-top:14px}.internalSection h3{color:var(--t-strong,#3d2c1f);margin:0 0 8px;font-size:1rem}.internalClock{color:var(--t-strong,#3d2c1f);margin:0;font-family:ui-monospace,monospace;font-size:2.4rem;font-weight:700}.internalHint{color:var(--t-muted,#7a5c3a);margin:4px 0 10px;font-size:.82rem}.internalSplits{margin-top:8px}.internalFields{gap:10px;margin:12px 0;display:grid}.internalFields label{color:var(--t-strong,#3d2c1f);font-size:.85rem;font-weight:600;display:block}.internalFields input,.internalFields select,.internalFields textarea{margin-top:4px}.internalResults{gap:4px;margin:12px 0;padding:0;list-style:none;display:grid}.internalResult{background:var(--s-soft,#fffaf2);border:1px solid var(--b-soft,#e2cdb0);border-radius:8px;padding:6px 10px;font-size:.82rem}.internalResult.is-pass{border-color:var(--ok-border,#7ba05b)}.internalResult.is-fail{border-color:var(--danger-border,#c0392b);background:var(--s-soft,#fdeeec)}.internalResult.is-inconclusive{border-color:var(--warn-border,#d99b2b)}.internalFilters{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.internalRecordList{margin:0;padding:0;list-style:none}.internalRecordList li{flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;display:flex}.internalRecordOpen{text-align:left;cursor:pointer;color:var(--t-strong,#3d2c1f);background:0 0;border:none;flex:auto;font-size:.9rem;text-decoration:underline}.internalConfirm{color:var(--action-text,var(--action-strong));align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.internalExport{width:100%;font-family:ui-monospace,monospace;font-size:.72rem}.internalSummary{white-space:pre-wrap;background:var(--s-soft,#fffaf2);border:1px solid var(--b-soft,#e2cdb0);border-radius:8px;padding:10px;font-size:.75rem;overflow-x:auto}.profileStatusNotice{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-left:4px solid var(--b-strong,#c89770);border-radius:10px;margin:0 0 16px;padding:12px 14px}.profileStatusNotice.is-warning{border-left-color:var(--danger-border,#b8341c);background:var(--s-soft,#fdf0ec);border-color:var(--b-soft,#edc4b8)}.profileStatusTitle{color:var(--t-strong,#3d2c1f);margin:0 0 4px;font-size:.95rem;font-weight:700}.profileStatusNotice.is-warning .profileStatusTitle{color:var(--danger-text,#8f2716)}.profileStatusBody{color:var(--t-body,#5c4632);margin:0;font-size:.88rem;line-height:1.45}.profileStatusRetry{margin-top:10px;padding:8px 12px;font-size:.9rem}.signInPanel{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:14px;margin:0 0 16px;padding:16px 18px}.signInPanel h3{color:var(--t-strong,#3d2c1f);margin:0 0 8px;font-size:1rem}.signInIntro,.signInIdentity{color:var(--t-body,#5c4632);margin:0 0 12px;font-size:.88rem;line-height:1.45}.signInForm{flex-direction:column;gap:6px;display:flex}.signInForm label{color:var(--t-body,#5c4632);font-size:.85rem;font-weight:600}.signInForm input{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-card,#fff);color:var(--t-strong,#3d2c1f);border-radius:10px;margin-bottom:6px;padding:10px 12px;font-size:.95rem}.signInForm input:focus{outline:2px solid var(--a-base,#d66b24);outline-offset:1px}.signInActions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.signInError,.signInWarning{color:var(--danger-text,#8f2716);margin:10px 0 0;font-size:.88rem;line-height:1.45}.signInNotice{color:var(--t-body,#5c4632);margin:10px 0 0;font-size:.88rem;line-height:1.45}.signInForm input:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:1px}.signInActions button:focus-visible,.signInPanel .ghost:focus-visible{outline:2px solid var(--b-strong,#3d2c1f);outline-offset:2px}.signInHelp{color:var(--t-body,#6b5334);margin:2px 0 8px;font-size:.82rem;line-height:1.4}.signInForgot{min-height:32px;color:var(--a-text,#a34d0c);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;margin-top:10px;padding:6px 4px;font-weight:600;text-decoration:underline}.signInForgot:hover{color:var(--a-text,#7a3a08)}.signInForgot:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px;border-radius:4px}.rosterPanel{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:14px;margin:0 0 16px;padding:16px 18px}.rosterPanel h3{color:var(--t-strong,#3d2c1f);margin:0 0 10px;font-size:1rem}.rosterPanel h4{color:var(--t-strong,#3d2c1f);margin:14px 0 6px;font-size:.92rem}.rosterList{margin:0;padding:0;list-style:none}.rosterRow{border-bottom:1px solid var(--b-soft,#f0e3d0);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 0;display:flex}.rosterRow.is-pending{opacity:.85}.rosterName{color:var(--t-strong,#3d2c1f);font-size:.92rem;font-weight:600}.rosterYou{color:var(--t-muted,#7a5c3a);font-weight:400}.rosterRole{color:var(--t-body,#5c4632);margin-left:auto;font-size:.85rem}.rosterActions{flex-basis:100%;justify-content:flex-end;align-items:center;gap:6px;display:flex}.rosterActions select{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-card,#fff);color:var(--t-strong,#3d2c1f);border-radius:8px;padding:5px 8px;font-size:.85rem}.rosterActions .ghost{padding:5px 10px;font-size:.85rem}.rosterHint{color:var(--t-muted,#7a5c3a);margin:6px 0 0;font-size:.82rem;line-height:1.45}.rosterLoading,.rosterEmpty{color:var(--t-body,#5c4632);margin:0;font-size:.88rem}.rosterNotice{color:var(--t-body,#5c4632);margin:8px 0 0;font-size:.88rem;line-height:1.45}.rosterError{color:var(--danger-text,#8f2716);border-left:4px solid var(--danger-border,#b8341c);background:var(--s-soft,#fdf0ec);border-radius:8px;margin:8px 0 0;padding:10px 12px;font-size:.88rem;line-height:1.45}.rosterInviteBanner{border:1px solid var(--b-soft,#e2cdb0);border-left:4px solid var(--a-base,#d66b24);background:var(--s-soft,#fff6ec);border-radius:10px;margin:0 0 12px;padding:12px 14px}.rosterInviteBanner p{color:var(--t-strong,#3d2c1f);margin:0 0 8px;font-size:.9rem}.rosterInviteForm{flex-direction:column;gap:6px;margin-top:12px;display:flex}.rosterInviteForm label{color:var(--t-body,#5c4632);font-size:.85rem;font-weight:600}.rosterInviteForm input,.rosterInviteForm select{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-card,#fff);color:var(--t-strong,#3d2c1f);border-radius:10px;padding:9px 12px;font-size:.92rem}.rosterInviteForm button{align-self:flex-start;margin-top:8px}.visuallyHidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.householdSwitcher{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:14px;margin:0 0 16px;padding:16px 18px}.householdSwitcher h3{color:var(--t-strong,#3d2c1f);margin:0 0 10px;font-size:1rem}.switcherLabel{color:var(--t-body,#5c4632);margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.switcherSelect{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-card,#fff);color:var(--t-strong,#3d2c1f);border-radius:10px;width:100%;max-width:320px;padding:9px 12px;font-size:.92rem}.switcherSelect:disabled{opacity:.6;cursor:wait}.switcherSingle{color:var(--t-strong,#3d2c1f);margin:0;font-size:.95rem;font-weight:600}.switcherEmpty{color:var(--t-body,#5c4632);margin:0;font-size:.88rem;line-height:1.45}.switcherBusy{color:var(--t-muted,#7a5c3a);margin:8px 0 0;font-size:.85rem}.switcherWarning{color:var(--t-body,#6b4310);border-left:4px solid var(--a-base,#d66b24);background:var(--s-soft,#fff6ec);border-radius:8px;margin:0 0 10px;padding:10px 12px;font-size:.88rem;line-height:1.45}.lifecyclePanel{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:14px;margin:0 0 16px;padding:16px 18px}.lifecyclePanel h3{color:var(--t-strong,#3d2c1f);margin:0 0 10px;font-size:1rem}.lifecyclePanel h4{color:var(--t-strong,#3d2c1f);margin:0 0 6px;font-size:.92rem}.lifecyclePanel p{color:var(--t-body,#5c4632);margin:0 0 10px;font-size:.88rem;line-height:1.45}.lifecycleLoading{color:var(--t-body,#5c4632);margin:0;font-size:.88rem}.lifecycleNotice{color:var(--t-body,#5c4632);margin:8px 0 0;font-size:.88rem;line-height:1.45}.lifecycleHint{color:var(--t-muted,#7a5c3a);margin:6px 0 12px;font-size:.82rem;line-height:1.45}.lifecycleError{color:var(--danger-text,#8f2716);border-left:4px solid var(--danger-border,#b8341c);background:var(--s-soft,#fdf0ec);border-radius:8px;margin:8px 0 12px;padding:10px 12px;font-size:.88rem;line-height:1.45}.lifecycleWarning{color:var(--t-body,#6b4310);border-left:4px solid var(--a-base,#d66b24);background:var(--s-soft,#fff6ec);border-radius:8px;margin:0 0 10px;padding:10px 12px;font-size:.86rem;line-height:1.45}.lifecycleAction{border-top:1px solid var(--b-soft,#f0e3d0);margin-top:14px;padding-top:12px}.lifecycleDanger{border-left:4px solid var(--danger-border,#b8341c);border-radius:0 8px 8px 0;padding-left:12px}.lifecyclePending{border:1px solid var(--b-soft,#e2cdb0);border-left:4px solid var(--a-base,#d66b24);background:var(--s-soft,#fff6ec);border-radius:10px;margin:0 0 12px;padding:12px 14px}.lifecyclePending p{color:var(--t-strong,#3d2c1f);margin:0 0 8px;font-size:.9rem}.lifecycleConfirm{flex-direction:column;gap:6px;margin-top:10px;display:flex}.lifecycleConfirm label{color:var(--t-body,#5c4632);font-size:.85rem;font-weight:600}.lifecycleConfirm input{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-card,#fff);color:var(--t-strong,#3d2c1f);border-radius:10px;max-width:220px;padding:9px 12px;font-size:.92rem}.lifecycleConfirm button{align-self:flex-start}.lifecycleConfirm button:disabled{opacity:.55;cursor:not-allowed}.lifecycleReason{flex-direction:column;gap:6px;margin:6px 0;display:flex}.lifecycleConfirm .lifecycleReasonHint{color:var(--t-muted,#7a5c3a);margin:0;font-size:.82rem;line-height:1.45}.lifecycleConfirm select{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-card,#fff);color:var(--t-strong,#3d2c1f);border-radius:10px;max-width:320px;min-height:44px;padding:9px 12px;font-size:.92rem}.invitationsPanel{border:1px solid var(--b-soft,#e2cdb0);border-left:4px solid var(--a-base,#d66b24);background:var(--s-soft,#fff6ec);border-radius:14px;margin:0 0 16px;padding:16px 18px}.invitationsPanel h3{color:var(--t-strong,#3d2c1f);margin:0 0 10px;font-size:1rem}.rosterTransfer{border-top:1px solid var(--b-soft,#f0e3d0);margin-top:16px;padding-top:12px}.transferBackdrop{z-index:1000;background:#281c128c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.transferDialog{background:var(--s-soft,#fffaf2);border-radius:16px;width:100%;max-width:480px;padding:22px;box-shadow:0 18px 48px #281c1257}.transferDialog h3{color:var(--t-strong,#3d2c1f);margin:0 0 12px;font-size:1.05rem}.transferConsequences{margin:0 0 16px;padding-left:20px}.transferConsequences li{color:var(--t-body,#5c4632);margin-bottom:6px;font-size:.9rem;line-height:1.5}.transferActions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.billingPanel{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:14px;margin:0 0 16px;padding:16px 18px}.billingPanel h3{color:var(--t-strong,#3d2c1f);margin:0 0 10px;font-size:1rem}.billingPanel h4{color:var(--t-strong,#3d2c1f);margin:14px 0 6px;font-size:.92rem}.billingPanel h5{color:var(--t-strong,#3d2c1f);margin:0 0 4px;font-size:.95rem}.billingPanel p{color:var(--t-body,#5c4632);margin:0 0 10px;font-size:.88rem;line-height:1.45}.billingPlanName{color:var(--t-strong,#3d2c1f);font-weight:700}.billingLoading,.billingHint{color:var(--t-muted,#7a5c3a);font-size:.86rem}.billingNotice{border-left:4px solid var(--a-base,#d66b24);background:var(--s-soft,#fff6ec);border-radius:8px;padding:10px 12px}.billingError{color:var(--danger-text,#8f2716);border-left:4px solid var(--danger-border,#b8341c);background:var(--s-soft,#fdf0ec);border-radius:8px;padding:10px 12px}.billingInterval{border:0;flex-wrap:wrap;gap:16px;margin:0 0 12px;padding:0;display:flex}.billingInterval legend{color:var(--t-body,#5c4632);margin-bottom:6px;padding:0;font-size:.85rem;font-weight:600}.billingIntervalOption{color:var(--t-strong,#3d2c1f);align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.billingPlans{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.billingPlan{border:1px solid var(--b-soft,#e2cdb0);background:var(--s-card,#fff);border-radius:12px;padding:12px 14px}.billingPrice{color:var(--t-strong,#3d2c1f);font-weight:600}.billingAutoRenew{color:var(--t-body,#5c4632);margin:8px 0;font-size:.85rem;line-height:1.4}.billingPlan button,.billingManage button{cursor:pointer;border:1.5px solid var(--a-base,#d66b24);background:var(--action-strong);color:#fff;width:100%;min-height:48px;font:inherit;border-radius:12px;margin-top:4px;padding:10px 16px;font-weight:700;display:block}.billingPlan button:hover,.billingManage button:hover{background:var(--action-strong-hover)}.billingPlan button:focus-visible,.billingManage button:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}.billingPlan button:disabled,.billingManage button:disabled{opacity:.6;cursor:not-allowed}.billingIntervalOption{min-height:44px}.billingIncludes{margin:4px 0 10px}.billingPanel .billingIncludesTitle{color:var(--t-strong,#3d2c1f);margin:0 0 4px;font-size:.85rem;font-weight:600}.billingIncludes ul{margin:0;padding:0 0 0 1.2em;list-style:outside}.billingIncludes li{color:var(--t-body,#5c4632);overflow-wrap:anywhere;margin:0 0 3px;font-size:.86rem;line-height:1.45}.voiceField{margin-top:8px}.voiceMic{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);min-height:44px;color:var(--t-strong,#3d2c1f);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-weight:600;display:inline-flex}.voiceMic:hover{border-color:var(--b-strong,#c89770)}.voiceMic:focus-visible,.voiceAction:focus-visible,.voiceGhost:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.voiceMic.isListening{background:var(--action-strong);border-color:var(--action-strong);color:#fff;animation:1.4s ease-in-out infinite voicePulse}@keyframes voicePulse{0%,to{box-shadow:0 0 #b0560d59}50%{box-shadow:0 0 0 8px #b0560d00}}@media (prefers-reduced-motion:reduce){.voiceMic.isListening{animation:none}}.voiceStatus{min-height:1.4em;color:var(--t-body,#584637);margin:8px 0 0;font-size:.95rem}.voiceInterim{color:var(--t-muted,#7b6756);margin:4px 0 0;font-size:.9rem;font-style:italic}.voiceActions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.voiceAction,.voiceGhost{cursor:pointer;touch-action:manipulation;border-radius:14px;min-height:44px;padding:8px 16px;font-weight:600}.voiceAction{border:1.5px solid var(--action-strong);background:var(--action-strong);color:#fff}.voiceAction:hover{background:var(--action-strong-hover);border-color:var(--action-strong-hover)}.voiceGhost{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);color:var(--t-strong,#3d2c1f)}.voiceGhost:hover{border-color:var(--b-strong,#c89770)}.voiceDisclosure{border:1px solid var(--b-soft,#d9d2e8);background:var(--s-soft,#f6f4fb);color:var(--t-body,#4a4458);border-radius:14px;margin-top:8px;padding:12px 14px;font-size:.95rem}.voiceDisclosure p{margin:0 0 8px}.voiceDisclosure .voiceDisclosureTitle{font-weight:700}.cookingMode{margin:10px 0 4px}.cookingPanel{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:18px;margin-top:10px;padding:14px 16px}.cookingHeading{color:var(--t-strong,#3d2c1f);margin:0 0 6px;font-size:1.05rem}.cookingHeading:focus{outline:none}.cookingHeading:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:3px;border-radius:6px}.cookingStepText{color:var(--t-strong,#2d2118);margin:0 0 10px;font-size:1.2rem;line-height:1.5}.cookingControls .voiceAction:disabled,.cookingControls .voiceMic:disabled{opacity:.55;cursor:not-allowed}.cookingVoice{color:var(--t-muted,#7b6756);margin:4px 0 0;font-size:.85rem}.cookingSettings{margin-top:10px}.cookingSettings summary{cursor:pointer;color:var(--t-strong,#3d2c1f);min-height:32px;padding:6px 0;font-weight:600}.cookingSettings summary:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px;border-radius:6px}.cookingSettingsBody{flex-wrap:wrap;gap:12px;padding:6px 0 2px;display:flex}.cookingField{color:var(--t-body,#584637);flex-direction:column;flex:200px;gap:4px;font-size:.9rem;display:flex}.cookingField select{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffdf9);min-height:44px;font:inherit;color:var(--t-strong,#2d2118);border-radius:12px;padding:8px 10px}.voiceMic,.voiceGhost,.cookingField select{border-color:var(--b-strong,#8a6a4a)}.voiceHint{color:var(--t-body,#584637);margin:4px 0 0;font-size:.9rem}.cookingControls .voiceAction,.cookingControls .voiceGhost,.cookingControls .voiceMic{min-height:56px}.cookingSettings summary{align-items:center;min-height:44px;display:flex}.cookingSettingsActions{flex-wrap:wrap;flex:100%;gap:10px;display:flex}.voiceAction[aria-disabled=true],.voiceMic[aria-disabled=true]:not(.isListening){opacity:.55;cursor:not-allowed}.voiceMic.isListening[aria-disabled=true]{opacity:1}.legalGate{max-width:560px;margin:24px auto}.legalGate h1{margin-top:0;font-size:1.6rem}.legalGateItem{align-items:flex-start;gap:10px;margin:14px 0;display:flex}.legalGateItem input[type=checkbox]{width:24px;height:24px;accent-color:var(--a-base,#d2691e);flex:none;margin:0}.legalGateItem label{line-height:1.45}.privacyToggle{align-items:flex-start;gap:10px;margin:16px 0 4px;display:flex}.privacyToggle input[type=checkbox]{width:24px;height:24px;accent-color:var(--a-base,#d2691e);flex:none;margin:0}.privacyToggle label{font-weight:600;line-height:1.45}.privacyToggle input[type=checkbox]:disabled+label{opacity:.75}.privacyCard .hint{margin-top:2px}.legalGateItem a{color:var(--a-text,#a4470f);text-underline-offset:2px;text-decoration:underline}.legalGateItem a:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px;border-radius:2px}.onboardingStep h1{margin:4px 0 10px;font-size:1.5rem;line-height:1.25}.onboardingStep .card>p{margin:0 0 14px;line-height:1.5}.onboardingStep>.card form{flex-direction:column;align-items:stretch;gap:0;display:flex}.onboardingStep>.card form>label,.onboardingStep>.card form>div>label:not([class]){color:var(--t-strong,#3d2c1f);margin:18px 0 8px;font-size:1rem;font-weight:700;display:block}.onboardingStep>.card form>label:first-child{margin-top:4px}.onboardingStep>.card input[type=text]:not([class]),.onboardingStep>.card input[type=email]:not([class]),.onboardingStep>.card input[type=number]:not([class]),.onboardingStep>.card input[type=search]:not([class]),.onboardingStep>.card select:not([class]){box-sizing:border-box;border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-card,#fff);width:100%;min-height:48px;color:var(--t-strong,#3d2c1f);border-radius:12px;padding:12px 14px;font-size:1rem}.onboardingStep>.card input:not([class]):focus,.onboardingStep>.card select:not([class]):focus{outline:2px solid var(--a-base,#d66b24);outline-offset:1px}.onboardingStep>.card input:not([class])[aria-invalid=true]{border-color:var(--danger-border,#8f2716)}.onboardingHint{color:var(--t-body,#6b5334);margin:0 0 12px;font-size:.92rem;line-height:1.45}.fieldError{color:var(--danger-text,#8f2716);margin:10px 0 0;font-size:.92rem;font-weight:600;line-height:1.45}.primaryCta{border:1.5px solid var(--a-base,#d66b24);background:var(--action-strong);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;box-sizing:border-box;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:12px 20px;font-size:1.05rem;font-weight:700;display:inline-flex}.primaryCta:hover{background:var(--action-strong-hover)}.primaryCta:disabled{background:var(--s-chip,#e7d3bd);border-color:var(--b-soft,#e7d3bd);color:var(--t-muted,#9c8a72);cursor:not-allowed}.primaryCta:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.onboardingStep>.card form>.primaryCta{width:100%;margin-top:24px}.mealIntentGroup{border:0;min-width:0;margin:0 0 26px;padding:0}.mealIntentGroup>legend{color:var(--t-strong,#3d2c1f);margin:0 0 10px;padding:0;font-size:1.05rem;font-weight:700}.mealIntentGroup>legend+.mealIntentOptions{margin-top:2px}.mealIntentOptions{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.mealIntentOption{border:1.5px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);min-height:52px;color:var(--t-strong,#3d2c1f);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;box-sizing:border-box;border-radius:14px;align-items:center;gap:10px;padding:10px 14px;font-weight:600;display:flex}.mealIntentOption:hover{border-color:var(--b-strong,#c89770)}.mealIntentOption.is-selected{background:var(--s-chip,#fff2e4);border-color:var(--action-strong);box-shadow:0 4px 14px #d66b242e}.mealIntentOption.is-overridden{opacity:.6}.mealIntentOption input{width:20px;height:20px;accent-color:var(--action-strong);flex:none;margin:0}.mealIntentOption input:focus-visible{outline:2px solid var(--a-base,#d66b24);outline-offset:2px}.mealIntentOptionLabel{line-height:1.25}.onboardingLoading{color:var(--t-body,#6b5334)}@media (width<=640px){.onboardingStep .card{padding:20px 16px}.mealIntentOptions{grid-template-columns:1fr 1fr}}.signInActions button[type=submit]{border:1.5px solid var(--a-base,#d66b24);background:var(--action-strong);color:#fff;cursor:pointer;border-radius:14px;justify-content:center;align-items:center;min-height:44px;padding:10px 18px;font-weight:700;display:inline-flex}.signInActions button[type=submit]:hover{background:var(--action-strong-hover)}.signInActions button{min-height:44px}.signInActions button:disabled{opacity:.6;cursor:not-allowed}.appFooterLinks{flex-wrap:wrap;gap:6px 18px;margin-top:10px;display:flex}.appFooterLinks a{color:var(--action-text,var(--action-strong));align-items:center;min-height:44px;font-weight:600;display:inline-flex}.signInHelpLink{margin:14px 0 0;font-size:.9rem}.signInHelpLink a{color:var(--action-text,var(--action-strong));font-weight:600}:root{--tabbar-height:64px}:root:has(.tabbedApp){scroll-padding-bottom:calc(var(--tabbar-height) + 88px)}.tabbedApp{--shell-bg:#fff8ed;--shell-surface:#fffaf2;--shell-surface-hover:#fff3e2;--shell-border:#482e1a29;--shell-border-strong:#e2cdb0;--shell-shadow:#58361214;--shell-text:#2d2118;--shell-muted:#6b5848;--shell-accent:var(--action-strong);--shell-accent-hover:var(--action-strong-hover);--shell-on-accent:#fff;--shell-focus:#d66b24;background:var(--shell-bg);min-height:100dvh;color:var(--shell-text)}.tabbedApp button,.tabbedApp a{touch-action:manipulation}.appHeader{justify-content:space-between;align-items:center;gap:12px;max-width:1100px;margin:0 auto;padding:12px 24px 0;display:flex}.appHeaderBrand{align-items:center;gap:8px;min-width:0;display:inline-flex}.appHeaderIcon{color:var(--shell-focus);flex:none}.appHeaderName{letter-spacing:-.02em;font-size:1.1rem;font-weight:800}.appHeaderHousehold{color:var(--shell-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.92rem;font-weight:600;overflow:hidden}.tabbedPage{padding-bottom:calc(var(--tabbar-height) + 28px)}.tabTitle{letter-spacing:-.03em;margin:6px 0 4px;font-size:clamp(1.7rem,4vw,2.2rem);line-height:1.1}.tabTitle:focus{outline:none}.tabHint{margin:4px 0 12px}.tabBar{z-index:20;padding:4px 6px env(safe-area-inset-bottom,0px);background:var(--shell-surface);border-top:1px solid var(--shell-border);padding-left:max(6px, env(safe-area-inset-left,0px));padding-right:max(6px, env(safe-area-inset-right,0px));box-shadow:0 -8px 24px var(--shell-shadow);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tabBarItem{max-width:170px;min-height:56px;color:var(--shell-muted);-webkit-tap-highlight-color:transparent;border-radius:12px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:3px;padding:6px 2px;font-size:.8rem;font-weight:600;text-decoration:none;display:flex}.tabBarItem:hover{color:var(--shell-text)}.tabBarItem.active{color:var(--shell-accent);box-shadow:inset 0 3px 0 var(--shell-focus);font-weight:800}.tabBarItem:focus-visible{outline:3px solid var(--shell-focus);outline-offset:-3px}.tabBarLabel{text-align:center;overflow-wrap:anywhere;line-height:1.15}.seeMealsBar{z-index:4;bottom:var(--tabbar-height);background:var(--shell-bg);margin:18px 0 0;padding:10px 0;position:sticky}.seeMealsButton{-webkit-tap-highlight-color:transparent;cursor:pointer;background:var(--shell-accent);width:100%;min-height:52px;color:var(--shell-on-accent);border:0;border-radius:16px;font-size:1.1rem;font-weight:800}.seeMealsButton:focus-visible{outline:3px solid var(--shell-focus);outline-offset:2px}.card.filterBar{padding:0}.filterToggle{border-radius:inherit;cursor:pointer;width:100%;min-height:56px;color:var(--shell-text);text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}.filterToggle:hover{background:var(--shell-surface-hover)}.filterToggle:focus-visible{outline:3px solid var(--shell-focus);outline-offset:2px}.filterToggleText{flex-direction:column;gap:3px;min-width:0;display:flex}.filterToggleText strong{font-size:1.05rem}.filterToggleSummary{color:var(--shell-muted);font-size:.95rem}.filterToggleAction{color:var(--shell-accent);flex:none;font-weight:700}.filtersDone{cursor:pointer;background:var(--shell-surface);width:100%;min-height:48px;color:var(--shell-text);border:1.5px solid var(--shell-border-strong);-webkit-tap-highlight-color:transparent;border-radius:14px;margin:0 0 18px;font-weight:700;display:block}.filtersDone:hover{background:var(--shell-surface-hover)}.filtersDone:focus-visible{outline:3px solid var(--shell-focus);outline-offset:2px}.mealsStatus{margin:8px 0 4px}.mealsStatusLine{color:var(--shell-muted);margin:0 0 6px;font-size:.98rem;line-height:1.45}.linkButton{min-height:44px;color:var(--shell-accent);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;padding:0 6px;font-weight:700;text-decoration:underline;display:inline-flex}.linkButton:focus-visible{outline:3px solid var(--shell-focus);outline-offset:2px;border-radius:4px}@media (width<=640px){.appHeader{flex-wrap:wrap;padding:10px 14px 0}.appHeaderHousehold{white-space:normal;overflow:visible}.filterToggle{padding:14px 18px}}@media (height<=500px){.seeMealsBar{position:static}}.card.accountGroup{padding:0;overflow:hidden}.accountGroupHeading{font-size:inherit;margin:0}.accountGroupToggle{cursor:pointer;text-align:left;width:100%;min-height:64px;color:var(--shell-text,#2d2118);font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}.accountGroupToggle:hover{background:var(--shell-surface-hover,#fff3e2)}.accountGroupToggle:focus-visible{outline:3px solid var(--shell-focus,#d66b24);outline-offset:-3px}.accountGroupText{flex-direction:column;gap:3px;min-width:0;display:flex}.accountGroupTitle{font-size:1.15rem;font-weight:800}.accountGroupHint{color:var(--shell-muted,#6b5848);font-size:.95rem;font-weight:500}.accountGroupChevron{color:var(--shell-accent,#b0560d);flex:none;font-size:1.5rem;font-weight:700;line-height:1}.accountGroupLeave .accountGroupTitle{color:var(--danger-text,#a3321f)}.accountGroupBody{padding:0 22px 18px}.accountGroupBody>.card,.accountGroupBody .card{box-shadow:none;margin:12px 0 0}@media (width<=640px){.accountGroupToggle{padding:14px 18px}.accountGroupBody{padding:0 12px 14px}}.accountGroupBody .card>h3:first-child,.accountGroupBody section>h3:first-child{margin:0 0 14px;font-size:1.3rem}.accountGroupAttention{background:var(--danger-fill,#a3321f);color:#fff;border-radius:999px;align-self:flex-start;margin-top:4px;padding:3px 10px;font-size:.82rem;font-weight:700}.tabBarLabel{position:relative}.tabBarDot{vertical-align:super;background:var(--danger-fill,#a3321f);border-radius:50%;width:9px;height:9px;margin-left:4px;display:inline-block}.quickAdd{margin:0 0 16px}.quickAddLabel{margin:0 0 8px;font-size:1.02rem;font-weight:700;display:block}.quickAddRow{align-items:stretch;gap:8px;display:flex}.quickAddField{background:var(--s-card,#fff);border:1.5px solid var(--b-strong,#8a7058);border-radius:14px;flex:auto;align-items:center;gap:8px;min-width:0;min-height:52px;padding:0 12px;display:flex}.quickAddField:focus-within{border-color:var(--a-base,#d66b24);outline:3px solid var(--a-base,#d66b24);outline-offset:1px}.quickAddIcon{color:var(--t-muted,#7b6756);flex:none}.quickAddInput{min-width:0;color:var(--t-strong,#2d2118);background:0 0;border:0;flex:auto;padding:12px 0;font-size:16px}.quickAddInput:focus{outline:none}.quickAddButton{cursor:pointer;background:var(--action-strong);color:#fff;touch-action:manipulation;border:0;border-radius:14px;flex:none;min-height:52px;padding:0 18px;font-size:1rem;font-weight:800}.quickAddButton:hover:not(:disabled){background:var(--action-strong-hover)}.quickAddButton:disabled{opacity:.55;cursor:not-allowed}.quickAddButton:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}.quickAddSuggestions{flex-wrap:wrap;gap:8px;margin:10px 0 0;display:flex}.quickAddNote{min-height:1.2em;color:var(--t-body,#5f4a38);margin:8px 0 0;font-size:.95rem}.quickAddNote:empty{min-height:0;margin:0}.yourFood{margin:18px 0 8px}.yourFoodHeader{justify-content:space-between;align-items:center;gap:12px;display:flex}.yourFoodTitle{margin:0;font-size:1.15rem}.yourFoodList{flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.yourFoodList .selChip{min-height:44px;font-size:.95rem}.yourFoodEmpty{margin:6px 0 0}.kitchenListTitle{margin:22px 0 10px;font-size:1.15rem}.zoneFolding{margin-bottom:10px}.zoneFoldHeading{font-size:inherit;margin:0}.zoneFoldToggle{cursor:pointer;text-align:left;width:100%;min-height:60px;font:inherit;color:var(--t-strong,#2d2118);background:var(--s-soft,#fffaf2);border:1.5px solid var(--b-soft,#e2cdb0);-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.zoneFoldToggle:hover{background:var(--s-chip,#fff3e2)}.zoneFoldToggle:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}.zoneFoldToggle[aria-expanded=true]{border-color:var(--a-base,#d66b24)}.zoneFoldText{flex-direction:column;gap:2px;min-width:0;display:flex}.zoneFoldTitle{font-size:1.08rem;font-weight:800}.zoneFoldHint{color:var(--t-muted,#6b5848);font-size:.92rem}.zoneFoldCount{color:var(--a-text,#8a430a);font-size:.88rem;font-weight:700}.zoneFoldChevron{color:var(--t-muted,#7b6756);flex:none;font-size:1.2rem}.zoneFoldBody{padding:8px 2px 4px}.quickAddInput::placeholder{color:var(--t-muted,#6b5848);opacity:1}.quickAddSwap{margin-top:8px}.yourFoodTyped{margin:10px 0 0}@media (width<=380px){.quickAddRow{flex-wrap:wrap}.quickAddField,.quickAddButton{flex:100%}}.selChipTag{background:var(--s-chip,#f2e7d7);color:var(--t-body,#5f4a38);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:.72rem;font-weight:700}.recipeSummary .actions{margin-top:10px}.recipeSummary .actions button{min-height:44px;padding:10px 18px}.recipeScreen{margin:8px 0 0}.recipeBack{cursor:pointer;min-height:44px;font:inherit;color:var(--shell-accent,#b0560d);-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0;align-items:center;gap:4px;margin:0 0 6px;padding:8px 10px 8px 4px;font-weight:700;display:inline-flex}.recipeBack:focus-visible{outline:3px solid var(--shell-focus,#d66b24);outline-offset:2px;border-radius:8px}.recipeScreenTitle{margin:4px 0 12px;font-size:clamp(1.5rem,3.6vw,2rem);line-height:1.15}.recipeScreenTitle:focus,.aiRecipeDisclosure .scanUnavailableTitle:focus{outline:none}.recipeScreen .recipe{background:var(--s-soft,#fffdf9)}.shopSource{color:var(--t-muted,#6b5848);margin-top:2px;font-size:.85rem;font-weight:500;display:block}.shoppingCard .ghost{min-height:44px}:root[data-accent=ice]{--action-strong:#1d5f9e;--action-strong-hover:#164b7d;--a-base:#2f7fc4;--a-text:#1a5a94;--a-fill:#2a6fae}:root[data-mode=dark]{--bg:var(--s-page);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--s-page:#0e1013;--s-card:#1c2026;--s-soft:#171a1f;--s-chip:#262b32;--s-strong:#3a4048;--t-strong:#f6f1ea;--t-body:#e3dcd2;--t-muted:#c2bab0;--b-soft:#2f353d;--b-strong:#79818b;--a-base:#ff8a2a;--a-text:#ffb070;--a-fill:#ff8a2a;--action-strong:#b0560d;--action-strong-hover:#9a4a08;--action-text:var(--a-text);--danger-text:#ff9b8f;--danger-bg:#3a1e1a;--danger-border:#c9554a;--danger-fill:#b8341c;--ok-text:#8fd48a;--ok-bg:#16261a;--ok-border:#3f7a44;--ok-fill:#3f7a34;--warn-text:#f5d27a;--warn-bg:#2b2410;--warn-border:#9a7d2a;--warn-fill:#8a6a12;--info-text:#9fd3ff;--info-bg:#14202b;--info-border:#2f5a7c;--info-fill:#2f73b5}:root[data-mode=dark][data-accent=ice]{--a-base:#4db2ff;--a-text:#9fd3ff;--a-fill:#4db2ff;--action-strong:#2272b8;--action-strong-hover:#1a78c4}:root[data-mode=dark] body{background:var(--s-page);color:var(--t-strong)}:root[data-mode=dark] .card{background:var(--s-card);border-color:var(--b-soft);box-shadow:none}:root[data-mode=dark] .catBlock+.catBlock,:root[data-mode=dark] .shopItem,:root[data-mode=dark] .recipe{border-color:var(--b-soft)}:root[data-mode=dark] .recipe,:root[data-mode=dark] .recipeScreen .recipe{background:var(--s-soft)}:root[data-mode=dark] input,:root[data-mode=dark] select,:root[data-mode=dark] textarea{background-color:var(--s-soft);color:var(--t-strong)}:root[data-mode=dark] ::placeholder{color:#a39b91;opacity:1}:root[data-mode=dark] .tabbedApp{--shell-bg:var(--s-page);--shell-surface:#15181d;--shell-surface-hover:#22272e;--shell-border:#2a2f36;--shell-border-strong:#5a626c;--shell-shadow:#00000073;--shell-text:var(--t-strong);--shell-muted:var(--t-muted);--shell-accent:var(--a-text);--shell-focus:var(--a-base)}:root[data-accent=ice] .tabbedApp{--shell-accent:var(--a-text);--shell-focus:var(--a-base)}.seeMealsButton{background:var(--action-strong)}.seeMealsButton:hover{background:var(--action-strong-hover)}.tabbedApp{font-family:Figtree,system-ui,-apple-system,Segoe UI,sans-serif}.tabbedApp h1,.tabbedApp h2,.appHeaderName,.accountGroupTitle,.zoneFoldTitle,.recipeScreenTitle{font-family:Bricolage Grotesque,Figtree,system-ui,sans-serif}.tabbedApp h1,.appHeaderName{font-weight:800}.lookPicker{flex-direction:column;gap:14px;display:flex}.lookFieldset{border:0;margin:0;padding:0}.lookFieldset legend{margin:0 0 8px;padding:0;font-weight:700}.lookOptions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.lookOption{cursor:pointer;border:2px solid var(--b-soft,#e2cdb0);background:var(--s-soft,#fffaf2);border-radius:14px;align-items:center;gap:10px;min-height:56px;padding:10px 12px;display:flex}.lookOption.selected{border-color:var(--a-base,#d66b24)}.lookOption input{width:20px;height:20px;accent-color:var(--a-base,#d66b24);flex:none;margin:0}.lookOption:focus-within{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}.lookOptionText{flex-direction:column;gap:2px;min-width:0;display:flex}.lookOptionTitle{font-weight:700}.lookOptionHint{color:var(--t-muted,#6b5848);font-size:.88rem}.lookSaved{margin:0}:root[data-mode=dark] .quickAddInput{background:0 0}:root[data-mode=dark] .quickAddField{background:var(--s-soft);border-color:var(--b-strong)}.tabbedApp .actions a:focus-visible,.tabbedApp .actions button:focus-visible{outline:3px solid var(--a-base,#d66b24);outline-offset:2px}:root[data-mode=dark] input:not([type=checkbox]):not([type=radio]),:root[data-mode=dark] select,:root[data-mode=dark] textarea{border-color:var(--b-strong)}:root[data-mode=dark] .heroFrame{background:var(--s-card);border-color:var(--b-soft);box-shadow:none}:root[data-mode=dark] .langBtn{border-color:var(--b-strong)}:root[data-mode=dark] .mealSupportBadge{color:#1c120a}:root[data-mode=dark] .dietaryReminder.is-allergy{background:var(--warn-bg)}:root[data-mode=dark] .rosterError,:root[data-mode=dark] .lifecycleError,:root[data-mode=dark] .billingError,:root[data-mode=dark] .internalResult.is-fail,:root[data-mode=dark] .profileStatusNotice.is-warning{background:var(--danger-bg)}:root[data-mode=dark] .candChip.matched{background:var(--ok-bg)}:root[data-mode=dark] .candChip.uncertain{background:var(--warn-bg)}:root[data-mode=dark] .candChip.ambiguous{background:var(--info-bg)}:root[data-mode=dark] .confidenceOption.active .confidenceOptionBlurb{color:#fff}:root[data-mode=dark] .lookOption{border-color:var(--b-strong)}:root[data-mode=dark] .lookOption.selected{border-color:var(--a-base)}.tabbedApp.is-wide .tabbedPage{padding-bottom:40px}:root:has(.tabbedApp.is-wide){scroll-padding-bottom:calc(4.5rem + 24px);scroll-padding-top:calc(var(--tabbar-height) + 16px)}.tabBar.is-top{border-top:0;border-bottom:1px solid var(--shell-border);box-shadow:0 8px 20px var(--shell-shadow);justify-content:flex-start;gap:4px;margin-top:10px;padding:4px max(24px,50% - 616px);position:sticky;top:0;bottom:auto}.tabBar.is-top .tabBarItem{flex-direction:row;flex:0 auto;gap:8px;max-width:none;min-height:48px;padding:6px 16px;font-size:.98rem}.tabBar.is-top .tabBarItem.active{box-shadow:inset 0 -3px 0 var(--shell-focus)}.tabbedApp.is-wide .page.tabbedPage,.tabbedApp.is-wide .appHeader{max-width:1280px}.tabbedApp.is-wide .homeColumns{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:28px;display:grid}.tabbedApp.is-wide .seeMealsBar{bottom:0}.tabbedApp .refreshButton{min-height:44px}.tabbedApp .showMoreEnhancers,.tabbedApp .moreOptionsToggle{align-items:center;min-height:44px;display:inline-flex}.tabbedApp .guidedAddOpen{min-height:44px}
