svg:not(:root).svg-inline--fa,svg:not(:host).svg-inline--fa{overflow:visible;box-sizing:content-box}.svg-inline--fa{display:var(--fa-display, inline-block);height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-sm{vertical-align:-.0714285705em}.svg-inline--fa.fa-lg{vertical-align:-.2em}:where(svg.svg-inline--fa){width:auto;aspect-ratio:var(--fa-aspect-ratio, auto)}.fa-3x{font-size:3em}.fa-sm{font-size:.875em;line-height:.0714285718em;vertical-align:.0535714295em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}._overlay_17u7t_6{position:fixed;inset:0;z-index:10000;background-color:#0009;display:flex;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}._modal_17u7t_20{background-color:var(--background-color, #f5f3ef);border:1px solid var(--border-color, #e8e4dc);border-radius:12px;box-shadow:0 20px 60px #00000040;width:100%;max-width:660px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;font-family:Roboto,sans-serif}._header_17u7t_35{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e8e4dc);flex-shrink:0}._headerTitle_17u7t_44{display:flex;align-items:center;gap:.625rem}._headerIcon_17u7t_50{font-size:1.25rem;color:var(--lp-emerald, #10b981)}._title_17u7t_55{font-size:1.15rem;font-weight:700;color:var(--header-text-color, #0d1f17);margin:0}._closeBtn_17u7t_62{background:none;border:none;font-size:1.6rem;line-height:1;cursor:pointer;color:var(--secondary-text-color, #6b7280);padding:.25rem .5rem;border-radius:4px;transition:background-color .15s ease,color .15s ease}._closeBtn_17u7t_62:hover{background-color:var(--panel-background, #e8e4dc);color:var(--header-text-color, #0d1f17)}._closeBtn_17u7t_62:focus-visible{outline:3px solid var(--lp-emerald, #10b981);outline-offset:2px}._intro_17u7t_85{padding:1rem 1.5rem .75rem;flex-shrink:0}._intro_17u7t_85 p{font-size:.9rem;color:var(--secondary-text-color, #6b7280);line-height:1.55;margin:0}._categoryList_17u7t_98{overflow-y:auto;flex:1 1 auto;padding:0 1.5rem}._categoryRow_17u7t_104{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem;padding:1.1rem 0;border-bottom:1px solid var(--border-color, #e8e4dc)}._categoryRow_17u7t_104:last-child{border-bottom:none}._categoryInfo_17u7t_117{flex:1 1 auto}._categoryHeader_17u7t_121{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem;flex-wrap:wrap}._categoryIcon_17u7t_129{font-size:.95rem;color:var(--lp-emerald, #10b981);flex-shrink:0}._categoryLabel_17u7t_135{font-weight:600;font-size:.95rem;color:var(--header-text-color, #0d1f17)}._alwaysOnBadge_17u7t_141{font-size:.72rem;font-weight:600;color:var(--lp-emerald, #10b981);background-color:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:20px;padding:.15rem .55rem;white-space:nowrap}._categoryDesc_17u7t_152{font-size:.84rem;color:var(--secondary-text-color, #6b7280);line-height:1.5;margin:0}._toggleWrapper_17u7t_160{flex-shrink:0;padding-top:.1rem}._toggle_17u7t_160{position:relative;display:inline-flex;align-items:center;width:48px;height:26px;border-radius:13px;border:none;cursor:pointer;transition:background-color .2s ease;padding:0}._toggleOn_17u7t_178{background-color:var(--lp-emerald, #10b981)}._toggleOff_17u7t_182{background-color:var(--border-color, #d1cdc4)}._toggleLocked_17u7t_186{cursor:not-allowed;opacity:.75}._toggle_17u7t_160:focus-visible{outline:3px solid var(--lp-emerald, #10b981);outline-offset:3px}._toggleThumb_17u7t_196{position:absolute;left:3px;width:20px;height:20px;border-radius:50%;background-color:#fff;box-shadow:0 1px 4px #00000040;transition:transform .2s ease}._toggleOn_17u7t_178 ._toggleThumb_17u7t_196{transform:translate(22px)}._toggleOff_17u7t_182 ._toggleThumb_17u7t_196{transform:translate(0)}.dark-mode ._toggleOn_17u7t_178{background-color:#6252e1}.dark-mode ._toggleOff_17u7t_182{background-color:#444}.dark-mode ._alwaysOnBadge_17u7t_141{color:#af99e5;background-color:#6252e126;border-color:#6252e159}.dark-mode ._categoryIcon_17u7t_129,.dark-mode ._headerIcon_17u7t_50{color:#af99e5}._srOnly_17u7t_239{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}._footer_17u7t_252{padding:1.1rem 1.5rem;border-top:1px solid var(--border-color, #e8e4dc);display:flex;flex-direction:column;gap:.75rem;flex-shrink:0}._primaryActions_17u7t_261{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}._btn_17u7t_268{display:inline-flex;align-items:center;justify-content:center;padding:.6rem 1.1rem;border-radius:6px;font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;border:2px solid transparent;white-space:nowrap;transition:background-color .2s ease,color .2s ease,border-color .2s ease}._btn_17u7t_268:focus-visible{outline:3px solid var(--lp-emerald, #10b981);outline-offset:3px}._btnOutline_17u7t_289{background-color:transparent;color:var(--header-text-color, #0d1f17);border-color:var(--border-color, #d1cdc4)}._btnOutline_17u7t_289:hover{background-color:var(--panel-background, #e8e4dc);border-color:var(--secondary-text-color, #6b7280)}._btnFilled_17u7t_301{background-color:var(--lp-emerald, #10b981);color:#fff;border-color:var(--lp-emerald, #10b981)}._btnFilled_17u7t_301:hover{background-color:#0d9668;border-color:#0d9668}._btnSave_17u7t_313{background-color:var(--header-text-color, #0d1f17);color:#fff;border-color:var(--header-text-color, #0d1f17);margin-left:auto}._primaryActions_17u7t_261 .btnPersist{margin-left:auto}._btnSave_17u7t_313:hover{opacity:.85}.dark-mode ._btnFilled_17u7t_301{background-color:#6252e1;border-color:#6252e1}.dark-mode ._btnFilled_17u7t_301:hover{background-color:#5847da;border-color:#5847da}.dark-mode ._btnSave_17u7t_313{background-color:#6252e1;border-color:#6252e1}.dark-mode ._btnSave_17u7t_313:hover{background-color:#5847da}.dark-mode ._btnOutline_17u7t_289{color:var(--text-color)}._withdrawBtn_17u7t_353{background:none;border:none;font-family:inherit;font-size:.8rem;color:var(--secondary-text-color, #6b7280);cursor:pointer;text-decoration:underline;padding:0;text-align:left;transition:color .2s ease}._withdrawBtn_17u7t_353:hover{color:var(--error-color, #d32f2f)}._withdrawBtn_17u7t_353:focus-visible{outline:2px solid var(--error-color, #d32f2f);outline-offset:2px;border-radius:2px}@media(max-width:540px){._modal_17u7t_20{max-height:95vh;border-radius:12px 12px 0 0;align-self:flex-end;margin-bottom:0}._overlay_17u7t_6{align-items:flex-end;padding:0}._primaryActions_17u7t_261{flex-direction:column;align-items:stretch}._btn_17u7t_268{width:100%;padding:.75rem 1rem}._btnSave_17u7t_313{margin-left:0}}@media(prefers-reduced-motion:reduce){._toggle_17u7t_160,._toggleThumb_17u7t_196,._btn_17u7t_268,._closeBtn_17u7t_62{transition:none}}._banner_h9pfi_6{position:fixed;bottom:0;left:0;right:0;z-index:9999;background-color:var(--panel-background, #e8e4dc);border-top:2px solid var(--border-color, #d1cdc4);box-shadow:0 -4px 24px #0000001f;padding:1.25rem 1.5rem;font-family:Roboto,sans-serif}._inner_h9pfi_19{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}._textBlock_h9pfi_29{display:flex;align-items:flex-start;gap:.875rem;flex:1 1 320px}._icon_h9pfi_36{font-size:1.75rem;color:var(--lp-emerald, #10b981);flex-shrink:0;margin-top:.1rem}._title_h9pfi_43{font-size:1rem;font-weight:700;color:var(--header-text-color, #0d1f17);margin-bottom:.3rem;line-height:1.3}._description_h9pfi_51{font-size:.875rem;color:var(--secondary-text-color, #6b7280);line-height:1.5;margin:0}._privacyLink_h9pfi_58{color:var(--lp-emerald, #10b981);text-decoration:underline;white-space:nowrap}._privacyLink_h9pfi_58:hover,._privacyLink_h9pfi_58:focus-visible{opacity:.8;outline:2px solid var(--lp-emerald, #10b981);outline-offset:2px;border-radius:2px}._actions_h9pfi_73{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;flex-shrink:0}._btn_h9pfi_81{display:inline-flex;align-items:center;justify-content:center;min-width:120px;padding:.6rem 1.25rem;border-radius:6px;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;border:2px solid transparent;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease;white-space:nowrap;line-height:1}._btn_h9pfi_81:focus-visible{outline:3px solid var(--lp-emerald, #10b981);outline-offset:3px}._btnSecondary_h9pfi_105{background-color:transparent;color:var(--header-text-color, #0d1f17);border-color:var(--border-color, #d1cdc4)}._btnSecondary_h9pfi_105:hover{background-color:var(--background-color, #f5f3ef);border-color:var(--secondary-text-color, #6b7280)}._btnPrimary_h9pfi_117{background-color:var(--lp-emerald, #10b981);color:#fff;border-color:var(--lp-emerald, #10b981)}._btnPrimary_h9pfi_117:hover{background-color:#0d9668;border-color:#0d9668}.dark-mode ._btnPrimary_h9pfi_117{background-color:#6252e1;border-color:#6252e1}.dark-mode ._btnPrimary_h9pfi_117:hover{background-color:#5847da;border-color:#5847da}.dark-mode ._btnSecondary_h9pfi_105{color:#b4bcca;border-color:#444}.dark-mode ._btnSecondary_h9pfi_105:hover{background-color:#2c2c2c}._customiseBtn_h9pfi_149{background:none;border:none;padding:.4rem 0;font-family:inherit;font-size:.875rem;font-weight:500;color:var(--secondary-text-color, #6b7280);cursor:pointer;text-decoration:underline;white-space:nowrap;transition:color .2s ease}._customiseBtn_h9pfi_149:hover{color:var(--header-text-color, #0d1f17)}._customiseBtn_h9pfi_149:focus-visible{outline:2px solid var(--lp-emerald, #10b981);outline-offset:2px;border-radius:2px}@media(max-width:640px){._banner_h9pfi_6{padding:1rem}._inner_h9pfi_19{flex-direction:column;align-items:stretch;gap:1rem}._actions_h9pfi_73{flex-direction:column;width:100%}._btn_h9pfi_81{width:100%;padding:.75rem 1rem;font-size:.95rem}._customiseBtn_h9pfi_149{text-align:center;width:100%}}@media(prefers-reduced-motion:reduce){._btn_h9pfi_81,._customiseBtn_h9pfi_149,._privacyLink_h9pfi_58{transition:none}}._planToast_pa37i_4{display:flex;flex-direction:column;gap:4px;min-width:0}._title_pa37i_11{margin:0;font-size:.95rem;font-weight:650;line-height:1.3;color:#1a1a1a}._reason_pa37i_20{margin:0;font-size:.85rem;line-height:1.45;color:#2b2b2b}._upgrade_pa37i_29{margin:4px 0 0;padding-top:6px;border-top:1px solid rgba(0,0,0,.08);font-size:.8rem;line-height:1.45;color:#8a8a8a}._actions_pa37i_38{display:flex;margin-top:6px}._plansLink_pa37i_43{text-decoration:none}.groceryListContainer{position:relative;color:#e5e5e5}.contentContainer{transition:all .3s ease-in-out}.leftPanelFlipContainer{position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);perspective:1200px}.leftPanelFlipInner{position:relative;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.68,-.15,.32,1.15);transform:rotateY(0)}.leftPanelFlipInner.flipped{transform:rotateY(180deg)}.leftPanelFront,.leftPanelBack{position:absolute;top:0;left:0;width:100%;height:100%;box-sizing:border-box;padding:15px;backface-visibility:hidden;align-items:stretch}.leftPanelFront{transform:rotateY(0);border-radius:24px;background:#1a1631;border:1px solid rgba(255,255,255,.05);scroll-behavior:smooth;scrollbar-width:none;box-shadow:0 10px 40px #0000004d}.leftPanelFront:before{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background-image:var(--grocery-bg);background-position:center bottom;background-size:contain;background-repeat:no-repeat;opacity:.15;pointer-events:none;z-index:0}.leftPanelFront::-webkit-scrollbar{display:none}.leftPanelBack{transform:rotateY(180deg);border-radius:24px;background:#1a1631;border:1px solid rgba(255,255,255,.05);box-shadow:0 10px 40px #0000004d}.leftPanelBack h2{text-align:center;color:#fff;margin:24px 0 32px;font-size:1.1em;font-weight:800;letter-spacing:3px;text-transform:uppercase;opacity:.9}.leftPanelFront h2{text-align:center;color:#fff;margin:0 0 1.5rem;padding:0;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.1em;font-weight:800;letter-spacing:3px;text-transform:uppercase;opacity:.9;position:relative;z-index:1}.hidden{flex:0 0 0!important;width:0!important;margin:0!important;height:0!important;max-height:0!important;opacity:0;overflow:hidden;transition:all .3s ease}.fullWidth{width:100%;transition:all .3s ease-in-out}.newListFooterBtn{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 24px);margin:1.5rem 12px 12px;padding:11px 0;background:#1a1631;border:1px dashed rgba(255,255,255,.12);border-radius:12px;color:#ffffff59;font-size:.78em;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .2s ease;position:sticky;bottom:8px;z-index:2;flex-shrink:0}.newListFooterBtn:hover{background:#10b9811a;border-color:#10b98166;border-style:solid;color:#6ee7b7}.newListFooterBtn:active{transform:scale(.98)}.newListIcon{font-size:.9em}.groceryListItems{display:flex;flex-direction:column;text-transform:capitalize;position:relative;padding:0 12px 8px;gap:10px}.listSection{margin-bottom:4px;position:relative;display:flex;flex-direction:column;gap:8px}.listSectionHeader{font-size:.7em;text-transform:uppercase;letter-spacing:1.5px;color:#ffffff80;margin:8px 0 0 4px;padding:0;display:flex;align-items:center;gap:8px;font-weight:700;background:none;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.sectionIcon{font-size:1em;color:inherit;opacity:.8}.groceryListItem{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:0;min-height:3.25rem;box-sizing:border-box;color:#ffffffb3;border-radius:12px;cursor:pointer;position:relative;font-weight:500;font-size:.9em;background:transparent;border:1px solid transparent;transition:all .2s ease}.groceryListItem:hover{background:#ffffff0d;color:#ffffffe6}.groceryListItem:active{transform:scale(.98)}.selected{background:#ffffff1a!important;color:#fff!important;font-weight:600;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 12px #0000001a}.selected:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;background:var(--primary-color, #6366f1);border-radius:0 4px 4px 0}.listName{flex:1}.arrowContainer{cursor:pointer;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:2;background:#ffffff0d;transition:all .2s ease;opacity:0}.groceryListItem:hover .arrowContainer,.selected .arrowContainer{opacity:1}.arrowIcon{color:#fff6;font-size:.7em;transition:all .2s ease}.arrowContainer:hover{background:#ffffff1a}.arrowContainer:hover .arrowIcon{color:#fff}.backPanelButtons{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 auto 24px}.backButton{background:#ffffff0d;color:#fffc;border:1px solid rgba(255,255,255,.1);padding:8px 20px;border-radius:12px;font-size:.8em;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.backButton:hover{background:#ffffff1a;color:#fff;border-color:#fff3}.backButton:active{transform:scale(.98)}.editListButton{display:flex;align-items:center;gap:6px;background:#6366f126;color:#a5b4fc;border:1px solid rgba(99,102,241,.3);padding:8px 16px;border-radius:12px;font-size:.8em;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.editListButton:hover{background:#6366f14d;color:#c7d2fe;border-color:#6366f180}.editListButton:active{transform:scale(.98)}.mealsList{list-style:none;padding:8px 12px;margin:0;display:flex;flex-direction:column;gap:8px}.mealsList li{padding:0;margin:0}.mealLink{display:block;padding:12px 16px;color:#ffffffb3;text-decoration:none;border-radius:12px;font-weight:500;font-size:.9em;background:#ffffff08;border:1px solid rgba(255,255,255,.05);transition:all .2s ease}.mealLink:hover{color:#fff;background:#ffffff14;border-color:#ffffff1a}.groceryListContainer .ingredientsPanel{position:relative;padding:28px 32px;border-radius:16px;background:#1a1631;border:1px solid rgba(255,255,255,.05);box-shadow:0 10px 40px #0000004d}.rightNavPanel{background:#1a1631;border:1px solid rgba(255,255,255,.05);border-left:none;border-radius:0 16px 16px 0;padding:20px 10px 20px 8px;margin-left:0;align-items:stretch;position:relative;z-index:10;box-shadow:0 10px 40px #0000004d}.groceryListNameContainer{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;margin:8px 0;padding-bottom:0;position:relative;border-bottom:none}.groceryListContainer .ingredientsPanel h2.groceryListName,.groceryListName{grid-area:1 / 1;color:#fff;font-size:1.5em;font-weight:600;letter-spacing:.5px;text-transform:capitalize;text-align:center;margin:0;min-width:0;max-width:100%;width:100%;overflow:hidden;text-overflow:ellipsis;padding:0 4.75rem;border-bottom:none;line-height:1.15}.totalCost{grid-area:1 / 1;justify-self:end;align-self:center;position:static;top:auto;right:auto;transform:none;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:1px;padding:0;background:none;border:none;text-align:right;line-height:1.05;pointer-events:none}.totalCostLabel{font-size:.62rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#ffffff6b}.totalCostAmount{font-size:.95rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#86efac}.totalCost:after{display:none}.ingredientGroup{margin-bottom:24px;background:#ffffff08;border-radius:12px;overflow:hidden;min-width:0;max-width:100%;border:1px solid rgba(255,255,255,.06)}.ingredientGroup h3{width:auto;font-size:1em;font-weight:600;padding:14px 20px;color:#fff;margin:0;border-radius:12px 12px 0 0;display:flex;align-items:center;gap:10px;letter-spacing:.3px}.snack-header{color:#fff!important;background-color:#ff8c00!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.snack-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#ff8c00,#ffa040 80%,#ffb733)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.fruit-header{color:#fff!important;background-color:#ff8c00!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.fruit-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#ff8c00,#ffa040 80%,#ffb733)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.dairy-header{color:#fff!important;background-color:#4fc3f7!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.dairy-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#4fc3f7,#73d4fc 80%,#a5e2ff)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.flask-header{color:#fff!important;background-color:#ba55d3!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.flask-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#ba55d3,#c77ee0 80%,#d4a8f0)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.vegetable-header{color:#fff!important;background-color:#50c878!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.vegetable-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#50c878,#6edc8b 80%,#8cf0a5)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.grain-header{color:#fff!important;background-color:#8b6e58!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.grain-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#8b6e58,#a38c6f 80%,#bba488)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.meat-header{color:#fff!important;background-color:#f06292!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.meat-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#f06292,#f483a9 80%,#f7a5c0)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.processed-header{color:#fff!important;background-color:#9e9e9e!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.processed-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#9e9e9e,#b0b0b0 80%,#c2c2c2)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.spice-header{color:#fff!important;background-color:peru!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.spice-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,peru,#d99f5c 80%,#e5b979)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.other-header{color:#fff!important;background-color:#b0b0b0!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.other-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#b0b0b0,#c2c2c2 80%,#d4d4d4)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.extras-header{color:#fff!important;background-color:#9370db!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.extras-ingredientHeader{color:#fff!important;background:linear-gradient(180deg,#9370db,#a58adf 80%,#b8a2e3)!important;text-shadow:1px 1px 0 rgba(0,0,0,.5)!important}.ingredientHeader{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);min-width:0;align-items:center;gap:12px;padding:10px 20px;font-size:.8em;font-weight:500;text-transform:uppercase;letter-spacing:.8px;background:transparent;color:#fff9;border:none}.ingredientHeader.condensed{grid-template-columns:1.15em minmax(0,1fr) minmax(0,1fr)}.ingredientItem{color:#ffffffe6;display:grid;align-items:center;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);min-width:0;gap:12px;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.05);background:transparent;cursor:pointer;transition:background .2s ease;text-transform:capitalize;font-size:.95em;font-weight:400;border-radius:0;margin:0}.ingredientItem.condensed{grid-template-columns:1.15em minmax(0,1fr) minmax(0,1fr)}.ingredientItem:hover{background:#ffffff0a}.ingredientItem:nth-child(odd){background:#ffffff04}.ingredientItem:nth-child(2n){background:transparent}.ingredientItem:last-child{border-bottom:none;border-radius:0 0 12px 12px}.selectedIngredient{background-color:#4caf5014!important;color:#ffffff73;text-decoration:line-through;border-left:3px solid rgba(76,175,80,.6)}.selectedIngredient .ingredientName,.selectedIngredient .ingredientQuantity,.selectedIngredient .ingredientStore,.selectedIngredient .ingredientPrice,.selectedIngredient .mealName{color:#ffffff73!important;text-decoration:line-through}.ingredientNameCondensed{text-align:left;display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;font-weight:400;font-size:inherit;color:inherit;line-height:1.25}.ingredientName,.groceryListContainer .ingredientItem .mealName,.mealName{display:block;align-self:center;text-align:left;min-width:0;overflow:hidden;font-weight:400;font-size:inherit;font-family:inherit;color:inherit;line-height:1.25;margin:0;padding:0}.groceryListContainer .ingredientItem .mealName{color:#ffffffe6}.ingredientQuantity,.ingredientPrice,.ingredientStore{font-size:inherit;font-weight:400;color:inherit;text-align:left}.ingredientNameHeader,.ingredientQuantityHeader,.ingredientStoreHeader,.ingredientPriceHeader{text-align:left}.ingredientGroup ul{list-style:none;padding:0;margin:0;color:#ccc}.noSelection{text-align:center;color:#ccc;margin-top:50px}.loader,.error,.noData{text-align:center;font-size:1.2em}.scrollableList::-webkit-scrollbar{display:none}.customScrollbar::-webkit-scrollbar{display:block;width:10px}.customScrollbar::-webkit-scrollbar-track{background:#3a3a3a;border-radius:5px}.customScrollbar::-webkit-scrollbar-thumb{background:#6a5acd;border-radius:5px}.customScrollbar::-webkit-scrollbar-thumb:hover{background:#7a67ee}.customScrollbar{scrollbar-width:thin;scrollbar-color:#6a5acd #3a3a3a}.eyeIcon{position:absolute;top:15px;left:15px;cursor:pointer;font-size:1em;z-index:10;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#ffffffb3;box-shadow:0 2px 8px #00000026,inset 0 1px #ffffff14;transition:all .3s cubic-bezier(.4,0,.2,1)}.eyeIcon:hover{color:#b8a2ff;background:#9370db33;border-color:#9370db4d;transform:scale(1.08);box-shadow:0 4px 15px #9370db40,0 2px 6px #00000026,inset 0 1px #ffffff1f}.eyeIcon:active{transform:scale(.95)}.loadingContainer{display:flex;justify-content:center;align-items:center;min-height:50vh}.noGroceryListsContainer{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ccc}.noGroceryListsAvailableImage{width:100%;max-width:400px;margin:0 auto}.createGroceryButton{background-color:var(--save-button-background);color:#fff;padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-size:16px;transition:background-color .3s ease;margin-top:10px}.checkmarkIcon{display:flex;align-items:center;justify-content:center;align-self:center;margin:0;font-size:.85rem;width:1.15em;height:1.15em;line-height:1;transition:all .2s ease;flex-shrink:0}.checkmarkIcon svg{display:block;width:1em;height:1em}.checkmarkIcon.unchecked{color:#fff3}.checkmarkIcon.checked{color:#66bb6a}.checkmarkIcon.checked svg{color:#fff}.checkmarkIcon.hiddenCheckmark{visibility:hidden;display:inline-flex}.pantryIcon{margin-left:10px;font-size:.75em;color:#66bb6a;cursor:pointer;transition:all .2s ease}.pantryIcon:hover{transform:scale(1.2)}.removeIcon{margin-left:8px;font-size:.8em;color:#ff4d4d;cursor:pointer;transition:color .3s ease}.removeIcon:hover{color:#ff1a1a;transform:scale(1.2)}.filtersAndActionsContainer{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.06);gap:12px;min-width:0;container-type:inline-size;container-name:grocery-toolbar}.filterButtons{display:flex;flex-wrap:nowrap;flex:0 1 auto;min-width:0;gap:2px;padding:3px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px}.actionButtons{display:flex;flex-direction:row;flex-wrap:nowrap;flex:0 0 auto;min-width:0;gap:8px;margin-left:auto;position:relative}.groceryListContainer .filterButtons .viewToggleIcon{min-width:42px;height:42px;padding:0 12px;gap:8px;background:transparent;border:none;border-radius:9px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background .2s ease,color .2s ease;position:relative;color:#ffffffb3}.viewToggleIcon{min-width:42px;height:42px;padding:0 12px;gap:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:10px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:all .2s ease;position:relative;color:#ffffffb3}.viewToggleIconButton{min-width:42px;height:42px;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer;position:relative;padding:8px 12px;font-size:14px;color:#fff;border:none;border-radius:10px;transition:all .2s ease;background:#4caf5033;border:1px solid rgba(76,175,80,.3)}.btnIcons{display:flex;align-items:center;gap:3px}.actionLabel,.toggleLabel{font-size:.8rem;font-weight:600;line-height:1;white-space:nowrap}.viewToggleIconButton:hover{background:#4caf504d;transform:translateY(-1px)}.viewToggleIcon:hover{background:#ffffff1a;border-color:#ffffff26;color:#fff}.groceryListContainer .filterButtons .viewToggleIcon:hover{background:#ffffff14;border-color:transparent;transform:none;color:#fff}.activeToggle{background:#6366f133;border-color:#6366f166;color:#818cf8}.groceryListContainer .filterButtons .viewToggleIcon.activeToggle{background:#6366f147;border-color:transparent;color:#a5b4fc}.ingredientHeader.twoColumns,.ingredientItem.twoColumns{grid-template-columns:1.15em minmax(0,1fr) minmax(0,1fr);align-items:center}.ingredientHeader.mealColumns,.ingredientItem.mealColumns{grid-template-columns:1em minmax(0,1fr) minmax(0,1fr);grid-template-rows:1.25em 1.25em;align-items:start;column-gap:8px;row-gap:0;padding-left:12px}.ingredientHeader.mealColumns{grid-template-rows:auto auto}.ingredientHeader.mealColumns .checkmarkCol,.ingredientItem.mealColumns .checkmarkIcon{grid-column:1;grid-row:1;align-self:center;justify-self:start}.ingredientItem.mealColumns .checkmarkIcon{justify-content:flex-start}.ingredientHeader.mealColumns .mealNameHeader{grid-column:2;grid-row:1 / span 2;align-self:start;min-width:0;margin-left:8px}.groceryListContainer .ingredientItem.mealColumns .mealName{grid-column:2;grid-row:1 / span 2;align-self:stretch;min-width:0;margin-left:8px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25em}.ingredientHeader.mealColumns .ingredientNameHeader,.ingredientItem.mealColumns .ingredientName{grid-column:3;grid-row:1;align-self:start;min-width:0;padding-left:0;margin-left:0;justify-self:stretch;text-align:left;line-height:1.25em;overflow:hidden}.ingredientHeader.mealColumns .ingredientQuantityHeader,.ingredientItem.mealColumns .ingredientQuantity{grid-column:3;grid-row:2;min-width:0;white-space:nowrap;padding-left:0;margin-left:0;justify-self:stretch;text-align:left;line-height:1.25em}.groceryListContainer .ingredientItem.mealColumns .ingredientQuantity{color:#ffffff8c}.ingredientHeader.storeColumns,.ingredientItem.storeColumns{grid-template-columns:1.15em minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr);align-items:center}.groceryListContainer .ingredientItem.storeColumns .ingredientStore,.groceryListContainer .ingredientItem.storeColumns .ingredientPrice{color:#ffffff8c}.checkmarkCol{width:1.15em}.ingredientHeader.condensed,.ingredientItem.condensed{grid-template-columns:1.15em minmax(0,1fr) minmax(0,1fr)}.ingredientHeader.condensed .ingredientQuantityHeader,.ingredientItem.condensed .ingredientQuantity{text-align:left}.notificationBubble{position:absolute;top:-8px;right:-8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:#ef4444;color:#fff;border-radius:50%;font-size:12px;font-weight:700;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.mobileActionBar{position:fixed;bottom:0;left:0;width:100%;box-sizing:border-box;background:#1a1631;border-top:1px solid rgba(255,255,255,.08);padding:4px 12px calc(4px + env(safe-area-inset-bottom,0px));display:flex;justify-content:space-around;align-items:stretch;gap:12px;z-index:120;box-shadow:0 -4px 16px #0003}.mobileActionBar .viewToggleIconButton,.mobileActionBar .resetButton{flex:1 1 0;flex-direction:row;justify-content:center;gap:0;width:auto;min-width:0;min-height:27px;height:27px;padding:0;border-radius:8px;background:#4caf501f;border:1px solid rgba(76,175,80,.22);color:#ffffffe0;font-weight:500;box-shadow:none}.mobileActionBar .viewToggleIconButton:hover,.mobileActionBar .resetButton:hover{background:#4caf5033;transform:none}.mobileActionBar .btnIcons{font-size:.78rem}.mobileActionBar .btnIcons svg{width:1em;height:1em}.mobileActionBar .actionLabel{display:none}.mobileActionBar .notificationBubble{width:14px;height:14px;font-size:8px;font-weight:600;top:-4px;right:-3px;box-shadow:none}.undoToast{position:fixed;bottom:20px;left:20px;display:flex;align-items:center;gap:14px;background:linear-gradient(145deg,#2d2d45,#222235);color:#fff;padding:12px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 24px #0006;z-index:1600;animation:fadeIn .2s ease-in-out}.undoToastText{font-size:.9rem}.undoButton{background:#6366f140;border:1px solid rgba(99,102,241,.5);color:#fff;padding:6px 14px;border-radius:8px;cursor:pointer;font-weight:700;font-size:.85rem;transition:background .2s ease}.undoButton:hover{background:#6366f166}.ingredientNameCondensed{text-align:left}.selectedMealBreakdown{background-color:#19502380!important;color:#aaa;text-decoration:line-through;border-left:4px solid #28a745}.selectedMealBreakdown .ingredientName,.selectedMealBreakdown .ingredientQuantity,.selectedMealBreakdown .ingredientStore,.selectedMealBreakdown .ingredientPrice,.selectedMealBreakdown .mealName{color:#aaa!important;text-decoration:line-through}.desktopOnly{display:flex}.mobileOnly{display:none}.categoryNavContainer{display:flex;flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;margin-bottom:0;gap:8px;width:100%;padding:0}.categoryNavButton{background-color:var(--purple-border);color:var(--button-text-color);border:none;padding:8px 12px;border-radius:0 20px 20px 0;cursor:pointer;font-size:.9rem;transition:all .2s ease;display:flex;align-items:center;gap:12px;box-shadow:2px 2px 5px #0003;justify-content:flex-start;width:100%;min-width:0;text-align:left}.categoryNavLabel{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.categoryNavButton:hover{background-color:var(--icon-selection-hover);color:#fff}.categoryNavButton:active{transform:translate(0)}.resetButton{min-width:42px;height:42px;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer;position:relative;padding:8px 12px;font-size:14px;color:#fff;border:none;border-radius:10px;transition:all .2s ease;background:#4caf5033;border:1px solid rgba(76,175,80,.3)}.resetButton:hover{background:#4caf504d;transform:translateY(-1px)}.calendarListItem{background:#6366f11a!important;border:1px solid rgba(99,102,241,.2)!important;box-shadow:none!important;position:relative;overflow:hidden}.calendarListItem:hover{background:#6366f126!important;border-color:#6366f14d!important}.calendarListItem.selected{background:#6366f133!important;border-color:#6366f166!important}.calendarListItem.selected:before{background:#818cf8!important}.calendarNameContainer{display:flex;flex-direction:row;align-items:center;gap:14px;position:relative;z-index:1}.calendarIcon{font-size:18px;color:#818cf8;flex-shrink:0;margin:0}.calendarTextContainer{display:flex;flex-direction:column;gap:1px;min-height:0;justify-content:center}.calendarTitle{font-weight:700;font-size:14px;line-height:1.2;letter-spacing:.5px;color:#e0e7ff}.calendarDate{font-size:11px;opacity:.85;font-weight:500;line-height:1.2;color:#a5b4fc;letter-spacing:.3px}.noMealsContainer{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center;background:#ffffff0d;border-radius:16px;border:2px dashed rgba(255,255,255,.2);margin:20px 0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.noMealsIcon{color:var(--primary-color, #3b82f6);margin-bottom:24px;opacity:.7}.noMealsTitle{color:var(--header-text-color);font-size:1.5rem;font-weight:600;margin:0 0 16px;letter-spacing:.5px}.noMealsMessage{color:var(--text-color);font-size:1rem;line-height:1.5;margin:0 0 32px;max-width:500px;opacity:.9}.goToCalendarButton{background:linear-gradient(135deg,var(--primary-color, #3b82f6),#2563eb);color:#fff;border:none;padding:14px 28px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d;display:flex;align-items:center;justify-content:center;letter-spacing:.5px}.goToCalendarButton:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.goToCalendarButton:active{transform:translateY(0);box-shadow:0 2px 8px #3b82f64d}.purchaseUnits{background:#4caf5033;color:#81c784;padding:2px 8px;border-radius:6px;font-size:.75em;font-weight:600;margin-left:8px;display:inline-block;border:1px solid rgba(76,175,80,.3);transition:all .2s ease;min-width:24px;text-align:center}@container grocery-toolbar (max-width: 820px){.toggleLabel,.actionLabel{display:none}.filterButtons .viewToggleIcon,.viewToggleIconButton,.resetButton{width:42px;min-width:42px;padding:8px;gap:0}}@container workspace (min-width: 901px){.groceryListContainer .groceryListNameContainer,.groceryListContainer .filtersAndActionsContainer,.groceryListContainer .ingredientGroups{padding-right:9rem}}@container workspace (max-width: 1100px){.categoryNavButton{justify-content:center;padding:8px;gap:0;border-radius:10px}.viewToggleIcon,.viewToggleIconButton,.resetButton{min-width:42px;width:42px;padding:8px;gap:0}}@container workspace (min-width: 901px) and (max-width: 1100px){.groceryListContainer .groceryListNameContainer,.groceryListContainer .filtersAndActionsContainer,.groceryListContainer .ingredientGroups{padding-right:2.75rem}}@container workspace (max-width: 900px){.groceryListContainer .ingredientsPanel{padding:16px;border-radius:16px}.groceryListName{font-size:1.2em;padding:0 4.5rem}.totalCostLabel{font-size:.55rem;letter-spacing:.12em}.totalCostAmount{font-size:.85rem}.groceryListNameContainer{margin:0 0 8px;padding-bottom:0;padding-right:0}.filtersAndActionsContainer{margin-bottom:12px;padding-bottom:12px;padding-right:0}.ingredientGroups{padding-right:0}.groceryListContainer .ingredientHeader.storeColumns,.groceryListContainer .ingredientItem.storeColumns{grid-template-columns:1.15em minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:12px;row-gap:6px}.groceryListContainer .ingredientHeader.storeColumns .checkmarkCol,.groceryListContainer .ingredientItem.storeColumns .checkmarkIcon{grid-column:1;grid-row:1 / span 2;align-self:center}.groceryListContainer .ingredientHeader.storeColumns .mealNameHeader,.groceryListContainer .ingredientItem.storeColumns .mealName{grid-column:2;grid-row:1;min-width:0}.groceryListContainer .ingredientHeader.storeColumns .ingredientStoreHeader,.groceryListContainer .ingredientItem.storeColumns .ingredientStore{grid-column:2;grid-row:2;min-width:0}.groceryListContainer .ingredientHeader.storeColumns .ingredientNameHeader,.groceryListContainer .ingredientItem.storeColumns .ingredientName,.groceryListContainer .ingredientHeader.storeColumns .ingredientPriceHeader,.groceryListContainer .ingredientItem.storeColumns .ingredientPrice{grid-column:3;min-width:0;padding-left:0;margin-left:0;justify-self:stretch;text-align:left}.groceryListContainer .ingredientHeader.storeColumns .ingredientNameHeader,.groceryListContainer .ingredientItem.storeColumns .ingredientName{grid-row:1}.groceryListContainer .ingredientHeader.storeColumns .ingredientPriceHeader,.groceryListContainer .ingredientItem.storeColumns .ingredientPrice{grid-row:2}}@container workspace (max-width: 520px){.filtersAndActionsContainer .viewToggleIcon,.filterButtons .viewToggleIcon,.filtersAndActionsContainer .viewToggleIconButton,.filtersAndActionsContainer .resetButton{min-width:36px;width:36px;height:36px;padding:6px}.filtersAndActionsContainer{gap:6px}.actionButtons{gap:4px}}*,*:before,*:after{box-sizing:border-box}:root{color-scheme:light;--lp-forest: #0D1F17;--lp-forest-light: #1A3326;--lp-emerald: #10B981;--lp-emerald-glow: rgba(16, 185, 129, .15);--lp-cream: #F5F3EF;--lp-cream-dark: #E8E4DC;--lp-gold: #D4A853;--lp-text: #1F2937;--lp-text-muted: #6B7280;--lp-white: #FFFFFF;--lp-black: #0A0A0A;--lp-gradient: linear-gradient(135deg, var(--lp-forest) 0%, var(--lp-forest-light) 100%);--secondary-color: var(--lp-gold);--background-color: var(--lp-cream);--inverse-background-color: var(--lp-black);--text-color: var(--lp-text);--text-muted: var(--lp-text-muted);--header-text-color: var(--lp-forest);--nav-background-color: var(--lp-forest);--nav-text-color: var(--lp-white);--button-background-color: var(--lp-emerald);--button-text-color: var(--lp-white);--button-hover-background-color: #0D9668;--border-color: var(--lp-cream-dark);--input-background-color: var(--lp-white);--input-text-color: var(--lp-text);--sidebar-background: var(--lp-cream);--navigation-text-color: var(--lp-text-muted);--navigation-header-text-color: var(--lp-emerald);--navigation-menu-selection: linear-gradient(to bottom, #10B981, #0D9668);--navigation-menu-selection-hover: #0D9668;--user-sign-in-border: var(--lp-emerald);--primary-color: #6252E1;--nav-text-hover-color: #ccc;--transition-default: .3s ease;--shadow-default: 0 4px 6px -1px rgba(0, 0, 0, .1);--modal-opacity: .75;--purple-panel: var(--lp-gradient);--purple-border: rgba(13, 31, 23, .1);--secondary-text-color: var(--lp-text-muted);--panel-background: var(--lp-cream-dark);--error-color: #d32f2f;--input-black-opacity-background: rgba(255, 255, 255, .8);--star-review-color: var(--lp-gold);--star-review-color-empty: var(--lp-cream-dark);--meal-selection-color: var(--lp-emerald-glow);--meal-selection-condensed-color: var(--lp-emerald);--addeditview-color: var(--lp-cream);--pill-button-color: var(--lp-text-muted);--pill-button-hover-color: var(--lp-forest);--pill-toggle-color: var(--lp-gradient);--bg-color: var(--background-color);--card-bg: var(--lp-white);--text-secondary: var(--text-muted);--shell-footer-gap: calc(1.5rem + env(safe-area-inset-bottom, 0px)) ;--grocery-mobile-footer: calc(2.4rem + env(safe-area-inset-bottom, 0px)) ;--measure-prose: 40rem;--measure-cluster: 75rem;--measure-gallery: 90rem;--card-min: 16rem}.dark-mode{color-scheme:dark;--background-color: #020817;--inverse-background-color: #ffffff;--text-color: rgb(180, 188, 202);--text-muted: #999999;--header-text-color: rgb(255, 255, 255);--nav-background-color: black;--nav-text-color: #e0e0e0;--button-background-color: #333333;--button-text-color: #e0e0e0;--button-hover-background-color: #555555;--border-color: #444444;--input-background-color: #2c2c2c;--input-text-color: #e0e0e0;--sidebar-background: black;--navigation-text-color: #a0a0a0;--navigation-header-text-color: #af99e5;--navigation-menu-selection: linear-gradient(to bottom, #6b5de7, #5745d9);--navigation-menu-selection-hover: #5745d9;--user-sign-in-border: white;--primary-color: #6252E1;--nav-text-hover-color: #ccc;--purple-panel: radial-gradient(circle, #59417b, #301c51);--purple-border: #6050df4d;--input-black-opacity-background: rgba(0, 0, 0, .5);--star-review-color: gold;--star-review-color-empty: #777;--meal-selection-color: #6b5de7;--meal-selection-condensed-color: #6b5de7;--submenu-menu-selection: linear-gradient(to bottom right, #E8CBFF, #C9AEFF, #A992FF, #8A77FF, #6B5DE7);--secondary-text-color: #b0b0b0;--panel-background: #303030;--addeditview-color: rgb(33, 33, 33);--pill-button-color: #b7b7b7;--pill-button-hover-color: white;--pill-toggle-color: linear-gradient(to bottom right, #E8CBFF, #C9AEFF, #A992FF, #8A77FF, #6B5DE7);--bg-color: var(--background-color);--card-bg: var(--panel-background);--text-secondary: var(--text-muted)}.btnPersist{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 22px;height:38px;box-sizing:border-box;border-radius:8px;font-size:.875rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,opacity .15s ease;white-space:nowrap;border:1px solid #0d9668;background:var(--lp-emerald, #10b981);color:#fff;box-shadow:none;font-family:inherit;text-transform:none;text-decoration:none}.btnPersist:hover:not(:disabled){background:#0d9668;border-color:#047857;color:#fff}.btnPersist:active:not(:disabled){background:#047857;border-color:#047857}.btnPersist:focus-visible{outline:2px solid #34d399;outline-offset:2px}.btnPersist:disabled{opacity:.45;cursor:not-allowed}.btnPersist svg{width:14px;height:14px;flex-shrink:0}.btnPersist--block{width:100%}.btnPersist--grow{flex:1;min-width:0}.btnPersist--compact{height:32px;padding:0 14px;font-size:.8rem;gap:6px}.btnPersist--compact svg{width:12px;height:12px}.btnPersist--icon{width:36px;height:36px;padding:0;gap:0}.btnPersist--icon svg{width:14px;height:14px}.btnRow{display:flex;flex-wrap:wrap;align-items:stretch;gap:.75rem}.btnRow>button,.btnRow>a{flex:1 1 0;min-width:0}.btnQuiet,.btnDanger{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 22px;height:38px;box-sizing:border-box;border-radius:8px;font-size:.875rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease;white-space:nowrap;box-shadow:none;font-family:inherit;text-transform:none;text-decoration:none}.btnQuiet svg,.btnDanger svg{width:14px;height:14px;flex-shrink:0}.btnQuiet{background:transparent;border:1px solid var(--border-color, rgba(255, 255, 255, .2));color:var(--header-text-color, #fff)}.btnQuiet:hover:not(:disabled){background:color-mix(in srgb,var(--header-text-color, #fff) 12%,transparent);border-color:var(--header-text-color, #fff);color:var(--header-text-color, #fff)}.btnDanger{background:#dc2626;border:1px solid #b91c1c;color:#fff}.btnDanger:hover:not(:disabled){background:#b91c1c;border-color:#991b1b;color:#fff}.btnDanger:active:not(:disabled){background:#991b1b}.btnQuiet:focus-visible,.btnDanger:focus-visible{outline:2px solid #34d399;outline-offset:2px}.btnQuiet:disabled,.btnDanger:disabled{opacity:.45;cursor:not-allowed}.btnQuiet.btnPersist--compact,.btnDanger.btnPersist--compact,.btnPersist.btnPersist--compact{height:32px;padding:0 14px;font-size:.8rem;gap:6px}.btnQuiet.btnPersist--compact svg,.btnDanger.btnPersist--compact svg,.btnPersist.btnPersist--compact svg{width:12px;height:12px}.btnQuiet.btnPersist--icon,.btnDanger.btnPersist--icon,.btnPersist.btnPersist--icon{width:36px;height:36px;padding:0;gap:0}.btnRow>.btnPersist--icon{flex:0 0 36px;width:36px}html:has(.App) body,.App{font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--background-color);color:var(--text-color)}html,body,#root{height:100%;margin:0}html:has(.App),html:has(.App) body,html:has(.App) #root{height:100dvh;overflow:hidden}.App{position:relative;display:flex;flex-direction:row;width:100%;height:100dvh;overflow:hidden}.App>.sidebar{flex-shrink:0;height:100%;min-width:0;min-height:0;overflow:hidden;width:16rem;z-index:20;display:flex;flex-direction:column;padding:20px 24px;box-sizing:border-box;background-color:var(--sidebar-background);color:var(--text-color);transition:width .2s ease,transform .2s ease,padding .3s ease}.App>.sidebar.sidebarCollapsed{width:4.5rem;padding:20px 10px}.App>.sidebar.sidebarCollapsed .navLink span,.App>.sidebar.sidebarCollapsed .freshLogo,.App>.sidebar.sidebarCollapsed .versionDisplay,.App>.sidebar.sidebarCollapsed .sectionHeader{display:none}.content-wrapper{position:relative;z-index:0;display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.nav-bar{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;min-width:0;gap:.5rem;padding:.75rem clamp(.75rem,2vw,2rem);background-color:var(--nav-background-color);color:var(--nav-text-color);transition:background-color .5s ease,padding .3s ease}.nav-bar--collapsed{padding-left:.35rem}.nav-bar__left-controls,.nav-bar__links{display:flex;align-items:center;min-width:0}.nav-bar__links{list-style:none;margin:0 0 0 auto;padding:0;gap:.5rem}.nav-bar__sidebar-toggle{background:none;border:none;color:var(--nav-text-color);cursor:pointer;padding:8px;font-size:1.2rem;display:flex;align-items:center;justify-content:center}.nav-bar__sidebar-toggle:hover{color:var(--nav-text-hover-color)}.nav-bar__item{margin-left:20px}.nav-bar__link{color:var(--nav-text-color);text-decoration:none;font-size:1rem;font-weight:700;padding:10px;border-radius:4px;transition:background-color .3s ease,color .3s ease}.nav-bar__link:hover{background-color:#2a2d36;color:#fff}.nav-bar__user{display:flex;align-items:center;gap:10px;position:relative}.nav-bar__user-button{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center}.nav-bar__user-button:hover{opacity:.8}.nav-bar__profile-pic{width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid var(--user-sign-in-border)}.nav-bar__user-button:hover .nav-bar__profile-pic{border-color:#256aff}.nav-bar__user-menu{position:absolute;top:100%;right:0;margin-top:10px;background:var(--background-color);border:1px solid var(--border-color);padding:10px;box-shadow:0 6px 12px #00000040;z-index:100;min-width:180px;border-radius:12px;color:var(--text-color);display:flex;flex-direction:column;gap:8px}.user-menu__item{display:flex;align-items:center;gap:10px;padding:10px 15px;color:var(--text-color);text-decoration:none;font-weight:500;border-radius:8px;transition:background-color .2s ease,color .2s ease}.user-menu__item:hover{background-color:var(--navigation-menu-selection-hover);color:var(--inverse-background-color)}button.user-menu__item{width:100%;text-align:left;border:none;background:none;cursor:pointer;font:inherit}.nav-bar__notification{position:relative;margin:0 20px}.nav-bar__notification-button{position:relative;background:none;border:none;color:var(--nav-text-color);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center}.nav-bar__notification-button:hover{background-color:#2a2d36;color:#fff}.nav-bar__notification-panel{position:absolute;top:100%;right:0;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border:2px solid #6b7280;padding:20px;box-shadow:0 6px 12px #00000026;z-index:100;min-width:280px;max-width:min(320px,90vw);border-radius:12px;color:#1f2937}.nav-bar__notification-panel:before{content:"Notifications";display:block;font-weight:700;font-size:1.1rem;color:#1e3a8a;margin-bottom:12px;border-bottom:2px solid #93c5fd;padding-bottom:8px}.nav-bar__notification-panel p{margin:0;padding:8px 0;font-size:1rem;color:#374151;font-weight:500}.notification-count{position:absolute;top:0;right:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;line-height:0;background:#ef4444;color:#fff;border-radius:50%;pointer-events:none}.notification-count--wide{width:auto;min-width:16px;padding:0 5px;border-radius:999px}.notification-count-num{display:block;font-size:10px;font-weight:700;line-height:1;transform:translateY(-1px)}.notification-item{margin-bottom:15px}.notification-button{background:#3b82f6;color:#fff;border:none;padding:5px 10px;margin:5px 5px 0 0;border-radius:4px;cursor:pointer;font-size:.9rem}.notification-item--info{padding-left:10px;border-left:3px solid #a78bfa}.notification-item__meta{display:block;margin-top:2px;font-size:.8rem;opacity:.75}.notification-link{display:inline-flex;align-items:center;min-height:32px;margin-top:5px;padding:5px 10px;border-radius:4px;background:#3b82f6;color:#fff;font-size:.9rem;text-decoration:none}.notification-link:hover{background:#2563eb;color:#fff}.notification-link:focus-visible{outline:2px solid #a78bfa;outline-offset:2px}.notification-item--recovery{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid rgba(16,185,129,.35);border-left:4px solid #10b981;border-radius:12px;background:linear-gradient(135deg,#10b9811a,#7c3aed12),#fff;box-shadow:0 6px 16px -10px #0f172a73}.notification-item__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,#34d399,#059669);color:#fff;font-size:.9rem;box-shadow:0 6px 14px -6px #059669b3}.notification-item__body{min-width:0}.nav-bar__notification-panel .notification-item--recovery p{padding:0;font-size:.92rem;font-weight:600;line-height:1.4;color:#111827}.notification-item--recovery .notification-item__meta{margin-top:3px;font-size:.8rem;font-weight:500;color:#4b5563;opacity:1}.notification-link--recovery{gap:8px;min-height:36px;margin-top:10px;padding:6px 14px;border-radius:9px;background:#6d28d9;font-weight:600;font-size:.85rem;transition:background-color .15s ease}.notification-link--recovery svg{width:11px;height:11px}.notification-link--recovery:hover{background:#5b21b6}.main-content{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto}@media(min-width:701px){.main-content{padding-bottom:var(--shell-footer-gap)}}.main-content>*{min-width:0;max-width:100%}.workspace{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden;container-type:inline-size;container-name:workspace}.workspace>.breadcrumb{flex-shrink:0;align-self:stretch;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;margin:.15rem .75rem .5rem;padding:0;background:none;border:none;border-radius:0;box-shadow:none;display:flex;align-items:center;scrollbar-width:none}.workspace>.breadcrumb::-webkit-scrollbar{display:none}.breadcrumbList{display:flex;align-items:center;flex-wrap:nowrap;gap:.1rem;margin:0;padding:0;list-style:none;width:max-content}.breadcrumbItem{display:flex;align-items:center;flex-shrink:0;gap:.1rem;min-width:0}.breadcrumbLink,.breadcrumbActive{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .2rem;border-radius:4px;font-size:.75rem;line-height:1.2;letter-spacing:.01em;text-decoration:none;white-space:nowrap;transition:color .15s ease,background-color .15s ease}.breadcrumbLink{color:var(--secondary-text-color);font-weight:500}.breadcrumbLink:hover{color:var(--header-text-color);background:color-mix(in srgb,var(--primary-color) 12%,transparent)}.breadcrumbLink:focus-visible,.breadcrumbActive:focus-visible{outline:2px solid var(--primary-color);outline-offset:1px}.breadcrumbActive{color:var(--header-text-color);font-weight:600;background:none;box-shadow:none;pointer-events:none}.crumbIcon{display:flex;align-items:center;font-size:.7rem;line-height:1}.crumbLabel{min-width:0}.breadcrumbSeparator{color:var(--secondary-text-color);display:flex;align-items:center;margin:0 .12rem;font-size:.45rem;opacity:.55;-webkit-user-select:none;user-select:none}.workspace>.container,.workspace>.homeContainer,.workspace>.settingsLayout,.workspace>.calendarPageContainer,.workspace>.pageContainer,.workspace>.familySharingPage,.workspace>.adminDashboardContainer,.workspace>.page,.workspace>.remindersPage,.workspace>.contactPageContainer,.workspace>.surveyPageContainer,.workspace>.faqContainer,.workspace>.tagsPageContainer,.workspace>.privacyContainer,.workspace>.pricingPage{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.workspace>.settingsLayout{container-type:inline-size;container-name:workspace}.workspace>.container,.workspace>.settingsLayout,.workspace>.calendarPageContainer,.workspace>.pageContainer,.workspace>.adminDashboardContainer,.workspace>.page,.workspace>.remindersPage,.workspace>.contactPageContainer,.workspace>.surveyPageContainer,.workspace>.faqContainer,.workspace>.tagsPageContainer,.workspace>.privacyContainer,.workspace>.pricingPage{overflow:hidden}.workspace>.pricingPage{min-height:0!important}.workspace>.contactPageContainer>.contactContent{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;position:relative;z-index:0}.App.shell-full .workspace>.contactPageContainer>.contactContent{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(18rem,1fr);align-items:stretch}.workspace>.homeContainer,.workspace>.familySharingPage{overflow-x:hidden;overflow-y:auto}.workspace>.pricingPage>.settingsHeader{flex-shrink:0;min-width:0}.workspace>.pricingPage>.pricingContainer{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.workspace>.pricingPage>.pricingContainer::-webkit-scrollbar{display:none}.workspace>.homeContainer{container-type:inline-size;container-name:workspace}.navHeader{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--section-nav-pill-width, 420px)) minmax(0,1fr);align-items:center;column-gap:.5rem;flex-shrink:0;min-width:0;padding:.35rem .75rem}.workspace>.container>.navHeader{padding:.5rem .75rem 1.5rem}.sectionNavCard{display:flex;grid-column:2;width:100%;max-width:var(--section-nav-pill-width, 420px);min-width:0;height:auto;justify-self:center}.pillContainer{display:flex;min-width:0;flex:1}.pillContainer{position:relative;overflow:hidden}.headerAction{grid-column:3;justify-self:end;min-width:0;max-width:100%}.contentArea{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:auto;container-type:size;container-name:workspace}.contentArea:has(>.groceryListContainer),.contentArea:has(>.addPantryPage),.contentArea:has(>.managePantriesPage){scrollbar-width:none}.contentArea:has(>.groceryListContainer)::-webkit-scrollbar,.contentArea:has(>.addPantryPage)::-webkit-scrollbar,.contentArea:has(>.managePantriesPage)::-webkit-scrollbar{display:none}.contentArea>*{display:flex;flex-direction:column;flex:1 0 auto;min-width:0;min-height:0;max-width:100%}.contentArea>.mealPlanner,.contentArea>.splitLayout,.contentArea>.panelContainer,.contentArea>.addGroceryContainer,.contentArea>.editGroceryContainer,.contentArea>.viewMealsPage,.contentArea>.viewMealsContainer,.contentArea>.groceryListContainer,.contentArea>.pageContainer,.contentArea>.dashboardContainer,.contentArea>.storesContainer,.contentArea>.addCookbookContainer,.contentArea>.editCookbookContainer,.contentArea>.container,.contentArea>.addPantryPage{flex:1 1 auto;min-height:0;overflow:hidden}.contentArea>.groceryListContainer{flex:1 1 0%}.contentArea>.pageContainer.managePantriesPage{flex:1 0 auto;height:auto;min-height:100%;overflow:visible}.contentArea>.pageContainer.managePantriesPage>.mainContent,.contentArea>.pageContainer.managePantriesPage .pantriesSection,.contentArea>.pageContainer.managePantriesPage .pantriesGrid{flex:1 0 auto;height:auto;min-height:auto;overflow:visible}.contentArea>.pageContainer.managePantriesPage .pantriesGrid{align-content:start;align-items:start}.homeContainer{overflow-x:hidden;overflow-y:auto}.dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.75rem;padding:.75rem;min-width:0}.dashboardCard{min-width:0;max-width:100%}.workspace>.homeContainer>.dashboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto auto auto;flex:1 0 auto;min-width:0;min-height:0;width:100%;max-width:none;padding:0;align-self:stretch;align-content:start}.workspace>.homeContainer>.dashboard>.dashboardCard{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.workspace>.homeContainer>.dashboard>.expirationTrackerCard{--expiration-tracker-height: 32rem;height:var(--expiration-tracker-height);min-height:var(--expiration-tracker-height);max-height:var(--expiration-tracker-height);align-self:start;overflow:hidden}@container workspace (max-width: 900px){.workspace>.homeContainer>.dashboard{grid-template-columns:minmax(0,1fr);grid-template-rows:none;min-height:0}.workspace>.homeContainer>.dashboard>.dashboardCard{min-height:auto;height:auto}.workspace>.homeContainer>.dashboard>.expirationTrackerCard{height:var(--expiration-tracker-height);min-height:var(--expiration-tracker-height);max-height:var(--expiration-tracker-height)}}.mealPlanner,.splitLayout,.panelContainer,.addGroceryContainer,.editGroceryContainer,.editMealContainer,.editCookbookContainer,.addCookbookContainer{display:flex;flex-direction:row;flex:1;min-width:0;min-height:0;gap:.5rem;overflow:hidden}.leftPanel,.rightPanel,.consolePanel,.formPanel,.selectionPanel,.editInterface,.cookbookListSection,.consoleWrapper,.consoleContent,.mealConsoleContainer,.mealConsoleArea,.ingredientsPanel,.ingredientsSection,.aiSection,.topHalf,.ingredientsSelection,.editMeal,.changeIngredientsContainer,.panelContent,.mealArea{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.toggleSidebar,.mealConsoleTitleRow,.mealConsoleForm,.mealMetadata,.panelTitleRow,.searchContainer,.typeTagsContainer,.aiFooter,.navHeader,.mealHeader,.editMealTabSelector{flex-shrink:0}.typeTagsContainer{display:flex;flex-wrap:nowrap;gap:.35rem;min-width:0;overflow-x:auto;overflow-y:hidden}.ingredientsListContainer,.ingredientsList,.ingredientsContainer,.mealPlanList,.chatArea,.scrollableList,.storeListScroll,.guidanceContent,.detailContent,.editorForm,.panelBody,.groceryList{flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto}.aiSection .chatArea{display:flex;flex-direction:column}.aiSection .aiResponse{flex:1 1 auto;min-height:min-content;overflow:visible}.ingredientsList:after,.ingredientsContainer:after,.mealPlanList:after,.chatArea:after,.scrollableList:after,.storeListScroll:after,.guidanceContent:after,.detailContent:after,.editorForm:after,.panelBody:after,.groceryList:after,.extraPanel:after,.resultsSection:after,.mealDetailContent:after,.itemsContainer:after,.itemsList:after,.mealsGrid:after,.contentsList:after,.faqList:after,.categoryList:after,.listContainer:after,.pantriesGrid:after,.condensedList:after,.tagGrid:after,.dashboardGrid:after,.ingredientsGrid:after,.workspace>.homeContainer:after,.workspace>.familySharingPage:after,.workspace>.pricingPage>.pricingContainer:after{content:"";display:block;flex:0 0 auto;flex-shrink:0;width:100%;height:var(--shell-footer-gap);pointer-events:none}.mealsGrid:after,.tagGrid:after,.pantriesGrid:after,.dashboardGrid:after,.ingredientsGrid:after{grid-column:1 / -1}.ingredientsListContainer{display:flex;min-height:0}.alphabetIndex{display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;overflow-x:hidden}.workspace img,.workspace video,.workspace canvas{max-width:100%}.workspace input,.workspace textarea,.workspace select,.workspace button{max-width:100%;min-width:0}.workspace .centerCircle,.workspace .quantityBubble,.workspace .quantityInput,.workspace .purchaseQuantityBubble,.workspace .purchaseQuantityInput{min-width:30px;max-width:32px}.workspace table{max-width:100%}.workspace pre,.workspace code{max-width:100%;overflow-x:auto}.footer{flex-shrink:0;min-width:0;max-width:100%}.settingsLayout>.content,.viewMealsPage>.resultsSection,.viewMealsPage>.mealDetailContent,.pageContainer>.mainContent,.dashboardContainer>.layout,.groceryListContainer>.contentContainer,.adminDashboardContainer>.dashboardGrid,.page>.container,.faqContainer>.content,.privacyContainer>.content,.profileContainer,.categoryOrderContainer,.settingsLayout>.content>.storesLayoutContainer,.storesLayoutContainer,.storesContainer,.listContainer,.pantriesSection{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.settingsLayout>.content,.calendarPageContainer .calendarContainer,.resultsSection,.mealDetailContent,.pageContainer>.mainContent,.itemsContainer,.itemsList,.mealsGrid,.groceryListItems,.contentsList,.dashboardGrid,.faqList,.tagGrid,.categoryList,.listContainer,.pantriesGrid,.condensedList,.page .tableShell{min-width:0;min-height:0}.calendarPageContainer .calendarContainer,.resultsSection,.mealDetailContent,.itemsContainer,.itemsList,.mealsGrid,.groceryListItems,.contentsList,.faqList,.privacyContainer>.content,.categoryList,.listContainer,.pantriesGrid,.condensedList,.settingsLayout>.content,.profileContainer,.categoryOrderContainer{overflow-x:hidden;overflow-y:auto}.workspace .remindersPage{width:100%;max-width:var(--measure-prose);margin-inline:auto}.workspace .remindersPage>.header,.workspace .remindersPage>.addFooter{flex-shrink:0}.workspace .remindersPage>.listContainer{display:flex;flex-direction:column;flex:1 1 0%;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.workspace .remindersPage>.listContainer::-webkit-scrollbar{display:none}.workspace>.pricingPage.settingsView>.settingsHeader,.workspace>.pricingPage.settingsView>.pricingContainer,.workspace>.faqContainer>.header,.workspace>.faqContainer>.content,.workspace>.contactPageContainer>.header,.workspace>.contactPageContainer>.contactContent,.workspace>.tagsPageContainer,.workspace>.familySharingPage,.workspace .profileContainer,.contentArea>.pageContainer.managePantriesPage>.mainContent{width:100%;max-width:var(--measure-cluster);margin-inline:auto}.workspace>.faqContainer>.content,.workspace>.privacyContainer,.workspace>.surveyPageContainer>.header,.workspace>.surveyPageContainer>.formCard,.workspace .categoryOrderContainer{width:100%;max-width:var(--measure-prose);margin-inline:auto}.workspace>.homeContainer,.workspace>.adminDashboardContainer,.workspace .storesLayoutContainer{width:100%;max-width:var(--measure-gallery);margin-inline:auto}.groceryListContainer>.contentContainer,.dashboardContainer>.layout,.bookLayout,.tagsPageContainer>.tagsContent{display:flex;flex-direction:row;flex:1;min-width:0;min-height:0;overflow:hidden}.workspace .groceryListContainer{display:flex;flex-direction:column;flex:1 1 0%;min-width:0;min-height:0;overflow:hidden}.workspace .groceryListContainer>.contentContainer{display:flex;flex-direction:row;align-items:stretch;justify-content:flex-start;gap:.75rem;flex:1 1 0%;min-width:0;min-height:0;overflow:hidden;position:relative}.workspace .groceryListContainer .leftPanelFlipContainer{flex:0 0 22rem;flex-basis:22rem;width:22rem;max-width:100%;min-width:22rem;min-height:0}.workspace .groceryListContainer .leftPanelFlipInner{flex:1;width:100%;height:100%;min-height:0}.workspace .groceryListContainer .leftPanelFront,.workspace .groceryListContainer .leftPanelBack{height:100%}.workspace .groceryListContainer .leftPanelFront h2,.workspace .groceryListContainer .newListFooterBtn,.workspace .groceryListContainer .backPanelButtons{flex-shrink:0}.workspace .groceryListContainer .groceryListItems,.workspace .groceryListContainer .leftPanelBack .scrollableList{flex:0 1 auto;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.workspace .groceryListContainer .groceryListItems::-webkit-scrollbar,.workspace .groceryListContainer .leftPanelBack .scrollableList::-webkit-scrollbar{display:none}.workspace .groceryListContainer .ingredientsPanel{display:flex;flex-direction:column;flex:1 1 0%;min-width:0;min-height:0;max-width:none;width:auto;overflow:hidden;background:#1a1631;border:1px solid rgba(255,255,255,.05);border-radius:16px}.workspace .groceryListContainer .groceryListNameContainer,.workspace .groceryListContainer .filtersAndActionsContainer{flex-shrink:0;min-width:0;max-width:100%}.workspace .groceryListContainer .groceryListNameContainer,.workspace .groceryListContainer .ingredientsPanel h2.groceryListName{border-bottom:none}.workspace .groceryListContainer .ingredientGroups{flex:1 1 0%;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding-bottom:var(--shell-footer-gap)}.workspace .groceryListContainer .ingredientGroup{overflow:visible}.workspace .groceryListContainer .ingredientGroup .scrollableList{flex:none;overflow:visible}.workspace .groceryListContainer .ingredientGroup .scrollableList:after{content:none;display:none;height:0}.workspace .groceryListContainer .rightNavPanel{display:flex;flex-direction:column;position:absolute;top:0;right:0;bottom:0;flex:none;width:10rem;min-width:0;min-height:0;max-height:none;overflow:hidden;margin-left:0;z-index:12}.workspace .groceryListContainer .categoryNavContainer{flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding-bottom:var(--shell-footer-gap)}.settingsLayout>.content:has(.storesLayoutContainer){overflow:hidden}.storesLayoutContainer>.container{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.contentArea>.infoContainer{flex:0 0 auto}.splitLayout>.listPane,.splitLayout>.detailPane{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.splitLayout>.listPane{flex:0 1 23.75rem;width:min(100%,23.75rem)}.splitLayout>.detailPane{flex:1}.listPane>.paneHeader,.detailPane>.detailHeader,.detailPane>.actionFooter,.detailPane>.editorFooter,.guidancePane>.guidanceFooter{flex-shrink:0}.storesContainer>.splitLayout{gap:0}.leftPanelFlipContainer,.dashboardContainer aside,.bookLayout>.leftPage,.bookLayout>.rightPage,.mainContentWrapper,.editCookbookContainer>.editInterface{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.dashboardContainer aside,.bookLayout>.leftPage,.bookLayout>.rightPage,.mainContentWrapper,.editCookbookContainer>.editInterface{flex:1}.leftPanelFront,.leftPanelBack{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.bookLayout>.rightPage{overflow-x:hidden;overflow-y:auto}.filterTabs,.tocToggle{flex-shrink:0}.viewMealsPage>.header,.viewMealsPage>.filtersSection,.pageContainer>.header,.calendarPageContainer>.pageHeader,.dashboardContainer>.mobileHeader,.controlsSection,.filterBar,.filterBarTop,.createSection,.page>.pageHeader{flex-shrink:0}.privacyContainer>.header{flex-shrink:0}.mealsGrid,.ingredientsGrid,.dashboardGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.75rem;min-width:0}@container workspace (max-width: 900px){.mealPlanner,.splitLayout,.panelContainer,.mealViewPanel,.addGroceryContainer,.editGroceryContainer,.editMealContainer,.editCookbookContainer,.groceryListContainer>.contentContainer,.workspace .groceryListContainer>.contentContainer,.dashboardContainer>.layout,.bookLayout,.tagsPageContainer>.tagsContent{flex-direction:column}.workspace .groceryListContainer>.contentContainer{flex:1 0 auto;height:auto;min-height:0;overflow:visible}.contentArea>.groceryListContainer,.workspace .groceryListContainer,.contentArea>.pageContainer.managePantriesPage{flex:1 0 auto;height:auto;min-height:100%;overflow:visible}.contentArea>.pageContainer.managePantriesPage>.mainContent,.contentArea>.pageContainer.managePantriesPage .pantriesSection,.contentArea>.pageContainer.managePantriesPage .pantriesGrid{flex:1 0 auto;height:auto;min-height:auto;overflow:visible}.workspace .groceryListContainer:after{content:"";display:block;flex:0 0 auto;flex-shrink:0;width:100%;height:var(--shell-footer-gap);pointer-events:none}.workspace .groceryListContainer .leftPanelFlipContainer{position:relative;flex:0 0 auto;width:100%;max-width:none;min-width:0;height:auto;max-height:none;min-height:0}.workspace .groceryListContainer .leftPanelFlipInner{height:auto;transform:none}.workspace .groceryListContainer .leftPanelFront,.workspace .groceryListContainer .leftPanelBack{position:relative;height:auto;transform:none}.workspace .groceryListContainer .leftPanelFlipInner:not(.flipped) .leftPanelBack{display:none}.workspace .groceryListContainer .leftPanelFlipInner.flipped .leftPanelFront{display:none}.workspace .groceryListContainer .groceryListItems,.workspace .groceryListContainer .leftPanelBack .scrollableList{flex:none;overflow:visible}.workspace .groceryListContainer .rightNavPanel{display:none}.workspace .groceryListContainer .ingredientsPanel{width:100%;flex:1 0 auto;height:auto;min-height:0;overflow:visible;border-radius:16px;padding:16px}.workspace .groceryListContainer .ingredientGroups{flex:none;height:auto;min-height:0;overflow:visible;padding-bottom:0}.workspace .groceryListContainer .toggleLabel,.workspace .groceryListContainer .actionLabel{display:none}.workspace .groceryListContainer .filtersAndActionsContainer{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px;overflow:visible}.workspace .groceryListContainer .filterButtons{flex-wrap:nowrap;flex:0 1 auto;min-width:0;gap:2px}.workspace .groceryListContainer .actionButtons{flex-wrap:nowrap;flex:0 0 auto;min-width:0;gap:8px}.workspace .groceryListContainer .viewToggleIcon,.workspace .groceryListContainer .viewToggleIconButton,.workspace .groceryListContainer .resetButton{flex-shrink:0;min-width:42px;width:42px;padding:8px}.workspace .groceryListContainer .leftPanelFront h2{margin:0 2.5rem 1.15rem;padding-left:0;justify-content:center;font-size:.85em;height:32px}.workspace .groceryListContainer .newListFooterBtn{margin:1.5rem .5rem .5rem;padding:.5rem 0}.contentArea>.mealPlanner,.contentArea>.splitLayout,.contentArea>.panelContainer,.contentArea>.addGroceryContainer,.contentArea>.addCookbookContainer,.contentArea>.addPantryPage{flex:1 0 auto;height:auto;min-height:100%;overflow:visible}.contentArea>.storesWorkspace{flex:0 0 auto;height:auto;min-height:auto;overflow:visible}.contentArea>.addPantryPage .panelContainer,.contentArea>.addPantryPage .consolePanel,.contentArea>.addPantryPage .formPanel,.contentArea>.addPantryPage .aiSection,.contentArea>.addPantryPage .topHalf,.contentArea>.addPantryPage .chatArea,.contentArea>.addPantryPage .aiResponse,.contentArea>.addPantryPage .welcomeScreen,.contentArea>.addPantryPage .panelBody,.contentArea>.addPantryPage .addForm{flex:0 0 auto;min-height:auto;height:auto;overflow:visible}.contentArea>.viewMealsContainer:has(>.editMealContainer){flex:1 0 auto;height:auto;min-height:100%;overflow-x:hidden;overflow-y:visible}.mealPlanner>.leftPanel,.mealPlanner>.rightPanel,.splitLayout>.leftPanel,.splitLayout>.rightPanel,.panelContainer>.leftPanel,.panelContainer>.rightPanel,.addGroceryContainer>.leftPanel,.addGroceryContainer>.rightPanel,.editGroceryContainer>.leftPanel,.editGroceryContainer>.rightPanel,.editMealContainer>.ingredientsSelection,.editMealContainer>.editMeal{flex:0 0 auto;min-height:100cqh}.splitLayout>.listPane,.splitLayout>.detailPane{width:100%;max-width:100%}.splitLayout>.listPane{flex:0 1 auto;min-height:14rem;max-height:45%}.storeSplitLayout>.storeListPane{flex:0 0 auto;width:100%;max-width:100%;min-width:0;min-height:0;max-height:none;height:auto;overflow:visible}.storeSplitLayout>.storeDetailPane{flex:0 0 auto;width:100%;min-width:0;min-height:0;height:auto;overflow:visible}.splitLayout>.detailPane{flex:1 1 auto;min-height:0}.editCookbookContainer>.cookbookListSection{width:100%;max-width:100%;flex:0 0 auto;min-height:0;max-height:none;height:auto}.editCookbookContainer>.editInterface{width:100%;max-width:100%;flex:0 0 auto;min-height:0;height:auto;overflow:visible}}@container workspace (max-width: 1100px){.workspace .groceryListContainer .rightNavPanel{flex-basis:3.5rem;width:3.5rem}.workspace .groceryListContainer .categoryNavLabel,.workspace .groceryListContainer .toggleLabel,.workspace .groceryListContainer .actionLabel{display:none}.workspace .groceryListContainer .viewToggleIcon,.workspace .groceryListContainer .viewToggleIconButton,.workspace .groceryListContainer .resetButton{flex-shrink:0;min-width:42px;width:42px;padding:8px;gap:0}}@container workspace (max-width: 520px){.sectionTitle,.workspace .groceryListContainer .toggleLabel,.workspace .groceryListContainer .actionLabel,.workspace .groceryListContainer .categoryNavLabel{display:none}}@media(max-width:700px){.workspace .groceryListContainer .actionButtons.desktopOnly{display:none}.workspace .groceryListContainer .mobileActionBar.mobileOnly{display:flex}.workspace .groceryListContainer .mobileActionBar .actionLabel{display:none}.workspace .groceryListContainer .mobileActionBar .viewToggleIconButton,.workspace .groceryListContainer .mobileActionBar .resetButton{width:auto;min-width:0;min-height:27px;height:27px;padding:0;gap:0}.workspace .groceryListContainer{padding-bottom:var(--grocery-mobile-footer)}.workspace .groceryListContainer .undoToast{bottom:calc(var(--grocery-mobile-footer) + .75rem)}}.App>.sidebar .sidebarInternalClose{position:absolute;top:0;right:0;height:30px;z-index:10;background:none;border:none;color:var(--text-color);font-size:1.25rem;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.App>.sidebar .logoContainer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-left:15px;position:relative;height:30px;min-width:0}.App>.sidebar.sidebarCollapsed .logoContainer{padding-left:0;justify-content:center}.App>.sidebar .logoText{font-size:1.25rem;font-weight:700;font-family:Georgia,serif;text-decoration:none;min-width:0}.App>.sidebar .zeraLogo{color:#fff}.App>.sidebar .freshLogo{color:#e164ff}.App>.sidebar .versionDisplay{padding:0 15px 15px;font-size:.75rem;color:#ffffff80;text-align:left;font-family:monospace;letter-spacing:.05rem;margin-bottom:24px}.App>.sidebar .sidebarScrollableContent{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding-bottom:2rem;scrollbar-width:none}.App>.sidebar .sidebarScrollableContent::-webkit-scrollbar{display:none}.App>.sidebar .sectionHeader{font-size:.75rem;letter-spacing:.1rem;font-weight:600;color:var(--navigation-header-text-color);margin-bottom:1rem;text-transform:uppercase;padding-left:15px}.App>.sidebar .navList{list-style:none;padding:0;margin:0 0 64px;display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.App>.sidebar .navList>li{width:100%}.App>.sidebar .navLink{display:flex;align-items:center;gap:.75rem;min-width:0;color:var(--navigation-text-color);text-decoration:none;font-size:.95rem;padding:.6rem .8rem;border-radius:8px;width:100%;box-sizing:border-box}.App>.sidebar .navLink:hover{background-color:var(--navigation-menu-selection-hover);color:var(--inverse-background-color)}.App>.sidebar .activeLink{background:var(--navigation-menu-selection);color:var(--inverse-background-color);font-weight:600}.App>.sidebar .navLink:hover.activeLink{background:var(--navigation-menu-selection);color:var(--inverse-background-color)}.App>.sidebar .navIcon{font-size:1.2rem;flex-shrink:0}.App>.sidebar.sidebarCollapsed .navLink{justify-content:center;padding:.6rem .5rem}.sidebar-backdrop{position:absolute;inset:0;z-index:15;border:0;padding:0;background:#00000073;cursor:pointer}.App.shell-overlay>.sidebar,.App.shell-rail.shell-overlay-open>.sidebar{position:absolute;top:0;left:0;height:100%;width:min(16rem,90vw);transform:translate(-100%);pointer-events:none}.App.shell-overlay.shell-overlay-open>.sidebar,.App.shell-rail.shell-overlay-open>.sidebar{transform:translate(0);pointer-events:auto}.App.shell-rail.shell-overlay-open>.content-wrapper{margin-left:4.5rem}.workspace>.container{background-color:var(--background-color);color:var(--text-color);position:relative;container-type:inline-size;container-name:category}.navHeader{position:relative}.headerAction{position:static;transform:none}@container category (max-width: 900px){.headerAction .headerActionLabel{display:none}}@container category (max-width: 700px){.navHeader{grid-template-columns:minmax(0,1fr);justify-items:center;row-gap:.5rem}.sectionNavCard,.headerAction{grid-column:1}.headerAction{justify-self:center}.headerAction .headerActionLabel{display:inline}}.contentArea{border-radius:8px}.sectionNavCard{width:100%;max-width:var(--section-nav-pill-width, 420px);background:var(--addeditview-color);border:1px solid rgba(255,255,255,.1);border-radius:999px;overflow:hidden}.pillContainer{background:transparent;border-radius:999px}.pillIndicator{position:absolute;top:0;height:100%;border-radius:999px;z-index:1;background:var(--pill-toggle-color);box-shadow:#0000004d -3px -3px 6px inset,#ffffff4d 3px 3px 6px inset;transition:left .35s ease,width .35s ease}.pillButton{flex:1;padding:.75rem .5rem;font-size:.875rem;background:transparent;border:none;color:var(--pill-button-color);cursor:pointer;z-index:2;position:relative;display:flex;align-items:center;justify-content:center;white-space:nowrap}.pillButton:hover:not(:disabled){color:var(--pill-button-hover-color);background-color:transparent}.pillButton:disabled{opacity:.45;cursor:not-allowed}.activePillButton{color:var(--inverse-background-color)}.sectionTitle{font-weight:600;margin:0}.navHeader .sectionTitle:after{content:none}.navHeader .icon{flex-shrink:0;margin-right:.3rem;font-size:.8rem}.input-field,.select-field{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:.5rem;border:1px solid var(--input-black-opacity-background);border-radius:.3125rem;font-size:1rem;font-family:inherit;line-height:1.25;background-color:var(--input-black-opacity-background);color:var(--input-text-color)}.select-field{padding-right:2rem;appearance:none;-webkit-appearance:none;cursor:pointer;color-scheme:dark;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.78)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;background-size:.75rem}.input-field:focus,.select-field:focus{outline:none;border-color:var(--button-hover-background-color);box-shadow:0 0 .3125rem #604fdf}.select-field option{background-color:var(--input-black-opacity-background);color:var(--input-text-color)}.mealPlanner .consoleWrapper,.editMealContainer .consoleWrapper{flex-direction:column}.viewMealsContainer{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.viewMealsContainer>.viewMeals{flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto}.viewMealsContainer>.editMealContainer{flex:1}.editMeal .mealPlanList,.editMeal .instructionsContent,.editMeal .extraPanel{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto}.mealPlanner .consoleContent{flex:1}.mealPlanner .mealConsoleArea{overflow:hidden}.mealPlanner .ingredientsContainer{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.mealPlanner .ingredientsWrapper{justify-content:space-between}.mealPlanner .mealPlanIngredient{flex:0 1 18.75rem;max-width:18.75rem}.mealPlanner .ingredientInfo{margin-left:auto;flex-shrink:0}.mealPlanner .mealPlanList,.mealPlanner .emptyMealPlan{flex:1 1 0%;min-height:0;overflow-x:hidden;overflow-y:auto;height:auto}.mealPlanner .mealIngredientTags{flex-shrink:0;margin-top:auto}.mealPlanner .ingredientsContainer:after{display:none}.mealPlanner .mealConsoleTitleRow{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem;min-width:0}.mealPlanner .mealConsoleWithTags{display:flex;flex-direction:row;flex:1;min-width:0;min-height:0;overflow:hidden;gap:8px}.mealPlanner .stickyTagColumn{flex-shrink:0;min-height:0;overflow-x:hidden;overflow-y:auto}.micButton{position:relative;width:44px;height:44px;padding:0;border-radius:50%;border:2px solid #6366f1;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #6366f14d;overflow:hidden}.micButton.micButtonCompact{width:36px;height:36px;border:none;background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 2px 8px #7c3aed66}.micButton.micButtonCompact:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf6,#7c3aed);transform:scale(1.07);box-shadow:0 4px 16px #7c3aed80}.micButton.micButtonCompact.recording,.micButton.micButtonCompact.transcribing{background:linear-gradient(135deg,#ef4444,#dc2626)}.micButton.micButtonCompact.connected{box-shadow:0 2px 8px #10b98173}.micButton .micIcon,.micIconCompact{font-size:16px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[role=button]:focus-visible,[role=link]:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media(max-width:600px){.breadcrumbLink{position:relative}.breadcrumbLink:after{content:"";position:absolute;left:50%;top:50%;width:max(100%,44px);height:44px;transform:translate(-50%,-50%)}}.mealPlanner{gap:.75rem;margin:0;padding:.75rem;background-color:var(--background-color);color:var(--text-color)}.leftPanel{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.toggleSidebar{display:flex;flex-direction:row;align-items:center;justify-content:center;width:auto;min-height:0;margin:.35rem auto;padding:.25rem}.mealConsoleWithTags{gap:8px}.stickyTagColumn{position:sticky;top:20px;display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:10px 8px;background:var(--purple-panel);border:1px solid var(--purple-border);border-radius:10px;flex-shrink:0;width:130px}.tagColumnLabel{font-size:.7rem;font-weight:700;color:var(--text-color);opacity:.5;text-transform:uppercase;letter-spacing:.5px;text-align:center;margin-bottom:2px}.stickyTagItem{width:100%;border-radius:999px;background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:600;padding:6px 10px;box-shadow:0 2px 6px #00000040;-webkit-user-select:none;user-select:none;text-align:center;transition:background .2s ease,box-shadow .2s ease}.stickyTagText{max-width:20ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stickyTagItem:hover{background:linear-gradient(135deg,#ff4c4c,#ff7a7a);box-shadow:inset 0 0 0 2px #fffffff2,0 2px 6px #00000040}.stickyTagSelected{background:#4caf50!important;box-shadow:0 2px 6px #00000040}.stickyTagSelected:hover{background:#43a047!important;box-shadow:inset 0 0 0 2px #fff,0 2px 6px #00000040}.stickyTagAdd{background:transparent!important;border:2px dashed rgba(255,255,255,.3)!important;color:#ffffff80!important;font-size:1rem;box-shadow:none!important;padding:5px 10px}.stickyTagAdd:hover{border-color:#ffffffb3!important;color:#ffffffe6!important;background:#ffffff14!important;transform:none!important}.spinnerContainer{display:flex;justify-content:center;align-items:center;flex:1;min-height:0}@media(min-width:99999px){.mealPlanner{padding:10px;gap:24px}.stickyTagColumn{position:static;flex-direction:row;flex-wrap:wrap;width:100%;height:auto;padding:8px 10px;gap:6px;justify-content:flex-start;border-radius:8px}.tagColumnLabel{writing-mode:horizontal-tb;align-self:center}.stickyTagItem{height:28px;width:auto;padding:0 10px;font-size:.72rem}.stickyTagAdd{height:28px;width:36px}.toggleSidebar{width:100%;flex-direction:column;align-items:center;border-radius:10px 10px 0 0;min-height:0;margin:0;height:auto;padding:10px 0}.consoleWrapper{flex:none}}.mealConsoleArea{border-radius:8px;color:var(--text-color);padding:16px 0 0;transition:background-color .3s ease;background:var(--purple-panel);border:1px solid var(--purple-border)}.mealConsoleTitleRow{margin:0 16px 12px}.mealConsoleArea h2{margin:0;font-size:1.5rem;min-width:0}.mealPlanner .mealConsoleTitleRow .modeSelector.horizontal{flex-shrink:0;height:36px;width:84px}.mealPlanner .mealConsoleTitleRow .modeSelector.horizontal .indicator{width:30px;height:30px}.mealPlanner .mealConsoleTitleRow .modeSelector .aiModeIcon{width:1.55em;height:1.55em;display:block}.mealPlanner .mealConsoleTitleRow .modeSelector .manualModeIcon{font-size:1em;width:1em;height:1em}.mealConsoleForm{display:flex;justify-content:space-between;width:100%;margin-bottom:12px;padding:0 16px;gap:12px;align-items:center}.mealConsoleForm .input-field,.mealConsoleForm input{flex:1 1 auto;min-width:0}.actionButtons{display:flex;gap:10px;align-items:center;flex-shrink:0}.mealNameInput{width:100%;padding:8px;margin-bottom:16px;border:1px solid var(--input-black-opacity-background);border-radius:5px;font-size:16px;background-color:var(--input-black-opacity-background);color:var(--input-text-color);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.buttonSave:disabled,.buttonUndo:disabled{opacity:.35;cursor:not-allowed}.buttonUndo{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.9rem;background:transparent}.buttonUndo{color:#ffffff80;border:1px solid rgba(255,255,255,.14)}.buttonUndo:hover:not(:disabled){background:#ffffff0f;border-color:#ffffff59;color:#ffffffe6}.buttonUndo:hover:not(:disabled) svg{transform:rotate(-25deg);transition:transform .2s ease}.buttonSave{display:inline-flex;align-items:center;justify-content:center;padding:0 22px;height:38px;border-radius:8px;font-size:.875rem;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:all .2s ease;white-space:nowrap;border:1px solid rgba(124,58,237,.5);background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 2px 8px #6d28d94d}.buttonSave:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#5b21b6);box-shadow:0 4px 14px #6d28d980;transform:translateY(-1px)}.tagSelector{margin-bottom:8px;text-align:left}.tagLabel{margin:0 0 8px;font-weight:600}.tagOptions{display:flex;flex-wrap:wrap;gap:8px}.mealMetadata{margin:0 0 8px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px;padding:8px 16px;background-color:transparent;border-radius:0;font-size:14px;opacity:.8}.metadataItem{display:flex;align-items:center;gap:6px}.servingsIcon,.difficultyIcon{font-size:14px;color:#667eea}.prepTimeIcon{font-size:14px;color:#f44}.cookTimeIcon{font-size:14px;color:#4f4}.metadataValue{font-weight:600;color:var(--text-color);font-size:13px}.tagItem{display:inline-flex;align-items:center;padding:6px 10px;background-color:#5458b1;cursor:pointer;transition:background-color .2s ease;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:#fff;padding:.25rem .5rem;border-radius:999px;font-size:.75rem;box-shadow:0 2px 4px #0000001a}.tagItem:hover{background-color:#3022a0;background:linear-gradient(135deg,#ff4c4c,#ff7a7a)}.selectedTag{background-color:#4caf50!important;background:linear-gradient(135deg,#4caf50,#388e3c)!important}.tagItem input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.ingredientsContainer{position:relative;display:flex;flex-direction:column;border-radius:0;padding:12px;margin:0;border:none;border-top:1px solid rgba(255,255,255,.2)}.emptyMealPlan{flex:1;margin:0;min-height:0}.modeSelector .modeItem.modeItemHint{animation:modeCarrotHint 1.6s ease-in-out infinite}@keyframes modeCarrotHint{0%,to{color:#b7b7b7}50%{color:#fff;filter:drop-shadow(0 0 6px rgba(255,138,61,.9))}}@media(prefers-reduced-motion:reduce){.modeSelector .modeItem.modeItemHint{animation:none}}.mealIngredientTags{flex-shrink:0;padding:12px 0 4px;margin-top:8px;border-top:1px solid rgba(255,255,255,.28);background:transparent}.mealIngredientTagsRow{--tag-chip-height: 2.05rem;--tag-chip-gap: 6px;display:flex;flex-wrap:wrap;align-items:center;gap:var(--tag-chip-gap);max-height:calc(2 * var(--tag-chip-height) + var(--tag-chip-gap));overflow:hidden}.mealIngredientTags .stickyTagItem{width:auto}.stickyTagOverflowHidden,.stickyTagMoreSpacer{display:none!important}.stickyTagMore{background:#ffffff24!important;color:#ffffffeb!important;box-shadow:none!important;font-weight:700;letter-spacing:.01em}.stickyTagMore:hover{background:#ffffff38!important;box-shadow:inset 0 0 0 2px #ffffffd9!important}.stickyTagMoreMenu{position:fixed;z-index:40;display:flex;flex-wrap:wrap;align-content:flex-start;gap:6px;width:min(22rem,calc(100vw - 16px));max-height:min(12rem,40vh);overflow-x:hidden;overflow-y:auto;padding:10px;background:var(--purple-panel, #2a2448);border:1px solid var(--purple-border, rgba(255, 255, 255, .22));border-radius:10px;box-shadow:0 10px 28px #0006;scrollbar-width:thin}.stickyTagMoreMenu .stickyTagItem{width:auto}.imageGenerationSpinner{position:absolute;top:12px;right:12px;z-index:10;width:20px;height:20px;border:2px solid rgba(255,255,255,.4);border-top:2px solid #fff;border-radius:50%;animation:spin 1s linear infinite;background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mealPlanList{list-style:none;padding:0;margin:0;height:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) rgba(0,0,0,.1)}.mealPlanList::-webkit-scrollbar-thumb{background-color:#ffffff4d;border-radius:4px}.mealPlanList::-webkit-scrollbar-track{background-color:#0000001a}.mealPlanListHasScroll .purchaseQuantitySection{margin-right:14px}.mealPlanIngredient{position:relative;padding:15px 35px;margin-bottom:10px;border-radius:8px;cursor:pointer;transition:background-color .3s ease,transform .08s ease;text-align:center;font-weight:700;text-transform:capitalize;box-shadow:0 2px 5px #0000001a;max-width:300px;width:100%;color:#fff;background-color:var(--button-background-color);letter-spacing:1px;-webkit-user-select:none;user-select:none;text-shadow:1px 1px 2px rgba(0,0,0,.5);flex:0 1 300px}.mealPlanIngredient:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0003}.categoryPickerOverlay{position:fixed;inset:0;z-index:999}.categoryPicker{z-index:1000;background:#140f32f2;border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:8px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;box-shadow:0 8px 24px #00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@keyframes popIn{0%{transform:translateY(-30px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.ingredientPopIn{animation:popIn .3s ease-out forwards;opacity:0}.ingredientsWrapper{display:flex;align-items:center;flex-direction:row;justify-content:space-between;gap:12px;width:100%;position:relative}.ingredientDetails{margin-left:0;display:flex;align-items:center;width:100%;padding-right:0}.ingredientsWrapper .ingredientName{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:12px}.ingredientInfo{display:flex;align-items:center;flex-shrink:0;margin-left:auto;gap:12px}.primaryQuantityGroup{display:flex;align-items:center;gap:6px;margin-right:0;background:#ffffff0d;padding:4px 8px;border-radius:20px}.purchaseQuantitySection{display:flex;align-items:center;gap:8px;margin-left:auto;padding-left:12px;border-left:1px solid rgba(255,255,255,.1)}@media(min-width:99999px){.ingredientsWrapper{flex-direction:column;align-items:stretch;background:#ffffff0d;border-radius:12px;padding:12px;margin-bottom:12px;gap:12px}.ingredientDetails{margin-left:0;width:100%;flex-direction:column;gap:12px}.ingredientInfo{width:100%;justify-content:space-between;align-items:center;gap:0}.primaryQuantityGroup{background:#ffffff14;padding:6px 12px;border-radius:20px;margin-right:0;gap:8px;flex:0 1 auto}.purchaseQuantitySection{margin-left:auto;background:#10b9811a;padding:6px 12px;border-radius:20px;border-left:none;flex:0 0 auto}.primaryQuantityGroup>div:first-child{flex:0 0 auto}}@media(min-width:99999px){.ingredientsWrapper{margin-bottom:10px}.mealPlanIngredient{max-width:250px;margin-right:auto;margin-bottom:0}.ingredientInfo{flex:1;justify-content:flex-end;gap:16px;margin-left:12px}.ingredientDetails{margin-left:0;justify-content:flex-start;gap:12px}.primaryQuantityGroup{margin-right:0}.purchaseQuantitySection{margin-left:0;padding-left:16px;border-left:1px solid rgba(255,255,255,.2)}}.quantityBubble{flex:0 0 32px;width:32px;height:32px;min-width:32px;min-height:32px;aspect-ratio:1;box-sizing:border-box;border-radius:50%;background-color:#ffffff21;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 #fff0,0 2px 4px #0000004d;font-size:.9rem;font-weight:700;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none}.quantityBubble:hover{background-color:#5e4ede50;box-shadow:0 0 0 2px #ffffff80,0 2px 4px #0000004d}.quantityInput{flex:0 0 32px;width:32px;height:32px;min-width:32px;min-height:32px;aspect-ratio:1;box-sizing:border-box;border-radius:50%;background-color:#ffffff21;color:#fff;border:none;text-align:center;font-size:.9rem;font-weight:700;box-shadow:0 2px 4px #0000004d}.quantityInput:focus{outline:none;box-shadow:0 0 0 3px #5e4ede4d}.quantityInput{-moz-appearance:textfield;appearance:textfield}.purchaseQuantitySection{display:flex;align-items:center;gap:8px}.purchaseLabel{font-size:.75rem;font-weight:600;color:#fff;opacity:.9;letter-spacing:.5px;text-transform:uppercase}.purchaseQuantityBubble{flex:0 0 32px;width:32px;height:32px;min-width:32px;min-height:32px;aspect-ratio:1;box-sizing:border-box;border-radius:50%;background:linear-gradient(135deg,#34d399,#10b981);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;cursor:pointer;box-shadow:0 0 #fff0,0 2px 4px #0000004d;transition:background .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none}.purchaseQuantityBubble:hover{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 0 0 2px #ffffff80,0 2px 4px #0000004d}.purchaseQuantityInput{flex:0 0 32px;width:32px;height:32px;min-width:32px;min-height:32px;aspect-ratio:1;box-sizing:border-box;border-radius:50%;background:linear-gradient(135deg,#34d399,#10b981);color:#fff;border:none;text-align:center;font-size:.9rem;font-weight:700;box-shadow:0 2px 4px #0000004d}.purchaseQuantityInput:focus{outline:none;box-shadow:0 0 0 3px #34d39966}.purchaseQuantityInput{-moz-appearance:textfield;appearance:textfield}.addTagButton{border:2px dashed #888;color:#888;background:transparent}.addTagButton:hover{border-color:#f5f5f7;color:#f5f5f7;background-color:#3a3a3c}.confirmationDialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#333;padding:20px;border-radius:8px;box-shadow:0 0 10px #00000080;z-index:1000}.confirmationDialog p{margin:0 0 15px}.confirmationDialog button{margin-right:10px;padding:8px 12px;border-radius:4px;border:none;cursor:pointer}.confirmationDialog button:first-of-type{background-color:#d9534f;color:#fff}.confirmationDialog button:last-of-type{background-color:#5bc0de;color:#fff}@media(min-width:99999px){.mealConsoleArea{padding:16px}.mealConsoleForm{flex-direction:column;align-items:stretch;gap:16px}.actionButtons{width:100%;justify-content:flex-end;gap:10px;flex-wrap:nowrap}.buttonUndo{width:44px;height:44px;flex-shrink:0}.buttonSave{flex:1;height:44px;padding:0 16px;font-size:.9rem}.mealNameInput{height:44px;font-size:16px}.tagOptions{gap:10px}.tagItem{padding:8px 12px;min-height:32px}}@media(min-width:99999px){.mealConsoleArea{padding:12px;border:none;border-radius:0}.mealConsoleArea h2{font-size:1.25rem}.mealMetadata{padding:10px;gap:10px;justify-content:space-between}.metadataItem{font-size:.85rem}.ingredientsWrapper{flex-direction:column;align-items:stretch;background:#ffffff0d;border-radius:12px;padding:12px;margin-bottom:12px;gap:12px}.mealPlanIngredient{margin-bottom:0;width:100%;max-width:none;padding:12px 16px 12px 44px;min-height:44px;display:flex;align-items:center;justify-content:flex-start;text-align:left}.iconSticker{left:12px}.ingredientDetails{margin-left:0;width:100%}.ingredientInfo{justify-content:space-between;width:100%;gap:12px;align-items:center}.primaryQuantityGroup{gap:8px;flex:1;justify-content:flex-start}.purchaseQuantitySection{flex:0 0 auto;margin-left:auto;border-left:1px solid rgba(255,255,255,.1);padding-left:12px}.quantityBubble,.quantityInput,.purchaseQuantityBubble,.purchaseQuantityInput{width:44px;height:44px;font-size:1rem}.primaryQuantityGroup>div:first-child{flex:1}.confirmationDialog{width:90%;padding:24px}.confirmationDialog button{height:44px;width:100%;margin:8px 0 0;display:block}}.aiSection{background:var(--purple-panel);padding:0;border-radius:8px;color:var(--text-color);border:1px solid var(--purple-border);gap:0}.topHalf{padding:0;display:flex;flex-direction:column;flex:1 1 0%;min-width:0;min-height:0;overflow:hidden}.newChatBar{flex-shrink:0;display:flex;justify-content:flex-end;padding:8px 14px 0}.newChatBtn{display:inline-flex;align-items:center;padding:4px 11px;font-size:.75rem;font-weight:500;color:#ffffff8c;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:20px;cursor:pointer;transition:color .15s,background .15s,border-color .15s;letter-spacing:.02em}.newChatBtn:hover{color:#ffffffe6;background:#ffffff1f;border-color:#ffffff40}.aiFooter{flex-shrink:0;width:100%;padding:0 16px 16px;box-sizing:border-box}.footerToolbar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;margin:0;min-height:40px}.utilityBarTools{display:flex;align-items:center;gap:16px}.utilityBarStatus{display:flex;align-items:center;margin-left:auto;flex-shrink:0}.voiceLiveBadge{display:inline-flex;align-items:center;gap:8px}.voiceLiveLabel{font-size:.8rem;font-weight:700;letter-spacing:.06em;color:#ef4444;background:#ef44441f;padding:4px 10px;border-radius:16px;border:1px solid rgba(239,68,68,.35);line-height:1.2}.voiceLiveDots{display:inline-flex;align-items:center;gap:4px}.voiceLiveDot{width:6px;height:6px;border-radius:50%;background:#ef4444;animation:voiceLivePulse 1.5s infinite}.voiceLiveDot:nth-child(2){animation-delay:.5s}.voiceLiveDot:nth-child(3){animation-delay:1s}@keyframes voiceLivePulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.utilityAttach{cursor:pointer;position:relative;overflow:hidden}.utilityAttach:has(input:disabled){opacity:.5;cursor:not-allowed}.utilityAttach:hover:not(:has(input:disabled)){color:#fff;border-color:#a855f780;background:#a855f733;box-shadow:0 4px 12px #a855f733}.utilityAttachActive{color:#fff;background:linear-gradient(135deg,#a855f7d9,#8b5cf6d9);border-color:#a855f799;box-shadow:0 4px 12px #a855f74d}.utilityCircle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#0000004d;border:2px solid rgba(255,255,255,.18);color:#ffffffa6;transition:color .15s,background .15s,border-color .15s,box-shadow .15s;flex-shrink:0}.utilityGenerate{cursor:pointer;padding:0;font:inherit}.utilityGenerate:disabled{opacity:.5;cursor:not-allowed}.utilityGenerate:hover:not(:disabled):not(.utilityGenerateActive){color:#fff;border-color:#10b98180;background:#10b98133;box-shadow:0 4px 12px #10b98133}.utilityGenerateActive{color:#fff;background:linear-gradient(135deg,#10b981d9,#059669d9);border-color:#10b98199;box-shadow:0 4px 12px #10b9814d}.utilityCircleIcon{width:18px;height:18px;flex-shrink:0}.chatArea{position:relative;display:flex;flex-direction:column;flex:1 1 0%;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(168,237,234,0) transparent;transition:scrollbar-color .3s ease}.chatArea:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.03) 0%,transparent 60%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.02) 0%,transparent 60%),radial-gradient(circle at 40% 90%,rgba(255,255,255,.01) 0%,transparent 60%);pointer-events:none;z-index:0}.chatArea:hover{scrollbar-color:rgba(168,237,234,.6) transparent}.chatArea::-webkit-scrollbar-track{background:transparent;border-radius:3px}.chatArea::-webkit-scrollbar-thumb{background-color:#a8edea00;border-radius:3px;transition:background-color .3s ease}.chatArea:hover::-webkit-scrollbar-thumb{background-color:#a8edea99}.chatArea::-webkit-scrollbar-thumb:hover{background-color:#a8edeacc!important}.aiResponse{box-sizing:border-box;flex:1 1 auto;min-height:min-content;overflow:visible;padding:24px 20px 16px;font-size:1rem;color:var(--text-color);line-height:1.5;gap:4px;z-index:1}.aiResponse>*{z-index:1}.aiResponse:hover{scrollbar-color:rgba(100,181,246,.6) transparent}.aiResponse::-webkit-scrollbar-track{background:transparent;border-radius:3px}.aiResponse::-webkit-scrollbar-thumb{background-color:#64b5f600;border-radius:3px;transition:background-color .3s ease}.aiResponse:hover::-webkit-scrollbar-thumb{background-color:#64b5f699}.aiResponse::-webkit-scrollbar-thumb:hover{background-color:#64b5f6cc!important}.aiResponse p{padding:8px 0}.aiResponse h1,.aiResponse h2,.aiResponse h3,.aiResponse h4,.aiResponse h5,.aiResponse h6{margin:0}.aiResponse ul{margin:8px 0;padding-left:20px}.aiResponse li{padding:4px 0}.instructionsList{margin-top:12px;margin-bottom:10px;font-size:1rem;text-align:left;background:#ffffff14;border-radius:10px;padding:14px 16px;border-left:3px solid rgba(100,181,246,.6);box-shadow:0 2px 6px #0003}.instructionsList li{display:flex;align-items:center;gap:10px;margin-bottom:12px;line-height:1.8;color:var(--instruction-text-color);font-size:16px}.instructionsList li:before{content:"🍳";font-size:.9em;color:#64b5f6cc;margin-right:6px}.inputWrapper{display:flex;flex-direction:column;width:100%;background:transparent;border:none;border-radius:0;padding:8px 0 0;box-shadow:none;transition:none}.textInputSection{position:relative;margin-bottom:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#00000038;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.textInputSection:hover{background:#00000047;border-color:#ffffff1f}.textInputSection:focus-within{background:#00000052;border-color:#667eea73;box-shadow:0 0 0 3px #667eea1f}.inlineMicSlot{position:absolute;right:50px;bottom:8px;z-index:2;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.mainTextarea{display:block;width:100%;min-height:52px;max-height:160px;padding:14px 94px 14px 14px;border:none;border-radius:12px;font-size:1rem;font-family:inherit;background:transparent;color:var(--text-color);resize:none;line-height:1.5;overflow-y:auto;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(102,126,234,0) transparent}.textInputSection:hover .mainTextarea{scrollbar-color:rgba(102,126,234,.3) transparent}.textInputSection:focus-within .mainTextarea{outline:none;scrollbar-color:rgba(102,126,234,.5) transparent}.inlineSendBtn{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:50%;cursor:pointer;transition:all .2s ease;z-index:2;-webkit-tap-highlight-color:transparent}.inlineSendBtn.sendMode{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 2px 8px #7c3aed66}.inlineSendBtn.sendMode:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf6,#7c3aed);transform:scale(1.07);box-shadow:0 4px 16px #7c3aed80}.inlineSendBtn.analyzeMode{background:linear-gradient(135deg,#6252e1,#5847da);color:#fff;box-shadow:0 2px 8px #6252e166}.inlineSendBtn.analyzeMode:hover:not(:disabled){background:linear-gradient(135deg,#7060f0,#6252e1);transform:scale(1.07);box-shadow:0 4px 16px #6252e180}.inlineSendBtn:active:not(:disabled){transform:scale(.96)}.inlineSendBtn:disabled{opacity:.4;cursor:not-allowed;transform:none;background:#ffffff1a;box-shadow:none}.mainTextarea::placeholder{color:#ffffff80;font-style:italic}.mainTextarea::-webkit-scrollbar{width:4px}.mainTextarea::-webkit-scrollbar-track{background:transparent;border-radius:2px}.mainTextarea::-webkit-scrollbar-thumb{background-color:#667eea00;border-radius:2px;transition:background-color .3s ease}.mainTextarea:hover::-webkit-scrollbar-thumb{background-color:#667eea4d}.mainTextarea:focus::-webkit-scrollbar-thumb{background-color:#667eea80}.imagePreviewSection{margin-bottom:10px}.imagePreviewCard{display:inline-flex;align-items:center;gap:10px;background:#00000038;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:8px 10px;max-width:100%}.imagePreviewThumb{width:52px;height:52px;object-fit:cover;border-radius:6px;flex-shrink:0;display:block}.imagePreviewInfo{display:flex;flex-direction:column;gap:2px;min-width:0}.imagePreviewName{font-size:.82rem;font-weight:500;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.imagePreviewSize{font-size:.72rem;color:#fff6}.imagePreviewRemove{background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:#ffffff80;cursor:pointer;transition:all .2s ease;flex-shrink:0;margin-left:4px;padding:0}.imagePreviewRemove:hover{background:#ef444433;border-color:#ef444466;color:#ef4444e6}.leftActions{display:flex;align-items:center;gap:12px}.actionsRow{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin-top:4px}.imageUploadBtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:linear-gradient(135deg,#a855f7cc,#8b5cf6cc);border:2px solid rgba(168,85,247,.3);border-radius:12px;cursor:pointer;transition:all .3s ease;color:#fff;position:relative;overflow:hidden}.imageUploadBtn:hover{background:linear-gradient(135deg,#a855f7,#8b5cf6);border-color:#a855f799;transform:translateY(-2px);box-shadow:0 8px 20px #a855f766}.imageUploadBtn:active{transform:translateY(0)}.hiddenFileInput{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.voiceInputWrapper{display:flex;align-items:center;flex-shrink:0;gap:12px}.quotaBadge{background:#0000004d;padding:4px 10px;border-radius:20px;font-size:.8rem;color:#a8edea;font-weight:600;border:1px solid rgba(168,237,234,.2);white-space:nowrap}.speechToggleBtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:#0000004d;border:2px solid rgba(255,255,255,.2);border-radius:12px;cursor:pointer;font-size:1.1rem;transition:all .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:4px}.speechToggleBtn.speechEnabled{color:#10b981;background:#10b98133;border-color:#10b98166}.speechToggleBtn.speechEnabled:hover:not(:disabled){color:#fff;background:#10b98166;border-color:#10b98199;transform:translateY(-2px);box-shadow:0 8px 20px #10b9814d}.speechToggleBtn.speechDisabled{color:#9ca3af;background:#6b728033;border-color:#6b728066}.speechToggleBtn.speechDisabled:hover:not(:disabled){color:#fff;background:#6b728066;border-color:#6b728099;transform:translateY(-2px);box-shadow:0 8px 20px #6b72804d}.speechToggleBtn.speechLoading{color:#f59e0b;background:#f59e0b33;border-color:#f59e0b66;animation:speechLoadingPulse 1.5s infinite}.speechToggleBtn:disabled{opacity:.6;cursor:not-allowed;transform:none}.primaryActionBtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;border-radius:50%;cursor:pointer;transition:all .2s ease;position:relative;flex-shrink:0}.primaryActionBtn.sendMode{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 2px 8px #7c3aed66}.primaryActionBtn.sendMode:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf6,#7c3aed);transform:scale(1.07);box-shadow:0 4px 16px #7c3aed80}.primaryActionBtn.analyzeMode{background:linear-gradient(135deg,#6252e1,#5847da);color:#fff;box-shadow:0 2px 8px #6252e166}.primaryActionBtn.analyzeMode:hover:not(:disabled){background:linear-gradient(135deg,#7060f0,#6252e1);transform:scale(1.07);box-shadow:0 4px 16px #6252e180}.primaryActionBtn:active:not(:disabled){transform:scale(.96)}.primaryActionBtn:disabled{opacity:.4;cursor:not-allowed;transform:none;background:#ffffff1a;box-shadow:none}.buttonIcon{width:18px;height:18px;flex-shrink:0}.buttonSpinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid #fff;border-radius:50%;animation:spin .8s linear infinite}.aiSection .inputContainer,.aiSection .textareaWrapper,.aiSection .fullWidthTextarea,.aiSection .buttonRow,.aiSection .sendBtn,.aiSection .speechToggleInput,.aiSection .uploadWrapper,.aiSection .label,.aiSection .imageUploadInput,.aiSection .analyzeBtn{display:none}.aiSection .spinner{width:18px;height:18px;border:3px solid rgba(255,255,255,.3);border-top:3px solid #fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px}.aiSection .overlay{position:absolute;inset:0;background-color:#0006;display:flex;align-items:center;justify-content:center;z-index:999;height:100%}.transcriptionBubble{display:flex;align-items:flex-start;background-color:var(--input-background-color);border-radius:15px;padding:10px;max-width:100%;margin-bottom:10px;gap:10px}.avatarPlaceholder{width:40px;height:40px;border-radius:50%;background-color:#777}.userNamePlaceholder{margin:0;font-weight:600;color:#ffffff73;font-size:.78rem;letter-spacing:.01em}.userMessage{margin:5px 0 0;color:var(--text-color);font-size:.95rem;line-height:1.4}.userBubble{display:flex;align-items:flex-end;flex-direction:row-reverse;max-width:72%;margin:2px 16px 2px auto;gap:0;position:relative;animation:bubbleAppear .2s ease-out}.userBubble .avatarPlaceholder,.userBubble .userNamePlaceholder{display:none}.userBubble .bubbleContent{background:linear-gradient(135deg,#6d28d9,#7c3aed);border-radius:20px 20px 4px;padding:10px 16px;box-shadow:0 2px 8px #6d28d959}.userBubble .bubbleMeta{display:none}.userBubble .userMessage{margin:0;color:#fffffff7;font-size:.94rem;line-height:1.55;word-wrap:break-word}.aiBubble{display:flex;align-items:flex-start;max-width:94%;margin:6px 16px;gap:10px;position:relative;animation:bubbleAppear .25s ease-out}.aiBubble .avatarPlaceholder{width:28px;height:28px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffffff40,#fff0 55%),linear-gradient(135deg,#f5e6b447,#caa76338);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;border:1px solid rgba(230,200,140,.55);box-shadow:0 2px 8px #caa7634d}.aiBubble .avatarPlaceholder:after{content:"Z";font-size:.85rem;font-weight:800;background:linear-gradient(135deg,#fff8e1,#f5d38a 45%,#c9a24b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px;filter:drop-shadow(0 1px 3px rgba(201,162,75,.45))}.aiBubble .userNamePlaceholder{margin:0;font-weight:600;color:#a8edea8c;font-size:.76rem;letter-spacing:.01em}.aiBubble .userMessage{margin:0;color:#ffffffeb;font-size:.95rem;line-height:1.65;word-wrap:break-word}.aiBubble .userMessage p{margin:8px 0}.aiBubble .userMessage p:first-child{margin-top:0}.aiBubble .userMessage p:last-child{margin-bottom:0}.aiBubble .userMessage h1,.aiBubble .userMessage h2,.aiBubble .userMessage h3,.aiBubble .userMessage h4,.aiBubble .userMessage h5,.aiBubble .userMessage h6{margin:14px 0 6px;font-weight:600;color:#fffffff2}.aiBubble .userMessage h1{font-size:1.2rem}.aiBubble .userMessage h2{font-size:1.08rem;color:#a8edeae6}.aiBubble .userMessage h3{font-size:1rem;color:#a8edeacc}.aiBubble .userMessage ul,.aiBubble .userMessage ol{margin:8px 0;padding-left:20px;color:#ffffffeb}.aiBubble .userMessage li{margin:4px 0;color:#ffffffe6;position:relative}.aiBubble .userMessage ul li::marker{color:#fffc;font-weight:700}.aiBubble .userMessage ol li::marker{color:#fffc;font-weight:700}.aiBubble .userMessage code{background:#a8edea26;color:#a8edea;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-weight:500;border:1px solid rgba(168,237,234,.2)}.aiBubble .userMessage pre{background:#a8edea14;color:#ffffffeb;padding:12px;border-radius:8px;overflow-x:auto;margin:8px 0;border:1px solid rgba(168,237,234,.15);font-family:Courier New,monospace}.aiBubble .userMessage strong,.aiBubble .userMessage b{color:#fffffff7;font-weight:600}.aiBubble .userMessage em,.aiBubble .userMessage i{color:#ffffffd9;font-style:italic}.aiBubble .userMessage blockquote{border-left:3px solid #a8edea;padding:8px 16px;margin:12px 0;background:#a8edea14;border-radius:0 8px 8px 0;color:#ffffffe6;font-style:italic}.aiBubble .userMessage a{color:#7dd3fc;text-decoration:underline;text-decoration-color:#7dd3fc80;transition:all .2s ease}.aiBubble .userMessage a:hover{color:#a8edea;text-decoration-color:#a8edea;text-shadow:0 1px 4px rgba(168,237,234,.4)}.aiBubble .instructionsList{margin-top:14px;margin-bottom:0;padding:14px 16px 14px 18px;counter-reset:step-counter;list-style:none;background:linear-gradient(135deg,#f5e6b414,#caa7630d),#ffffff05;border:1px solid rgba(230,200,140,.22);border-left:2px solid rgba(230,200,140,.55);border-radius:10px;box-shadow:inset 0 1px #fff8e10d,0 2px 10px #caa7630f}.aiBubble .instructionsList li{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px;line-height:1.6;color:#ffffffe0;font-size:.92rem;counter-increment:step-counter}.aiBubble .instructionsList li:last-child{margin-bottom:0}.aiBubble .instructionsList li:before{content:counter(step-counter);display:flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;background:radial-gradient(circle at 30% 30%,#ffffff4d,#fff0 55%),linear-gradient(135deg,#f5d38a59,#caa76347);color:#fff8e1;border-radius:50%;font-weight:700;font-size:.75rem;flex-shrink:0;border:1px solid rgba(230,200,140,.55);box-shadow:0 1px 4px #caa76359;margin-top:2px;text-shadow:0 1px 2px rgba(120,90,30,.35)}.noteBubble{background-color:#ffffff26;border-left:4px solid #ffcc00;padding:12px 16px;margin-top:16px;border-radius:8px;font-style:italic;color:var(--text-color)}.aiGenerated{font-weight:700}.ongoingTranscription{color:gray;font-style:italic;margin-bottom:10px;padding:8px;background-color:#ffffff1a;border-radius:8px}.welcomeScreen{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:40px 32px;text-align:center;gap:0;min-height:0}.welcomeIconRing{width:72px;height:72px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffffff38,#fff0 55%),linear-gradient(135deg,#f5e6b438,#caa7632e);border:1.5px solid rgba(230,200,140,.55);display:flex;align-items:center;justify-content:center;margin-bottom:20px;box-shadow:0 0 0 6px #e6c88c14,0 8px 32px #caa76340;animation:pulseRing 3s ease-in-out infinite}.welcomeAvatarLarge{font-size:2rem;font-weight:800;background:linear-gradient(135deg,#fff8e1,#f5d38a 45%,#c9a24b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;filter:drop-shadow(0 1px 6px rgba(201,162,75,.4))}.welcomeTitle{font-size:1.65rem;font-weight:650;margin:0 0 10px;color:#fff;letter-spacing:-.3px}.welcomeSubtitle{font-size:.95rem;color:#ffffff8c;margin:0 0 36px;font-weight:400}.suggestionGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:480px}.suggestionChip{display:flex;align-items:center;gap:8px;padding:11px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;font-size:.84rem;color:#fffc;font-family:inherit;font-weight:450;text-align:left;cursor:pointer;transition:all .2s ease;line-height:1.3}.suggestionChip:hover{background:#8b5cf626;border-color:#8b5cf666;color:#fffffff2;transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf626}.suggestionChip:active{transform:translateY(0)}.chipIcon{width:14px;height:14px;flex-shrink:0;opacity:.6;fill:none;stroke:currentColor;stroke-width:2}@keyframes pulseRing{0%,to{box-shadow:0 0 0 6px #e6c88c14,0 8px 32px #caa76340}50%{box-shadow:0 0 0 10px #e6c88c0d,0 8px 32px #f5d38a59}}.tutorialContainer{display:none}.aiSection .section{margin-bottom:28px}.aiSection .sectionTitle,.aiSection .inputMethods,.aiSection .methodItem,.aiSection .methodIcon,.aiSection .examplesList,.aiSection .exampleItem,.aiSection .capabilitiesList,.aiSection .capabilityItem,.aiSection .noteSection,.aiSection .noteIcon{display:none}.thinkingContainer{position:relative;margin-top:2px;margin-bottom:8px;display:flex;align-items:flex-start;gap:8px;opacity:.8}.thinkingDots{display:flex;gap:3px;align-items:center}.thinkingDots .dot{width:6px;height:6px;background-color:#ffffffb3;border-radius:50%;animation:thinking 1.4s infinite ease-in-out}.thinkingDots .dot:nth-child(1){animation-delay:0s}.thinkingDots .dot:nth-child(2){animation-delay:.2s}.thinkingDots .dot:nth-child(3){animation-delay:.4s}.thinkingText{font-size:.9rem;color:#ffffffb3;font-style:italic}.bubbleContent{display:flex;flex-direction:column;min-width:0;flex:1}.bubbleMeta{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.messageTime{font-size:.72rem;color:#ffffff4d;font-weight:400;opacity:0;transition:opacity .2s ease}.userBubble:hover .messageTime,.aiBubble:hover .messageTime{opacity:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes speechLoadingPulse{0%,to{background:#f59e0b33;border-color:#f59e0b66}50%{background:#f59e0b66;border-color:#f59e0b99}}@keyframes bubbleAppear{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes thinking{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@media(min-width:99999px){.aiSection{width:100%;margin:0 auto;padding:0;border-radius:8px;border:1px solid var(--purple-border)}.chatArea{margin-bottom:0}.aiResponse{padding:20px;font-size:.95rem}.aiFooter{padding:0 12px 12px}.inputWrapper{padding:6px 0 0}.mainTextarea{min-height:48px;font-size:16px;padding:12px 94px 12px 14px}.inlineMicSlot{top:0;bottom:0;right:50px;margin-top:auto;margin-bottom:auto}.inlineSendBtn{top:0;bottom:0;right:6px;width:38px;height:38px;margin-top:auto;margin-bottom:auto}.inlineSendBtn.sendMode:hover:not(:disabled),.inlineSendBtn.analyzeMode:hover:not(:disabled){transform:scale(1.05)}.inlineSendBtn:disabled{opacity:.55;background:linear-gradient(135deg,#7c3aed73,#6d28d973);color:#ffffff8c}.inlineSendBtn.analyzeMode:disabled{background:linear-gradient(135deg,#6252e173,#5847da73)}.inlineSendBtn .buttonIcon{width:18px;height:18px}.footerToolbar{padding:0 0 10px;min-height:44px}.utilityBarTools{gap:14px}.utilityCircle{width:44px;height:44px}.imageUploadBtn,.speechToggleBtn{width:44px;height:44px;min-width:44px;border-radius:12px}.userBubble{max-width:82%}.aiBubble{max-width:96%;margin:4px 10px}}@media(min-width:99999px){.aiSection{min-height:500px;border:none;border-radius:0}.aiResponse{padding:16px}.suggestionGrid{grid-template-columns:1fr}.welcomeTitle{font-size:1.3rem}.welcomeIconRing{width:60px;height:60px}.aiFooter{padding:0 8px 8px}.inputWrapper{padding:4px 0 0}.mainTextarea{font-size:16px;padding:12px 89px 12px 12px;min-height:48px}.inlineMicSlot{right:47px}.inlineSendBtn{right:5px;width:36px;height:36px}.voiceLiveLabel{font-size:.75rem;padding:3px 8px}.inlineSendBtn .buttonIcon{width:17px;height:17px}.imageUploadBtn,.speechToggleBtn{width:44px;height:44px}.transcriptionBubble{max-width:100%}.userBubble{max-width:90%;margin-right:8px}.aiBubble{max-width:95%;margin-left:8px}}.changeReviewCard{margin-top:4px;padding:12px 14px;border-radius:10px;background:#0000002e;border:1px solid rgba(255,255,255,.1)}.changeReviewTitle{margin:10px 0 8px;font-size:.9rem;font-weight:600;color:#ffffffeb}.changeReviewList{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}.changeReviewItem{display:flex;align-items:flex-start;gap:8px;font-size:.85rem;line-height:1.35;color:#ffffffe0}.changeReviewBadge{flex-shrink:0;width:18px;text-align:center}.changeMatched .changeReviewBadge{color:#7dffb2}.changeSuspicious .changeReviewBadge{color:#ffd27d}.changeReviewWarning{margin:0 0 10px;font-size:.75rem;color:#ffffff8c}.changeReviewActions{display:flex;flex-wrap:wrap;gap:8px}.changeReviewBtnPrimary,.changeReviewBtnSecondary,.changeReviewBtnGhost{border-radius:8px;padding:7px 12px;font-size:.78rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .15s,border-color .15s,opacity .15s}.changeReviewBtnPrimary{background:#7dffb22e;border-color:#7dffb259;color:#dfffee}.changeReviewBtnSecondary{background:#ffd27d24;border-color:#ffd27d59;color:#fff1d6}.changeReviewBtnGhost{background:transparent;border-color:#ffffff2e;color:#ffffffb8}.changeReviewBtnPrimary:disabled,.changeReviewBtnSecondary:disabled,.changeReviewBtnGhost:disabled{opacity:.45;cursor:not-allowed}.changeReviewResolved{margin:8px 0 0;font-size:.85rem;color:#ffffffd1}.undoLink{margin-top:6px;padding:0;border:none;background:none;color:#a8edeaf2;font-size:.78rem;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.undoLink:hover{color:#dffffc}.mealPlanner>.rightPanel>.ingredientsPanel,.ingredientsSelection .consoleContent>.ingredientsPanel{background:var(--purple-panel);padding:20px;border-radius:8px;border:1px solid var(--purple-border)}.ingredientsSection{overflow:hidden}.searchContainer{display:flex;justify-content:center;align-items:center;margin-bottom:16px}.searchWrapper{position:relative;width:100%}.searchIcon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#888;font-size:1.2rem;pointer-events:none}.ingredientsPanel .input-field--search{padding-left:2.5rem}.searchInput{width:100%;padding:10px 10px 10px 50px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--input-background-color);color:var(--input-text-color);font-size:1rem}.typeTagsContainer{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:16px}.typeTag{display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 4px;border-radius:8px;cursor:pointer;font-size:.78rem;font-weight:600;transition:all .18s ease;border:2px solid transparent;text-shadow:1px 1px 2px rgba(0,0,0,.45);color:#fff;white-space:nowrap;overflow:hidden}.typeTagIcon{display:flex;align-items:center;font-size:.72rem;flex-shrink:0}.typeTag.allTag{background:#ffffff1a;color:#ffffffd9;text-shadow:none;border:2px solid rgba(255,255,255,.2)}.typeTag.allTag.selectedTypeTag{background:#fff3;border-color:#ffffffb3;color:#fff;font-weight:700}.typeTag.allTag:hover{background:#ffffff2e;border-color:#ffffff73}.typeTag:not(.allTag){color:#fff}.typeTag:not(.allTag):hover{filter:brightness(115%);transform:translateY(-1px);box-shadow:0 3px 8px #0000004d}.selectedTypeTag{border-color:#fff;font-weight:700;box-shadow:0 0 0 1px #fff6,0 3px 10px #00000059}.selectedTypeTag:not(.allTag):hover{filter:brightness(110%);transform:translateY(-1px)}.ingredientsHeader{font-size:1.5rem;color:var(--text-color);margin:0 0 16px}.ingredientsListContainer{gap:12px}.alphabetIndex{display:flex;flex-direction:column;align-items:stretch;gap:4px;width:1.5rem;padding:8px 0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.alphabetIndex::-webkit-scrollbar{display:none}.alphabetLetter{width:100%;aspect-ratio:1 / 1;height:auto;flex:0 0 auto;box-sizing:border-box;border:none;background:transparent;color:#999;font-size:11px;font-weight:600;cursor:default;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease,color .2s ease;padding:0}.alphabetLetterActive{color:var(--text-color, #333);cursor:pointer;background:#d05ce31a}.alphabetLetterActive:hover{background:#d05ce340;transform:scale(1.15)}.alphabetLetterHighlight{background:#d05ce3cc!important;color:#fff!important;font-weight:700;box-shadow:0 2px 8px #d05ce366}.alphabetLetterHighlight:hover{background:#d05ce3e6!important;transform:scale(1.2)}.ingredientsList{padding-right:8px;scrollbar-width:thin;scrollbar-color:rgba(208,92,227,.5) transparent}.ingredientsList::-webkit-scrollbar-track{background:transparent}.ingredientsList::-webkit-scrollbar-thumb{background:#d05ce380;border-radius:4px}.ingredientsList::-webkit-scrollbar-thumb:hover{background:#d05ce3b3}.letterSection{margin-bottom:24px}.letterHeader{font-size:14px;font-weight:600;color:var(--text-color, #666);margin:0 0 8px;padding-left:4px;opacity:.7;display:flex;align-items:center;gap:8px}.letterCount{font-size:.7rem;font-weight:600;opacity:.7;background:#ffffff14;padding:1px 7px;border-radius:999px}.ingredientsGrid{display:flex;flex-direction:column;gap:8px;width:100%;max-width:100%}.ingredientContainer{display:flex;align-items:center;justify-content:center;width:100%;height:50px;max-width:100%}.ingredientContainer.added .ingredientCircle,.ingredientContainer.added .ingredientImage{filter:grayscale(1);opacity:.5;cursor:not-allowed}.ingredientCircle{width:100%;height:50px;border-radius:10px;color:#fff;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;line-height:1.2;white-space:nowrap;font-size:15px;font-weight:700;cursor:pointer;transition:opacity .2s,transform .2s;border:3px solid rgba(255,255,255,.5);padding:4px 12px 4px 60px;gap:12px;position:relative;box-shadow:inset -3px -3px 6px #0000004d,inset 3px 3px 6px #ffffff4d}.ingredientCircle:hover{opacity:.9;transform:scale(.99);border-color:#fffc;box-shadow:inset 3px 3px 6px #0000004d,inset -3px -3px 6px #ffffff4d}.ingredientImage{width:38px;height:38px;object-fit:cover;border-radius:50%;border:3px solid rgba(255,255,255,.5);position:absolute;left:8px;top:50%;transform:translateY(-50%);flex-shrink:0}.ingredientImage:hover{border-color:#fffc}.ingredientIcon{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;background-color:#ffffff21;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #0000004d;z-index:2;filter:drop-shadow(1px 1px 2px rgba(0,0,0,.5))}.ingredientName{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dairy,.flask,.fruit,.grain,.meat,.processed,.snack,.spice,.vegetable{color:#fff;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,1);text-transform:capitalize;font-family:sans-serif}@media(min-width:99999px){.ingredientsGrid{display:flex;flex-direction:column;gap:8px}.ingredientContainer{width:100%;height:50px;max-width:100%}.ingredientCircle{width:100%;height:50px;border-radius:10px;font-size:15px;font-weight:700;justify-content:flex-start;padding-left:60px;text-align:left;display:flex;flex-direction:row;align-items:center;gap:12px;position:relative}.ingredientIcon{left:10px;width:24px;height:24px}.ingredientImage{width:38px;height:38px;border-radius:50%;margin-right:0;flex-shrink:0;position:absolute;left:8px;top:50%;transform:translateY(-50%)}.ingredientName{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(min-width:99999px){.searchContainer{order:2;margin-bottom:24px}.typeTagsContainer{order:1;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.typeTag{flex:0 0 auto;padding:5px 10px;border-radius:16px;font-size:.75rem;width:auto;gap:4px}.alphabetIndex{display:none}.ingredientsListContainer{order:3}.ingredientsList{padding-right:0}.letterHeader{display:none}.ingredientsGrid{order:3;grid-template-columns:1fr;gap:12px;display:grid}.ingredientContainer{width:100%;height:50px}.ingredientCircle{width:100%;height:50px;border-radius:25px;font-size:16px;font-weight:700;justify-content:flex-start;padding-left:60px;text-align:left;display:flex;flex-direction:row;align-items:center;gap:12px;position:relative}.ingredientIcon{left:10px;width:20px;height:20px}.ingredientImage{width:40px;height:40px;border-radius:50%;margin-right:0;flex-shrink:0;position:absolute;left:8px;top:50%;transform:translateY(-50%)}.ingredientName{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchWrapper{width:100%;max-width:none}.searchIcon{left:18px;font-size:1.4rem;color:#666}.searchInput,.searchWrapper input{height:50px;padding:0 20px 0 55px;border-radius:25px;font-size:16px;border:2px solid #ddd;background-color:#f8f9fa;color:#333;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.searchWrapper input:focus{outline:none;border-color:#d05ce3;box-shadow:0 0 0 3px #d05ce333;background-color:#fff}}.panelTitleRow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.quickAddBtn{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;border:1px solid rgba(139,92,246,.5);background:linear-gradient(135deg,#8b5cf626,#7c3aed1a);color:#a78bfa;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.quickAddBtn:hover{background:linear-gradient(135deg,#8b5cf64d,#7c3aed33);border-color:#8b5cf6cc;color:#c4b5fd;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d}.emptyState{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:40px 20px;text-align:center}.emptyStateIcon{font-size:2.5rem;color:#8b5cf666}.emptyStateText{color:#ffffff8c;font-size:.95rem;margin:0}.emptyStateText strong{color:#fffc}.emptyStateAddBtn{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:22px;border:1px solid rgba(139,92,246,.5);background:linear-gradient(135deg,#8b5cf633,#7c3aed1f);color:#c4b5fd;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.emptyStateAddBtn:hover{background:linear-gradient(135deg,#8b5cf659,#7c3aed40);border-color:#8b5cf6cc;transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf64d}.quickAddOverlay{position:absolute;inset:0;z-index:100;background:#0a0a14f7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:8px;border:1px solid rgba(139,92,246,.3);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;animation:overlayFadeIn .25s ease-out;scrollbar-width:thin;scrollbar-color:rgba(139,92,246,.3) transparent}@keyframes overlayFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.overlayHeader{display:flex;align-items:center;justify-content:space-between;padding:18px 24px 12px;border-bottom:1px solid rgba(139,92,246,.2);position:sticky;top:0;background:#0a0a14f7;z-index:1;flex-shrink:0}.overlayTitle{margin:0;font-size:1.1rem;font-weight:700;color:#e2d9f3;letter-spacing:.3px}.overlayCloseBtn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:1px solid rgba(139,92,246,.3);background:#8b5cf61a;color:#a78bfa;font-size:.9rem;cursor:pointer;transition:all .2s ease;flex-shrink:0;padding:0}.overlayCloseBtn:hover{background:#8b5cf640;border-color:#8b5cf699;color:#c4b5fd;transform:rotate(90deg)}.overlayBody{flex:1;padding:16px 16px 24px;overflow-y:auto}.overlayDuplicateSection{margin-top:28px;padding-top:20px;border-top:1px solid rgba(139,92,246,.2)}.overlayDuplicateHeader{display:flex;align-items:center;gap:10px;margin-bottom:12px}.overlayDuplicateIcon{width:18px;height:18px;flex-shrink:0;color:#a78bfa}.overlayDuplicateTitle{margin:0;font-size:.95rem;font-weight:700;color:#e2d9f3;display:flex;align-items:center;gap:8px}.overlayDuplicateCount{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ef444440;border:1px solid rgba(239,68,68,.4);color:#fca5a5;font-size:.75rem;font-weight:700}.overlayDuplicateHint{font-size:.82rem;color:#fff6;margin:0;font-style:italic}.overlayDuplicateNone{display:flex;align-items:center;font-size:.82rem;color:#6ee7b7;margin:0}.overlayDuplicateList{display:flex;flex-direction:column;gap:8px}.overlayDuplicateItem{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;background:#ef444414;border:1px solid rgba(239,68,68,.2)}.overlayDupItemIcon{width:16px;height:16px;flex-shrink:0;color:#fca5a5}.overlayDupName{flex:1;font-size:.88rem;color:#ffffffd9;font-weight:500;text-transform:capitalize}.overlayDupBadge{padding:3px 8px;border-radius:6px;font-size:.75rem;font-weight:700;letter-spacing:.4px;background:#ffffff14;color:#fff9;border:1px solid rgba(255,255,255,.12)}.overlayDupBadge.weight{background:#eab30826;color:#fde047;border-color:#eab3084d}.overlayDupBadge.liquid{background:#3b82f626;color:#93c5fd;border-color:#3b82f64d}.overlayDupBadge.volume{background:#10b98126;color:#6ee7b7;border-color:#10b9814d}.overlayDupBadge.pieces{background:#9ca3af26;color:#d1d5db;border-color:#9ca3af4d}.modeSelector{position:relative;display:flex;background-color:#212121;border-radius:30px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.vertical{flex-direction:column;width:60px;height:122px}.horizontal{flex-direction:row;height:48px;width:112px}.modeSelector.horizontal .indicator{width:42px;height:42px;top:50%;transform:translate(-50%,-50%)}.modeSelector.horizontal .indicator.ai{left:25%}.modeSelector.horizontal .indicator.manual{left:75%}.modeSelector .aiModeIcon{width:1.55em;height:1.55em;display:block}.modeSelector .manualModeIcon{font-size:1em;width:1em;height:1em}.modeItem{flex:1;display:flex;align-items:center;justify-content:center;color:#b7b7b7;cursor:pointer;transition:color .3s ease;z-index:1}.modeItem.active{color:#fff}.indicator{position:absolute;width:50px;height:50px;background-color:#6b5de7;border-radius:50%;transition:all .3s ease;z-index:0}.modeSelector.vertical .indicator{left:50%;transform:translate(-50%)}.modeSelector.vertical .indicator.ai{top:5px}.modeSelector.vertical .indicator.manual{top:65px}@media(min-width:99999px){.modeSelector{flex-direction:row;width:122px;height:60px}.modeSelector.vertical .indicator{transform:translate(-50%,-50%)}.modeSelector.vertical .indicator.ai{top:50%;left:25%}.modeSelector.vertical .indicator.manual{top:50%;left:75%}}.wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center}.centerCircle{position:relative;flex:0 0 30px;width:30px;height:30px;min-width:30px;min-height:30px;aspect-ratio:1;box-sizing:border-box;border-radius:50%;background:linear-gradient(to bottom,#4caf50,#388e3c);display:flex;justify-content:center;align-items:center;font-size:13px;font-weight:700;cursor:pointer;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5);-webkit-user-select:none;user-select:none;z-index:10;box-shadow:0 0 #fff0,0 2px 5px #00000040;transition:background .18s ease,box-shadow .18s ease}.centerCircle>*{pointer-events:none}.centerCircle:hover,.centerCircleOpen{background:linear-gradient(to bottom,#43a047,#2e7d32);box-shadow:0 0 0 2px #ffffff8c,0 2px 5px #00000040}.overlay{position:fixed;inset:0;z-index:999}.picker{z-index:1000;width:max-content;background:#161030fa;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px;box-shadow:0 2px 8px #00000059,0 12px 32px #0000008c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.pickerLabel{margin:0 0 0 2px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffffff73;-webkit-user-select:none;user-select:none}.pickerDivider{height:1px;background:#ffffff1a;margin:8px 0}.groupLabel{display:block;font-size:.65rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#ffffff61;margin:0 0 5px 2px;-webkit-user-select:none;user-select:none}.groupDivider{height:1px;background:#ffffff12;margin:8px 0}.pickerGrid{display:grid;gap:5px;margin-bottom:4px}.unitBtn{width:52px;height:36px;border-radius:8px;border:1.5px solid rgba(255,255,255,.1);background:#ffffff0f;color:#ffffffd9;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:600;letter-spacing:.02em;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .1s ease;-webkit-user-select:none;user-select:none}.unitBtn:hover{background:#ffffff24;border-color:#ffffff47;color:#fff;transform:translateY(-1px)}.unitBtnActive{background:linear-gradient(135deg,#4caf50,#2e7d32);border-color:#ffffff4d;color:#fff}.unitBtnActive:hover{background:linear-gradient(135deg,#43a047,#2e7d32);transform:translateY(-1px)}.mobileContainer{position:relative;display:flex;flex-direction:column;align-items:center;width:100%}.mobileTrigger{width:44px;height:44px;border-radius:50%;background:linear-gradient(to bottom,#4caf50,#388e3c);display:flex;justify-content:center;align-items:center;font-size:16px;font-weight:700;cursor:pointer;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5);-webkit-user-select:none;user-select:none;box-shadow:0 2px 5px #0003;z-index:5}.mobileBackdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:90;background:transparent}.mobileOptionsRow{position:fixed;left:50%!important;transform:translate(-50%)!important;width:90vw;max-width:400px;background:#1e1e1efa;border-radius:20px;padding:8px 32px;box-shadow:0 8px 32px #00000080;z-index:100;border:1px solid rgba(255,255,255,.15);overflow:visible;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobileScrollContainer{display:flex;flex-direction:row;gap:12px;overflow-x:auto;padding:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.mobileScrollContainer::-webkit-scrollbar{display:none}.mobileOption{width:44px;height:44px;min-width:44px;border-radius:50%;background:#ffffff14;display:flex;justify-content:center;align-items:center;font-size:14px;color:#fff;cursor:pointer;border:1px solid rgba(255,255,255,.1);transition:all .2s}.mobileOption:active{background:#4caf5099;transform:scale(.95)}.scrollArrow{position:absolute;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;background:#fff3;display:flex;justify-content:center;align-items:center;color:#fff;cursor:pointer;z-index:101;font-size:12px;pointer-events:auto;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 4px #0000004d}.scrollArrow:active{background:#fff6}.scrollArrowLeft{left:4px}.scrollArrowRight{right:4px}.formContainer{background:transparent;padding:0;width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:22px;--af-text: #e5e7eb;--af-text-muted: rgba(229, 231, 235, .65);--af-text-faint: rgba(229, 231, 235, .45);--af-surface: rgba(255, 255, 255, .03);--af-surface-alt: rgba(255, 255, 255, .05);--af-surface-strong: rgba(255, 255, 255, .08);--af-border: rgba(255, 255, 255, .08);--af-border-strong: rgba(255, 255, 255, .16)}.formGroup{display:flex;flex-direction:column;position:relative}.formGroup label{margin-bottom:8px;color:var(--af-text-muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.9px}.formGroup label:before{display:none}.inlineFormGroup{display:flex;gap:14px;align-items:flex-start}.inlineFormGroup .formGroup{margin-bottom:0}.nameGroup{flex:3}.quantityGroup{flex:1;min-width:110px}.inputField{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--af-border);background:#0a0e14;color:var(--af-text);font-size:.95rem;font-weight:500;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;box-sizing:border-box}.inputField:hover:not(:focus){border-color:#22c55e4d;background:#0c1119}.inputField:focus{outline:none;border-color:#22c55e;background:#0c1119;box-shadow:0 0 0 3px #22c55e26}.inputField::placeholder{color:var(--af-text-faint);font-weight:400;font-style:normal}.unitSection{background:var(--af-surface);border:1px solid var(--af-border);border-radius:14px;padding:18px}.typeSection{background:var(--af-surface);border:1px solid var(--af-border);border-radius:14px;padding:18px;position:relative;overflow:hidden}.typeSectionHeader{margin-bottom:14px;text-align:left}.typeSectionTitle{font-size:.72rem;font-weight:700;color:var(--af-text-muted);margin:0 0 4px;text-transform:uppercase;letter-spacing:.9px;background:none;-webkit-text-fill-color:initial;-webkit-background-clip:initial;background-clip:initial}.typeSectionSubtitle{font-size:.82rem;color:var(--af-text-faint);margin:0;font-style:normal}.panelContainer{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:100%;margin:0}.panel{background:#0a0e14;border:1px solid var(--af-border);border-radius:12px;overflow:hidden;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;position:relative;display:flex;flex-direction:column}.panel:hover{transform:translateY(-2px)}.panel:nth-child(1){border-color:#22c55e47;box-shadow:0 0 0 1px #22c55e0d,0 6px 18px #22c55e1a}.panel:nth-child(1):hover{border-color:#22c55e8c;box-shadow:0 0 0 1px #22c55e1a,0 10px 24px #22c55e33}.panel:nth-child(2){border-color:#3b82f647;box-shadow:0 0 0 1px #3b82f60d,0 6px 18px #3b82f61a}.panel:nth-child(2):hover{border-color:#3b82f68c;box-shadow:0 0 0 1px #3b82f61a,0 10px 24px #3b82f633}.panel:nth-child(3){border-color:#7c3aed47;box-shadow:0 0 0 1px #7c3aed0d,0 6px 18px #7c3aed1a}.panel:nth-child(3):hover{border-color:#7c3aed8c;box-shadow:0 0 0 1px #7c3aed1a,0 10px 24px #7c3aed33}.panel:nth-child(4){border-color:#f9731647;box-shadow:0 0 0 1px #f973160d,0 6px 18px #f973161a}.panel:nth-child(4):hover{border-color:#f973168c;box-shadow:0 0 0 1px #f973161a,0 10px 24px #f9731633}.panelHeader{padding:8px 12px;display:flex;align-items:center;justify-content:center;gap:8px;border:none;position:relative;overflow:hidden;color:#fff}.panel:nth-child(1) .panelHeader{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:inset 0 -1px #00000040,inset 0 1px #ffffff1f}.panel:nth-child(2) .panelHeader{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:inset 0 -1px #00000040,inset 0 1px #ffffff1f}.panel:nth-child(3) .panelHeader{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:inset 0 -1px #00000040,inset 0 1px #ffffff1f}.panel:nth-child(4) .panelHeader{background:linear-gradient(135deg,#ea580c,#c2410c);box-shadow:inset 0 -1px #00000040,inset 0 1px #ffffff1f}.panelHeader:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transition:left .7s ease;display:block}.panel:hover .panelHeader:before{left:100%}.panelIcon{font-size:.95rem;flex-shrink:0;color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.panel h4{margin:0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.25)}.weightUnitsGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:12px}.panel .tag{padding:9px 6px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;border-radius:8px;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .1s ease,box-shadow .18s ease;text-align:center;position:relative;width:100%;box-sizing:border-box;color:var(--af-text);display:flex;align-items:center;justify-content:center;min-height:36px}.panel .tag:active{transform:scale(.97)}.panel:nth-child(1) .tag{background:#22c55e14;border:1px solid rgba(34,197,94,.3);color:#86efac}.panel:nth-child(1) .tag:hover:not(.selectedTag){background:#22c55e2e;border-color:#22c55e8c;color:#bbf7d0;box-shadow:0 2px 10px #22c55e2e}.panel:nth-child(1) .tag.selectedTag{background:linear-gradient(135deg,#22c55e,#16a34a)!important;border-color:#22c55e!important;color:#fff!important;box-shadow:0 3px 12px #22c55e73,inset 0 1px #ffffff2e!important}.panel:nth-child(2) .tag{background:#3b82f614;border:1px solid rgba(59,130,246,.3);color:#93c5fd}.panel:nth-child(2) .tag:hover:not(.selectedTag){background:#3b82f62e;border-color:#3b82f68c;color:#bfdbfe;box-shadow:0 2px 10px #3b82f62e}.panel:nth-child(2) .tag.selectedTag{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;border-color:#3b82f6!important;color:#fff!important;box-shadow:0 3px 12px #3b82f673,inset 0 1px #ffffff2e!important}.panel:nth-child(3) .tag{background:#7c3aed14;border:1px solid rgba(124,58,237,.3);color:#c4b5fd}.panel:nth-child(3) .tag:hover:not(.selectedTag){background:#7c3aed2e;border-color:#7c3aed8c;color:#ddd6fe;box-shadow:0 2px 10px #7c3aed2e}.panel:nth-child(3) .tag.selectedTag{background:linear-gradient(135deg,#7c3aed,#6d28d9)!important;border-color:#7c3aed!important;color:#fff!important;box-shadow:0 3px 12px #7c3aed73,inset 0 1px #ffffff2e!important}.panel:nth-child(4) .tag{background:#f9731614;border:1px solid rgba(249,115,22,.3);color:#fdba74}.panel:nth-child(4) .tag:hover:not(.selectedTag){background:#f973162e;border-color:#f973168c;color:#fed7aa;box-shadow:0 2px 10px #f973162e}.panel:nth-child(4) .tag.selectedTag{background:linear-gradient(135deg,#f97316,#ea580c)!important;border-color:#f97316!important;color:#fff!important;box-shadow:0 3px 12px #f9731673,inset 0 1px #ffffff2e!important}.tagContainer{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tag{padding:14px 8px;font-size:.8rem;border-radius:10px;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .1s ease;font-weight:600;letter-spacing:.4px;text-align:center;min-width:35px;position:relative;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid var(--af-border);background:#ffffff08;color:var(--af-text);text-transform:none}.typeIcon{font-size:1.25rem;transition:transform .2s ease,color .2s ease}.typeLabel{font-size:.78rem;font-weight:600;letter-spacing:.2px;text-transform:none}.tag:hover:not(.selectedTag){background:#ffffff0f;border-color:var(--af-border-strong);transform:translateY(-1px)}.tag:hover .typeIcon{transform:scale(1.08)}.tag:active:not(.selectedTag){transform:translateY(0)}.tag.dairy .typeIcon{color:#3b82f6}.tag.flask .typeIcon{color:#a855f7}.tag.fruit .typeIcon{color:#f59e0b}.tag.grain .typeIcon{color:#b08968}.tag.meat .typeIcon{color:#ef4444}.tag.processed .typeIcon{color:#64748b}.tag.snack .typeIcon{color:#f97316}.tag.spice .typeIcon{color:#a16207}.tag.vegetable .typeIcon{color:#22c55e}.tag.dairy,.tag.flask,.tag.fruit,.tag.grain,.tag.meat,.tag.processed,.tag.snack,.tag.spice,.tag.vegetable{background:#ffffff08}.tag.dairy:hover:not(.selectedTag){background:#3b82f614;border-color:#3b82f659}.tag.flask:hover:not(.selectedTag){background:#a855f714;border-color:#a855f759}.tag.fruit:hover:not(.selectedTag){background:#f59e0b14;border-color:#f59e0b59}.tag.grain:hover:not(.selectedTag){background:#b089681a;border-color:#b0896866}.tag.meat:hover:not(.selectedTag){background:#ef444414;border-color:#ef444459}.tag.processed:hover:not(.selectedTag){background:#64748b1a;border-color:#64748b66}.tag.snack:hover:not(.selectedTag){background:#f9731614;border-color:#f9731659}.tag.spice:hover:not(.selectedTag){background:#a162071a;border-color:#a1620766}.tag.vegetable:hover:not(.selectedTag){background:#22c55e14;border-color:#22c55e59}.tag.dairy.selectedTag{background:#3b82f6!important;border-color:#3b82f6!important}.tag.flask.selectedTag{background:#a855f7!important;border-color:#a855f7!important}.tag.fruit.selectedTag{background:#f59e0b!important;border-color:#f59e0b!important}.tag.grain.selectedTag{background:#8b6f52!important;border-color:#8b6f52!important}.tag.meat.selectedTag{background:#ef4444!important;border-color:#ef4444!important}.tag.processed.selectedTag{background:#64748b!important;border-color:#64748b!important}.tag.snack.selectedTag{background:#f97316!important;border-color:#f97316!important}.tag.spice.selectedTag{background:#a16207!important;border-color:#a16207!important}.tag.vegetable.selectedTag{background:#22c55e!important;border-color:#22c55e!important}.tag.selectedTag{color:#fff!important;box-shadow:0 3px 10px #0003!important;transform:translateY(-1px)}.tag.selectedTag .typeIcon{color:#fff!important}.submitButton{width:100%;padding:14px 22px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;letter-spacing:.3px;transition:transform .15s ease,box-shadow .2s ease,filter .2s ease;box-shadow:0 4px 14px #22c55e4d,inset 0 1px #ffffff26;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:6px;position:relative;overflow:hidden;text-transform:none}.submitButton:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transition:left .6s ease}.submitButton:hover:before{left:100%}.submitButton:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 6px 18px #22c55e61,inset 0 1px #fff3}.submitButton:active{transform:translateY(0);box-shadow:0 3px 10px #22c55e4d,inset 0 1px #ffffff26}.submitButton svg{width:18px!important;height:18px!important}@media(min-width:99999px){.formContainer{background:none;padding:0;gap:18px}.inlineFormGroup{flex-direction:column;gap:14px}.quantityGroup{min-width:0}.panelContainer{grid-template-columns:1fr;gap:10px}.weightUnitsGrid{grid-template-columns:repeat(4,1fr)}.tagContainer{grid-template-columns:repeat(3,1fr);gap:8px}.unitSection,.typeSection{padding:14px}.tag{padding:12px 6px;gap:6px}.typeIcon{font-size:1.15rem}.typeLabel{font-size:.72rem}}@media(min-width:99999px){.tagContainer{grid-template-columns:repeat(2,1fr)}}.spinnerContainer .spinner,.spinner{display:flex;align-items:center;justify-content:center;gap:8px;width:auto;height:auto;border:none;animation:none;margin:0}.spinner .dot{width:12px;height:12px;background-color:purple;border-radius:50%;animation:bounce 1.4s ease-in-out infinite both}.spinner .dot:nth-child(1){background-color:#fff;animation-delay:-.32s}.spinner .dot:nth-child(2){background-color:purple;animation-delay:-.16s}.spinner .dot:nth-child(3){background-color:#667eea;animation-delay:0s}@keyframes bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.mealPlanIngredient.dairy,.ingredientCircle.dairy{background:linear-gradient(to bottom,#4a90e2,#005bb5)}.mealPlanIngredient.flask,.ingredientCircle.flask{background:linear-gradient(to bottom,#ab47bc,#6a1b9a)}.mealPlanIngredient.fruit,.ingredientCircle.fruit{background:linear-gradient(to bottom,tomato,#ff4500)}.mealPlanIngredient.grain,.ingredientCircle.grain{background:linear-gradient(to bottom,#8d6e63,#4e342e)}.mealPlanIngredient.meat,.ingredientCircle.meat{background:linear-gradient(to bottom,#e57373,#c62828)}.mealPlanIngredient.processed,.ingredientCircle.processed{background:linear-gradient(to bottom,#757575,#424242)}.mealPlanIngredient.snack,.ingredientCircle.snack{background:linear-gradient(to bottom,#ffc107,#ff8f00)}.mealPlanIngredient.spice,.ingredientCircle.spice{background:linear-gradient(to bottom,sienna,#5d4037)}.mealPlanIngredient.vegetable,.ingredientCircle.vegetable{background:linear-gradient(to bottom,#66bb6a,#2e7d32)}@container workspace (max-width: 700px){.mealIngredientTagsRow{--tag-chip-height: 44px}.mealIngredientTags .stickyTagItem{min-height:44px;min-width:44px}}.viewMealsContainer{background-color:var(--background-color);color:var(--text-color);transition:background-color .3s ease,color .3s ease}.loadMoreContainer{display:flex;justify-content:center;align-items:center;padding:40px 20px;width:100%}.loadMoreBtn{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 30px;background:linear-gradient(135deg,#a855f7,#8b5cf6);border:1px solid rgba(168,85,247,.3);border-radius:12px;color:#fff;cursor:pointer;font-weight:600;font-size:1rem;transition:all .3s ease;min-width:180px;min-height:48px;box-shadow:0 4px 15px #a855f733}.loadMoreBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #a855f766;filter:brightness(1.1)}.loadMoreBtn:active:not(:disabled){transform:translateY(0)}.loadMoreBtn:disabled{opacity:.7;cursor:not-allowed;background:#ffffff1a;border-color:#ffffff1a;color:#ffffff80}.spinnerContainer{display:flex;justify-content:center;align-items:center;min-height:12rem}.toggleGroup{display:inline-flex;border:1px solid rgba(168,85,247,.3);border-radius:8px;overflow:hidden;background:#ffffff0a}.iconToggleBtn{position:relative;width:40px;height:40px;border:none;border-right:1px solid rgba(168,85,247,.3);background:transparent;color:#ffffffb3;border-radius:0;cursor:pointer;font-size:16px;transition:background .2s ease,color .2s ease;display:flex;align-items:center;justify-content:center;padding:0;min-height:44px;min-width:44px}.iconToggleBtn:last-of-type{border-right:none}.iconToggleBtn:hover:not(.active){background:#a855f71f;color:#a855f7}.iconToggleBtn.active{background:linear-gradient(135deg,#a855f7,#8b5cf6);color:#fff;box-shadow:inset 0 1px 3px #0003}.noPoolsWarning{font-size:20px;color:#ffc107;cursor:help;display:flex;align-items:center;justify-content:center;height:40px;width:40px;min-height:44px;min-width:44px}@media(min-width:99999px){.viewMealsContainer{padding:16px;gap:15px}}@media(min-width:99999px){.viewMealsContainer{padding:12px;gap:10px}}.editMealContainer{gap:.75rem;margin:0;padding:.75rem;max-width:100%}.ingredientsSelection{border-radius:8px;transition:background-color .3s ease,border-color .3s ease}.consoleContent{scrollbar-color:#4a4a67 transparent;scrollbar-width:thin}.consoleContent::-webkit-scrollbar-track{background:transparent}.consoleContent::-webkit-scrollbar-thumb{background:#4a4a67;border-radius:5px}.editMeal{background:var(--purple-panel);border:1px solid var(--purple-border);border-radius:8px;padding:24px;color:var(--text-color);transition:background-color .3s ease,border-color .3s ease}@container workspace (max-width: 900px){.editMealContainer{padding:0;gap:0}.editMealContainer>.editMeal{order:-1}.editMeal{padding:16px 0 0;border-radius:0;border-left:none;border-right:none;border-top:none}.editMeal .mealHeader,.editMeal .mealRatingRow{padding-left:12px;padding-right:12px;box-sizing:border-box}.editMeal .panelTabs{border-radius:0;padding:8px 12px}.editMeal .mealArea{padding:0;border:none;border-radius:0}.editMeal .ingredientsPanel,.editMeal .instructionsPanel,.editMeal .tagsPanel,.editMeal .mealImagePanel{border:none;border-radius:0}.editMeal .mealImagePanel{padding:12px;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.editMeal .mealImagePanel::-webkit-scrollbar{display:none}.editMeal .imageGridLayout{grid-template-columns:minmax(0,1fr);flex:0 1 auto;height:auto}.editMeal .imageColumn,.editMeal .imageContainer{height:auto;max-height:14rem}.editMeal .imageFrame,.editMeal .mealImagePanel .mealImage{max-height:14rem}.editMeal .expandButton{opacity:1;width:36px;height:36px;bottom:8px;right:8px}.ingredientsSelection{border-radius:0}}@container workspace (max-width: 520px){.editMeal .ingredientsWrapper{gap:8px}.editMeal .mealPlanIngredient{max-width:none;padding:10px 10px 10px 8px;letter-spacing:.5px;font-size:.95rem}.editMeal .ingredientDetails{margin-left:36px}.editMeal .ingredientInfo{gap:8px}.editMeal .primaryQuantityGroup{gap:4px;padding:4px 6px}.editMeal .purchaseQuantitySection{gap:6px;padding-left:8px}}.mealHeader{display:flex;flex-direction:column;gap:12px;width:100%;margin-bottom:16px}.mealNameSection{display:flex;align-items:center;gap:8px;width:100%;min-width:0}.mealRatingRow{display:flex;align-items:center;gap:4px;width:100%;min-width:0}.editMeal .mealRatingRow .modeSelector.horizontal{flex-shrink:0;margin-left:auto;height:36px;width:84px}.editMeal .mealRatingRow .modeSelector.horizontal .indicator{width:30px;height:30px}.editMeal .mealRatingRow .modeSelector .aiModeIcon{width:1.55em;height:1.55em;display:block}.editMeal .mealRatingRow .modeSelector .manualModeIcon{font-size:1em;width:1em;height:1em}.ratingLabel{font-size:.85rem;color:#ffffff80;margin-left:8px}.starActive{color:gold;font-size:1.2rem;cursor:pointer;transition:color .2s ease}.starActive:hover{color:#ffc700}.starInactive{color:#ffffff59;font-size:1.2rem;cursor:pointer;transition:color .2s ease}.starInactive:hover{color:#ffffff8c}.starReadOnly{cursor:default;pointer-events:none}.starReadOnly:hover{color:inherit}.starActive.starReadOnly:hover{color:gold}.starInactive.starReadOnly:hover{color:#ffffff59}.nameDivider{width:1px;height:22px;background:#ffffff26;flex-shrink:0;margin:0 4px}.mealNameTitle{margin:0;font-size:1.4rem;font-weight:700;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.editNameBtn{flex-shrink:0;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#ffffff80;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.75rem;transition:all .2s ease;padding:0}.editNameBtn:hover:not(:disabled){border-color:#a855f7;color:#a855f7;background:#a855f71a}.editNameBtn:disabled{opacity:.3;cursor:not-allowed}.mealNameInput{flex:1;min-width:0;padding:8px 12px;background:#0006;border:1px solid #a855f7;border-radius:6px;color:#fff;font-size:1.1rem;font-weight:600;outline:none;box-shadow:0 0 0 2px #a855f733}.mealNameInput::placeholder{color:#fff6}.nameConfirmBtn{flex-shrink:0;background:#4caf5026;border:1px solid rgba(76,175,80,.5);border-radius:6px;color:#4caf50;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.8rem;transition:all .2s ease;padding:0}.nameConfirmBtn:hover{background:#4caf504d;border-color:#4caf50}.nameCancelBtn{flex-shrink:0;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#ffffff80;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.8rem;transition:all .2s ease;padding:0}.nameCancelBtn:hover{border-color:#ffffff80;color:#fff}.saveMealBtn{display:inline-flex;align-items:center;justify-content:center;padding:0 24px;height:38px;border-radius:8px;font-size:.875rem;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:all .2s ease;white-space:nowrap;border:1px solid rgba(124,58,237,.5);background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 2px 8px #6d28d94d}.saveMealBtn:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#5b21b6);box-shadow:0 4px 14px #6d28d980;transform:translateY(-1px)}.saveMealBtn:disabled{opacity:.4;cursor:not-allowed}.restoreIconBtn,.deleteIconBtn,.viewIconBtn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.85rem;padding:0;border:1px solid transparent;background:transparent}.restoreIconBtn:disabled,.deleteIconBtn:disabled,.viewIconBtn:disabled{opacity:.3;cursor:not-allowed}.viewIconBtn{color:#677eeab3;border-color:#677eea40}.viewIconBtn:hover:not(:disabled){color:#667eea;border-color:#677eea99;background:#677eea1a}.restoreIconBtn{color:#fff6;border-color:#ffffff1f}.restoreIconBtn:hover:not(:disabled){color:#ffffffe6;border-color:#ffffff4d;background:#ffffff0f}.deleteIconBtn{color:#f8717199;border-color:#f8717133}.deleteIconBtn:hover:not(:disabled){color:#f87171;border-color:#f8717199;background:#f8717114}.restoreDefaultsBtn{display:inline-flex;align-items:center;justify-content:center;padding:0 16px;height:38px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;background:transparent;color:#ffffff8c;border:1px solid rgba(255,255,255,.15)}.restoreDefaultsBtn:hover:not(:disabled){background:#ffffff0f;border-color:#ffffff59;color:#ffffffd9}.restoreDefaultsBtn:disabled{opacity:.4;cursor:not-allowed}.mealArea{border:1px solid var(--input-black-opacity-background);border-radius:8px;color:var(--text-color);padding:20px;transition:border-color .3s ease;min-height:0}.editMeal .mealArea .ingredientsPanel,.editMeal .mealArea .instructionsPanel,.editMeal .mealArea .tagsPanel,.editMeal .mealArea .extraPanel,.editMeal .mealArea .mealImagePanel{background:transparent;border:none}.mealArea h2{margin-bottom:15px;color:var(--text-color);font-size:1.5rem;font-weight:700;text-align:center}.changeIngredientsContainer{gap:20px}.panelTabs{display:flex;flex-wrap:wrap;gap:8px;background-color:var(--purple-panel);border-radius:8px 8px 0 0;flex-direction:row;align-items:center;margin-left:0;margin-bottom:8px;padding:8px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.panelTabs .btnPersist{margin-left:auto}.tabUpdateBtn{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;height:34px;border-radius:8px;font-size:.8rem;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:all .2s ease;white-space:nowrap;border:1px solid rgba(124,58,237,.5);background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 2px 6px #6d28d94d}.tabUpdateBtn:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#5b21b6);box-shadow:0 4px 12px #6d28d980;transform:translateY(-1px)}.tabUpdateBtn:disabled{opacity:.4;cursor:not-allowed}.tab{width:44px;height:44px;border-radius:50%;background-color:transparent;color:#b1b1b1;border:none;cursor:pointer;transition:background-color .3s ease,color .3s ease;display:flex;align-items:center;justify-content:center;padding:0}.tab svg{font-size:20px;width:20px;height:20px}.tab:hover{background-color:#e0d6ff;color:#5e4ede}.tab:focus{outline:2px solid #5e4ede;outline-offset:2px}.activeTab{background:var(--pill-toggle-color);color:#fff}.ingredientsPanel{gap:10px;padding:10px;border-radius:8px;scrollbar-color:#4a4a67 transparent;scrollbar-width:thin}.ingredientsPanel::-webkit-scrollbar-track{background:transparent}.ingredientsPanel::-webkit-scrollbar-thumb{background:#4a4a67;border-radius:5px}.viewMealsContainer .ingredientsPanel h2{font-size:1.5rem;margin-bottom:12px;color:#fff;padding-bottom:8px;border-bottom:1px solid #4a5568}.instructionsPanel{flex:1 1;display:flex;flex-direction:column;gap:10px;padding:20px;border-radius:8px;background-color:var(--purple-panel);color:#fff;max-height:max(700px,calc(100vh - 280px));overflow-y:auto;scrollbar-color:#4a4a67 transparent;scrollbar-width:thin;position:relative}.instructionsPanel::-webkit-scrollbar{width:10px}.instructionsPanel::-webkit-scrollbar-track{background:transparent}.instructionsPanel::-webkit-scrollbar-thumb{background:#4a4a67;border-radius:5px}.instructionsContent{flex:1;display:flex;flex-direction:column}.mealImagePanel{display:flex;flex-direction:column;align-items:stretch;color:#fff;flex:1 1 0%;min-height:0;width:100%;overflow:hidden;padding:4px 8px 8px}.mealImagePanel h2{flex-shrink:0;text-shadow:1px 1px 2px rgba(0,0,0,.8);color:#fff;margin:0 0 12px;width:100%;text-align:center}.imageGridLayout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:1rem;width:100%;min-height:0;flex:1 1 0%;align-items:stretch}.imageColumn{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden}.imageContainer{position:relative;width:100%;height:100%;max-width:100%;min-height:0;display:flex;align-items:center;justify-content:center}.imageFrame{position:relative;display:flex;width:fit-content;height:fit-content;max-width:100%;max-height:100%}.expandButton{position:absolute;bottom:10px;right:10px;background-color:#0009;color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;opacity:0;z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:0}.imageFrame:hover .expandButton,.imageFrame:focus-within .expandButton{opacity:1}.expandButton:hover{background-color:#000c;transform:scale(1.1);border-color:#fff}.expandedImageOverlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000f2;display:flex;align-items:center;justify-content:center;z-index:9999;padding:40px;animation:fadeIn .3s ease;cursor:zoom-out}.expandedImage{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;box-shadow:0 4px 20px #00000080;cursor:default}.closeExpandButton{position:absolute;top:20px;right:20px;background-color:#ffffff1a;color:#fff;border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:24px}.closeExpandButton:hover{background-color:#ffffff4d;transform:scale(1.1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.controlsColumn{display:flex;flex-direction:column;gap:12px;width:100%;min-width:0;min-height:0;overflow:visible}.mealImagePanel .mealImage{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;box-sizing:border-box;box-shadow:0 2px 4px #00000080;border:4px solid #5e4ede;border-radius:8px}.imageButtons{display:flex;justify-content:flex-start;align-items:stretch;gap:15px;margin-top:0;flex-wrap:wrap;flex-shrink:0}.fileInput{display:none}.fileInputLabel{background:linear-gradient(135deg,#6c5ce7,#764ba2);border:none;border-radius:5px;width:48px;height:auto;min-height:44px;color:#fff;cursor:pointer;font-size:1rem;transition:all .3s ease;box-shadow:0 2px 8px #0003;flex-shrink:0;align-self:stretch;box-sizing:border-box;padding:0;display:flex;align-items:center;justify-content:center}.fileInputLabel svg{width:1.25rem;height:1.25rem}.fileInputLabel:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.fileInput:disabled+.fileInputLabel{background:#666;cursor:not-allowed;opacity:.6;transform:none;box-shadow:none;pointer-events:none}.promptSection{width:100%;max-width:none;margin:0;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:visible}.previewSection{margin-top:0;text-align:left;flex-shrink:0}.previewSection h4{color:#fff;margin-bottom:10px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.previewImage{width:100%;max-width:200px;max-height:5.5rem;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 2px 4px #00000080;margin-bottom:10px}.previewButtons{display:flex;justify-content:flex-start;gap:10px}.uploadButton,.cancelButton{padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-size:1rem;transition:background-color .3s ease;min-height:44px}.uploadButton{background-color:#4caf50;color:#fff}.uploadButton:hover:not(:disabled){background-color:#45a049}.cancelButton{background-color:#f44336;color:#fff}.cancelButton:hover:not(:disabled){background-color:#e53935}.uploadButton:disabled,.cancelButton:disabled{background-color:#ccc;cursor:not-allowed}.generateButtonGroup{display:flex;align-items:stretch;box-shadow:0 2px 8px #0003;border-radius:5px}.generateButton{padding:12px 16px;background-color:#007bff;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:1rem;transition:background-color .3s ease;min-width:216px;display:flex;align-items:center;justify-content:center;min-height:44px}.generateButtonGroup .generateButton{border-radius:5px 0 0 5px;min-width:0;flex:1;box-shadow:none}.generateButton:hover:not(:disabled){background-color:#0056b3}.generateButton:disabled{background-color:#ccc;cursor:not-allowed}.instructionsPanel h2{text-shadow:1px 1px 2px rgba(0,0,0,.8);color:#fff;margin-bottom:15px;font-size:1.5rem;font-weight:700;text-align:center}.instructionsTextarea{width:100%;padding:12px;background-color:#0000007f;border:1px solid var(--purple-border);border-radius:8px;color:#fff;font-size:1rem;resize:vertical;min-height:360px;flex:1;line-height:1.6}.websiteUrlSection{position:sticky;bottom:0;margin-top:0;margin-bottom:0;padding:15px;background-color:#0000007f;border-radius:8px;border:1px solid var(--purple-border);z-index:10}.websiteUrlSectionTitle{color:#fff;font-size:1.1rem;font-weight:700;margin:0 0 10px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.websiteUrlInput{width:100%;padding:10px;background-color:#5e4ede1a;border:1px solid var(--purple-border);border-radius:8px;color:#fff;font-size:1rem;margin-bottom:10px;min-height:44px}.websiteUrlInput::placeholder{color:#b1b1b1}.websiteUrlButtons{display:flex;gap:10px;justify-content:flex-end}.websiteUrlReadOnly{display:flex;justify-content:space-between;align-items:center;padding:12px;border-radius:8px;min-height:44px;border:1px solid rgba(94,78,222,.3);background-color:#5e4ede1a;gap:15px;cursor:pointer;transition:background-color .2s ease}.websiteUrlReadOnly:hover{background-color:#5e4ede26}.websiteUrlContent{flex:1;overflow:hidden}.websiteUrlPlaceholder{color:#b1b1b1;font-style:italic;display:flex;justify-content:space-between;align-items:center;width:100%}.addIcon{color:#b1b1b1;font-size:.9rem;margin-left:auto;opacity:.7}.websiteUrlLink{color:#7db3ff;text-decoration:underline;word-break:break-all}.websiteUrlLink:hover{color:#a3c9ff}.instructionsButtons{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.instructionsDisplay{cursor:pointer;padding:12px;border-radius:8px;transition:background-color .3s ease;min-height:360px;flex:1;line-height:1.6}.instructionsDisplay:hover{background-color:#ffffff1a}.tagsPanel{flex:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;padding:12px;border-radius:8px;min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin}.tagsPanel::-webkit-scrollbar{width:10px}.tagsPanel::-webkit-scrollbar-track{background:transparent}.tagsPanel::-webkit-scrollbar-thumb{background:#4a4a67;border-radius:5px}.tagsPanel h2{text-shadow:1px 1px 2px rgba(0,0,0,.8);color:#fff;margin:0;font-size:1.25rem;font-weight:700;text-align:center;flex-shrink:0}.editMeal .tagsPanel .tagsContainer{display:flex;flex-direction:column;flex-wrap:nowrap;flex:0 0 auto;align-items:stretch;align-content:flex-start;justify-content:flex-start;gap:8px;width:100%;height:auto;min-height:0;max-width:none;overflow:visible}.editMeal .tagsPanel .tagItem{display:flex;align-items:center;justify-content:center;align-self:stretch;flex:0 0 auto;width:100%;height:auto;min-height:0;min-width:0;padding:.45rem .85rem;line-height:1.2;border:none;border-radius:999px;background:#ffffff24;color:#fff;cursor:pointer;font-weight:600;font-size:.8rem;text-transform:capitalize;box-shadow:none;user-select:none;-webkit-user-select:none;transition:background .15s ease,box-shadow .15s ease}.editMeal .tagsPanel .tagItem:hover{background:#ffffff3d}.editMeal .tagsPanel .tagItemSelected{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 2px 8px #6d28d959}.editMeal .tagsPanel .tagItemSelected:hover{background:linear-gradient(135deg,#6d28d9,#5b21b6)}.editMeal .tagsPanel .tagName{font-weight:600;color:inherit;font-size:inherit;line-height:1.2}.toggleSwitch{width:36px;height:20px;background-color:#6b7280;border-radius:10px;position:relative;transition:background-color .2s ease}.toggleOn{background-color:#10b981}.toggleKnob{width:16px;height:16px;background-color:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:transform .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000004d}.toggleOn .toggleKnob{transform:translate(16px)}.mealPlanList{list-style:none;padding:0;margin:0}.mealPlanIngredient{position:relative;padding:12px;border-radius:8px;cursor:pointer;transition:background-color .3s ease,transform .2s ease;font-weight:700;text-transform:capitalize;box-shadow:0 2px 5px #0000001a;max-width:320px;width:100%;min-width:0;color:#fff;background-color:var(--button-background-color);letter-spacing:1px;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-moz-user-drag:none;-ms-user-drag:none;text-shadow:1px 1px 2px rgba(0,0,0,.5);display:flex;align-items:center;min-height:50px}.quantityBubble{width:32px;height:32px;border-radius:50%;background-color:#ffffff21;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000004d;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.quantityBubble:hover{background-color:#2d3748;transform:scale(1.1);box-shadow:0 4px 8px #0006}.quantityInput{width:32px;height:32px;flex-shrink:0;border-radius:50%;background-color:#4a5568;color:#fff;border:1px solid #718096;text-align:center;font-size:.9rem;font-weight:700;box-shadow:0 2px 4px #0000004d}.quantityInput::-webkit-inner-spin-button,.quantityInput::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantityInput{appearance:textfield;-moz-appearance:textfield}.mealPlanIngredient:hover{background-color:var(--button-hover-background-color);transform:translateY(-2px);box-shadow:0 4px 10px #0003}.dairy{background:linear-gradient(to bottom,#4a90e2,#005bb5)}.flask{background:linear-gradient(to bottom,#ab47bc,#6a1b9a)}.fruit{background:linear-gradient(to bottom,tomato,#ff4500)}.grain{background:linear-gradient(to bottom,#8d6e63,#4e342e)}.meat{background:linear-gradient(to bottom,#e57373,#c62828)}.processed{background:linear-gradient(to bottom,#757575,#424242)}.snack{background:linear-gradient(to bottom,#ffc107,#ff8f00)}.spice{background:linear-gradient(to bottom,sienna,#5d4037)}.vegetable{background:linear-gradient(to bottom,#66bb6a,#2e7d32)}.iconSticker{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background-color:#ffffff21;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 #fff0,0 1px 4px #0000004d;cursor:pointer;font-size:1.1rem;transition:background-color .2s ease,box-shadow .2s ease}.iconSticker>*{pointer-events:none}.iconSticker:hover{background-color:#ffffff4d;box-shadow:0 0 0 2px #ffffff80,0 1px 4px #0000004d}.categoryPickerOverlay{position:fixed;inset:0;z-index:99}.categoryPicker{z-index:100;background:#140f32f2;border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:8px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;box-shadow:0 8px 24px #00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.categoryPickerBtn{width:36px;height:36px;border-radius:50%;border:2px solid transparent;background:#ffffff1a;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:background-color .2s ease,transform .15s ease,border-color .2s ease;padding:0}.categoryPickerBtn:hover{background:#ffffff40;transform:scale(1.15)}.categoryPickerBtnActive{border-color:#ffffffbf;background:#fff3}.ingredientDetails{margin-left:40px;display:flex;justify-content:space-between;align-items:center;flex:1;min-width:0}.newBadge{background-color:#ff4757;color:#fff;font-size:.7rem;padding:3px 6px;border-radius:4px;font-weight:700;box-shadow:0 1px 2px #0003;white-space:nowrap;margin-left:8px;flex-shrink:0;text-transform:uppercase;letter-spacing:.5px}.ingredientName{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ingredientName.deletedIngredientName{font-style:italic;opacity:.7}.ingredientsWrapper{display:flex;align-items:center;flex-direction:row;justify-content:flex-start;gap:12px;width:100%;position:relative}.ingredientInfo{display:flex;align-items:center;flex-shrink:0;gap:12px}.primaryQuantityGroup{display:flex;align-items:center;gap:6px;margin-right:auto;background:#ffffff0d;padding:4px 8px;border-radius:20px}.purchaseQuantitySection{display:flex;align-items:center;gap:8px;margin-left:auto;padding-left:12px;border-left:1px solid rgba(255,255,255,.1);width:auto;justify-content:flex-start;flex-shrink:0}@media(min-width:99999px){.ingredientsWrapper{margin-bottom:10px}.mealPlanIngredient{max-width:320px;margin-right:auto;margin-bottom:0}.ingredientInfo{flex:0 0 auto;justify-content:flex-end;gap:16px;margin-left:0}.primaryQuantityGroup{margin-right:0}.purchaseQuantitySection{margin-left:0;padding-left:16px;border-left:1px solid rgba(255,255,255,.2)}}@media(min-width:99999px){.ingredientsWrapper{flex-direction:column;align-items:stretch;background:#ffffff0d;border-radius:12px;padding:12px;margin-bottom:12px;gap:12px}.mealPlanIngredient{margin-bottom:0;width:100%;max-width:none;padding:12px;min-height:44px;display:flex;align-items:center;justify-content:flex-start;text-align:left}.ingredientInfo{width:100%;justify-content:space-between;align-items:center;gap:0;margin-top:0}.primaryQuantityGroup{background:#ffffff14;padding:6px 12px;border-radius:20px;margin-right:0;gap:8px;flex:0 1 auto;justify-content:flex-start}.purchaseQuantitySection{margin-left:auto;background:#10b9811a;padding:6px 12px;border-radius:20px;border-left:none;flex:0 0 auto;width:auto;margin-top:0;border-top:none;gap:12px}.primaryQuantityGroup>div:first-child{flex:0 0 auto;width:auto!important}.quantityBubble,.quantityInput,.purchaseQuantityBubble,.purchaseQuantityInput{width:44px!important;height:44px!important;flex-shrink:0;font-size:1rem;box-sizing:border-box;padding:0}.newBadge{margin-left:auto;font-size:.65rem;padding:2px 5px}}.purchaseLabel{font-size:.75rem;font-weight:600;color:#fff;opacity:.9;text-transform:uppercase;letter-spacing:.5px}.purchaseQuantityBubble{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#34d399,#10b981);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000004d;-webkit-user-select:none;user-select:none}.purchaseQuantityBubble:hover{background:linear-gradient(135deg,#10b981,#059669);transform:scale(1.05)}.purchaseQuantityInput{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#34d399,#10b981);color:#fff;border:1px solid transparent;text-align:center;font-size:.9rem;font-weight:600;transition:border-color .2s ease,box-shadow .2s ease}.purchaseQuantityInput:focus{outline:none;border-color:#63b3ed;background-color:#2d3748;box-shadow:0 0 0 2px #63b3ed66}.purchaseQuantityInput::-webkit-outer-spin-button,.purchaseQuantityInput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.purchaseQuantityInput{appearance:textfield;-moz-appearance:textfield}.editMealTabSelector{display:block;height:auto;z-index:10}@media(min-width:99999px){.editMealContainer{gap:20px;padding:16px}.ingredientsSelection{margin-left:0}.mealHeader{gap:8px}.mealNameSection{gap:6px}.mealNameTitle{font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nameDivider{height:20px;margin:0 2px}.restoreIconBtn,.deleteIconBtn{width:40px;height:40px;flex-shrink:0}.editNameBtn,.nameConfirmBtn,.nameCancelBtn{width:36px;height:36px;flex-shrink:0}.mealNameInput{font-size:1rem;height:40px;padding:0 10px}.panelTabs .btnPersist{grid-column:1 / -1;margin-left:0;width:100%}.panelTabs{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,auto);gap:12px;justify-items:center;border-radius:10px 10px 0 0;padding:10px;width:100%;margin-left:0}.tab{flex-shrink:0;min-width:44px;min-height:44px}.tagsPanel{flex:1;width:100%}.instructionsTextarea{min-height:260px}.tagsContainer{grid-template-columns:1fr;max-width:none}.imageButtons{flex-direction:column;gap:12px;align-items:stretch}.generateButtonGroup{width:100%}.generateButton{width:100%;text-align:center;justify-content:center;min-height:44px}.promptSection{max-width:none;margin:15px 0}.promptTextarea{min-height:80px;font-size:16px}.imageGridLayout{grid-template-columns:1fr;gap:20px;max-width:none}.imageColumn{order:1}.controlsColumn{order:2}.imageContainer{max-width:none;width:100%}.previewSection{text-align:center}.previewImage{max-width:100%}.extraPanel{flex:1;width:100%}.videoUrlSection{padding:12px}.videoUrlInput{font-size:16px;padding:12px;min-height:44px}.videoUrlButtons{flex-direction:column;gap:10px}.videoUrlReadOnly{flex-direction:column;align-items:stretch;gap:10px}.futureSettings{padding:12px}.mealDetailsGrid{grid-template-columns:1fr!important;grid-template-rows:auto;gap:15px}}@media(min-width:99999px){.editMealContainer{padding:0;gap:10px}.editMeal{padding:12px;border-radius:0;border-left:none;border-right:none}.ingredientsPanel{padding:0}.ingredientsWrapper{padding:10px}.purchaseLabel:after{content:none}.detailInput,.detailSelect{font-size:16px}.mealNameTitle{font-size:1rem}.mealNameSection{gap:4px}.nameDivider{margin:0 1px}.restoreIconBtn,.deleteIconBtn,.editNameBtn,.nameConfirmBtn,.nameCancelBtn{width:36px;height:36px}}@media(min-width:99999px){.editMealTabSelector{width:100%}}.promptHint{color:#a5a5a5;font-size:.8rem;font-style:italic;margin-top:5px;line-height:1.3;flex-shrink:0}.promptLabel{display:block;color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:0;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.promptTextarea{width:100%;flex:1 1 auto;min-height:4.5rem;padding:12px;background-color:#0000007f;border:1px solid var(--purple-border);border-radius:8px;color:#fff;font-size:.9rem;resize:none;font-family:inherit;line-height:1.4;transition:border-color .3s ease,background-color .3s ease}.promptTextarea::placeholder{color:#b1b1b1;font-style:italic}.promptTextarea:focus{outline:none;border-color:#6c5ce7;background-color:#5e4ede26;box-shadow:0 0 0 2px #6c5ce733}.promptTextarea:disabled{background-color:#5e4ede0d;color:#888;cursor:not-allowed}.promptLabelContainer{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;flex-shrink:0;overflow:visible;padding-top:8px}.aiPromptButton{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;width:44px;height:44px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .3s ease;box-shadow:0 2px 8px #0003;flex-shrink:0;padding:0}.generateButtonGroup .aiPromptButton{border-radius:0 5px 5px 0;width:48px;min-height:44px;height:auto;align-self:stretch;box-shadow:none;border-left:1px solid rgba(255,255,255,.25)}.generateButtonGroup .aiPromptButton:hover:not(:disabled){transform:none}.aiPromptButton:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.aiPromptButton:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #0003}.aiPromptButton:disabled{background:#666;cursor:not-allowed;opacity:.6;transform:none}.galleryIconButton{background:linear-gradient(135deg,#6c5ce7,#764ba2);border:none;border-radius:8px;width:44px;height:44px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .3s ease;box-shadow:0 2px 8px #0003;flex-shrink:0;padding:0;position:relative;overflow:visible;z-index:2}.galleryIconButton:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.galleryIconButton:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #0003}.galleryIconButton:disabled{background:#666;cursor:not-allowed;opacity:.6;transform:none}.galleryBadge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#ff4757;color:#fff;border-radius:10px;font-size:10px;font-weight:700;line-height:1;border:2px solid rgba(42,26,74,.95);box-shadow:0 2px 6px #00000073;position:absolute;top:-7px;right:-7px;z-index:3;pointer-events:none}.aiPromptButton .spinner{gap:4px}.aiPromptButton .spinner .dot{width:6px;height:6px}.circularSpinner{width:16px;height:16px;border:1.5px solid rgba(255,255,255,.4);border-radius:50%;border-top-color:#fff;animation:circularSpin .8s linear infinite}@keyframes circularSpin{to{transform:rotate(360deg)}}.creditBadge{position:absolute;top:10px;right:10px;background:#000c;color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:600;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;box-shadow:0 2px 8px #0000004d}.extraPanel{flex:1;display:flex;flex-direction:column;gap:10px;padding:10px;border-radius:8px;background-color:var(--purple-panel);color:#fff;min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto;scrollbar-color:#4a4a67 transparent;scrollbar-width:thin}.extraPanel::-webkit-scrollbar{width:10px}.extraPanel::-webkit-scrollbar-track{background:transparent}.extraPanel::-webkit-scrollbar-thumb{background:#4a4a67;border-radius:5px}.extraPanel h2{text-shadow:1px 1px 2px rgba(0,0,0,.8);color:#fff;margin-bottom:16px;font-size:1.5rem;font-weight:700;text-align:center;flex-shrink:0}.extraContent{flex:0 0 auto;display:flex;flex-direction:column;gap:20px;min-height:0}.videoUrlSection{padding:15px;background-color:#0000007f;border-radius:8px;border:1px solid var(--purple-border)}.videoUrlSectionTitle{color:#fff;font-size:1.1rem;font-weight:700;margin:0 0 12px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.videoUrlInput{width:100%;padding:10px;background-color:#5e4ede1a;border:1px solid var(--purple-border);border-radius:8px;color:#fff;font-size:1rem;margin-bottom:10px}.videoUrlInput::placeholder{color:#b1b1b1}.videoUrlHint{margin-bottom:10px;color:#a5a5a5;font-style:italic}.videoUrlHint small{font-size:.8rem;line-height:1.3}.videoUrlButtons{display:flex;gap:10px;justify-content:flex-end}.videoUrlReadOnly{display:flex;justify-content:space-between;align-items:center;padding:12px;border-radius:8px;min-height:20px;border:1px solid rgba(94,78,222,.3);background-color:#5e4ede1a;gap:15px;cursor:pointer;transition:background-color .2s ease}.videoUrlReadOnly:hover{background-color:#5e4ede26}.videoUrlContent{flex:1;overflow:hidden}.videoUrlPlaceholder{color:#b1b1b1;font-style:italic;display:flex;justify-content:space-between;align-items:center;width:100%}.videoUrlLink{color:#7db3ff;text-decoration:underline;word-break:break-all}.videoUrlLink:hover{color:#a3c9ff}.futureSettings{padding:15px;background-color:#0000007f;border-radius:8px;border:1px dashed rgba(94,78,222,.3);text-align:center;display:flex;flex-direction:column;align-items:center}.futureSettingsTitle{color:#fff;font-size:1.1rem;font-weight:700;margin:0 0 12px;text-shadow:1px 1px 2px rgba(0,0,0,.5);text-align:left;width:100%;max-width:440px}.mealDetailsGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 24px;text-align:left;max-width:440px;width:100%;margin:0 auto}.detailItem{display:flex;flex-direction:column;gap:8px}.detailItem label{font-size:.9rem;font-weight:500;color:#d1d1d1}.detailInput,.detailSelect{width:100%;padding:10px;background-color:#00000080;border:1px solid var(--purple-border);border-radius:8px;color:#fff;font-size:1rem;min-height:44px}.detailInput[type=number]::-webkit-outer-spin-button,.detailInput[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.detailInput[type=number]{appearance:textfield;-moz-appearance:textfield}.numberInputContainer{display:flex;align-items:center;gap:0;height:44px;align-self:flex-start}.numberInput{width:60px;height:44px;padding:0 8px;background-color:#00000080;border:1px solid var(--purple-border);border-radius:0;color:#fff;font-size:1rem;text-align:center;appearance:none;-webkit-appearance:none;-moz-appearance:textfield;display:flex;align-items:center}.numberInput::-webkit-outer-spin-button,.numberInput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numberInput:focus{outline:none;border-color:#6c5ce7;background-color:#5e4ede26;box-shadow:0 0 0 2px #6c5ce733}.textInput{width:100%;height:44px;padding:0 12px;background-color:#0000007f;border:1px solid var(--purple-border);border-radius:8px;color:#fff;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.textInput:focus{outline:none;border-color:var(--purple-highlight);box-shadow:0 0 0 2px #6c5ce733}.textInput::placeholder{color:#fff9}.numberButton{width:32px;height:44px;background:linear-gradient(135deg,#6c5ce7,#5a4fcf);border:1px solid var(--purple-border);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;transition:all .15s ease;box-shadow:0 4px 8px #0000004d,0 2px 4px #0003,inset 0 1px #fff3,inset 0 -1px #0000001a;flex-shrink:0}.numberButton:hover{background:linear-gradient(135deg,#5a4fcf,#4a42b8);box-shadow:0 2px 4px #0000004d,0 1px 2px #0003,inset 0 1px 2px #0003,inset 0 -1px 1px #0000001a;transform:translateY(1px)}.numberButton:active{box-shadow:0 2px 4px #0000004d,0 1px 2px #0003,inset 0 1px 2px #0003,inset 0 -1px 1px #0000001a;transform:translateY(0)}.numberButton.minus{border-radius:8px 0 0 8px;border-right:none}.numberButton.minus:before{content:"−";line-height:1}.numberButton.plus{border-radius:0 8px 8px 0;border-left:none}.numberButton.plus:before{content:"+";line-height:1}@media(min-width:99999px){.numberInputContainer{height:44px}.numberInput{width:50px;height:44px;padding:0 6px}.numberButton{width:32px;height:44px;font-size:14px}}.detailSelect{cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#2a1f3d;border:1px solid #404050;border-radius:12px;padding:12px 40px 12px 16px;color:#e0e0e0;font-size:.95rem;font-weight:500;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23a0a0a0' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:all .2s ease;box-shadow:0 2px 8px #0006}.detailSelect:hover{background-color:#35273f;border-color:#5e4ede;box-shadow:0 2px 12px #5e4ede33}.detailSelect:focus{outline:none;border-color:#6c5ce7;background-color:#35273f;box-shadow:0 0 0 2px #6c5ce733}.detailSelect option{background-color:#2a1f3d;color:#e0e0e0;padding:12px;border-radius:0;margin:4px 0;font-size:.95rem;font-weight:500}.timeLabel{display:flex;align-items:center;gap:6px;font-size:.9rem;font-weight:500;color:#d1d1d1}.prepTimeIcon{color:#f44;font-size:.9rem}.cookTimeIcon{color:#4f4;font-size:.9rem}.nutritionNote{margin-top:1.5rem;padding:1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0c4a6e}.nutritionNote p{margin:0;font-size:.9rem;line-height:1.4}.nutritionNote strong{color:#0369a1}.viewMeals{--filter-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.78)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");--meal-toolbar-inline: 1rem;--meal-panel-max: 80rem;position:relative;margin:0 auto;color:var(--text-color);border-radius:8px;transition:background-color .3s ease,border-color .3s ease,opacity .3s ease;scrollbar-width:none;-ms-overflow-style:none;width:100%;min-width:0;opacity:1;background:linear-gradient(180deg,#2a1a4a,#1a0a2a);padding:2rem clamp(1.25rem,4vw,3.5rem)}.viewMeals .searchContainer,.viewMeals .actionsSection,.viewMeals .mealsMasonry,.viewMeals .loadMoreContainer,.viewMeals .noMeals{max-width:var(--meal-panel-max);width:100%;margin-inline:auto}.viewMeals::-webkit-scrollbar{display:none}.mealSourceWatermarkWrap{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.mealSourceWatermark{position:absolute;top:.4rem;right:.5rem;width:clamp(4.5rem,16vw,10rem);height:auto;aspect-ratio:1;object-fit:contain;-webkit-user-select:none;user-select:none;opacity:.16;transform:rotate(12deg)}.viewMeals .searchContainer{position:relative;z-index:5;display:flex;flex-direction:column;gap:1rem;padding:var(--meal-toolbar-inline);background:linear-gradient(135deg,#5e4ede1f,#6c5ce714);border:1px solid rgba(255,255,255,.08);border-radius:10px;margin-bottom:1.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #0003;min-width:0;container-type:inline-size;container-name:meal-filters}.searchFiltersRow{display:flex;flex-direction:column;gap:1rem}.searchBarRow{display:flex;align-items:stretch;justify-content:flex-start;gap:0;width:100%;max-width:none;margin-inline:0;flex-wrap:nowrap}.searchInputWrap{position:relative;flex:1 1 auto;max-width:none;min-width:0}.searchInputWrap:focus-within .suggestionsDropdown{display:block}.viewMeals .searchIcon{position:absolute;top:50%;left:.75rem;transform:translateY(-50%);color:#a855f7;font-size:.9rem;z-index:2}.viewMeals .searchInput{width:100%;height:44px;min-height:44px;padding:0 2.75rem 0 2.5rem;background:#ffffff14;border:1px solid rgba(168,85,247,.35);border-right:none;border-radius:8px 0 0 8px;color:#fff;font-size:.95rem;transition:background .2s ease,border-color .2s ease;box-shadow:none;box-sizing:border-box}.viewMeals .searchInput::placeholder{color:#ffffff80}.viewMeals .searchInput:focus{outline:none;border-color:#c4b0ee;background:#ffffff1f;box-shadow:none}.suggestionsDropdown{position:absolute;top:100%;left:0;right:0;background:linear-gradient(135deg,#2a1a4af2,#1a0a2af2);border:1px solid rgba(168,85,247,.3);border-radius:8px;box-shadow:0 8px 24px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;max-height:200px;overflow-y:auto;margin-top:4px;display:none}.suggestionsDropdown.show{display:block}.suggestionItem{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid rgba(168,85,247,.1);color:#fff;min-height:44px}.suggestionItem:hover,.suggestionItem.selected{background:#a855f726;color:#a855f7}.suggestionItem:last-child{border-bottom:none}.suggestionIcon{font-size:.8rem;opacity:.7;flex-shrink:0}.viewMeals .scopeSelector{-webkit-appearance:none;-moz-appearance:none;appearance:none;color-scheme:dark;flex:0 0 7.5rem;width:7.5rem;min-width:7.5rem;max-width:7.5rem;align-self:stretch;box-sizing:border-box;height:auto;min-height:44px;background-color:#ffffff14;background-image:var(--filter-chevron);background-repeat:no-repeat;background-position:right .7rem center;background-size:.65rem;border:1px solid rgba(168,85,247,.35);border-left:1px solid rgba(168,85,247,.45);border-radius:0 8px 8px 0;color:#fff;font-size:.85rem;font-weight:500;padding:0 1.7rem 0 .7rem;cursor:pointer;transition:background-color .2s ease,border-color .2s ease;z-index:3;text-align:left}.viewMeals .scopeSelector:hover{background-color:#ffffff1f;background-image:var(--filter-chevron);border-color:#a855f780}.viewMeals .scopeSelector:focus{outline:none;border-color:#c4b0ee;background-color:#ffffff1f;background-image:var(--filter-chevron)}.viewMeals .scopeSelector option{background:#2a1a4a;color:#fff;padding:.25rem;text-align:left}.clearSearchBtn{position:absolute;top:50%;right:.75rem;transform:translateY(-50%);background:none;border:none;color:#fff9;cursor:pointer;padding:.3rem;border-radius:50%;transition:all .2s ease;z-index:3;display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:.9rem}.clearSearchBtn:hover{color:#fff;background:#a855f71a}.mobileFilterToggle{display:none}.toggleChevron{font-size:.8em;opacity:.7}.filterDropdownsContainer{grid-area:drops;display:flex;align-items:stretch;gap:.75rem;flex-wrap:nowrap;min-width:min-content;width:100%}.filtersGroup{--meal-filter-control-height: 44px;display:grid;grid-template-columns:auto minmax(min-content,1fr) auto auto;grid-template-areas:"share drops views actions";align-items:center;gap:.75rem;width:100%;max-width:none;margin-inline:0}.filtersLeftGroup{display:contents}.filtersRightGroup{grid-area:actions;display:flex;align-items:center;justify-content:flex-end}.filterWrapper{position:relative;display:flex;align-items:stretch;height:var(--meal-filter-control-height);flex:1 1 10.75rem;min-width:10.75rem}.filterWrapper:nth-child(2){flex:1.35 1 13.5rem;min-width:13.5rem}.firstFilterWrapper{margin-left:0}.filterIcon{position:absolute;top:50%;left:.75rem;transform:translateY(-50%);color:#a855f7;font-size:.8rem;opacity:.8;width:12px;text-align:center;z-index:2;pointer-events:none}.filterSelect{box-sizing:border-box;width:100%;height:var(--meal-filter-control-height);min-height:var(--meal-filter-control-height);padding:0 .75rem 0 2.25rem;line-height:1.2;background-color:#ffffff0f;border:1px solid rgba(168,85,247,.2);border-radius:6px;color:#fff;font-size:.85rem;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease;cursor:pointer;min-width:0;box-shadow:inset 0 1px 2px #0000001a;text-transform:capitalize}select.filterSelect{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:var(--filter-chevron);background-repeat:no-repeat;background-position:right .7rem center;background-size:.65rem;padding-right:1.7rem}select.filterSelect:hover{background-color:#a855f70f;background-image:var(--filter-chevron);border-color:#a855f759}.filterSelect:focus{outline:none;border-color:#a855f7;background-color:#ffffff1a;box-shadow:0 0 0 2px #a855f726}select.filterSelect:focus{background-image:var(--filter-chevron)}.filterSelect option{background:#2a1a4a;color:#fff;padding:.4rem;text-transform:capitalize}.cookbookCombobox{position:relative;display:flex;align-items:stretch;height:100%;width:100%;min-width:0;max-width:none;flex:1 1 auto;box-sizing:border-box}.cookbookComboboxTrigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;height:100%;margin:0;text-align:left;font:inherit;-webkit-appearance:none;appearance:none}.cookbookComboboxTriggerLabel{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cookbookComboboxTriggerChevron{flex-shrink:0;width:.65rem;height:.65rem;background-image:var(--filter-chevron);background-repeat:no-repeat;background-position:center;background-size:contain;transition:transform .2s ease;opacity:.9}.cookbookComboboxTrigger[aria-expanded=true] .cookbookComboboxTriggerChevron{transform:rotate(180deg)}.cookbookComboboxList{position:absolute;top:calc(100% + 4px);left:0;z-index:200;min-width:100%;width:max-content;max-width:min(420px,calc(100vw - 1.5rem));margin:0;padding:.25rem 0;list-style:none;background:#2a1a4a;border:1px solid rgba(168,85,247,.2);border-radius:6px;box-shadow:0 8px 24px #00000059;max-height:min(320px,50vh);overflow-y:auto}.cookbookComboboxOption{display:grid;grid-template-columns:2.25rem minmax(0,1fr);column-gap:.45rem;align-items:center;width:100%;margin:0;padding:.45rem .7rem .45rem .4rem;background:transparent;border:none;color:#fff;cursor:pointer;text-align:left;text-transform:capitalize;font-size:.85rem;font:inherit}.cookbookComboboxCount{min-width:0;width:100%;text-align:center;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;color:#ffffffc7;font-size:.8rem;line-height:1.2}.cookbookComboboxName{min-width:0;word-break:break-word;line-height:1.25}.cookbookComboboxOption:hover,.cookbookComboboxOption:focus{background:#a855f72e;outline:none}.cookbookComboboxOption[aria-selected=true]{background:#a855f71f}.actionsSection{--meal-filter-control-height: 44px;position:relative;z-index:0;box-sizing:border-box;padding:.75rem 1rem;background:linear-gradient(135deg,#a855f714,#8b5cf60d);border:1px solid rgba(168,85,247,.15);border-radius:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 2px 10px #a855f71a;margin-bottom:1.5rem}.viewMeals .actionsRow{display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:.5rem;width:100%}.viewMeals .actionButtons{display:flex;align-items:stretch;justify-content:center;flex-wrap:nowrap;gap:.5rem;min-width:0;margin-left:0;margin-right:0}.viewMeals .actionButton{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;height:var(--meal-filter-control-height);min-height:var(--meal-filter-control-height);padding:0 1rem;margin:0;background:linear-gradient(135deg,#a855f7,#8b5cf6);border:1px solid transparent;border-radius:6px;color:#fff;font-weight:500;font-size:.85rem;line-height:1;cursor:pointer;white-space:nowrap;flex:0 1 auto;min-width:0;transition:background .2s ease,box-shadow .2s ease;box-shadow:0 2px 8px #a855f740}.viewMeals .actionButton svg{width:.85rem;height:.85rem;flex-shrink:0}.actionButton:hover{box-shadow:0 4px 12px #a855f759;background:linear-gradient(135deg,#9333ea,#7c3aed)}.actionButton:active{transform:none}.deleteAllButton{background:linear-gradient(135deg,#e74c3c,#c0392b)!important;border:1px solid rgba(231,76,60,.3)}.deleteAllButton:hover:not(:disabled){background:linear-gradient(135deg,#c0392b,#a93226)!important;box-shadow:0 4px 12px #e74c3c59}.deleteAllButton:disabled{background:#999!important;cursor:not-allowed;opacity:.6}.selectAllContainer{box-sizing:border-box;display:flex;align-items:center;justify-content:center;height:var(--meal-filter-control-height);min-height:var(--meal-filter-control-height);padding:0 .85rem;background:#ffffff0f;border:1px solid rgba(168,85,247,.2);border-radius:6px;transition:background .2s ease,border-color .2s ease}.selectAllContainer:hover{background:#ffffff1a;border-color:#a855f759}.selectAllLabel{display:flex;align-items:center;gap:.5rem;color:#fff;font-size:.85rem;font-weight:500;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;margin:0;white-space:nowrap}.selectAllCheckbox{width:1rem;height:1rem;margin:0;accent-color:#a855f7;cursor:pointer;flex-shrink:0}.noMeals{text-align:center;padding:2rem;font-size:1rem;color:#ccc}.mealsMasonry{position:relative;z-index:0;display:grid;width:100%;min-width:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(20rem,calc((100% - 3rem) / 3))),1fr));gap:1.5rem;padding:0}@container workspace (max-width: 700px){.mealsMasonry{grid-template-columns:1fr;gap:1rem;padding:0}}.mealCard{background:#f9f9f9;border:1px solid #ddd;border-radius:12px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 6px #0000000d}.mealCard:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a}.mealCard .mealImage{width:100%;aspect-ratio:5 / 3;height:auto;object-fit:cover;border-bottom:4px solid #6a4ede}.mealContent{display:flex;flex-direction:column;justify-content:flex-start;padding:1rem}.mealContent .mealName{font-family:Georgia,serif;font-size:1.25rem;font-weight:700;color:#2a1a4a;margin:0 0 .5rem}.mealIngredients{font-size:.875rem;color:#555;margin:0 0 1.5rem}.mealTags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.mealTag{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:#fff;padding:.25rem .5rem;border-radius:999px;font-size:.75rem;box-shadow:0 2px 4px #0000001a}.mealTagEllipsis{font-size:.75rem;color:#6b7280}.noTags{font-size:.875rem;color:#888;margin:0 0 .5rem}.mealRating{display:flex;gap:.25rem;margin-bottom:.75rem}.starFilled{color:gold;font-size:1.2rem;cursor:default}.starEmpty{color:#ccc;font-size:1.2rem;cursor:default}.exportLabel{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#555;cursor:pointer}.exportLabel:hover{color:#1e6dd4;font-weight:700}.viewToggle{grid-area:views;display:flex;align-items:stretch;box-sizing:border-box;height:var(--meal-filter-control-height);background:#ffffff0f;border-radius:6px;padding:2px;gap:2px;border:1px solid rgba(168,85,247,.2)}.viewToggleButton{padding:0 .75rem;background:transparent;border:none;border-radius:4px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;font-size:.9rem;display:flex;align-items:center;justify-content:center;height:100%;min-height:0;min-width:40px}.viewToggleButton:hover{background:#a855f71a;color:#a855f7}.viewToggleButton.active{background:linear-gradient(135deg,#a855f7,#8b5cf6);color:#fff;box-shadow:0 2px 4px #a855f74d}.headerActions{grid-area:share;display:flex;gap:8px;align-items:stretch;height:var(--meal-filter-control-height)}.headerActions .viewModeSegmented{position:relative;display:inline-flex;align-items:stretch;box-sizing:border-box;height:100%;padding:3px;gap:3px;border:1px solid var(--purple-border);background:var(--input-black-opacity-background);border-radius:999px}.headerActions .segmentedIndicator{position:absolute;top:3px;left:3px;width:38px;height:calc(100% - 6px);border-radius:999px;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 6px #667eea59;transform:translate(0);transition:transform .35s cubic-bezier(.4,0,.2,1);pointer-events:none;z-index:0}.headerActions .segmentedIndicator.private{transform:translate(0)}.headerActions .segmentedIndicator.shared{transform:translate(41px)}.headerActions .segmentedBtn{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:38px;height:auto;padding:0;margin:0;border:none;background:transparent;color:#ffffffa6;font-size:15px;line-height:1;cursor:pointer;border-radius:999px;outline:none;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;appearance:none;transition:color .25s ease}.headerActions .segmentedBtn:focus{outline:none;box-shadow:none}.headerActions .segmentedBtn:focus-visible{outline:2px solid var(--purple-border);outline-offset:2px}.headerActions .segmentedBtn>svg{display:block;width:15px;height:15px;margin:0;flex-shrink:0}.headerActions .segmentedBtn:hover{background:transparent}.headerActions .segmentedBtn:hover:not(.active):not(:disabled){color:var(--text-color)}.headerActions .segmentedBtn.active{color:#fff}.headerActions .segmentedBtn:disabled{opacity:.4;cursor:not-allowed}@container meal-filters (max-width: 52rem){.filtersGroup{grid-template-columns:auto auto 1fr auto;grid-template-areas:"share views spacer actions" "drops drops drops drops";gap:.5rem}.filterDropdownsContainer{gap:.5rem;min-width:0}.filterWrapper,.filterWrapper:nth-child(2){min-width:0}}@container meal-filters (max-width: 28rem){.filterDropdownsContainer{flex-direction:column;align-items:stretch;gap:.5rem}.filterWrapper,.filterWrapper:nth-child(2){flex:1 1 auto;width:100%;min-width:0}}@container workspace (max-width: 700px){.viewMeals{--meal-toolbar-inline: .75rem}.mealSourceWatermarkWrap .mealSourceWatermark{top:.2rem;right:.25rem;width:clamp(3.2rem,28vw,6.5rem);opacity:.14}.viewMeals .searchContainer{padding:var(--meal-toolbar-inline);gap:.75rem;margin-bottom:.75rem}.viewMeals>.mealsCondensed{padding-inline:calc(var(--meal-toolbar-inline) + 1px)}.searchBarRow{flex-wrap:nowrap;align-items:stretch;gap:0}.searchInputWrap{flex:1 1 auto;max-width:none;min-width:0}.viewMeals .scopeSelector{flex:0 0 6.75rem;width:6.75rem;min-width:6.75rem;max-width:6.75rem;min-height:44px;padding:0 1.7rem 0 .6rem}.filtersGroup{grid-template-columns:auto auto 1fr auto;grid-template-areas:"share views spacer actions" "drops drops drops drops";gap:.5rem}.filterDropdownsContainer{gap:.5rem;min-width:0}}@container workspace (max-width: 520px){.filterDropdownsContainer{flex-direction:column;align-items:stretch;gap:.5rem}.filterWrapper,.filterWrapper:nth-child(2){flex:1 1 auto;width:100%;min-width:0}}@container workspace (max-width: 700px){.viewMeals .actionsSection{padding:.75rem;margin-bottom:.75rem}.viewMeals .actionsRow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;justify-content:center;gap:.5rem;width:100%}.viewMeals .actionButtons{display:contents}.viewMeals .actionButton{width:100%;padding:0 .5rem}.viewMeals .selectAllContainer{width:100%;justify-content:center}}.viewMeals .actionsToggleButton{box-sizing:border-box;flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;padding:0;background:#ffffff0f;border:1px solid rgba(168,85,247,.2);border-radius:6px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;font-size:.9rem;display:flex;align-items:center;justify-content:center;margin-left:0}.viewMeals .actionsToggleButton svg{width:.9rem;height:.9rem;flex-shrink:0}.actionsToggleButton:hover{background:#a855f71a;border-color:#a855f766;color:#a855f7;transform:translateY(-1px)}.actionsToggleButton:active{transform:translateY(0)}.viewMeals>.mealsCondensed{position:relative;z-index:0;display:flex;flex-direction:column;gap:.75rem;box-sizing:border-box;width:100%;max-width:var(--meal-panel-max);margin-inline:auto;padding:0 calc(var(--meal-toolbar-inline) + 1px)}.mealRowCondensed{display:flex;align-items:stretch;width:100%;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.mealRowCondensed:hover{box-shadow:0 4px 12px #a855f726}.viewMeals .mealCardCondensed{display:flex;align-items:center;flex:1;min-width:0;margin:0;padding:.75rem 1rem;background:#fffffff2;border:1px solid rgba(168,85,247,.15);border-right:none;border-radius:8px 0 0 8px;box-shadow:none;cursor:pointer;text-align:left;font:inherit;color:inherit;appearance:none;-webkit-appearance:none;transition:background .2s ease,border-color .2s ease}.viewMeals .mealCardCondensed:hover{background:#fff;border-color:#a855f74d}.mealContentCondensed{display:flex;align-items:center;justify-content:space-between;flex:1;gap:1rem}.mealNameCondensed{font-family:Georgia,serif;font-size:1.1rem;font-weight:600;color:#2a1a4a;margin:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewMeals .exportToggleCondensed{box-sizing:border-box;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:6.5rem;max-width:none;margin:0;padding:0 .9rem;border:1px solid #d4c4f5;border-left:1px solid #c4b0ee;border-radius:0 8px 8px 0;background:#f4efff;color:#3b0764;cursor:pointer;font-size:.85rem;font-weight:600;line-height:1;appearance:none;-webkit-appearance:none;transition:background .2s ease,color .2s ease,border-color .2s ease}.viewMeals .exportToggleCondensed svg{width:.85rem;height:.85rem;flex-shrink:0}.viewMeals .exportToggleCondensed:hover{background:#e9dcff;color:#4c1d95;border-color:#b79aef}.viewMeals .exportToggleCondensedActive{background:linear-gradient(135deg,#a855f7,#7c3aed);color:#fff;border-color:#7c3aed}.viewMeals .exportToggleCondensedActive:hover{background:linear-gradient(135deg,#9333ea,#6d28d9);color:#fff;border-color:#6d28d9}.exportLabelCondensed{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#6b7280;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease;flex-shrink:0;background:#a855f714;border:1px solid rgba(168,85,247,.2)}.exportLabelCondensed:hover{background:#a855f726;color:#a855f7;font-weight:500}.exportLabelCondensed input[type=checkbox]{margin:0;cursor:pointer}@media(min-width:99999px){.viewMeals{padding:16px}.searchContainer{padding:16px;gap:12px}.actionsSection{padding:16px}.searchBarRow{flex-direction:column;align-items:stretch;justify-content:flex-start}.searchInputWrap{flex:1 1 auto;max-width:none;width:100%}.searchInput{padding:.65rem 3rem .65rem 2.25rem;font-size:16px;min-height:44px}.scopeSelector{width:100%;min-height:44px;background-color:#ffffff1a;background-image:var(--filter-chevron);background-repeat:no-repeat;background-position:right .75rem center;background-size:.7rem;padding:0 2.15rem 0 12px}.clearSearchBtn{right:.75rem;top:50%;transform:translateY(-50%);width:36px;height:36px;font-size:1rem}.searchIcon{top:50%;transform:translateY(-50%)}.searchFiltersRow{flex-direction:column;gap:12px}.filtersGroup{flex-direction:column;align-items:stretch;gap:12px}.filtersLeftGroup{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;width:100%}.headerActions{order:1;width:auto}.viewToggle{order:2;width:auto;margin:0}.mobileFilterToggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;background:#ffffff0f;border:1px solid rgba(168,85,247,.2);border-radius:6px;color:#fff;order:3;cursor:pointer;font-size:1rem;min-height:44px;transition:all .2s ease}.mobileFilterToggle.active{background:#a855f726;border-color:#a855f7}.filterDropdownsContainer{display:none;width:100%;flex-direction:column;gap:12px;order:4;padding:12px;background:#00000026;border:1px solid rgba(255,255,255,.05);border-radius:8px}.filterDropdownsContainer.show{display:flex}.firstFilterWrapper{margin-left:0}.filtersRightGroup{width:100%;justify-content:center}.filterWrapper{width:100%}.filterIcon{left:12px;font-size:1rem}.filterSelect{width:100%;padding:12px 12px 12px 36px;font-size:16px;min-height:44px}select.filterSelect{background-position:right .75rem center;background-size:.7rem;padding:12px 2.15rem 12px 36px}.cookbookCombobox{display:block;width:100%;min-width:0;max-width:none;flex:1 1 auto}.cookbookComboboxList{max-width:min(100%,calc(100vw - 2rem))}.cookbookComboboxOption{min-height:44px;font-size:16px}.cookbookComboboxCount{font-size:15px}.actionsRow{flex-direction:column;gap:12px}.actionButtons{flex-direction:column;width:100%;gap:10px}.actionButton{width:100%;justify-content:center;min-height:44px;font-size:1rem}.selectAllContainer{width:100%;justify-content:center;min-height:44px}.actionsToggleButton{width:100%;min-height:44px}.viewToggleButton{flex:1;min-height:44px}.mealCardCondensed{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:12px;min-height:50px}.mealContentCondensed{flex-direction:row;align-items:center;justify-content:space-between;width:100%;gap:10px}.mealNameCondensed{font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.exportLabelCondensed{width:auto;min-height:44px;padding:0 12px}.mealsMasonry{grid-template-columns:repeat(2,1fr);gap:15px;padding:0}}@media(min-width:99999px){.viewMeals{padding:12px}.mealsMasonry{grid-template-columns:1fr;gap:12px;padding:0}.mealCard{display:flex;flex-direction:column;align-items:stretch;border-radius:8px;background:#fff;border:1px solid #eee}.mealImage{width:100%;height:160px;border-radius:8px 8px 0 0;border-bottom:none}.mealContent{padding:12px;gap:10px}.mealContent .mealName{font-size:1.2rem;margin-bottom:4px}.mealIngredients{font-size:.9rem;margin-bottom:8px}.mealTags{gap:6px;margin-bottom:8px}.mealTag{font-size:.8rem;padding:4px 8px}.mealRating{margin-bottom:8px}.starFilled,.starEmpty{font-size:1.2rem}.exportLabel{font-size:.9rem;min-height:44px;display:flex;align-items:center;padding:8px 0}.exportLabel input[type=checkbox]{width:20px;height:20px}}._pageSkeleton_1n28n_1{padding:0;width:100%;height:100%;min-height:0;display:flex;flex-direction:column;gap:30px;background-color:var(--background-color);opacity:0;animation:_delayed-fade-in_1n28n_1 .4s ease-in forwards;animation-delay:1s}@keyframes _delayed-fade-in_1n28n_1{0%{opacity:0}to{opacity:1}}._breadcrumbSkeleton_1n28n_24{height:14px;width:min(100%,12rem);flex-shrink:0;margin:.15rem .75rem .5rem}._contentSkeleton_1n28n_31{display:flex;gap:30px;flex:1;min-height:0;min-width:0;align-items:stretch;overflow:hidden}._panelSkeleton_1n28n_41{width:min(100%,320px);flex-shrink:0;border-radius:12px;overflow:hidden;padding:15px;height:auto;min-height:0}._mainContentSkeleton_1n28n_51{flex:1;min-width:0;min-height:0;overflow:auto}._gridSkeleton_1n28n_58{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:30px;width:100%}._cardSkeleton_1n28n_65{display:flex;flex-direction:column;gap:15px;padding:15px;border-radius:12px;min-height:400px}@container workspace (max-width: 900px){._contentSkeleton_1n28n_31{flex-direction:column}._panelSkeleton_1n28n_41{width:100%;height:150px}}._errorBoundaryContainer_1kggp_2{display:flex;justify-content:center;align-items:center;min-height:200px;padding:2rem;background-color:var(--background-color);border-radius:8px;border:1px dashed var(--error-color);margin:1rem 0}._errorBoundaryContent_1kggp_14{text-align:center;max-width:600px;width:100%}._errorHeader_1kggp_20{color:var(--error-color);margin-bottom:1rem}._errorMessage_1kggp_25{color:var(--text-color);margin-bottom:1.5rem;font-family:monospace;background:var(--message-error-background);padding:1rem;border-radius:4px;border:1px solid var(--message-error-border);word-break:break-all}._errorDetails_1kggp_36{text-align:left;margin-bottom:1.5rem;font-size:.8rem;max-height:300px;overflow:auto;background:var(--input-background-color);padding:1rem;border-radius:4px;border:1px solid var(--border-color)}._errorDetails_1kggp_36 summary{cursor:pointer;margin-bottom:.5rem;font-weight:700;color:var(--text-muted)}._errorDetails_1kggp_36 pre{white-space:pre-wrap;word-break:break-all;color:var(--text-color)}._reloadButton_1kggp_61{background-color:var(--button-background-color);color:var(--button-text-color);padding:.6rem 1.2rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s}._reloadButton_1kggp_61:hover{background-color:var(--button-hover-background-color)}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: #e74c3c;--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient( to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55 );--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;padding:4px;width:var(--toastify-toast-width);box-sizing:border-box;color:#fff}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right)}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right)}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;padding:0;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}}.Toastify__toast{--y: 0;position:relative;-ms-touch-action:none;touch-action:none;min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);cursor:default;direction:ltr;z-index:0;overflow:hidden}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{margin:auto 0;-ms-flex:1 1 auto;flex:1 1 auto;padding:6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.Toastify__toast-body>div:last-child{word-break:break-word;-ms-flex:1;flex:1}.Toastify__toast-icon{-webkit-margin-end:10px;margin-inline-end:10px;width:20px;-ms-flex-negative:0;flex-shrink:0;display:-ms-flexbox;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}@media only screen and (max-width:480px){.Toastify__toast{margin-bottom:0;border-radius:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;-ms-flex-item-align:start;align-self:flex-start;z-index:1}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:var(--toastify-z-index);opacity:.7;transform-origin:left;border-bottom-left-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial;border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp{position:absolute;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#020817;padding:20px;color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased}.auth-card{background:#0f172a;padding:40px;border-radius:12px;box-shadow:0 4px 32px #00000080;width:100%;max-width:450px;text-align:center;border:1px solid #1e293b}.auth-brand{display:inline-flex;align-items:center;gap:.45rem;margin-bottom:20px;text-decoration:none;font-size:22px;font-weight:800;color:#fff;border-radius:6px}.auth-brand:focus-visible{outline:2px solid #10b981;outline-offset:4px}.auth-brand__icon,.auth-brand__text span{color:#10b981}.auth-card h2{margin-top:0;margin-bottom:10px;color:#fff;font-size:28px}.auth-subtitle{color:#94a3b8;margin-bottom:30px}.auth-error{background-color:#c5303026;color:#fc8181;padding:10px;border-radius:6px;margin-bottom:20px;border:1px solid rgba(197,48,48,.4);font-size:14px}.auth-success{background-color:#2f855a26;color:#68d391;padding:10px;border-radius:6px;margin-bottom:20px;border:1px solid rgba(47,133,90,.4);font-size:14px}.auth-info{background-color:#2b6cb026;color:#63b3ed;padding:12px 14px;border-radius:6px;margin-bottom:20px;border:1px solid rgba(43,108,176,.4);font-size:14px;text-align:left}.auth-info strong{display:block;margin-bottom:4px;font-size:15px;color:#90cdf4}.auth-info p{margin:0;line-height:1.5}.form-group{text-align:left;margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#94a3b8;font-weight:500;font-size:14px}.form-group input{width:100%;padding:12px;border:1px solid #334155;border-radius:6px;font-size:16px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;background-color:#1e293b;color:#e2e8f0}.form-group input::placeholder{color:#475569}.form-group input:focus{border-color:#6252e1;outline:none;box-shadow:0 0 0 3px #6252e140}.forgot-password-row{text-align:right;margin:-10px 0 20px}.forgot-password-link{color:#818cf8;font-size:14px;text-decoration:none;font-weight:500}.forgot-password-link:hover{text-decoration:underline;color:#a5b4fc}.btn-auth{width:100%;padding:12px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .2s,opacity .2s}.btn-primary{background:#10b981;color:#fff;border:1px solid #0d9668}.btn-primary:hover{background:#0d9668;border-color:#047857}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-google{background-color:#1e293b;color:#e2e8f0;border:1px solid #334155;display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:20px}.btn-google:hover{background-color:#263449;border-color:#475569}.auth-divider{display:flex;align-items:center;margin:25px 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid #1e293b}.auth-divider span{padding:0 10px;color:#475569;font-size:14px}.auth-footer{margin-top:20px;font-size:14px;color:#64748b}.auth-footer a{color:#818cf8;text-decoration:none;font-weight:600}.auth-footer a:hover{text-decoration:underline;color:#a5b4fc}.captcha-container{display:flex;justify-content:center;margin-bottom:20px}.success-card{padding:50px}.success-icon{font-size:48px;margin-bottom:20px}.success-card p{color:#94a3b8;margin-bottom:20px;line-height:1.5}.auth-actions{margin-top:30px}.auth-actions .btn-primary{display:inline-block;width:auto;padding:12px 30px;text-decoration:none}.auth-error-actions{margin-top:10px;font-size:14px}.auth-error-actions p{margin:6px 0 0}.auth-error-actions a,.auth-link-button{color:#818cf8;font-weight:600;text-decoration:underline}.auth-link-button{background:none;border:none;padding:0;font:inherit;cursor:pointer}.auth-link-button:disabled{cursor:default;opacity:.7}
