/* Extend the approved green and cream V1 design. */
body{font-size:16px}button,input,select,textarea{font-family:inherit}button{font-size:14px}small,.metrics,.field,.eyebrow{font-size:14px}.demoNotice{background:#0b5134;color:#fff;text-align:center;padding:9px 16px;font-size:13px;line-height:1.5}.languageBar{display:flex;border:1px solid #c8d2ca;border-radius:30px;padding:3px;flex-shrink:0;gap:2px}.languageBar button{border:0;background:none;padding:8px 10px;border-radius:24px;cursor:pointer;color:#0b5134}.languageBar .active{background:#0b5134;color:white}.navlinks{gap:16px}nav{gap:14px}.btn:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b84d31;outline-offset:3px}h1,h2,h3{line-height:1.16}input,select,textarea{font-size:16px;max-width:100%}.hero{background:#f8efe1!important}.heroGrid{width:100%}.paths .card:before,.orderChoice:before{display:none}.footer{background:#123f2d!important}.infoHero{background:#efe6d7!important}.dailySection{background:#f0e6d6!important}#builder{background:#e8e8dc!important}.hotpotBuilder{background:#f4ecdf!important}
/* Use only the food regions of the supplied reference photo sheet. */
.foodArt{background-image:url('assets/9901549d497b31.webp')!important;background-size:781% auto!important;background-position:2.8% 38%!important;min-height:0!important;aspect-ratio:1.28;padding:0!important;font-size:0!important;border-radius:24px}.foodArt *{display:none}.homePopularCard{background-image:none!important;background:#174e37!important;min-height:180px!important}.homePopularCard:before{background:linear-gradient(140deg,#174e37,#0c3424)}.mobileCat{background-image:none!important;background:#174e37!important}.partyPhoto{height:auto!important;aspect-ratio:1.28;background-size:781% auto!important;background-position:2.8% 38%!important}.partyProduct:nth-child(2) .partyPhoto{background-position:18.4% 38%!important}.partyProduct:nth-child(3) .partyPhoto{background-position:33.9% 38%!important}.partyProduct:nth-child(4) .partyPhoto{background-position:49.4% 38%!important}.partyProduct:nth-child(5) .partyPhoto{background-position:65% 38%!important}.partyProduct:nth-child(6) .partyPhoto{background-position:2.8% 65.4%!important}.partyProduct:nth-child(7) .partyPhoto{background-position:18.4% 65.4%!important}.partyProduct:nth-child(8) .partyPhoto{background-position:33.9% 65.4%!important}.partyProduct:nth-child(9) .partyPhoto{background-position:49.4% 65.4%!important}.partyProduct:nth-child(10) .partyPhoto{background-position:65% 65.4%!important}.partyProduct:nth-child(11) .partyPhoto{background-position:3.1% 93.2%!important}.dailyMeal{grid-template-columns:1fr auto!important}.dailyMeal:before{display:none!important}#builder .option{padding-left:18px!important}#builder .option:before{display:none!important}#kitStore .thumb{background-image:none!important;background:#123f2d!important;color:#fff!important;padding:24px;font-size:18px}
@media(min-width:901px){.hero .wrap{width:100%}.hero h1{font-size:clamp(40px,4.4vw,58px)}}
@media(max-width:1000px){.navlinks{gap:10px;font-size:13px}nav>.btn{padding:10px}}
@media(max-width:900px){header nav{height:auto;min-height:68px;gap:8px}.languageBar{margin-left:auto}.logo{margin-right:0;font-size:26px}.languageBar button{padding:7px 9px}.hero{min-height:0;padding:36px 0!important}.hero h1{font-size:clamp(32px,8vw,48px)!important;line-height:1.16!important}.heroGrid{grid-template-columns:1fr!important}.foodArt{display:none!important}.wrap{padding-left:18px;padding-right:18px}.demoNotice{font-size:12px}.dailyMeal{grid-template-columns:1fr auto!important}.dailyMeal small{line-height:1.5;display:block}.partyTop b{overflow-wrap:anywhere}.customPartyGrid,.checkoutGrid{grid-template-columns:1fr}.languageBar{position:relative;z-index:20}h2{font-size:30px!important}.btn{white-space:normal;line-height:1.4}.mobileShopDock{z-index:15}.drawer{width:min(100%,430px)!important}.checkoutPanel,.accountPanel{max-width:calc(100vw - 20px)} }
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Regression fixes: one stacking order across desktop and mobile. */
[hidden]{display:none!important}.modal-open{overflow:hidden}#shade{z-index:90}#drawer{z-index:100;height:100dvh}#drawer[aria-hidden="true"]{visibility:hidden;pointer-events:none}.checkoutModal,.accountModal,.orderChooser,.productDetailModal{z-index:200!important}#checkoutShade,#accountShade,.orderChooserShade,#productDetailShade{position:absolute!important;inset:0;z-index:0!important}.checkoutPanel,.accountPanel,.orderChooserPanel,.productDetailPanel{position:relative;z-index:1!important;max-height:calc(100dvh - 32px);overflow-y:auto}#mobileShopDock{z-index:50!important}.checkoutActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.checkoutActions .btn{flex:1}.checkoutPanel #checkoutNext,.saveProfile{margin-top:18px}.cartRow>div{min-width:0;overflow-wrap:anywhere}.logo[role="button"],.partyTop b[role="button"],#kitStore .pad>b[role="button"]{cursor:pointer}.dailyPlanTabs,.dailyFilters{max-width:100%;overflow-x:auto}.dailyMeal,.customDish{min-width:0}.dailyMeal b,.customDish b{overflow-wrap:anywhere}#removeHotpot{margin-top:8px;padding:8px 12px}.mealQty button,.partyQty button,.qty button{min-width:34px;min-height:34px}.mealQty button:disabled,.partyQty button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:1100px){.navlinks{display:none!important}.mobileHeaderActions{display:flex!important}#orderNowTop{display:none}header .wrap{max-width:100%}.mobileMenuPanel.open{display:grid;position:fixed;top:72px;left:12px;right:12px;z-index:80;max-height:calc(100dvh - 100px);overflow-y:auto}.languageBar{margin-left:auto}}
@media(max-width:600px){.partyActions{grid-template-columns:1fr}.customPartySummary,.summary{position:static}.partyHeader{flex-wrap:wrap;gap:16px}.checkoutPanel,.accountPanel,.orderChooserPanel,.productDetailPanel{max-width:100%;max-height:calc(100dvh - 20px)}.checkoutModal,.accountModal{padding:10px}.checkoutPanel,.accountPanel{padding:20px 16px}.reviewLine{gap:12px}.reviewLine>*{min-width:0;overflow-wrap:anywhere}.reviewLine b{flex-shrink:0}.mobileShopDock .dockLabel{font-size:14px}}
/* iPhone screenshot correction: summaries must follow choices, never float over them. */
.hotpotSummary{position:static!important;inset:auto!important;align-self:start;min-width:0}.hotpotBreakdownTitle{font-size:16px;margin:24px 0 8px}.hotpotIngredient{font-size:14px}.hotpotSummary .reviewLine{gap:16px;align-items:baseline}.hotpotSummary .reviewLine>span{flex:1;min-width:0}.hotpotSummary .reviewLine>b{flex:0 0 auto;max-width:60%;text-align:right;white-space:normal}.partyMode{color:var(--ink);-webkit-text-fill-color:currentColor}.partyMode.active{color:white}
@media(max-width:800px){
 .partyModes{position:static!important;top:auto!important;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;background:transparent;gap:6px;margin:14px 0 18px}
 .partyMode{padding:12px 8px;min-height:64px;text-align:center;font-size:14px;line-height:1.35}
 .partyMode small,.partyMode br{display:none}.partyMode b{font-size:14px;line-height:1.35;display:block}
 .hotpotGrid{grid-template-columns:minmax(0,1fr)!important;gap:20px}.hotpotChoices{grid-template-columns:minmax(0,1fr)!important}.hotpotBuilder{padding:12px}.hotpotSummary{margin-top:0;padding:18px}.hotpotSummary h3{font-size:24px}.hotpotSummary #addHotpot{font-size:14px;padding:14px 10px}
 .hotpotSteps{display:none}.hotpotChoice{padding:14px}.hotpotChoice label{padding:7px 0;font-size:16px}.hotpotChoice input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--green)}
 body{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))!important}
 #mobileShopDock{height:auto!important;min-height:0;left:8px;right:8px;bottom:calc(6px + env(safe-area-inset-bottom,0px));border-radius:16px;padding:5px 3px;gap:0}
 #mobileShopDock button{padding:5px 2px;gap:4px;border-radius:10px;min-height:54px}
 #mobileShopDock .dockIcon{width:22px;height:22px;font-size:14px;box-shadow:none}
 #mobileShopDock .dockLabel{font-size:12px;line-height:1.2;white-space:normal;overflow:visible;text-overflow:clip;max-width:100%;overflow-wrap:normal;min-height:29px;display:flex;align-items:center;justify-content:center;text-align:center}
 #mobileShopDock button+button:before{top:6px;bottom:6px}
}
/* Home category cards must not override route visibility. */
.homeOnly.hidden{display:none!important}
/* One consistent rule for every ordering surface: only navigation and dialogs float. */
#builder .summary,.dailySummary,.customPartySummary,.hotpotSummary,.partyBuilderCompact,.partyModes,.drawer .checkoutBox{position:static!important;inset:auto!important;z-index:auto!important;max-height:none!important;overflow:visible!important}
.section .summary h1,.section .summary h2,.section .summary h3,.section .dailySummary h2,.section .dailySummary h3,.section .customPartySummary h2,.section .customPartySummary h3,.section .hotpotSummary h2,.section .hotpotSummary h3{color:#fff!important}
#sumName,#price{color:#fff!important}.summary,.dailySummary,.customPartySummary,.hotpotSummary{min-width:0;align-self:start}.summary p,.dailySummary p{line-height:1.6}.summary #sumName{overflow-wrap:anywhere}.summary .nutritionNote{font-size:14px;margin:14px 0;opacity:.9}
.homeOnly.hidden,.homeOnly[hidden],.shopView.hidden,.shopView[hidden],.infoPage.hidden,.infoPage[hidden],.partyCatalog[hidden]{display:none!important}
@media(max-width:1100px){.builderGrid,.dailyBuilderGrid,.customPartyGrid,.hotpotGrid{grid-template-columns:minmax(0,1fr)!important}.summary,.dailySummary,.customPartySummary,.hotpotSummary{margin-top:20px}.partyBuilderCompact{margin:20px 0!important;width:100%;box-shadow:none!important}.partyModes{margin-top:14px}.summary #sumName{font-size:26px!important}.summary #price{font-size:30px!important}}

/* Preserve the original Performance card and make section navigation easy to find. */
#builder .macro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#builder .macro>div{padding:16px 12px;border-radius:12px;background:#ffffff15}
#builder .macro b{font-size:22px;color:#fff}
.viewNav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;padding-bottom:10px;border-top:1px solid var(--line)}
.viewNav[hidden]{display:none!important}
.viewBack{background:transparent;color:var(--green);border:0;padding:8px 0;min-height:44px;font-size:14px;font-weight:700;cursor:pointer;text-align:left;flex-shrink:0}
#viewTitle{color:var(--muted);font-size:14px;text-align:right}
.shopView,.infoPage{padding-top:18px!important}
#party .partyModes{margin:0 0 16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
#party .partyMode{min-width:0}
#party .partyMode[data-party-mode="hotpot"]{border:2px solid var(--green)}
@media(max-width:800px){#party .partyHeader{padding-top:0}.viewNav{padding-top:0;padding-bottom:2px}#builder .summary{padding:26px}}

.portionPanel{border:1px solid var(--line);border-radius:16px;padding:18px;margin:28px 0 0;min-width:0;background:var(--paper)}.portionPanel legend{font:24px Georgia;color:var(--green);padding:0 6px}.portionPanel p{font-size:14px;line-height:1.5}.portionControls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.portionControl{display:flex;flex-direction:column;gap:8px;min-width:0}.portionControl select{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink)}.portionControl small{font-size:13px;line-height:1.5}.portionReset{background:transparent;border:1px solid var(--green);border-radius:24px;color:var(--green);padding:12px 16px;margin-top:20px;cursor:pointer}.portionPreview{color:var(--muted)}#portionBreakdown{border-top:1px solid #ffffff35;margin-top:20px;padding-top:12px}#portionBreakdown .reviewLine{font-size:14px} @media(max-width:360px){.portionControls{grid-template-columns:1fr}}

.calorieCard{display:flex;flex-direction:column;gap:6px;border:1px solid #ffffff40;border-radius:14px;padding:18px;margin:18px 0;background:#ffffff10}.calorieCard strong{font-size:34px;color:#fff}.calorieCard small{font-size:13px}.rewardsCard{background:var(--green);color:white;border-radius:18px;padding:22px;margin:18px 0}.rewardsCard>div{display:flex;justify-content:space-between;align-items:center;gap:16px}.pointsBalance{font-size:40px}.rewardsCard p,.rewardsCard small{line-height:1.5}.accountQuickLinks{display:flex;gap:8px;flex-wrap:wrap}.accountStorageNote{font-size:14px;color:var(--muted);line-height:1.5}.accountTabs{gap:6px}.accountTabs button{min-height:44px}

#rewardsAdmin h1{font-size:36px;color:var(--green)}#rewardsForm{max-width:900px}.rewardEditor{margin:16px 0;min-width:0}.rewardEditor legend{font-weight:700}.rewardCheck{display:flex;gap:10px;align-items:center;min-height:48px}.rewardCheck input{width:20px;height:20px}.rewardSave{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.removeReward{margin-top:16px;background:transparent;color:var(--terr);border:1px solid currentColor;border-radius:22px;padding:10px 16px;cursor:pointer}.rewardListing{padding:16px 0;border-bottom:1px solid var(--line)}.rewardNameVi{display:none}html[lang="vi"] .rewardNameEn{display:none}html[lang="vi"] .rewardNameVi{display:inline}#rewardSaveStatus{min-height:24px}

.supportNav button[hidden]{display:none!important}.adminOrder h3{font-size:20px;overflow-wrap:anywhere}.adminOrder p{overflow-wrap:anywhere;line-height:1.6}.orderActions{display:flex;flex-wrap:wrap;gap:8px}.orderStatus{font-weight:700;color:var(--green)}#orderAdmin h1{font-size:36px;color:var(--green)}[inert]{cursor:wait}

.checkoutGrid{min-width:0}.checkoutGrid>.field{min-width:0}.checkoutGrid input,.checkoutGrid select,.checkoutGrid textarea{box-sizing:border-box;min-width:0;width:100%;max-width:100%}input[type="date"]{-webkit-appearance:none;appearance:none;display:block;min-height:48px}input[type="date"]::-webkit-date-and-time-value{text-align:left} .checkoutActions{display:flex;gap:10px;flex-wrap:wrap}.checkoutActions>.btn{flex:1;min-width:0}#checkoutBody{min-width:0}.checkoutPanel{overflow-x:hidden}

/* One meal card: edit portions and review the live total in the same place. */
#builder .builderGrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
#builder .unifiedMealCard{padding:26px;border-radius:22px;box-shadow:0 12px 30px #123f2c12}
#builder .unifiedMealCard #sumName{font-size:28px!important;line-height:1.18;margin:10px 0}
#builder .unifiedMealCard #sumBase{font-size:15px;line-height:1.5;margin:0 0 18px;color:#e7eee7}
#builder .unifiedMealCard .calorieCard{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0 0 22px;padding:16px 0;border:0;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;border-radius:0;background:transparent}
#builder .unifiedMealCard .calorieCard span{font-size:14px;max-width:55%;line-height:1.4}
#builder .unifiedMealCard .calorieCard strong{font-size:28px;white-space:nowrap}
#builder .unifiedMealCard .portionPanel{border:0;border-radius:0;padding:0;margin:0;background:transparent;color:white}
#builder .unifiedMealCard .portionPanel legend{font-family:inherit;font-size:16px;font-weight:700;color:#fff;padding:0;margin-bottom:16px;letter-spacing:0}
#builder .unifiedMealCard .portionControls{gap:18px 14px}
#builder .unifiedMealCard .portionControl{gap:7px}
#builder .unifiedMealCard .portionControl b{font-size:14px;line-height:1.4;font-weight:600}
#builder .unifiedMealCard .portionControl select{font-size:18px;font-weight:600;min-height:48px;border:1px solid #ffffff30;border-radius:10px;background:#fffaf2;color:#123f2c;padding:10px 12px}
#builder .unifiedMealCard .portionControl small{font-size:13px;line-height:1.5;color:#d8e4db}
#builder .unifiedMealCard .portionReset{font-size:14px;min-height:44px;margin:10px 0 0;padding:8px 0;border:0;border-radius:0;color:#e7eee7;text-decoration:underline;text-underline-offset:4px}
#builder .unifiedMealCard .portionDetails{border-top:1px solid #ffffff30;padding:0;margin-top:8px;font-size:14px;color:#e7eee7}
#builder .unifiedMealCard .portionDetails summary{cursor:pointer;min-height:44px;padding:14px 0;line-height:1.5;font-weight:500}
#builder .unifiedMealCard .portionDetails p{font-size:14px;line-height:1.6;margin:0 0 12px}
#builder .unifiedMealCard #portionBreakdown{margin-top:0;padding-top:8px}
#builder .unifiedMealCard .mealTotalRow{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0 18px;border-top:1px solid #ffffff30;padding-top:18px}
#builder .unifiedMealCard .mealTotalRow>span{font-size:18px;font-weight:600}
#builder .unifiedMealCard #price{margin:0!important;font-family:inherit;font-size:30px!important}
#builder .unifiedMealCard #addMacro{min-height:50px;font-size:15px;letter-spacing:.04em}
@media(max-width:800px){#builder .unifiedMealCard{padding:22px 18px;border-radius:18px}#builder .unifiedMealCard #sumName{font-size:26px!important}}
/* Compact, matching ingredient menus. */
#builder .ingredientMenus{display:grid;gap:18px}
#builder .ingredientMenuField{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:600;min-width:0}
#builder .ingredientMenuField>select,#builder .vegetableMenu>summary{width:100%;min-height:52px;border:1px solid #d7d8cc;border-radius:12px;background:#fffdf8;color:#273028;padding:14px 16px;font:inherit;font-weight:500;line-height:1.5;box-sizing:border-box}
#builder .ingredientMenuField>select{font-size:16px}
#builder .vegetableMenu>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}
#builder .vegetableMenu>summary::-webkit-details-marker{display:none}
#builder .vegetableMenu>summary:after{content:'⌄';font-size:20px;flex-shrink:0}
#builder .vegetableMenu[open]>summary{border-color:#123f2c}
#builder .vegetableMenuOptions{border:1px solid #d7d8cc;border-radius:12px;padding:14px 16px;margin-top:8px;background:#fffdf8}
#builder .vegetableMenuOptions p{font-size:14px;color:#526253;font-weight:400;margin:0 0 8px}
#builder .vegetableMenuOptions label{display:flex;align-items:center;gap:12px;min-height:44px;font-weight:400;font-size:16px;cursor:pointer}
#builder .vegetableMenuOptions input{width:20px;height:20px;accent-color:#123f2c}
#builder .vegetableMenuOptions .btn{margin-top:10px;padding:10px 20px}
#builder .unifiedMealCard .portionControl b{min-height:42px;overflow-wrap:anywhere}
#builder .portionCategory{font-size:13px;font-weight:400;color:#d8e4db}

/* Account details remain compact and in normal document flow. */
#savedAddressForm .field{margin-bottom:1rem}
#savedAddressForm textarea{min-height:6rem;width:100%;box-sizing:border-box}
.orderDetails{margin-top:1rem;border-top:1px solid #d8cebf;padding-top:1rem}
.orderDetails summary{cursor:pointer;font-weight:700}
.orderDetails dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}
.orderDetails dd{margin:0;text-align:right}
.orderDetails p{overflow-wrap:anywhere}

.homeAccountBar{background:#fffaf1;border-bottom:1px solid #ded4c3}
.homeAccountBar .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.5rem;padding-bottom:.5rem}
.homeAccountBar span{font-size:14px;color:#315840}
.homeAccountBar button{display:inline-flex;align-items:center;min-height:44px;border:1px solid #c8d2ca;border-radius:999px;background:transparent;color:#123f2d;font-weight:700;padding:.6rem 1rem;cursor:pointer}
.homeAccountBar button:hover{background:#e9eee7}
.homeAccountBar[hidden]{display:none!important}

/* Account forms use the same compact fields as checkout. */
.accountTabs[hidden]{display:none!important}
#nepAuthForm{display:grid;gap:1rem;max-width:32rem;margin-inline:auto}
#nepAuthForm h3{margin:0 0 .25rem}
#nepAuthForm input{box-sizing:border-box;width:100%;min-width:0;font-size:1rem}
#nepAuthForm .field{display:grid;gap:.5rem}
#authStatus:empty{display:none}
.authHint{font-size:.9rem;margin:0}
.authLinks{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:1rem 0}
.authLinks button{font:inherit;color:var(--green,#183f2e);background:none;border:0;text-decoration:underline;padding:.5rem;cursor:pointer}
.accountStorageNote .btn{display:block;margin-top:1rem}
.contactActions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0}
.contactActions .btn{white-space:normal}
.contactStatus{font-size:.9rem}

/* Account panel: restrained navigation, clear hierarchy and quieter secondary actions. */
#accountModal .accountPanel{width:min(780px,calc(100vw - 24px));padding:24px;border-radius:22px;background:#faf7ef;overscroll-behavior:contain}
#accountModal .accountPanel>div:first-child{position:sticky;top:-24px;z-index:3;background:#faf7ef;padding:18px 0 14px;margin-top:-18px;border-bottom:1px solid #e5ded0}
#accountModal h2{font-size:32px!important;line-height:1.2;margin:5px 0;color:#193e2d}
#accountModal .eyebrow{font-size:10px;letter-spacing:.15em}
#closeAccount{width:40px;height:40px;min-height:40px;padding:0;font-size:22px;background:transparent;color:#193e2d;border:1px solid #d9dfd5;border-radius:50%;flex-shrink:0}
#accountModal .accountTabs{display:flex;gap:4px;flex-wrap:wrap;margin:18px 0;border-bottom:1px solid #e5ded0;padding-bottom:12px}
#accountModal .accountTabs button{font-family:inherit;font-size:13px;font-weight:600;line-height:1.3;color:#465c4f;-webkit-text-fill-color:currentColor;background:transparent;border:0;border-radius:8px;padding:10px 12px;min-height:44px}
#accountModal .accountTabs button.active{background:#e6ede5;color:#193e2d}
.accountSectionLabel{display:none}
.accountTabs[hidden]+.accountSectionLabel{display:none!important}
#accountBody{font-size:15px;line-height:1.6}
#accountBody h3{font-size:22px;line-height:1.25;color:#193e2d}
#accountBody .orderCard{background:#fffdf8;border:1px solid #e5dfd3;border-radius:14px;padding:18px;margin:12px 0}
#accountBody .notice{background:#eef2e9;border-radius:12px;font-size:14px;padding:16px}
#accountBody .btn{font-size:13px;min-height:44px;padding:10px 16px;letter-spacing:0;text-transform:none;border-radius:10px}
#accountBody .rewardsCard{border-radius:14px;padding:18px;margin:16px 0;background:#193e2d}
#accountBody .pointsBalance{font-size:32px;line-height:1.1}
#accountBody .rewardsCard p{font-size:14px;margin:10px 0}
#accountBody .rewardsCard small{font-size:12px;display:block;color:#d9e5db}
#accountBody .accountBadge{font-size:11px;padding:4px 9px;letter-spacing:.02em}
#accountBody .accountStorageNote{border-top:1px solid #e2ddcf;margin:24px 0 0;padding-top:16px;font-size:12px;line-height:1.6;color:#667468}
#accountBody .accountStorageNote .btn{display:block;width:auto;margin:12px 0 0;background:transparent;color:#536358;border:1px solid #cbd5ca;padding:8px 14px}
#accountModal :is(button,select):focus-visible{outline:2px solid #8c6245;outline-offset:3px}
@media(max-width:600px){
 #accountModal{padding:12px}
 #accountModal .accountPanel{max-height:calc(100dvh - 24px);padding:18px;width:100%;max-width:100%;border-radius:18px}
 #accountModal .accountPanel>div:first-child{top:-18px}
 #accountModal .accountTabs{display:none}
 .accountSectionLabel{display:block;margin:16px 0 20px;font-size:12px;font-weight:600;color:#536358}
 .accountSectionLabel select{display:block;width:100%;min-height:46px;margin-top:6px;padding:10px 12px;border:1px solid #d6ddcf;border-radius:10px;background:#fffdf8;color:#193e2d;font:500 16px/1.4 system-ui}
 #accountBody .orderCard{padding:16px}
}

/* Verified owners can reach administration directly from their account. */
#accountModal .accountAdmin{display:flex;flex-wrap:wrap;gap:10px;padding:16px 0;border-bottom:1px solid #ddd5c5;margin-bottom:16px}
#accountModal .accountAdmin[hidden]{display:none!important}
#accountModal .accountAdmin .btn{flex:1;min-height:44px;font-size:14px;padding:12px 16px}

#nepAuthForm .passwordToggle{display:block;background:transparent;color:var(--green,#173f30);border:0;text-decoration:underline;min-height:44px;padding:6px 0;font:inherit;font-size:14px;cursor:pointer;margin-top:-4px}
#nepAuthForm .passwordToggle:focus-visible{outline:2px solid currentColor;outline-offset:3px}

#nepAuthForm .passwordInputWrap{position:relative;width:100%}
#nepAuthForm .passwordInputWrap input{width:100%;box-sizing:border-box;padding-right:132px;margin:0}
#nepAuthForm .passwordInputWrap .passwordToggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);margin:0;padding:8px;min-width:112px;min-height:44px;width:auto;max-width:124px;border-radius:8px;text-decoration:none;font-weight:600;font-size:14px;line-height:1.25}

/* Compact shared language/account strip and accessible password eye. */
.homeAccountBar .wrap{justify-content:flex-end;gap:12px;padding-top:2px;padding-bottom:2px}
.homeAccountBar .languageBar{margin-left:0;padding:2px;gap:0}
.homeAccountBar .languageBar button{border:0;min-height:36px;min-width:36px;padding:6px 8px;font-size:12px;font-weight:600;justify-content:center}
.homeAccountBar .languageBar .active{background:#0b5134;color:white}
.homeAccountBar #homeAccountEntry{font-size:14px;min-height:40px;padding:6px 12px;border-radius:10px;font-weight:600}
#nepAuthForm .passwordInputWrap input{padding-right:54px}
#nepAuthForm .passwordInputWrap .passwordToggle{display:flex;align-items:center;justify-content:center;right:3px;min-width:44px;width:44px;max-width:44px;height:44px;padding:10px}
.passwordToggleLabel{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.passwordToggle .eyeSlash{display:none}
.passwordToggle.passwordVisible .eyeSlash{display:block}
#accountModal .authLinks{display:flex;gap:16px;flex-wrap:wrap;margin:12px 0}
#accountModal .authLinks button{font-size:14px;padding:6px 0;min-height:40px}

/* One compact header: brand, cart, language, account, menu. */
header nav{height:74px;min-height:74px;gap:12px;flex-wrap:nowrap}
header .navlinks,header #orderNowTop{display:none!important}
header .logo{margin-right:auto;flex-shrink:0;font-size:28px;line-height:1}
header .logo small{font-size:7px!important;letter-spacing:1.2px!important;margin-top:6px}
header .mobileHeaderActions{display:flex!important;align-items:center;gap:6px;margin-left:0;flex-shrink:0}
header .mobileCartBtn,header .mobileMenuBtn{display:inline-grid;place-items:center;position:relative;width:40px;height:44px;border:0;border-radius:10px;background:transparent;color:var(--green);font-size:22px;cursor:pointer}
header .mobileMenuBtn{font-size:22px}
header .languageBar{margin:0;padding:0;border:0;border-radius:0;gap:0}
header .languageBar button{display:grid;place-items:center;width:36px;height:44px;padding:0;border-radius:10px;font-size:15px;font-weight:700}
header #homeAccountEntry{border:0;background:transparent;color:var(--green);font-size:13px;font-weight:600;padding:0 6px;min-height:44px;max-width:84px;line-height:1.2;cursor:pointer}
header .mobileHeaderActions button:hover{background:#e9eee7}
.mobileMenuPanel.open{display:grid;position:fixed;top:80px;left:12px;right:12px;z-index:80;max-height:calc(100dvh - 100px);overflow-y:auto;background:#fbf7ef;border:1px solid #d8cbb7;box-shadow:0 18px 50px #0002;padding:10px;border-radius:12px}
.mobileMenuPanel button{display:block;width:100%;text-align:left;padding:13px 14px;border:0;border-bottom:1px solid #e8dfd2;background:transparent;font:600 15px Inter,system-ui;color:#253b2e}
@media(max-width:380px){header .wrap{padding-left:12px;padding-right:12px}header nav{gap:6px}header .logo{font-size:25px}header .logo small{font-size:6px!important;letter-spacing:.7px!important}header .mobileHeaderActions{gap:2px}header #homeAccountEntry{font-size:12px;max-width:70px;padding:0 3px}}

/* Steps use explicit grid rows: wrapping text must never pull the next title upward. */
.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.steps .step{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;align-content:start;column-gap:14px;row-gap:8px;padding:22px 0;min-width:0;text-align:left}
.steps .step .num{grid-column:1;grid-row:1 / span 2;width:40px;height:40px;align-self:start;font-size:16px}
.steps .step h3{grid-column:2;grid-row:1;margin:0;font-size:clamp(21px,2vw,25px);line-height:1.3;overflow-wrap:break-word;min-width:0}
.steps .step p{grid-column:2;grid-row:2;margin:0;font-size:16px;line-height:1.6;overflow-wrap:break-word;min-width:0}
#homeHow .center h2{line-height:1.2;margin:12px 0 0}
#homeHow .steps{margin-top:28px}
@media(max-width:900px){
 .steps{grid-template-columns:minmax(0,1fr);gap:0}
 .steps .step{padding:22px 0;column-gap:14px;row-gap:8px}
 #homeHow .center h2{font-size:clamp(26px,6.5vw,34px)!important}
}
@media(max-width:360px){
 .steps .step{grid-template-columns:32px minmax(0,1fr);column-gap:10px}
 .steps .step .num{width:32px;height:32px}
}

/* Keep the desktop content on smaller screens, with one shared service gateway. */
@media(max-width:900px){
 .hero .foodArt{display:block!important;width:100%;max-width:560px;aspect-ratio:1.28;margin:0 auto;border-radius:16px}
 .hero .heroGrid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:24px;padding:0 18px!important}
 .heroGrid>div:first-child{padding:0;background:transparent}
 .hero h1{max-width:100%;overflow-wrap:break-word}
 .hero .eyebrow{font-size:13px;line-height:1.5}
 .paths.homeOnly:not(.hidden):not([hidden]){display:block!important;padding:28px 0 36px}
 .paths .fourCards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .paths .card{min-width:0;min-height:0;padding:22px;gap:12px;box-shadow:none}
 .paths .card h2{font-size:28px!important;line-height:1.2;margin:0}
 .paths .card p{font-size:16px;line-height:1.6;margin:0}
 .paths .cardKicker{font-size:12px;line-height:1.5}
 .paths .metrics{font-size:14px;line-height:1.5;gap:6px 14px;margin:0 0 8px}
 .paths .card .btn{min-height:44px;max-width:100%;font-size:14px;padding:12px 16px}
 .mobileHomeCats{display:none!important}
 .compactStory .seal{display:grid;margin:0 auto}
 .compactStory .wrap{grid-template-columns:minmax(0,1fr);gap:24px}
 .homePopularGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .homePopularCard{min-width:0;padding:18px;overflow-wrap:break-word}
 .homePopularCard b{font-size:24px;line-height:1.2;margin:8px 0}
 .homePopularCard span{font-size:14px;line-height:1.5}
 .partyModes{grid-template-columns:minmax(0,1fr);gap:10px}
 .partyMode small{display:block;font-size:14px;line-height:1.5;margin-top:5px}
 .partyMode br{display:none}
 .hotpotSteps{display:flex;gap:8px;flex-wrap:wrap}
 .hotpotSteps span{font-size:14px;line-height:1.4}
 #homePopular .product:nth-child(n+5){display:block}
 .product .pad p{font-size:14px;line-height:1.5}
 .supportNav{grid-column:1 / -1}
}
@media(max-width:479px){
 .paths .fourCards,.homePopularGrid{grid-template-columns:minmax(0,1fr)}
 .paths .card{padding:22px}
 .homePopularCard{min-height:150px!important}
 .paths .card .btn{align-self:stretch;text-align:center}
}

/* Guided plans: one decision at a time, with the live quote kept in normal flow. */
.guidedMealFlow .mealFlowSteps{height:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:28px 0 14px;scroll-margin-top:110px}
.mealFlowSteps button{display:flex;align-items:center;gap:10px;border:1px solid #d6dacf;border-radius:12px;background:#fffaf1;color:#234b39;padding:14px;font:inherit;text-align:left;min-width:0}
.mealFlowSteps button span{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border-radius:50%;background:#e9ebdf}
.mealFlowSteps button[aria-current=step]{background:#204d38;color:#fff;border-color:#204d38}
.mealFlowSteps button[aria-current=step] span{background:#ffffff25}
.mealFlowSteps button:disabled{opacity:.65;cursor:default}
.mealFlowIntro{font-size:14px;color:#596458}.guidedMealFlow .mealFlowTitle{font-size:30px;line-height:1.2;margin:24px 0}.mealFlowActions{display:flex;justify-content:space-between;gap:16px;margin-top:24px;padding-bottom:16px}.mealFlowActions .mealFlowNext{margin-left:auto}.mealFlowBack{background:transparent!important;color:#204d38!important;border:1px solid #bcc5b7!important}
.guidedMealFlow [hidden]{display:none!important}
#daily.guidedMealFlow .dailyPlanTabs,#daily.guidedMealFlow .dailyBuilder>.eyebrow,#daily.guidedMealFlow .dailyBuilder>h2,#daily.guidedMealFlow .dailyBuilder>p:not(.mealSelectionHint){display:none!important}
#daily.guidedMealFlow .planCard.featured{transform:none}
#daily.guidedMealFlow .dailyBuilder{margin-top:0;padding-top:0}
#daily[data-meal-step="0"] .dailyBuilder,#daily:not([data-meal-step="0"]) .planGrid{display:none!important}
#daily:not([data-meal-step="2"]) #addDailyWeek,#daily:not([data-meal-step="2"]) .mealCheckoutNote{display:none!important}
#daily[data-meal-step="2"] .dailyBuilderGrid>div,#daily[data-meal-step="2"] .mealSelectionHint{display:none!important}
#daily[data-meal-step="2"] .dailyBuilderGrid{grid-template-columns:minmax(0,1fr);max-width:720px;margin:auto}
.portionReview{border-top:1px solid #ffffff35;padding-top:20px;margin:20px 0}.portionReview h3{color:white!important;font-size:22px}.portionReview .reviewLine{font-size:16px;line-height:1.5}.mealCheckoutNote,.mealSampleNote{font-size:14px;line-height:1.6;color:inherit}.mealSampleNote{opacity:.85;margin-bottom:0}
@media(max-width:700px){.guidedMealFlow .mealFlowSteps{gap:6px;scroll-margin-top:95px}.mealFlowSteps button{flex-direction:column;align-items:flex-start;padding:10px;font-size:12px;line-height:1.4}.guidedMealFlow .mealFlowTitle{font-size:27px}.guidedMealFlow .dailyBuilderGrid,.guidedMealFlow .builderGrid{grid-template-columns:minmax(0,1fr)!important;gap:20px}.guidedMealFlow .planGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}.guidedMealFlow .planCard{padding:16px;min-width:0}.guidedMealFlow .planCard h3{font-size:23px}.guidedMealFlow .planCard strong{font-size:26px}.guidedMealFlow .planCard button{padding:12px 8px;font-size:12px}.mealFlowActions .btn{font-size:14px;padding:13px 17px}}
@media(max-width:360px){.guidedMealFlow .planGrid{grid-template-columns:minmax(0,1fr)!important}}
#daily[data-meal-step="0"] .mealFlowNext{display:none!important}
.mealFlowSteps button:focus-visible,.mealFlowActions button:focus-visible{outline:3px solid #ad6945;outline-offset:3px}
/* Owner workspace: compact list and one focused editor on every screen. */
#menuAdmin .wrap{max-width:1100px;padding-bottom:110px}#menuAdmin [hidden]{display:none!important}.adminHeading,.adminToolbar,.adminSaveBar,.adminEditorActions,.adminShortcuts{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.adminHeading{justify-content:space-between}.adminHeading h1{font-size:36px}.adminShortcuts button,.adminMenuRow button,.adminEditorActions button:not(.btn),#menuStorefront{border:1px solid #c7cfc5;border-radius:8px;background:white;color:#19482f;padding:11px 15px;font:inherit;cursor:pointer}.adminToolbar{padding:20px 0;align-items:end}.adminToolbar label{flex:1;min-width:160px;font-size:14px}.adminToolbar input,.adminToolbar select{display:block;width:100%;font:inherit;padding:12px;border:1px solid #c7cfc5;border-radius:8px;margin-top:6px}.adminMenuList{border-top:1px solid #d9dfd4}.adminMenuRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:17px 0;border-bottom:1px solid #d9dfd4}.adminMenuRow>div:first-child{display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}.adminMenuRow small,.adminMenuRow span{font-size:14px;color:#536253}.adminMenuRow>div:last-child{display:flex;align-items:center;gap:14px}.menuVisibility{padding:5px 9px;background:#edf1e8;border-radius:6px}.adminSaveBar{margin-top:24px;padding:20px;background:#e9eee3;border-radius:12px}.adminPortionSettings{margin-top:30px}.adminPortionSettings summary{font-size:20px;cursor:pointer}.adminPortionSettings fieldset{border:1px solid #c7cfc5;border-radius:10px;margin:16px 0;padding:18px}#menuItemEditor{scroll-margin-top:110px}#menuItemEditor input{min-width:0}#menuAdminStatus{line-height:1.6}.soldOutMenu{padding:16px;color:#6c5144}.adminEditorActions{margin-top:20px}
@media(max-width:600px){.adminMenuRow{grid-template-columns:minmax(0,1fr)}.adminMenuRow>div:last-child{justify-content:space-between}.adminSaveBar{align-items:stretch}.adminSaveBar button{width:100%}#menuAdmin .checkoutGrid{grid-template-columns:minmax(0,1fr)}.adminHeading h1{font-size:30px}.adminToolbar label{min-width:100%}}

/* Botanical artwork sits behind content without adding layout height. */
.hero.homeOnly,.compactStory.homeOnly{position:relative;isolation:isolate;overflow:hidden}
.hero.homeOnly{padding-top:70px!important;background:linear-gradient(135deg,#fffaf1,#f5ecdc)!important}
.hero.homeOnly::before,.compactStory.homeOnly::after{content:"";display:block;position:absolute;z-index:0;background:url('assets/nep-botanicals.png') center/contain no-repeat;pointer-events:none;user-select:none;opacity:.075}
.hero.homeOnly::before{top:0;right:0;width:clamp(230px,35vw,440px);height:340px}
.hero.homeOnly>.wrap,.compactStory.homeOnly>.wrap{position:relative;z-index:1}
.compactStory.homeOnly{background:linear-gradient(160deg,#f0f0e6,#f8f3e8)!important}
.compactStory.homeOnly::after{right:0;bottom:0;width:280px;height:250px;transform:rotate(-8deg)}
@media(max-width:900px){
 .hero.homeOnly{padding-top:36px!important}
 .hero.homeOnly::before{top:0;right:-24px;width:240px;height:240px}
 .compactStory.homeOnly::after{right:-24px;width:220px;height:220px}
}

/* Shared quiet botanical background: no extra rows, padding, or hit targets. */
section.shopView,.infoHero{position:relative;isolation:isolate}
section.shopView::before,.infoHero::before{content:"";position:absolute;z-index:-1;top:0;right:0;width:min(36%,360px);height:280px;background:url('assets/nep-botanicals.png') right top/contain no-repeat;opacity:.075;pointer-events:none;user-select:none}
.hotpotBuilder{background-image:linear-gradient(#f4ecdfed,#f4ecdfed),url('assets/nep-botanicals.png')!important;background-position:center,right top!important;background-size:auto,240px auto!important;background-repeat:no-repeat!important}
.accountPanel,.checkoutPanel,.orderChooserPanel{background-image:linear-gradient(#fffaf1f0,#fffaf1f0),url('assets/nep-botanicals.png')!important;background-position:center,right top!important;background-size:auto,190px auto!important;background-repeat:no-repeat!important}
@media(max-width:900px){
 section.shopView::before,.infoHero::before{width:min(62%,240px);height:220px}
 .hotpotBuilder{background-size:auto,180px auto!important}
 .accountPanel,.checkoutPanel,.orderChooserPanel{background-size:auto,150px auto!important}
}
#operationsAdmin .wrap{max-width:950px;padding-bottom:110px}#operationsAdmin [hidden]{display:none!important}#operationsForm textarea{width:100%;resize:vertical}#operationsForm .operationsPause{display:flex;align-items:center;gap:12px;margin:24px 0;font-weight:700}#operationsForm input[type=checkbox]{width:22px;height:22px;flex:none}.operationsNotice{white-space:pre-wrap;overflow-wrap:anywhere}
.paymentChoice,.orderPayment{margin:20px 0;padding:18px;border:1px solid #d6ddd2;border-radius:12px;background:#f4f6ef}.paymentChoice select{width:100%}.paymentChoice p,.orderPayment p{font-size:15px;line-height:1.6}.paymentTestWarning{font-weight:700;color:#874326}.transferEmail{overflow-wrap:anywhere}.orderPayment .btn{margin-top:14px}.orderPayment small{display:block;line-height:1.5}

/* Approved landscape carousel and quiet floral category cards. */
.heroCarousel{background:#f7f1e6;padding:0 0 8px;min-height:0}
.nepCarousel{position:relative;max-width:1280px;margin:0 auto;touch-action:pan-y}
.nepSlides{aspect-ratio:2.6;overflow:hidden}
.nepSlide{display:block;width:100%;height:100%;object-fit:cover;object-position:center;animation:nepFade .7s ease}
@keyframes nepFade{from{opacity:.45}to{opacity:1}}
.slideArrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border:1px solid #d6d3bc;border-radius:50%;background:#faf6e9ed;color:#174d36;font:30px/1 Georgia,serif;cursor:pointer;display:grid;place-items:center}
.slidePrev{left:14px}.slideNext{right:14px}
.carouselControls{display:flex;align-items:center;justify-content:center;gap:0;min-height:40px}
.slideDot,#carouselPause{display:grid;place-items:center;width:36px;height:36px;border:0;background:none;color:#174d36;cursor:pointer;padding:0}
.slideDot span{width:9px;height:9px;border:1px solid #648173;border-radius:50%}
.slideDot[aria-pressed="true"] span{background:#174d36;border-color:#174d36}
#carouselPause .playSymbol{display:none}#carouselPause[aria-pressed="true"] .pauseSymbol{display:none}#carouselPause[aria-pressed="true"] .playSymbol{display:inline}
.heroCarouselCopy{display:flex;align-items:center;justify-content:center;gap:24px;max-width:1180px;margin:0 auto;padding:0 18px 20px;border-bottom:1px solid #c7c6b5}
.heroCarousel .heroHeadline{font:400 clamp(19px,2vw,30px)/1.3 Georgia,serif;letter-spacing:.2px;color:#174d36;margin:0}
.heroCarousel #orderNowHero{flex-shrink:0;min-height:44px;padding:11px 22px;font-size:13px;line-height:1.3;letter-spacing:.5px;background:#174d36;color:#fff;border:0;border-radius:28px}
.paths.homeOnly:not(.hidden):not([hidden]){display:none!important}
.mobileHomeCats.homeOnly:not(.hidden):not([hidden]){display:block!important;padding:24px 0}
.mobileHomeCats .mobileCatGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;align-items:stretch}
.mobileHomeCats .flowerCard[data-scene]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-width:0;width:100%;min-height:0;aspect-ratio:1;min-height:180px;padding:24px 12px!important;border:1px solid #768674;border-radius:8px;background:#faf6eb!important;overflow:hidden;color:#174d36;box-shadow:none;cursor:pointer;container-type:inline-size}
.mobileHomeCats .flowerCard::before,.mobileHomeCats .flowerCard::after{display:none!important}
.mobileHomeCats .flowerCard[data-scene] b{position:relative;z-index:1;display:block;width:88%;max-width:300px;margin:0;font:600 clamp(23px,8cqw,44px)/1.08 Georgia,serif;color:#174d36;text-align:center;overflow-wrap:normal}
.cardArrow{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:1px solid #718873;border-radius:50%;font:22px/1 Georgia,serif;color:#174d36}
.mobileHomeCats .flowerCard[data-scene] .cardFlower{position:absolute;width:43%;height:43%;object-fit:contain;pointer-events:none;opacity:.85}
.flower-peach{left:0;top:0;object-position:left top}.flower-mai{right:0;top:0;object-position:right top}.flower-lotus{left:0;bottom:0;object-position:left bottom}.flower-flamboyant{right:0;bottom:0;object-position:right bottom}
.mobileHomeCats .flowerCard:hover{border-color:#174d36;box-shadow:0 3px 10px #174d3614}
.mobileHomeCats .flowerCard:focus-visible{outline:3px solid #174d36;outline-offset:3px}
@media(min-width:901px){.mobileHomeCats .mobileCatGrid{max-width:920px;margin-left:auto;margin-right:auto}.mobileHomeCats .flowerCard[data-scene]{aspect-ratio:1.8}.nepCarousel{margin-top:12px}}
@media(max-width:600px){.mobileHomeCats .mobileCatGrid{gap:10px}.heroCarouselCopy{gap:12px}.heroCarousel #orderNowHero{padding:10px 16px;font-size:12px}.heroCarousel .heroHeadline{font-size:17px}.slideArrow{width:36px;height:36px}.slidePrev{left:8px}.slideNext{right:8px}}
@media(max-width:380px){.heroCarouselCopy{flex-wrap:wrap;gap:10px}.heroCarousel .heroHeadline{font-size:18px}}
@media(prefers-reduced-motion:reduce){.nepSlide{animation:none}}

/* Approved round NẾP identity, contained without clipping. */
header .logo{display:flex;align-items:center;justify-content:flex-start;width:124px;max-width:32vw;height:66px;min-width:0;flex-shrink:1}
.buffaloLogo{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.logoVietnamese{display:none}
html[lang="vi"] .logoEnglish{display:none}
html[lang="vi"] .logoVietnamese{display:block}
.seal.buffaloBrand{border:0!important;border-radius:0;background:none!important;padding:0;box-shadow:none;display:block}
@media(min-width:901px){header .logo{width:140px;max-width:none}}

/* Approved editorial homepage: product photography, compact help and future features. */
.homeEditorial{padding:0 0 32px;background:var(--paper)}
.homeEditorial .wrap{display:grid;gap:26px}
.homeEditorial h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(25px,2.5vw,36px);line-height:1.15;margin:0;color:var(--green)}
.homeEditorial p{font-size:16px;line-height:1.5;margin:8px 0;color:var(--muted)}
.homeFeatures{background:#f0d2ba;border-radius:8px;padding:20px 24px;min-height:78px;display:flex;align-items:center}
.editorialHeading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.textLink{font:inherit;font-size:14px;font-weight:600;color:var(--green);border:0;background:none;padding:4px 0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.picksTrack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pickCard{min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fffaf2;transition:box-shadow .18s ease}
.pickCard:hover{box-shadow:0 6px 18px #123f2c15}
.pickOpen{display:block;text-align:left;background:none;border:0;padding:0;width:100%;font:inherit;cursor:pointer;color:var(--ink)}
/* One shared frame for default, linked and newly uploaded Picks photos. */
.pickOpen img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;object-position:center;background:#f7f4ee}
.pickCopy{display:grid;padding:14px 16px;gap:7px}
.pickCopy strong{font:600 23px/1.2 Georgia,serif;color:var(--green)}
.pickCopy>span:not(.textLink){font-size:16px;color:var(--muted);line-height:1.4}
.homeSteps,.homeDelivery{background:#eeeede;border-radius:8px;padding:20px 24px}
.homeSteps ol{padding:0;list-style:none;margin:16px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.homeSteps li{display:flex;align-items:flex-start;gap:12px}
.homeSteps h3{font:600 19px/1.3 Georgia,serif;color:var(--green);margin:0}
.homeSteps p{margin:4px 0 0}
.stepNumber{display:grid;place-items:center;flex:0 0 30px;height:30px;border:1px solid #9eab98;border-radius:50%;font-size:16px;color:var(--green)}
.homeDelivery{display:grid;grid-template-columns:1fr 1.4fr;align-items:center;gap:14px 24px}
.homeDelivery h2{font-size:25px}
.homeDelivery form{display:flex;align-items:flex-end;gap:10px;min-width:0}
.homeDelivery label{display:grid;gap:5px;flex:1;min-width:0;font-size:14px;color:var(--green)}
.homeDelivery input,.homeDelivery select{width:100%;min-width:0;box-sizing:border-box;border:1px solid #b9bca8;background:#fffaf2;border-radius:6px;padding:10px;font:inherit;font-size:16px;color:var(--ink);height:44px}
.homeDelivery .btn{font-size:14px;padding:10px 20px;min-height:44px;border-radius:6px}
#homeDeliveryResult{grid-column:1/-1;font-size:16px;line-height:1.5;color:var(--green)}
#homeDeliveryResult:empty{display:none}
.homeKitchen{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:28px}
.homeKitchen>img{width:100%;height:190px;object-fit:cover;border-radius:8px}
.homeKitchen p{max-width:440px}
.homeAnswers{display:grid;grid-template-columns:1fr 1.4fr;gap:28px}
.homeAnswers details{border:1px solid var(--line);border-radius:6px;padding:12px 16px;margin-bottom:8px}
.homeAnswers summary{cursor:pointer;font-size:16px;color:var(--green)}
.homeAnswers details p{margin:12px 0}
.homeEditorial button:focus-visible,.homeEditorial summary:focus-visible,.picksTrack:focus-visible{outline:3px solid #b35b40;outline-offset:3px}
.footer{padding:24px 0!important}.footer h2,.footer>.wrap>.eyebrow,.footer>.wrap>p{display:none}.footer .supportNav{margin-top:0}
@media(max-width:800px){
 .homeEditorial .wrap{gap:20px}.homeFeatures{padding:16px 18px;min-height:66px}
 .picksTrack{display:flex;overflow-x:auto;gap:14px;scroll-snap-type:x mandatory;padding-bottom:8px}
 .pickCard{flex:0 0 82%;scroll-snap-align:start}.pickCopy strong{font-size:23px}
 .homeSteps,.homeDelivery{padding:18px}.homeSteps ol{grid-template-columns:1fr;gap:15px}.homeSteps li+li{border-top:1px solid #d5d8c6;padding-top:14px}
 .homeDelivery{grid-template-columns:1fr}.homeDelivery form{flex-wrap:wrap}.homeDelivery label:first-child{flex-basis:100%}.homeDelivery label:nth-child(2){flex-basis:60%}
 .homeKitchen{grid-template-columns:1fr 1.1fr;gap:16px}.homeKitchen>img{height:160px}.homeKitchen h2{font-size:25px}
 .homeAnswers{grid-template-columns:1fr;gap:12px}.editorialHeading .textLink{white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){.pickCard{transition:none}}
.homeEditorial .wrap>*{min-width:0}

/* Approved botanical refinement across the five ordering screens. */
.mobileHomeCats .flowerCard[data-scene]{aspect-ratio:1.08;min-height:170px;gap:14px}
.mobileHomeCats .flowerCard[data-scene] b{font-size:clamp(19px,7.5cqw,38px);width:94%;overflow-wrap:normal}
.mobileHomeCats .flowerCard[data-scene] .cardFlower{width:51%;height:51%;opacity:.9}
.mobileHomeCats .flowerCard[data-scene] .flower-flamboyant{width:76%;height:76%;object-fit:contain;object-position:right bottom}
.orderChooserPanel{background:#fffaf2!important;max-width:610px!important;padding:22px!important;border-radius:18px!important}
.orderChoices{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
.orderChoice{display:grid!important;grid-template-columns:68px minmax(0,1fr) 28px!important;grid-template-rows:auto auto;gap:5px 12px;align-content:center;align-items:center;justify-content:initial!important;min-height:104px!important;padding:12px!important;background:#fffaf2!important;border:1px solid #d4c9b6;border-radius:9px;text-align:left}
.choiceBotanical{grid-column:1;grid-row:1/3;width:68px;height:80px;object-fit:contain}
.orderChoice b{grid-column:2;grid-row:1;font:600 21px/1.15 Georgia,serif!important;color:#123f2c;overflow-wrap:anywhere}
.orderChoice small{grid-column:2;grid-row:2;font-size:14px!important;line-height:1.4;color:#6f746a}
.orderChoice .orderArrow{grid-column:3;grid-row:1/3;border:1px solid #718873;border-radius:50%;display:grid;place-items:center;width:28px;height:28px;font-size:20px;color:#123f2c}
.botanicalSectionHeading{position:relative;display:flex;align-items:center;min-height:84px;margin:0 0 18px;padding-right:90px}
.botanicalSectionHeading h2{font:400 clamp(26px,3vw,36px)/1.15 Georgia,serif;color:#123f2c;margin:0;max-width:520px}
.sectionBotanical{position:absolute;right:0;top:0;width:80px;height:80px;object-fit:contain;pointer-events:none}
#kitStore .products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#kitStore .products .product{display:grid!important;grid-template-columns:28% minmax(0,1fr)!important;align-items:center;gap:14px;padding:12px;border:1px solid #d4c9b6;border-radius:10px;background:#fffaf2;box-shadow:none;min-width:0}
#kitStore .products .thumb{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1!important;padding:0!important;background:#edeae2!important;border-radius:7px;overflow:hidden;display:grid;place-items:center;font-size:28px;color:#929a91!important}
#kitStore .thumb img{display:block;width:100%;height:100%;object-fit:cover}
#kitStore .products .pad{padding:0!important;min-width:0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px}
#kitStore .pad>b{grid-column:1/-1;font:600 20px/1.2 Georgia,serif;overflow-wrap:anywhere;color:#123f2c;text-decoration:none}
#kitStore .pad>p{grid-column:1/-1;margin:0;font-size:14px;line-height:1.4;color:#6f746a}
#kitStore .pad>.price{font-size:18px;font-weight:700}.kitActions{margin:0!important}.kitActions .btn{padding:10px 17px!important;min-height:40px;font-size:14px!important}
#builder .unifiedMealCard{position:static;background:#fffaf2!important;color:#123f2c!important;border:1px solid #83927f;border-radius:12px;box-shadow:none;padding:24px}
#builder .unifiedMealCard #sumBase,#builder .unifiedMealCard p,#builder .unifiedMealCard small{color:#667567!important}
#builder .unifiedMealCard .eyebrow{color:#a6694d!important}
#builder .unifiedMealCard .calorieCard{background:#eeeede;border:0;border-radius:7px;padding:14px}
#builder .unifiedMealCard .calorieCard strong,#builder .unifiedMealCard .portionPanel,#builder .unifiedMealCard .portionPanel legend,#builder .unifiedMealCard .portionDetails,#builder .unifiedMealCard #price{color:#123f2c!important}
#builder .unifiedMealCard .portionDetails,#builder .unifiedMealCard .mealTotalRow,#builder .unifiedMealCard #portionBreakdown{border-color:#d4d9cb!important}
.summaryBotanical{float:right;position:relative;width:70px;height:65px;object-fit:contain;right:12px;top:8px;pointer-events:none;opacity:.75}
#builder .unifiedMealCard #sumName{padding-right:40px}
#daily .planCard{background:#fffaf2!important;border:1px solid #d4c9b6!important;box-shadow:none!important;border-radius:10px!important;min-width:0}
#daily .planCard h3{font-family:Georgia,serif;overflow-wrap:anywhere}
#daily .planCard strong{color:#123f2c}
.adminPhotoPreview{width:100px;height:100px;object-fit:cover;border-radius:8px;margin-top:8px}
@media(min-width:901px){.mobileHomeCats .flowerCard[data-scene]{aspect-ratio:1.8}.mobileHomeCats .flowerCard[data-scene] .flower-flamboyant{width:60%;height:95%}}
@media(max-width:800px){#kitStore .products{grid-template-columns:1fr!important}#kitStore .products .product{gap:12px;padding:12px}#kitStore .pad>b{font-size:18px}.orderChooserPanel{max-height:calc(100dvh - 20px)!important}#builder .unifiedMealCard{padding:20px}#daily .planCard{padding:16px!important}#daily .planCard button{font-size:13px!important;padding:11px 7px!important}.dailyBotanicalHeading{margin-top:12px}}
#builder .unifiedMealCard #sumName{color:#123f2c!important}
#daily:not([data-meal-step="0"]) .dailyBotanicalHeading{display:none!important}
#kitStore>.wrap>.eyebrow,#kitStore>.wrap>h2,#kitStore>.wrap>p{display:none}
#daily[data-meal-step="0"] .mealFlowTitle{display:none}

/* Approved nutrition revision — scoped to Daily and Performance only. */
#daily .dailyMeal{padding:12px 14px;gap:12px;align-items:center}#daily .dailyMeal>div:first-child{min-width:0}#daily .dailyMeal b{font-size:18px}#daily .dailyIngredients{display:block;font-size:13px;line-height:1.45;color:#617164;margin-top:4px}#daily .mealQty{flex-shrink:0}#daily .mealQty button{min-width:36px;min-height:36px}#daily .dailyBuilderGrid{gap:18px}
#builder .portionControls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#builder .portionControl{min-width:0}#builder .portionControl b{font-size:16px}#builder .portionControl small{font-size:12px;line-height:1.4}#builder #mealCalories{font-size:clamp(17px,3vw,27px);line-height:1.3}#builder #mealMacros{display:block}#builder .calorieCard{display:block;padding:14px}#builder .calorieCard>span{display:block;margin-bottom:5px}
#builder .nepEnergy{margin:12px 0 20px;padding:12px 16px;border:1px solid #d8cfba;border-radius:12px;background:#fbf8ef;color:#173f30}#builder .nepEnergy summary{cursor:pointer;font-size:16px;font-weight:600}#builder .nepEnergy summary small{display:block;font-size:12px;font-weight:400;color:#617164;margin-top:4px}#builder .nepEnergy .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}#builder .nepEnergy .wide{grid-column:1/-1}#builder .nepEnergy label{display:block;font-size:13px}#builder .nepEnergy input:not([type=checkbox]),#builder .nepEnergy select{display:block;width:100%;min-width:0;border:1px solid #b9c5b9;border-radius:8px;background:#fffdf7;color:#173f30;padding:9px;font:inherit;font-size:16px;margin-top:5px}#builder .nepEnergy .note,#builder .nepEnergy small{font-size:12px;color:#617164;line-height:1.5}#builder .nepEnergy .consent{display:flex;gap:8px;margin:12px 0;align-items:start}#builder .nepEnergy input[type=checkbox]{flex-shrink:0;width:18px;height:18px}#builder .nepEnergy .actions{display:flex;gap:8px;flex-wrap:wrap}#builder .nepEnergy button{border:0;border-radius:24px;background:#174b36;color:white;padding:10px 16px;min-height:44px;font-size:14px}#builder .nepEnergy .secondary{background:transparent;color:#174b36;border:1px solid #b9c5b9}#builder .nepEnergy .result:not(:empty){margin-top:14px;padding:14px;background:#edf0e4;border-radius:8px;font-size:14px}#builder .energyValue{display:block;font-size:24px;margin:4px 0}#builder .nepEnergy a{color:#174b36}#builder .nepEnergy :focus-visible{outline:2px solid #ad7254;outline-offset:3px}.recipeEditor{margin:16px 0;border:1px solid #d8cfba;padding:16px}.recipeEditor label{font-size:14px}.recipeEditor [hidden]{display:none!important}
@media(max-width:430px){#builder .portionControls{gap:9px}#builder .nepEnergy{padding:12px}#daily .dailyMeal{padding:10px}#daily .dailyMeal b{font-size:16px}}

/* Performance Meals: one page, bounded controls and summary. */
#builder.singlePageMeal .builderGrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:22px;max-width:none;margin:0;align-items:start}
#builder.singlePageMeal .ingredientMenus{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}
#builder.singlePageMeal .ingredientMenuField{margin:0;min-width:0;font-size:14px}
#builder.singlePageMeal .ingredientMenuField:nth-child(3),#builder.singlePageMeal .portionPanel{grid-column:1/-1}
#builder.singlePageMeal .ingredientMenuField select,#builder.singlePageMeal .vegetableMenu summary{width:100%;max-width:100%;min-width:0;border:1px solid #b8c4b3;border-radius:9px;background:#fffaf2;color:#123f2c;padding:10px;font-size:14px;line-height:1.4;min-height:44px;white-space:normal;overflow-wrap:anywhere}
#builder.singlePageMeal .portionPanel{border:0;padding:0;margin:6px 0 0;background:transparent;min-width:0}
#builder.singlePageMeal .portionPanel legend{font:600 15px/1.4 Arial,sans-serif;color:#123f2c;margin:0 0 10px;padding:0}
#builder.singlePageMeal .portionControls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#builder.singlePageMeal .portionControl{display:flex;flex-direction:column;gap:6px;min-width:0;margin:0;padding:12px;border:1px solid #b8c4b3;border-radius:10px;background:#fffaf2;color:#123f2c}
#builder.singlePageMeal .portionControl b{font-size:14px;line-height:1.4;min-height:0;overflow-wrap:anywhere}
#builder.singlePageMeal .portionControl select{width:100%;min-width:0;max-width:100%;min-height:44px;margin:2px 0;padding:8px;border:1px solid #a5b5a3;border-radius:7px;background:#fff;color:#123f2c;font-size:16px}
#builder.singlePageMeal .portionControl small{font-size:12px;line-height:1.4;color:#566653;white-space:normal;overflow-wrap:anywhere}
#builder.singlePageMeal .portionReset{color:#174b36;border:1px solid #9bad98;border-radius:18px;background:transparent;font-size:13px;min-height:40px;padding:8px 14px;margin:10px 0 0;text-decoration:none}
#builder.singlePageMeal .unifiedMealCard{padding:18px;margin:0;min-width:0;max-width:100%;border-color:#b8c4b3}
#builder.singlePageMeal .summaryBotanical{width:45px;height:44px;right:0;top:0;margin:0 0 5px 8px}
#builder.singlePageMeal .unifiedMealCard #sumName{font-size:22px!important;padding-right:0;line-height:1.3;overflow-wrap:anywhere}
#builder.singlePageMeal .unifiedMealCard #sumBase{font-size:13px;margin-bottom:12px}
#builder.singlePageMeal .unifiedMealCard .calorieCard{clear:both;padding:12px;margin:0 0 12px;display:block;min-width:0;max-width:100%}
#builder.singlePageMeal .unifiedMealCard .calorieCard span{font-size:13px;max-width:100%}
#builder.singlePageMeal .unifiedMealCard .calorieCard strong{display:block;font-size:18px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;max-width:100%}
#builder.singlePageMeal .unifiedMealCard .calorieCard strong[data-pending="true"]{font-size:14px;font-weight:500}
#builder.singlePageMeal .unifiedMealCard .calorieCard small{font-size:12px;white-space:normal;overflow-wrap:anywhere}
#builder.singlePageMeal #portionBreakdown:empty{display:none}
#builder.singlePageMeal .unifiedMealCard .portionDetails{margin:0;border-top:1px solid #d4d9cb;color:#173f30}
#builder.singlePageMeal .unifiedMealCard .portionDetails summary{padding:10px 0;font-size:13px;min-height:40px}
#builder.singlePageMeal .unifiedMealCard .mealTotalRow{padding-top:12px;margin:6px 0 12px;gap:10px}
#builder.singlePageMeal #addMacro{display:block;width:100%;min-height:48px;border:0;background:#174b36!important;color:#fff!important}
#builder.singlePageMeal .mealSampleNote{font-size:12px;margin:10px 0 0}
@media(max-width:1100px){#builder.singlePageMeal .builderGrid{grid-template-columns:minmax(0,1fr)!important;gap:18px}}
@media(max-width:600px){#builder.singlePageMeal{padding-top:20px;padding-bottom:calc(125px + env(safe-area-inset-bottom))}#builder.singlePageMeal>.wrap>h2{font-size:30px!important;line-height:1.15;margin:10px 0}#builder.singlePageMeal>.wrap>p{font-size:14px;line-height:1.5;margin:0 0 14px}#builder.singlePageMeal .portionControl{padding:10px}#builder.singlePageMeal .ingredientMenus{gap:10px}#builder.singlePageMeal .nepEnergy{margin:10px 0 16px}}
/* From Vietnam is an additive shop surface; no global overrides. */
#vietnamCollection{padding:38px 0;background:#f4edde;border-top:1px solid #ded5c4}#vietnamCollection .vnIntro{display:flex;align-items:center;justify-content:space-between;gap:24px}#vietnamCollection h2{font:clamp(28px,3vw,38px)/1.2 Georgia,serif;margin:8px 0;color:#173f30}#vietnamCollection p{max-width:600px;margin:0;color:#62705f;font-size:15px;line-height:1.6}#vietnamCollection .btn{flex-shrink:0;font-size:13px;white-space:normal}#vietnamCollection .vnCategories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}#vietnamCollection .vnCategories button{display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:16px;border:1px solid #b8c3ad;border-radius:10px;background:#fffaf1;color:#173f30;font:600 15px/1.4 Arial,sans-serif;text-align:left;cursor:pointer}
#vietnamShop{padding:30px 0 140px}#vietnamShop h1{font:clamp(30px,4vw,44px)/1.2 Georgia,serif;color:#173f30;margin:8px 0 12px}#vietnamShop .vnDescription,#vietnamShop .vnFulfilment{font-size:14px;line-height:1.6;color:#60715f;max-width:760px}#vietnamShop .vnToolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,220px);gap:14px;margin:22px 0 14px}#vietnamShop label{font-size:13px;color:#173f30;min-width:0}#vietnamShop input,#vietnamShop select{display:block;width:100%;min-width:0;max-width:100%;min-height:44px;margin-top:5px;padding:10px;border:1px solid #b8c3ad;background:#fffdf7;border-radius:8px;font-size:16px;color:#173f30}#vietnamShop .vnFilters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}#vietnamShop .vnFilters button{min-height:40px;padding:8px 14px;border:1px solid #b8c3ad;border-radius:22px;background:transparent;color:#173f30;font-size:13px;cursor:pointer}#vietnamShop .vnFilters button[aria-pressed=true]{background:#174b36;color:white}#vietnamShop .vnProducts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}#vietnamShop .vnProduct{min-width:0;border:1px solid #d6d6c7;border-radius:12px;overflow:hidden;background:#fffaf2}#vietnamShop .vnPhoto{aspect-ratio:4/3;background:#f0ecdf;display:grid;place-items:center;color:#62705f}#vietnamShop .vnPhoto img{display:block;width:100%;height:100%;object-fit:contain}#vietnamShop .vnProductBody{padding:16px}#vietnamShop .vnCategory{font-size:12px;color:#997052}#vietnamShop .vnProduct h2{font:22px/1.25 Georgia,serif;color:#173f30;margin:8px 0 12px;overflow-wrap:anywhere}#vietnamShop details{font-size:14px;color:#62705f}#vietnamShop summary{cursor:pointer;min-height:35px}#vietnamShop details p{overflow-wrap:anywhere;line-height:1.5}#vietnamShop .vnBuy{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px}#vietnamShop .vnBuy strong{display:block;color:#173f30;font-size:20px}#vietnamShop .vnBuy small{display:block;font-size:11px;color:#62705f}#vietnamShop .vnBuy button{font-size:13px;min-height:44px;padding:10px 16px}#vietnamShop .vnBuy button:disabled{opacity:.55;cursor:not-allowed}#vietnamShop .vnEmpty{grid-column:1/-1;border:1px solid #d6d6c7;border-radius:12px;padding:32px 22px;background:#fffaf2}#vietnamShop .vnEmpty h2{font:25px/1.3 Georgia,serif;color:#173f30;margin:0 0 10px}#vietnamShop .vnEmpty p{color:#62705f;font-size:14px}#vietnamCollection button:focus-visible,#vietnamShop :focus-visible{outline:3px solid #a66b4b;outline-offset:3px}
@media(max-width:800px){#vietnamCollection .vnIntro{display:block}#vietnamCollection .vnIntro>.btn{margin-top:18px}#vietnamCollection .vnCategories{gap:8px}#vietnamCollection .vnCategories button{font-size:13px;padding:12px}#vietnamShop .vnProducts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:500px){#vietnamCollection .vnCategories{grid-template-columns:1fr}#vietnamCollection .vnCategories button{padding:13px 15px;font-size:14px}#vietnamShop .vnToolbar{grid-template-columns:1fr}#vietnamShop .vnProducts{grid-template-columns:1fr}#vietnamShop .vnPhoto{aspect-ratio:4/3}#vietnamShop{padding-bottom:calc(140px + env(safe-area-inset-bottom))}}

/* Requested collection entry in the existing Features strip. */
.homeFeatures{flex-wrap:wrap;justify-content:space-between;gap:12px}.homeFeatures #featuresVietnam{font-size:14px;min-height:44px;white-space:normal;max-width:100%}
/* Owner-only workspace; intentionally scoped away from approved storefront layouts. */
#adminDashboard .adminWorkspaceGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}
#adminDashboard .adminWorkspaceGrid button{display:flex;flex-direction:column;gap:8px;min-width:0;text-align:left;padding:22px;border:1px solid #d9cebd;border-radius:10px;background:#fffaf1;color:#174732;cursor:pointer}
#adminDashboard .adminWorkspaceGrid b{font:700 22px Georgia,serif}#adminDashboard .adminWorkspaceGrid span{font-size:14px;line-height:1.5}
#adminDashboard,#customerAdmin,#auditAdmin,#contentAdmin{padding-bottom:160px}#adminDashboard .notice{padding:18px;border:1px solid #d9cebd;border-radius:8px}
.adminBack{margin-bottom:20px}.adminOrderTools,.adminReportActions{margin:18px 0}.adminReportActions{display:flex;flex-wrap:wrap;gap:10px}.adminReportActions button,.adminBack{min-height:44px;border:1px solid #ccc0ac;border-radius:6px;padding:9px 14px;background:#fffaf1;color:#174732;cursor:pointer}
#contentAdmin .adminFieldGrid,#orderAdmin .adminFieldGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#contentAdmin label,#orderAdmin .adminOrderTools label,#customerAdmin label{display:flex;flex-direction:column;gap:7px;min-width:0}
#contentAdmin input:not([type=checkbox]),#contentAdmin select,#orderAdmin .adminOrderTools input,#orderAdmin .adminOrderTools select,#customerAdmin input{width:100%;max-width:100%;box-sizing:border-box;padding:12px;border:1px solid #ccc0ac;border-radius:6px;background:#fffdf7;min-width:0;color:#174732}#contentAdmin input[type=checkbox]{width:20px;height:20px}#contentAdmin fieldset{margin:20px 0;padding:18px;border:1px solid #ccc0ac;border-radius:8px;min-width:0}#contentAdmin legend{font:700 22px Georgia,serif}#contentAdmin .contentOverride{margin-top:16px}#contentAdmin .adminSaveBar{flex-wrap:wrap}
#customerAdmin .adminTableScroll,#auditAdmin .adminTableScroll{max-width:100%;overflow:auto;border:1px solid #ddd0bc;border-radius:8px}#customerAdmin table,#auditAdmin table{border-collapse:collapse;width:100%;font-size:14px}#customerAdmin td,#customerAdmin th,#auditAdmin td,#auditAdmin th{padding:12px;text-align:left;border-bottom:1px solid #ddd0bc;overflow-wrap:anywhere;min-width:100px}#ownerIdentity{overflow-wrap:anywhere}
#menuAdmin .adminUpload,#contentAdmin .adminUpload{padding:10px 0;min-width:0}#menuAdmin .adminUpload input,#contentAdmin .adminUpload input{max-width:100%;font-size:13px}#menuAdmin .adminUpload small,#contentAdmin .adminUpload small{display:block;line-height:1.5}
.homeFeatures .managedFeaturePhoto{max-width:100%;width:280px;max-height:200px;object-fit:contain}.homeFeatures .managedFeatureBody{max-width:650px;line-height:1.6}.dailyMeal .dailyManagedPhoto{float:left;width:74px;height:74px;object-fit:cover;border-radius:6px;margin:0 12px 6px 0}
@media(max-width:650px){#adminDashboard .adminWorkspaceGrid,#contentAdmin .adminFieldGrid,#orderAdmin .adminFieldGrid{grid-template-columns:1fr}#contentAdmin fieldset{padding:12px}#adminDashboard .adminWorkspaceGrid button{padding:18px}#customerAdmin .wrap,#auditAdmin .wrap,#contentAdmin .wrap{min-width:0}.adminReportActions button{flex:1 1 130px}}
.homeFeatures[hidden],.pickCard[hidden]{display:none!important}
.partyCatalog .partyProduct .partyPhoto.managedProductPhoto{background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;background-color:var(--cream,#fffaf1)}

/* Owner product photos: full square viewing area, never crop the tray. */
.partyCatalog .partyProduct .partyPhoto.managedProductPhoto{aspect-ratio:1!important;min-height:0!important;background-color:#f7f4ee;cursor:zoom-in}
.partyCatalog .managedProductPhoto:focus-visible{outline:3px solid var(--green);outline-offset:-4px}

.partyCatalog .partyProduct:has(.managedProductPhoto) .partyTop p{min-height:0}

/* Photo controls are scoped to the admin editor. */
.nepPhotoEditor{margin:12px 0;max-width:100%;min-width:0}
.nepPhotoEditor canvas{display:block;width:100%;height:auto;max-height:360px;object-fit:contain;background:#f7f4ee;border:1px solid #ded8ca;border-radius:8px}
.nepPhotoEditor .photoEditActions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.nepPhotoEditor button{font-size:14px;padding:10px 14px;white-space:normal}
.nepPhotoEditor .photoCropControl{display:grid;grid-template-columns:1fr 2fr 3em;gap:8px;align-items:center;margin:12px 0;font-size:14px}
.nepPhotoEditor input[type=range]{min-width:0;width:100%;padding:0}

#contentAdmin .contentCardEditor{border:1px solid #ded8ca;border-radius:12px;padding:16px;margin:12px 0;min-width:0}
#contentAdmin .contentCardEditor summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;font-size:18px;overflow-wrap:anywhere}
#contentAdmin .contentCardEditor summary span{font-size:14px;flex-shrink:0}
#contentAdmin .contentOverride{padding-top:16px}
#contentAdmin input,#contentAdmin select{max-width:100%;min-width:0}
#contentAdmin button{white-space:normal}
#contentAdmin .adminEditorActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
#contentAdmin [hidden]{display:none!important}

#builder .ingredientAdminPhoto,.hotpotChoices .ingredientAdminPhoto{display:block;width:88px;height:66px;object-fit:contain;border-radius:6px;margin:0 0 8px}

/* Keep the square brand image inside the existing 74px navigation bar. */
header .logo{max-height:calc(74px - 8px);overflow:hidden}
header .logo .buffaloLogo{width:auto;max-width:100%;height:100%;max-height:66px;object-fit:contain;mix-blend-mode:multiply}

/* Consistent approved logo presentation, without decorative rotation or shadow. */
.buffaloLogo{object-fit:contain;filter:none;transform:none;box-shadow:none;mix-blend-mode:multiply}
.seal.buffaloBrand{width:110px;height:110px;max-width:100%;margin-inline:auto}
.compactPageDetails{margin:8px 0 16px;color:var(--muted);max-width:65ch;font-size:15px;line-height:1.5}
.compactPageDetails summary{cursor:pointer;color:var(--green);font-weight:600;padding:8px 0}
.compactPageDetails p{margin:6px 0 12px}
body.adminView #mobileShopDock{display:none!important}
body.adminView .adminBack{display:none}
body.adminView .infoPage>.wrap{padding-bottom:32px}
#contentAdmin h2,#menuAdmin h2{font-size:clamp(24px,5vw,32px)}
.adminMenuRow small,.adminMenuRow span{line-height:1.4;overflow-wrap:anywhere}

/* Larger mark, contained in a matching header with a white-keyed JPEG background. */
header{background:var(--paper)}
header nav{height:94px;min-height:94px}
header .logo{height:88px;max-height:88px;overflow:hidden}
header .logo .buffaloLogo{height:88px;max-height:88px;filter:brightness(1.045);mix-blend-mode:multiply}
body.adminView .adminBack{display:inline-block;margin:0 0 16px;padding:10px 14px}

/* Transparent brand asset inherits the actual theme background. */
.buffaloLogo,header .logo .buffaloLogo{filter:none;mix-blend-mode:normal;background:transparent}
header nav{height:98px;min-height:98px}
header .logo,header .logo .buffaloLogo{height:92px;max-height:92px}

/* Approved compact cart/account layout; shared only with order summaries. */
#drawer{padding:24px;max-width:100vw;background:#fffaf2}
#drawer h2,#accountModal h2{font-size:36px;line-height:1.15;margin:6px 0 18px}
#drawer #closeCart,#accountModal #closeAccount{width:44px;height:44px;min-width:44px;padding:0;border-radius:50%;font-size:24px}
#drawer .cartRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:20px 0;align-items:start}
#drawer .cartRow .itemCount{display:none}
#drawer .unitPrice{display:block;font-size:14px;color:var(--muted);margin-top:6px}
#drawer .qty{display:flex;align-items:center;gap:0;border:1px solid #d7d5ca;border-radius:24px;overflow:hidden;background:#fffdf8}
#drawer .qty button{border:0;background:transparent;color:#173f30;width:40px;height:44px;padding:0;font-size:22px}
#drawer .qty>b{min-width:24px;text-align:center;font-size:16px}
#drawer .compactCartSummary{display:grid;gap:12px;padding:0;background:transparent;margin-top:20px}
#drawer .cartSummaryCell{display:flex;flex-direction:column;gap:7px;border:1px solid #ded8ca;border-radius:14px;background:#f7f3e9;padding:14px 16px;min-width:0;font-size:14px;font-weight:600}
#drawer .subtotalCell{flex-direction:row;justify-content:space-between;align-items:center;font-size:16px}
#drawer .subtotalCell b{font-size:22px}
#drawer .cartSummaryCell select,#drawer .cartSummaryCell input{width:100%;min-width:0;max-width:100%;box-sizing:border-box;background:#fffdf8;border:1px solid #d7d5ca;border-radius:8px;min-height:46px;padding:10px;color:#173f30;font:400 16px/1.4 Arial,sans-serif}
#drawer #startCheckout{width:100%;margin-top:4px;min-height:48px;font-size:16px;letter-spacing:0;text-transform:none}
#accountBody .accountWelcome{padding:14px 16px;margin:14px 0;border-radius:14px}
#accountBody .accountWelcome b,#accountBody .accountWelcome>span{display:block;line-height:1.5}
#accountBody .accountWelcome>span{font-size:14px;margin-top:3px}
#accountBody .orderCard h3{font-size:25px;line-height:1.25;margin:10px 0}
#accountBody h3.compactOrderRef,#adminOrderList h3.compactOrderRef{font:600 16px/1.4 Arial,sans-serif;margin:10px 0 2px;overflow-wrap:anywhere}
#accountBody .orderCard .btn{font-size:15px;min-height:46px;padding:12px 18px;letter-spacing:0;text-transform:none}
#accountBody .orderCard>p{font-size:16px;line-height:1.5;margin:10px 0 16px}
#accountBody .rewardsCard{margin-top:18px;padding:16px}
#accountBody .rewardsCard p,#accountBody .accountStorageNote{font-size:14px;line-height:1.5}
.compactItems{margin:14px 0}
.compactItem{min-width:0;font-size:16px;line-height:1.5;overflow-wrap:anywhere}
.compactItems>.compactItem+.compactItem{border-top:1px solid #e5dfd3;padding-top:16px;margin-top:16px}
.compactItemTitle{display:flex;align-items:baseline;gap:8px}
.compactItemTitle strong{font-family:Arial,sans-serif;font-size:17px;line-height:1.4;color:#243d30}
.itemCount{flex-shrink:0;color:#616c61;font-size:14px}
.itemChoices{display:flex;flex-wrap:wrap;gap:4px 14px;color:#60695f;font-size:14px;margin:5px 0 10px}
.nutritionCaption{font-size:13px;color:#60695f;margin:12px 0 6px}
.nutritionPills{display:flex;flex-wrap:wrap;gap:6px}
.nutritionPill{display:flex;gap:6px;align-items:center;padding:6px 10px;background:#eef2e9;border-radius:8px;color:#204735;font-size:13px}
.nutritionFoot{display:flex;flex-wrap:wrap;gap:5px 16px;margin-top:9px;font-size:13px;color:#60695f}
.itemDetails,.referenceDetails{font-size:13px;color:#60695f;margin:9px 0}
.itemDetails summary,.referenceDetails summary{cursor:pointer;min-height:28px;padding:4px 0;text-decoration:underline;text-underline-offset:3px}
.itemDetails p,.referenceDetails>span{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
#checkoutBody .reviewLine,#accountBody .reviewLine{gap:16px;align-items:flex-start;padding:14px 0}
#checkoutBody .reviewLine>.compactItem,#accountBody .reviewLine>.compactItem{flex:1}
#checkoutBody .reviewLine>b,#accountBody .reviewLine>b{white-space:nowrap;font-size:16px}
#accountBody .orderDetails{font-size:14px;line-height:1.6}
@media(max-width:480px){#drawer{padding:20px 18px}#drawer .cartRow{grid-template-columns:minmax(0,1fr)}#drawer .qty{justify-self:end;margin-top:0}#accountModal .accountPanel{padding:18px}#accountModal .accountPanel h2{font-size:34px}#accountBody .checkoutActions{flex-direction:column}#checkoutBody .reviewLine{gap:10px}.nutritionPill{padding:6px 8px}}

/* Account correction: scrolling must never put the header over navigation. */
#accountModal .accountPanel>div:first-child{position:static;top:auto;margin-top:0;padding:0 0 14px;min-height:0;gap:16px;background:transparent}
#accountModal .accountPanel{background-image:none!important;background:#fffaf2}
#accountModal .accountPanel h2{font-size:30px!important;line-height:1.15;margin:5px 0 0}
#accountModal .accountSectionLabel{margin:12px 0}
#accountBody .accountWelcome{background:transparent;padding:0;margin:14px 0 18px}
#accountBody .accountWelcome>span{font-size:14px;line-height:1.4}
#accountBody .orderCard{padding:16px;margin:12px 0}
#accountBody .orderCard .accountBadge{font-size:12px}
#accountBody .compactOrderRef{margin:8px 0 0}
#accountBody .referenceDetails{margin:0 0 10px;font-size:12px}
#accountBody .referenceDetails summary{padding:2px 0;min-height:24px;text-decoration:none}
#accountBody .compactItems{margin:12px 0}
#accountBody .compactItemTitle strong{font-size:16px;line-height:1.4}
#accountBody .itemChoices{display:block;margin:4px 0 10px;font-size:14px;line-height:1.5}
#accountBody .itemChoices>span+span:before{content:' · ';white-space:pre}
#accountBody .itemChoices>span:first-child{display:block}
#accountBody .itemChoices>span:nth-child(2):before{content:none}
#accountBody .nutritionCaption{margin:8px 0 6px;font-size:12px}
#accountBody .nutritionPills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#accountBody .nutritionPill{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:7px 9px;font-size:12px;border-radius:9px}
#accountBody .nutritionPill b{font-size:16px;line-height:1.4}
#accountBody .nutritionFoot{display:grid;gap:2px;margin-top:8px;font-size:12px}
#accountBody .itemDetails{margin:8px 0;font-size:13px}
#accountBody .itemDetails summary{padding:2px 0;text-decoration:none}
#accountBody .reorderLast,#accountBody .reorderFavs{width:100%;min-height:44px}
/* Match the supplied approved cart / My NẾP reference. */
#accountModal .accountPanel{max-width:460px;padding:22px}
#accountModal .accountPanel>div:first-child{border:0;padding-bottom:8px}
#accountModal .accountSectionLabel>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#accountModal .accountSectionLabel{margin:8px 0 18px}
#accountBody .accountWelcome{background:#eef2e9;border-radius:10px;padding:14px 16px;margin:0 0 14px}
#accountBody .accountWelcome b{font-size:16px}
#accountBody .accountWelcome>span{font-size:14px;margin-top:3px}
#accountBody .orderCard{border-radius:14px;padding:16px;margin:12px 0}
#accountBody .lastOrderMeta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 0 12px}
#accountBody .lastOrderMeta .compactOrderRef{font:400 14px/1.4 Arial,sans-serif;color:#6b716b;margin:0}
#accountBody .viewLastDetails{border:0;background:transparent;color:#173f30;padding:8px 0;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
#accountBody .compactItemTitle{justify-content:space-between;gap:10px;align-items:baseline}
#accountBody .compactItemTitle strong{order:0;font:600 21px/1.3 Georgia,serif}
#accountBody .compactItemTitle .itemCount{order:1;font-size:12px;white-space:nowrap}
#accountBody .nutritionCaption{border-top:1px solid #e4dfd3;padding-top:12px;font-weight:700;color:#263d30;margin:12px 0 8px}
#accountBody .nutritionPill{background:#f0f2e9;padding:9px 12px;min-width:0}
#accountBody .nutritionFoot{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #e4dfd3;padding-top:12px;margin-top:12px;align-items:center;font-size:13px}
#accountBody .nutritionFoot>span:first-child{display:flex;flex-direction:column;border-right:1px solid #e4dfd3}
#accountBody .nutritionFoot>span:last-child{padding-left:16px;color:#263d30}
#accountBody .nutritionFoot b{color:#263d30;font-size:14px}
#accountBody .reorderLast,#accountBody .browseAccountMenu{width:100%;border-radius:12px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;min-height:46px;margin-top:4px}
#accountBody .browseAccountMenu{background:transparent;color:#173f30;border:1px solid #173f30}
#accountBody .accountFullDetails,#accountBody .accountRewardsDetails{border:1px solid #e5dfd3;border-radius:12px;padding:12px 16px;margin:12px 0;font-size:14px;background:#fffdf8}
#accountBody .accountFullDetails>summary,#accountBody .accountRewardsDetails>summary{cursor:pointer;padding:4px 0;min-height:24px}
#drawer .cartRow{grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
#drawer .compactItemTitle strong{font-size:15px;line-height:1.4}
#drawer .qty{margin:0;align-self:start}
#drawer .qty button{width:32px;height:38px}
#drawer .qty>b{min-width:20px}
#drawer .cartSummaryCell{border:0;background:#f3efe4;padding:14px 16px}
#drawer .subtotalCell b{font-size:18px}
#drawer #startCheckout{font-size:13px;text-transform:uppercase;letter-spacing:.04em;border-radius:14px}
#drawer .cartCheckoutHint{display:block;text-align:center;font-size:12px;color:#687168;line-height:1.5;margin:0 8px}
@media(min-width:601px){#accountModal .accountSectionLabel{display:block}#accountModal .accountTabs{display:none}}
@media(max-width:360px){#accountModal .accountPanel{padding:16px}#accountBody .compactItemTitle strong{font-size:19px}#accountBody .nutritionPill{padding:8px}.nutritionPills{gap:4px}}
#accountModal .accountSectionLabel select{display:block;width:100%;min-height:44px;margin-top:0;padding:10px 12px;border:1px solid #d6ddcf;border-radius:10px;background:#fffdf8;color:#193e2d;font:400 16px/1.4 Arial,sans-serif}
/* Expanded details use the same readable hierarchy as the summary. */
.fullReferenceBlock{display:grid;gap:6px;margin:14px 0;padding-bottom:14px;border-bottom:1px solid #e5dfd3}
.fullReferenceBlock>span{font-size:12px;color:#697267}
.fullReferenceBlock code{display:block;font:12px/1.6 ui-monospace,monospace;color:#465749;overflow-wrap:anywhere;user-select:all}
.readableItemDetails{padding:12px 0;color:#263d30;font-size:14px;line-height:1.5}
.readableItemDetails+.readableItemDetails{border-top:1px solid #e5dfd3}
.detailItemHeading{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.detailItemHeading strong{font:600 18px/1.4 Georgia,serif}
.detailItemHeading>span{font-size:12px;white-space:nowrap;color:#667063}
.detailChoices{list-style:none;margin:8px 0 12px;padding:0;color:#667063;font-size:14px}
.detailChoices li{margin:4px 0}
.detailFacts{margin:0;padding:0}
.detailFacts>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:9px 0;border-top:1px solid #ebe5da;align-items:baseline}
.detailFacts dt{font-size:13px;color:#667063}
.detailFacts dd{margin:0;font-size:14px;font-weight:600;white-space:nowrap;text-align:right}
/* Approved tidy admin order cards; scoped away from customer screens. */
#adminOrderList .adminOrder{padding:20px;background:#fffdf8;border:1px solid #ded9cd;border-radius:16px;margin:16px 0;font-size:16px;line-height:1.5;min-width:0}
#adminOrderList .adminOrderHeading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:16px}
#adminOrderList .adminOrderHeading h3{margin:0;font-size:18px}
#adminOrderList .adminOrderBadge{background:#eef2e9;color:#204735;border-radius:8px;padding:5px 9px;font-size:14px}
#adminOrderList .adminOrderFacts{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:0;padding:0 0 18px;border-bottom:1px solid #e4dfd3}
#adminOrderList .adminOrderFacts>div{min-width:0}
#adminOrderList .adminOrderFacts dt{font-size:14px;color:#657066;margin-bottom:3px}
#adminOrderList .adminOrderFacts dd{margin:0;overflow-wrap:anywhere}
#adminOrderList .adminOrderWide{grid-column:1/-1}
#adminOrderList .adminOrderItems h4{font-size:14px;margin:16px 0 10px;color:#657066}
#adminOrderList .compactItem{padding:12px 0;border-bottom:1px solid #e4dfd3}
#adminOrderList .compactItemTitle{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
#adminOrderList .compactItemTitle strong{order:0;font:600 20px/1.35 Georgia,serif}
#adminOrderList .itemCount{order:1;white-space:nowrap;font-size:14px}
#adminOrderList .itemChoices{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:7px;font-size:14px;line-height:1.5}
#adminOrderList .nutritionCaption{font-size:14px;margin-top:12px}
#adminOrderList .nutritionPills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#adminOrderList .nutritionPill{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px;font-size:14px;min-width:0}
#adminOrderList .nutritionFoot{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14px}
#adminOrderList .nutritionFoot>span{display:flex;gap:6px;align-items:baseline}
#adminOrderList .adminOrderNotes{background:#f3f0e6;border-radius:10px;padding:12px;margin-top:14px;font-size:14px}
#adminOrderList .adminOrderNotes p{margin:4px 0 0;font-size:14px}
#adminOrderList .adminOrderTotal{display:flex;justify-content:space-between;gap:12px;margin:16px 0;font-size:18px}
#adminOrderList .adminOrderDetails{font-size:14px;margin:12px 0}
#adminOrderList .adminOrderDetails summary{cursor:pointer;padding:10px 0}
#adminOrderList .fullReferenceBlock code{display:block;overflow-wrap:anywhere;font-size:13px;margin:6px 0 14px}
#adminOrderList .orderActions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
#adminOrderList .orderActions .btn{flex:1 1 160px;min-height:44px;padding:12px;font-size:14px;line-height:1.4;letter-spacing:0}
#adminOrderList .orderEmailStatus p,#adminOrderList .orderFeedback{font-size:14px;margin:8px 0}
#adminOrderList .orderFeedback:empty{display:none}
@media(max-width:480px){#adminOrderList .adminOrder{padding:16px}#adminOrderList .adminOrderFacts{gap:12px}#adminOrderList .compactItemTitle strong{font-size:19px}}
/* Approved 70/30 landscape hero and larger readable logo subtitle. */
header nav{height:108px;min-height:108px}
header .logo{position:relative;justify-content:center;align-items:flex-start;height:102px;max-height:102px}
header .logo .buffaloLogo{clip-path:inset(0 0 12% 0)}
header .logo .logoKitchen{position:absolute;bottom:1px;left:0;width:100%;text-align:center;font:700 10.5px/1.2 Georgia,serif;letter-spacing:.1px;color:#b45735;white-space:nowrap}
.heroCarousel{--hero-image-height:clamp(160px,44.444vw,480px);padding-bottom:0}
.heroCarousel .nepSlides{height:var(--hero-image-height);aspect-ratio:auto}
.heroCarouselFooter{min-height:calc(var(--hero-image-height)*3/7);display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid #c7c6b5}
.heroCarouselFooter .carouselControls{min-height:32px}
.heroCarouselFooter .slideDot,.heroCarouselFooter #carouselPause{height:32px}
.heroCarouselFooter .heroCarouselCopy{width:100%;border:0;gap:18px;padding:2px 18px 10px;flex-wrap:nowrap}
.heroCarouselFooter .heroHeadline{font-size:clamp(15px,1.9vw,25px);line-height:1.3}
.heroCarouselFooter #orderNowHero{font-size:12px;min-height:36px;padding:8px 15px;letter-spacing:.3px}
@media(min-width:901px){header .logo .logoKitchen{font-size:12px}}
@media(max-width:380px){header .logo .logoKitchen{font-size:10px}.heroCarouselFooter .heroCarouselCopy{gap:10px;padding-inline:12px}.heroCarouselFooter .heroHeadline{font-size:14px}.heroCarouselFooter #orderNowHero{padding-inline:12px;font-size:11px}}

/* Owner-requested empty photo spaces on six Party dishes. */
.partyCatalog .partyProduct .partyPhoto.emptyPartyPhoto{background-image:none!important;background-color:var(--card,#fffaf1);cursor:default}

/* Owner-requested Daily catalog: compact plans and visible individual dishes. */
#daily:not([data-meal-step="0"]) #dailySingleOrders,#daily:not([data-meal-step="0"]) .dailyPlanHeading{display:none}
#daily[data-meal-step="0"] .mealFlowSteps,#daily[data-meal-step="0"] .mealFlowIntro{display:none}
#daily .dailySectionHeading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:24px 0 18px}
#daily .dailySectionHeading h2{font-size:32px;margin:4px 0;line-height:1.2}
#daily .dailySectionHeading p{max-width:440px;margin:0;color:#657066;font-size:16px;line-height:1.5}
#daily .planGrid{gap:14px}
#daily .planCard{padding:20px;display:flex;flex-direction:column;min-width:0}
#daily .planCard h3{font-size:26px;line-height:1.25;margin:12px 0}
#daily .planCard strong{font-size:30px;line-height:1.2}
#daily .planCard small{font-size:14px}
#daily .planCard .dailyPlanPortion{font-size:14px;line-height:1.5;color:#657066;margin:14px 0 18px}
#daily .planCard .btn{margin-top:auto;padding:12px 10px;font-size:14px}
#dailySingleOrders{margin-top:40px;padding-top:14px;border-top:1px solid #d8cbb7}
#daily .dailySingleGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#daily .dailySingleCard{background:#fffaf1;border:1px solid #d8cbb7;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
#daily .dailySingleCard>img{width:100%;aspect-ratio:4/3;object-fit:cover}
#daily .dailySingleCopy{padding:20px;display:flex;flex:1;flex-direction:column}
#daily .dailySingleCopy h3{font-size:24px;line-height:1.25;margin:0 0 10px}
#daily .dailyPortion{font-size:14px;color:#657066;line-height:1.5;overflow-wrap:anywhere}
#daily .dailySinglePrice{display:flex;align-items:baseline;gap:8px;margin:12px 0 18px}
#daily .dailySinglePrice strong{font-size:24px;color:#174b36}
#daily .dailySinglePrice span{font-size:14px;color:#657066}
#daily .dailySingleActions{display:flex;align-items:end;gap:12px;margin-top:auto}
#daily .dailySingleActions label{font-size:14px;display:grid;gap:5px;flex:0 0 80px}
#daily .dailySingleActions select{width:100%;min-height:44px;padding:8px;border:1px solid #cdbda5;border-radius:8px;background:#fffdf8;color:#174b36;font-size:16px}
#daily .dailySingleActions .btn{flex:1;min-height:44px;padding:12px;font-size:14px}
#dailySingleOrders .btn:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:900px){#daily .dailySingleGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#daily .dailySectionHeading{display:block}#daily .dailySectionHeading h2{font-size:28px}#daily .dailySectionHeading p{margin-top:10px}#daily .dailySingleGrid{grid-template-columns:minmax(0,1fr)}#daily .planCard{padding:16px}#daily .planCard h3{font-size:23px}#daily .planCard strong{font-size:26px}#daily .dailySingleCopy{padding:18px}#dailySingleOrders{margin-top:28px}}
/* Automatic Daily package savings, scoped to the Daily menu and cart. */
.dailyAutoNotice{padding:12px 16px;border-radius:12px;background:#edf2e9;color:#1d4433;font-size:14px;line-height:1.5;margin:12px 0}
.dailyAutoNotice[hidden]{display:none}
/* Approved scope: Daily menu and its one-page checkout. */
#daily.dailyOnePage .planGrid,#daily.dailyOnePage #dailySingleOrders,#daily.dailyOnePage .dailyPlanHeading{display:grid!important}
#daily.dailyOnePage .dailyBuilder,#daily.dailyOnePage .mealFlowSteps,#daily.dailyOnePage .mealFlowActions,#daily.dailyOnePage .mealFlowIntro,#daily.dailyOnePage .mealFlowTitle{display:none!important}
#dailyMenuCheckout{display:block;width:100%;max-width:520px;margin:16px auto 30px}
#dailyOrderStatus{color:#204d38;line-height:1.5}
.dailyCheckout .checkoutSteps{display:none}
.dailyCheckoutSection{padding:20px 0;border-bottom:1px solid #ded8cb}
.dailyCheckoutSection h3{font-size:24px;margin:0 0 16px}
.dailyCheckoutSection .checkoutGrid{gap:14px}
@media(max-width:600px){.dailyCheckoutSection .checkoutGrid{grid-template-columns:1fr}.dailyCheckoutSection .field{grid-column:1}.dailyCheckoutSection h3{font-size:22px}}

/* Owner-approved compact Daily plan design, October 1. */
#daily.dailyOnePage{padding:28px 0 20px;background:#fbf7ef!important}
#daily.dailyOnePage .splitHead{display:none}
#daily.dailyOnePage .dailyPlanHeading{gap:8px;margin:0 0 18px}
#daily.dailyOnePage .dailyPlanHeading h2{font-size:30px}
#daily.dailyOnePage .dailyPlanHeading p{max-width:none;font-size:14px}
#daily.dailyOnePage .dailyPlanHeading p:last-child{padding:12px 14px;background:#edf2e9;border-radius:10px;color:#204d38}
#daily.dailyOnePage .planGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:0}
#daily.dailyOnePage .planCard{padding:18px;gap:7px;border-radius:12px;background:#fffdf8;border:1px solid #ddd5c7;box-shadow:none;transform:none;color:#204332}
#daily.dailyOnePage .planCard>span{font-size:14px;letter-spacing:.06em;color:#a65b3c}
#daily.dailyOnePage .planCard h3{font:600 16px/1.3 Georgia,serif;margin:0 0 4px}
#daily.dailyOnePage .planCard strong{font:30px/1.15 Georgia,serif}
#daily.dailyOnePage .planCard small{font-size:14px;color:#657066}
#daily.dailyOnePage .planCard .dailyPlanPortion{font-size:14px;margin:4px 0 10px;line-height:1.4}
#daily.dailyOnePage .planCard .btn{min-height:44px;padding:10px 8px;background:transparent;color:#a55135;border:1px solid #b96648;border-radius:8px;font-size:14px;letter-spacing:0}
#daily.dailyOnePage .planCard.dailyBestValue{background:#eef2e9;border-color:#718c76}
#daily.dailyOnePage .dailySingleCard{border-radius:12px}
#daily.dailyOnePage .dailySingleCopy{padding:16px}
#daily.dailyOnePage .dailySingleCopy h3{font-size:21px;margin-bottom:6px}
#daily.dailyOnePage .dailySinglePrice{margin:8px 0 12px}
#daily.dailyOnePage .dailySinglePrice strong{font-size:20px}
body:has(#daily.active) .footer .supportNav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 16px}
body:has(#daily.active) .footer .supportNav button{background:transparent!important;color:#fffaf1!important;border:0!important;padding:10px 4px!important;min-height:44px;font-size:14px!important;border-radius:0}
@media(max-width:700px){#daily.dailyOnePage .planGrid{grid-template-columns:repeat(2,minmax(0,1fr))}#daily.dailyOnePage .planCard{padding:14px}#daily.dailyOnePage .planCard strong{font-size:26px}}
@media(max-width:340px){#daily.dailyOnePage .planGrid{grid-template-columns:1fr}}
/* Approved unified checkout: one form, explicit menu-bottom entry. */
.menuCheckout{display:block;width:100%;max-width:520px;margin:24px auto;min-height:48px}
.menuOrderStatus{color:#204332;line-height:1.5}
#previousCartNotice{background:transparent;padding:12px 0;border-top:1px solid #ddd7cb;border-bottom:1px solid #ddd7cb;font-size:14px}
#previousCartNotice summary,.checkoutPrevious summary,.checkoutNotes summary{cursor:pointer;padding:10px 0;min-height:44px;box-sizing:border-box}
#previousCartNotice .btn,.checkoutPrevious .btn{font-size:14px;min-height:44px;padding:10px 14px;margin:4px 4px 4px 0;border-radius:8px;background:transparent;color:#204332;border:1px solid #b9c4b8}
.dailyCheckout .checkoutPanel{width:min(680px,calc(100% - 24px));padding:24px;max-height:92dvh;overflow-y:auto;overscroll-behavior:contain}
.dailyCheckout .dailyCheckoutSection{padding:20px 0}
.dailyCheckout .dailyCheckoutSection h3{font:26px/1.2 Georgia,serif;margin-bottom:16px}
.dailyCheckout .checkoutGrid{gap:12px}
.dailyCheckout .field{font-size:14px}
.dailyCheckout input,.dailyCheckout select,.dailyCheckout textarea{border:1px solid #d4ccbd;border-radius:8px;padding:12px;background:#fffdf8;color:#204332;min-height:44px}
.checkoutItemRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;padding:14px 0;border-bottom:1px solid #ded8cb;align-items:start}
.checkoutItemRow> b{text-align:right;grid-column:2;font-size:16px}
.checkoutItemRow .compactItemTitle strong{font:600 18px/1.4 Georgia,serif}
.checkoutItemRow .itemCount{display:none}
.checkoutItemRow .itemChoices,.checkoutItemRow small,.checkoutItemRow .itemDetails{font-size:14px}
.checkoutItemRow .qty{display:flex;align-items:center;border:1px solid #d4ccbd;border-radius:10px;overflow:hidden}
.checkoutItemRow .qty button{min-width:40px;min-height:44px;background:transparent;border:0;color:#204332;font-size:22px}
.checkoutPrevious{font-size:14px;border-bottom:1px solid #ded8cb;padding:4px 0}
.checkoutBrowse{background:none;border:0;color:#a55135;text-decoration:underline;padding:12px 0;font-size:14px;min-height:44px}
.checkoutFulfilChoices{display:flex;gap:12px;margin-bottom:14px}
.checkoutFulfilChoices button{flex:1;background:#fffdf8;border:1px solid #204332;border-radius:8px;color:#204332;padding:12px;min-height:44px;font-size:16px}
.checkoutFulfilChoices button[aria-pressed=true]{background:#204332;color:#fffaf1}
.dailyCheckout .checkoutNotes{grid-column:1/-1;margin-top:10px;font-size:14px}
.dailyCheckout .notice{font-size:14px;line-height:1.5;padding:12px 14px;margin:12px 0}
.dailyCheckout .paymentChoice{margin:0 0 16px}
.dailyCheckout #paymentInstructions{font-size:14px;line-height:1.5}
.dailyCheckout .checkoutActions{display:block}
.dailyCheckout #placeOrder{width:100%;min-height:48px;border-radius:8px}
.dailyCheckout .reviewLine{font-size:16px;padding:8px 0}
@media(max-width:600px){.dailyCheckout .checkoutPanel{padding:18px;width:calc(100% - 16px)}.dailyCheckout .dailyCheckoutSection h3{font-size:23px}}

/* Approved Add confirmation: scoped to successful menu additions only. */
.nepAddConfirmed{position:relative!important;isolation:isolate;overflow:hidden;color:transparent!important}
.nepAddConfirmed::after{content:attr(data-add-feedback);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#1e4936;color:#fff;border-radius:inherit;font-size:14px;font-weight:700;letter-spacing:0;text-transform:none;pointer-events:none}
.nepAddConfirmed{animation:nepAddPress .22s ease-out}
@keyframes nepAddPress{50%{transform:scale(.95)}100%{transform:scale(1)}}
.addFeedback{position:fixed;z-index:10000;left:50%;bottom:calc(110px + env(safe-area-inset-bottom));transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);padding:14px 20px;border-radius:12px;background:#1e4936;color:#fff;box-shadow:0 5px 20px #102d2633;font-size:16px;line-height:1.45;pointer-events:none;text-align:center}
@media(min-width:900px){.addFeedback{bottom:28px}}
@media(prefers-reduced-motion:reduce){.nepAddConfirmed{animation:none}}

/* Owner-requested ingredient selection within the four portion cards. */
#builder .portionPanel{margin-top:0}
#builder .portionIngredient,#builder .portionWeight{display:flex;flex-direction:column;gap:8px;min-width:0}
#builder .portionIngredient select{font-size:16px;min-height:52px;max-width:100%;text-overflow:ellipsis}
#builder .portionIngredient b{color:var(--green);font-size:16px}
#builder .portionWeight>span{font-size:14px;color:var(--muted)}

/* Performance plans only: extend the approved cream/green ordering surface. */
#builder .performancePlans{margin:0 0 28px;color:#204332}
#builder .performancePlans h2{font-size:clamp(28px,4vw,40px);margin:0 0 12px}
#builder .performancePlans>p{max-width:75ch;font-size:16px;line-height:1.55}
#builder .performancePlanGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0 16px}
#builder .performancePlan{background:#fffaf1;border:1px solid #c9c9b8;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:10px;min-width:0}
#builder .performancePlan>span{color:#a15b3e;font-size:14px;font-weight:700;letter-spacing:.08em}
#builder .performancePlan h3{font-size:25px;line-height:1.2;overflow-wrap:anywhere;margin:0}
#builder .performancePlan>strong{font:32px/1.25 Georgia,serif;margin-top:auto}
#builder .performancePlan small{font-size:14px;color:#626b60}
#builder .performancePlan button{width:100%;min-height:44px;margin-top:8px;padding:12px 8px;font-size:16px;white-space:normal}
#builder .performancePlan button[aria-pressed=true]{background:#204332;color:#fffaf1;border-color:#204332}
#builder .performanceQuantity{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0;font-size:16px;color:#204332}
#builder .performanceQuantity select{background:#fffaf1;color:#204332;border:1px solid #bdc6b5;border-radius:10px;padding:12px;min-height:44px;width:100px;font-size:16px}
#builder .portionPanel{scroll-margin-top:180px}
@media(max-width:800px){#builder .performancePlanGrid{grid-template-columns:repeat(2,minmax(0,1fr))}#builder .performancePlan{padding:16px}#builder .performancePlan h3{font-size:22px}}
@media(max-width:360px){#builder .performancePlanGrid{grid-template-columns:1fr}}

/* Selected Performance meals remain editable before explicit checkout. */
#builder .performanceSelected{margin:28px 0;padding:24px;border:1px solid #c9c9b8;border-radius:16px;background:#fffaf1;color:#204332}
#builder .performanceSelected h2{font-size:clamp(26px,4vw,36px);margin:0 0 16px}
#builder .performanceSelectedRow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid #ded9cd}
#builder .performanceSelectedRow h3{font-size:23px;line-height:1.3;margin:0 0 8px;overflow-wrap:anywhere}
#builder .performanceSelectedRow p{font-size:16px;line-height:1.55;margin:0 0 8px;overflow-wrap:anywhere}
#builder .performanceSelected small{font-size:14px;line-height:1.5;color:#626b60}
#builder .performanceSelected .qty button{min-width:44px;min-height:44px;font-size:24px}
#builder .performanceSelectedTotals{padding-top:16px}
#builder .performanceSelectedTotal{display:flex;justify-content:space-between;gap:16px;font-size:20px;font-weight:700}
@media(max-width:520px){#builder .performanceSelected{padding:18px}#builder .performanceSelectedRow{grid-template-columns:1fr;gap:12px}#builder .performanceSelectedRow .qty{justify-self:start}}

/* Owner inventory workspace only. */
#inventoryAdmin .wrap{max-width:1120px;padding-bottom:80px}
#inventoryAdmin .invToolbar,#inventoryAdmin .invActions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}
#inventoryAdmin button{min-height:44px;padding:10px 16px;border:1px solid #b6c4b6;border-radius:9px;background:#fffaf1;color:#204332;font:inherit;cursor:pointer}
#inventoryAdmin button.btn{background:#204332;color:#fffaf1}
#inventoryAdmin button:disabled{opacity:.5;cursor:default}
#inventoryAdmin .invFilters,#inventoryAdmin .invFormGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}
#inventoryAdmin label{display:flex;flex-direction:column;gap:8px;font-weight:600}
#inventoryAdmin input,#inventoryAdmin select{width:100%;box-sizing:border-box;min-height:46px;background:#fffdf8;border:1px solid #bec6b8;border-radius:8px;padding:10px;color:#204332;font:inherit}
#inventoryAdmin [data-editor]{padding:24px;background:#eeeede;border:1px solid #b6c4b6;border-radius:12px;scroll-margin-top:180px}
#inventoryAdmin [hidden]{display:none!important}
#inventoryAdmin .invItem{padding:22px;border:1px solid #d9d6c7;border-radius:14px;margin:16px 0;display:grid;grid-template-columns:2fr 1fr;gap:12px;background:#fffdf8}
#inventoryAdmin .invItem h3{font-size:25px;margin:0 0 10px;overflow-wrap:anywhere}
#inventoryAdmin .invItem p{font-size:15px;line-height:1.5;margin:6px 0;overflow-wrap:anywhere}
#inventoryAdmin .invQuantity{font-size:25px;color:#204332}
#inventoryAdmin .invActions{grid-column:1/-1;margin:4px 0 0}
#inventoryAdmin .invBadge{display:inline-block;background:#eef1e6;padding:5px 10px;border-radius:6px;font-size:14px}
#inventoryAdmin .invAlert{color:#884124;background:#f8e7d4}
#inventoryAdmin .invEvent{border-bottom:1px solid #d9d6c7;padding:16px 0;overflow-wrap:anywhere}
#inventoryAdmin .invEvent summary{cursor:pointer;min-height:30px}
#inventoryAdmin pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}
@media(max-width:650px){#inventoryAdmin .invFilters,#inventoryAdmin .invFormGrid,#inventoryAdmin .invItem{grid-template-columns:1fr}#inventoryAdmin [data-editor]{padding:16px}}

/* Revenue workspace: read-only financial summaries, isolated from storefront. */
#revenueAdmin .wrap{max-width:1180px;padding-bottom:80px}
#revenueAdmin .revFilters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#revenueAdmin label{display:flex;flex-direction:column;gap:8px;font-weight:600}
#revenueAdmin input,#revenueAdmin select,#revenueAdmin button{box-sizing:border-box;min-height:44px;border:1px solid #bdc5b5;border-radius:8px;padding:10px 14px;background:#fffaf1;color:#204332;font:inherit}
#revenueAdmin input,#revenueAdmin select{width:100%}
#revenueAdmin button{cursor:pointer}
#revenueAdmin button.btn{background:#204332;color:#fffaf1}
#revenueAdmin button:disabled{opacity:.5;cursor:default}
#revenueAdmin .revActions{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:18px 0}
#revenueAdmin .revReal{padding:24px;background:#204332;color:#fffaf1;border-radius:14px;margin:24px 0}
#revenueAdmin .revReal strong{display:block;font-size:34px;margin-top:8px}
#revenueAdmin .revReal p{color:inherit;margin-bottom:0}
#revenueAdmin .revMetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
#revenueAdmin .revMetrics article{border:1px solid #d9d4c7;border-radius:12px;padding:20px;background:#fffdf8;min-width:0}
#revenueAdmin .revMetrics span{display:block;font-size:15px;line-height:1.5}
#revenueAdmin .revMetrics strong{display:block;font-size:25px;margin-top:8px;overflow-wrap:anywhere}
#revenueAdmin h2{font-size:28px;margin:30px 0 16px}
#revenueAdmin .revTable{overflow-x:auto;border:1px solid #d9d4c7;border-radius:10px}
#revenueAdmin table{width:100%;border-collapse:collapse;font-size:15px}
#revenueAdmin th,#revenueAdmin td{padding:12px;text-align:left;border-bottom:1px solid #e3dfd4;white-space:nowrap}
#revenueAdmin th{background:#eaf0e3;color:#204332}
@media(max-width:650px){#revenueAdmin .revFilters{grid-template-columns:1fr}#revenueAdmin .revMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}#revenueAdmin .revMetrics article{padding:14px}#revenueAdmin .revMetrics strong{font-size:22px}}
@media(max-width:350px){#revenueAdmin .revMetrics{grid-template-columns:1fr}}

/* Promotions: scoped owner tools and optional checkout code. */
#promotionsAdmin .wrap{max-width:1000px;padding-bottom:140px}
#promotionsAdmin .promoGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#promotionsAdmin label{display:block;font-weight:600}
#promotionsAdmin input:not([type=checkbox]),#promotionsAdmin select,.checkoutPromotion input{width:100%;min-width:0;padding:12px;border:1px solid #c9c6b9;border-radius:10px;background:#fffdf8;font:inherit;color:#214735;box-sizing:border-box}
#promotionsAdmin .promoEditor,#promotionsAdmin .promoList article{padding:20px;margin:20px 0;border:1px solid #c9c6b9;border-radius:16px;background:#fffdf8}
#promotionsAdmin .promoCheck{display:flex;gap:12px;align-items:center;margin-top:18px}
#promotionsAdmin .promoCheck input{width:20px;height:20px}
#promotionsAdmin .promoControls,.checkoutPromotion .promoControls{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
#promotionsAdmin button,.checkoutPromotion button{min-height:44px;padding:10px 16px;border:1px solid #214735;border-radius:10px;color:#214735;background:#fffdf8;font:inherit;cursor:pointer}
#promotionsAdmin button.btn{background:#214735;color:white}
.checkoutPromotion{padding-bottom:14px}.checkoutPromotion label{display:block;margin-bottom:8px;font-weight:600}.checkoutPromotion input{flex:1 1 130px}.checkoutPromotion p{font-size:.9em;margin:8px 0}.checkoutPromotion button:disabled{opacity:.6}
@media(max-width:520px){#promotionsAdmin .promoGrid{grid-template-columns:1fr}}
