/* Cooking goals appear only when chosen, outside the moving world. */
.world-pane.has-active-recipe{grid-template-rows:auto minmax(0,1fr) auto auto}
.eden-recipe-goal{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 18px;background:#fff8e2;border-top:1px solid #e6d7a9;color:#39583a;min-width:0}
.eden-recipe-goal[hidden]{display:none!important}
.recipe-goal-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.recipe-goal-kicker{font-size:11px;letter-spacing:1px;font-weight:800;color:#8b6b35}
.recipe-goal-copy>strong{font-size:17px;line-height:1.25}
#recipe-goal-status{font-size:14px;line-height:1.4}
#recipe-goal-progress{width:100%;max-width:300px;height:6px;border:0;border-radius:6px;overflow:hidden;accent-color:#5e934b}
#recipe-goal-progress::-webkit-progress-bar{background:#e8e6c7}
#recipe-goal-progress::-webkit-progress-value{background:#6c9b4f;transition:width .35s}
.recipe-goal-actions{display:flex;align-items:center;gap:7px;max-width:56%}
.recipe-goal-actions button{min-height:44px;border:1px solid #d6dfbb;background:#f3f2df;border-radius:11px;color:#36583b;padding:9px 11px;font-size:14px;line-height:1.3;font-weight:750}
.recipe-goal-actions .recipe-goal-next{background:#366844;color:#fffdeb;border-color:#366844}
.recipe-goal-actions button:hover{filter:brightness(1.05)}
#recipe-goal-stop{font-size:25px;min-width:44px;padding:5px}
.eden-recipe-goal.is-complete{background:#e9f3dc}
.recipe-celebrate .recipe-goal-kicker::after{content:' ✦';display:inline-block;color:#bc8231;animation:recipe-sparkle 1s ease-out 2}
@keyframes recipe-sparkle{0%{transform:scale(.3) rotate(0)}50%{transform:scale(1.8) rotate(100deg)}100%{transform:scale(1) rotate(180deg)}}
.eden-recipe-library{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:22px 0}
.eden-recipe-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:15px;border:1px solid #e1dbc3;border-radius:19px;background:#f4edda;color:#35553b;min-width:0;transition:transform .18s,background .18s}
.eden-recipe-card:hover{transform:translateY(-3px);background:#f9e9c7}
.recipe-card-art{display:flex;align-items:center;justify-content:center;min-height:82px;width:100%;border-radius:13px;background:#fff9efb3;margin-bottom:9px}
.recipe-card-art img{width:61px;height:68px;object-fit:contain;margin-inline:-3px;transform:rotate(-7deg)}
.recipe-card-art img:nth-child(2){transform:translateY(-6px) rotate(6deg)}
.recipe-card-art img:nth-child(3){transform:rotate(9deg)}
.eden-recipe-card>strong{font-size:19px;line-height:1.25;margin-bottom:7px}
.eden-recipe-card>span:not(.recipe-card-art){font-size:14px;color:#65744d;margin-bottom:9px}
.eden-recipe-card>small{font-size:13px;line-height:1.4;margin-top:auto}
.recipe-tone-tomato{background:#f7e5d9}.recipe-tone-green{background:#e9eed8}.recipe-tone-mango{background:#f8efd2}.recipe-tone-apple{background:#eeead9}.recipe-tone-pumpkin{background:#f4e7d1}
.eden-story-body .recipe-soft-note{font-size:14px;line-height:1.55;color:#687456;margin:12px 0}
.recipe-chef-tip{margin:19px 0 24px;padding:16px 19px;border-left:4px solid #9bbd6a;border-radius:0 14px 14px 0;background:#eef2dc;font-size:17px;line-height:1.5}
.recipe-chef-tip>span{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#658141;margin-bottom:7px}
.eden-story-body h3{font-size:21px;line-height:1.3;margin:24px 0 10px;color:#35553b}
.recipe-ingredients{list-style:none;padding:0;margin:17px 0;display:flex;flex-direction:column;gap:10px}
.recipe-ingredients li{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid #e4e6d2}
.recipe-ingredients img{width:52px;height:58px;object-fit:contain;flex:none}
.recipe-ingredients li>div{min-width:0;flex:1}
.recipe-ingredients strong,.recipe-ingredients span,.recipe-ingredients small,.recipe-ingredients b{display:block}
.recipe-ingredients strong{font-size:17px;line-height:1.35}
.recipe-ingredients div>span{font-size:15px;line-height:1.45;margin-top:4px}
.recipe-ingredients small{font-size:14px;line-height:1.5;color:#6c755d;margin-top:4px}
.recipe-ingredients b{font-size:13px;line-height:1.5;color:#8b663c;margin-top:5px}
.recipe-ingredients b.is-ready{color:#3e7b43}
.recipe-ingredients button{flex:none;min-height:44px;padding:9px 11px;border:1px solid #d6e0bb;background:#edf1df;border-radius:11px;color:#3a623c;font-size:14px;font-weight:750}
.recipe-budget{display:flex;flex-direction:column;gap:7px;background:#f6edd7;border-radius:13px;padding:15px;font-size:16px}
.recipe-budget>span{display:flex;justify-content:space-between;gap:12px}
.recipe-budget small{font-size:13px;line-height:1.5;color:#756e54;margin-top:5px}
.recipe-pantry{margin-top:24px;padding:1px 18px 17px;background:#f0f2e4;border-radius:14px}
.recipe-pantry p{margin:0;font-size:17px;line-height:1.55}
.recipe-pantry small{display:block;font-size:13px;line-height:1.5;margin-top:9px;color:#6c7759}
.recipe-method{padding-left:26px;font-size:17px;line-height:1.6}
.recipe-method li{padding-left:5px;margin:13px 0}
.recipe-method li::marker{font-weight:800;color:#829957}
.recipe-allergens{font-size:14px;line-height:1.5;color:#6d725c}
.recipe-quick-start{display:flex;flex-direction:column;gap:5px;padding:16px;background:#edf2dc;border:1px solid #dae2bc;border-radius:15px;font-size:17px;margin:17px 0}
.recipe-quick-start>small{font-size:13px;line-height:1.45;color:#66754e}
.recipe-quick-start .eden-story-button{flex:none;width:100%;margin:8px 0}
.recipe-cooking{margin:25px 0 18px;border:1px solid #d8dfc2;border-radius:13px;padding:14px 16px;background:#f7f8eb}
.recipe-cooking>summary{font-size:18px;font-weight:750;cursor:pointer;color:#3a593c;min-height:28px;line-height:1.5}
@media(max-width:700px){.eden-recipe-goal{padding:11px 12px;gap:10px;flex-wrap:wrap}.recipe-goal-copy{flex-basis:100%}.recipe-goal-copy>strong{font-size:16px}.recipe-goal-actions{max-width:none;width:100%;gap:7px}.recipe-goal-next{flex:1}.recipe-goal-actions button{font-size:14px}.recipe-goal-copy{gap:3px}#recipe-goal-progress{max-width:none}.recipe-goal-kicker{display:none}}
@media(max-width:450px){.eden-recipe-library{gap:10px}.eden-recipe-card{padding:12px}.eden-recipe-card>strong{font-size:17px}.recipe-card-art{min-height:67px}.recipe-card-art img{width:49px;height:57px}.recipe-card-art img:nth-child(3){display:none}.recipe-ingredients li{flex-wrap:wrap;gap:9px}.recipe-ingredients img{width:42px;height:49px}.recipe-ingredients li>div{min-width:calc(100% - 60px)}.recipe-ingredients button{margin-left:51px}.recipe-budget{font-size:15px}}
@media(max-height:600px) and (orientation:landscape){.eden-recipe-goal{padding:7px 12px;flex-wrap:nowrap;gap:10px}.recipe-goal-copy{flex-basis:auto}.recipe-goal-actions{max-width:57%;width:auto}.recipe-goal-kicker,#recipe-goal-progress{display:none}.recipe-goal-copy>strong{font-size:14px}#recipe-goal-status{font-size:12px}.recipe-goal-actions button{font-size:13px;min-height:40px}}
@media(max-height:500px) and (max-width:1020px) and (orientation:landscape){.eden-immersive .world-pane.has-active-recipe{grid-template-rows:minmax(0,1fr) auto}}
/* A compact cookbook: categories stay easy to scan, portions stay near the first action. */
.recipe-library-tools{margin:20px 0 8px}
.recipe-categories{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.recipe-categories button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:10px 13px;border:1px solid #d2ddbc;border-radius:13px;background:#f1f3e3;color:#34573b;font:inherit;font-size:15px;font-weight:750;line-height:1.3;cursor:pointer}
.recipe-categories button[aria-pressed="true"]{background:#356744;border-color:#356744;color:#fffdec;box-shadow:0 3px 0 #22482b}
.recipe-categories button small{display:inline-grid;place-items:center;min-width:23px;height:23px;padding:0 4px;border-radius:8px;background:#ffffff33;font-size:12px}
.recipe-categories button:hover{filter:brightness(1.05)}
.recipe-search-label{display:block;font-size:17px;line-height:1.4;font-weight:750;color:#36563c;margin-bottom:7px}
#recipe-library-search{display:block;width:100%;min-height:49px;border:1px solid #cdd8b8;border-radius:12px;padding:11px 14px;font:inherit;font-size:17px;color:#2f5135;background:#fffdf3;box-sizing:border-box}
#recipe-library-search::placeholder{color:#727c64;opacity:1}
.eden-story-body .recipe-results-count{font-size:14px;font-weight:650;line-height:1.4;margin:12px 0 0;color:#66754d}
.recipe-empty{grid-column:1/-1;padding:24px 18px;border-radius:16px;background:#f0f2e3;text-align:center;font-size:17px;line-height:1.5}
.recipe-empty .eden-story-button{min-height:46px}
.recipe-portions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:20px 0 14px;padding:17px;border:1px solid #cddcb4;border-radius:16px;background:#f5f4df}
.recipe-portions>div:first-child{flex:1;min-width:180px}
.recipe-portions label{display:block;font-size:18px;line-height:1.35;font-weight:800;color:#35593b}
.recipe-portions>div>span{display:block;font-size:14px;line-height:1.45;color:#65784e;margin-top:5px}
.recipe-portion-controls{display:flex;align-items:center;gap:7px}
.recipe-portion-controls button{width:46px;height:46px;border:1px solid #bacda5;border-radius:11px;font-size:25px;line-height:1;background:#fffdf1;color:#365a3a;font-weight:700;cursor:pointer}
.recipe-portion-controls button:disabled{opacity:.42;cursor:default}
#recipe-portions-input{width:64px;height:46px;border:1px solid #bacda5;border-radius:11px;padding:6px;text-align:center;background:#fffdf1;color:#365a3a;font:inherit;font-size:20px;font-weight:800;box-sizing:border-box;appearance:textfield;-moz-appearance:textfield}
#recipe-portions-input::-webkit-inner-spin-button,#recipe-portions-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.recipe-portion-result{width:100%;font-size:14px;font-weight:650;color:#65744d;line-height:1.45;border-top:1px solid #dce2c5;padding-top:10px}
.recipe-categories button:focus-visible,#recipe-library-search:focus-visible,.recipe-portion-controls button:focus-visible,#recipe-portions-input:focus-visible{outline:3px solid #bb853a;outline-offset:3px}
.recipe-goal-actions .recipe-goal-next{overflow-wrap:anywhere}
.eden-recipe-card>small{font-size:14px}
.recipe-ingredients b{font-size:14px}
.recipe-cooking>summary{min-height:44px;display:list-item;padding-block:7px;box-sizing:border-box}
@media(max-width:450px){.recipe-categories{gap:7px}.recipe-categories button{font-size:14px;padding:9px 10px;flex-grow:1}.recipe-categories button:first-child{flex-basis:100%}.recipe-portions{padding:15px;gap:13px}.recipe-portions>div:first-child{min-width:100%;}.recipe-portion-controls{width:100%;justify-content:space-between}.recipe-portion-controls button{width:54px;height:48px}#recipe-portions-input{flex:1;max-width:140px;height:48px}.eden-recipe-card>strong{font-size:18px;line-height:1.3}.eden-recipe-library{margin-top:15px}}
/* Several dishes share one shopping goal. Selection and opening a recipe are separate controls. */
.eden-recipe-card{padding:0;overflow:hidden;align-items:stretch;transition:border-color .18s,background .18s}
.eden-recipe-card:hover{transform:none}
.eden-recipe-card.is-selected{border:2px solid #4e7950;box-shadow:0 0 0 2px #d6e5c5}
.recipe-card-open{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;width:100%;padding:15px;border:0;background:none;color:inherit;text-align:left;font:inherit;cursor:pointer}
.recipe-card-open>strong{font-size:19px;line-height:1.35}
.recipe-card-open>span:not(.recipe-card-art){font-size:14px;color:#65744d}
.recipe-card-open>small{font-size:14px;line-height:1.4;margin-top:auto}
.recipe-card-open:hover .recipe-card-art img{transform:translateY(-5px) rotate(4deg)}
.recipe-card-art img{transition:transform .2s}
.recipe-card-select{display:block;margin:0 12px 12px;min-height:46px;border:1px solid #b8cc9c;border-radius:11px;background:#f8f9e9;color:#355c3b;padding:10px 8px;font:inherit;font-size:15px;line-height:1.35;font-weight:750;cursor:pointer}
.recipe-card-select[aria-pressed="true"]{background:#386844;border-color:#386844;color:#fffceb}
.recipe-plan-bar{position:sticky;top:64px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:13px;padding:16px;border:1px solid #cbd9b3;border-radius:15px;background:#edf2dd;margin:18px 0;box-shadow:0 4px 12px #344b2220}
.recipe-plan-bar>div{min-width:0;flex:1}
.recipe-plan-bar strong{display:block;font-size:18px;line-height:1.35}
.recipe-plan-bar span{display:block;font-size:15px;line-height:1.5;margin-top:5px}
.recipe-plan-bar .eden-story-button{flex:none;min-width:115px}
.recipe-cooking-link{min-height:44px;padding:9px 5px;border:0;background:none;color:#375e3e;font:inherit;font-size:16px;line-height:1.4;font-weight:750;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.recipe-portion-controls input{width:64px;height:46px;border:1px solid #bacda5;border-radius:11px;padding:6px;text-align:center;background:#fffdf1;color:#365a3a;font:inherit;font-size:20px;font-weight:800;box-sizing:border-box;appearance:textfield;-moz-appearance:textfield}
.recipe-portion-controls input::-webkit-inner-spin-button,.recipe-portion-controls input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.recipe-plan-overview{padding:18px;border:1px solid #ccdbad;border-radius:17px;background:#edf2dc;display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.recipe-plan-overview>strong{font-size:20px;line-height:1.35}
.eden-story-body .recipe-plan-overview>p{font-size:16px;line-height:1.5;margin:0}
.recipe-plan-overview>progress{width:100%;height:9px;accent-color:#4d7847}
.recipe-plan-overview>small{font-size:14px;line-height:1.5;color:#5b6e4a}
.recipe-plan-cost{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:10px 0}
.recipe-plan-cost>span{font-size:15px;line-height:1.5}
.recipe-plan-cost b{display:block;color:#2c5736;font-size:24px;line-height:1.3}
.recipe-plan-overview .eden-story-button{width:100%;flex:none}
.recipe-plan-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0}
.eden-story-body .recipe-plan-section-heading h3{margin:0}
.recipe-plan-section-heading .eden-story-button{font-size:15px;flex:none}
.recipe-plan-dishes{padding:0;list-style:none;display:flex;flex-direction:column;gap:13px;margin:0 0 25px}
.recipe-plan-dish{padding:16px;border:1px solid #d4ddbd;border-radius:16px;background:#f5f2df}
.recipe-plan-dish-heading{display:flex;align-items:center;gap:11px}
.recipe-plan-dish-heading>img{width:48px;height:54px;object-fit:contain;flex:none}
.recipe-plan-dish-heading>div{min-width:0;flex:1}
.recipe-plan-dish-heading strong{display:block;font-size:18px;line-height:1.4}
.recipe-plan-dish-heading>div>span{display:block;font-size:14px;color:#63734d;line-height:1.4;margin-top:5px}
.recipe-plan-remove{min-width:44px;width:44px;height:44px;border:1px solid #dacfb6;border-radius:11px;background:#fffbef;color:#775735;font-size:27px;line-height:1;cursor:pointer}
.recipe-plan-dish-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;padding-top:13px;border-top:1px solid #dee1c9}
.recipe-plan-portions-label{font-size:16px;font-weight:750;color:#3d5d3b}
.recipe-plan-dish-actions>.recipe-cooking-link{margin-left:auto}
.recipe-contributions{margin-top:7px}
.recipe-contributions>summary{min-height:44px;padding:10px 0;box-sizing:border-box;font-size:14px;font-weight:700;line-height:1.5;color:#537447;cursor:pointer}
.recipe-ingredients .recipe-contributions ul{padding-left:17px;margin:0}
.recipe-ingredients .recipe-contributions li{display:list-item;padding:0;margin:0 0 7px;border:0;font-size:14px;line-height:1.5;color:#687454}
.recipe-ingredients .recipe-contributions strong{display:inline;font-size:inherit;color:#3c5d3b}
.recipe-ingredients [hidden]{display:none!important}
.recipe-plan-pantry{border:1px solid #d6ddc4;border-radius:14px;padding:14px 17px;background:#f2f4e5;margin:24px 0}
.recipe-plan-pantry>summary{min-height:44px;padding:8px 0;box-sizing:border-box;font-size:18px;font-weight:750;line-height:1.5;color:#37583c;cursor:pointer}
.recipe-plan-pantry section{border-top:1px solid #dce2cb;padding-top:13px;margin-top:16px}
.recipe-plan-pantry h4{font-size:16px;line-height:1.4;margin:0 0 8px;color:#3d5a3c}
.eden-story-body .recipe-plan-pantry section>p{font-size:15px;line-height:1.6;margin:0}
.recipe-clear-plan{min-height:44px;padding:10px 0;border:0;background:none;color:#72573b;text-decoration:underline;text-underline-offset:4px;font:inherit;font-size:15px;cursor:pointer}
.recipe-empty-icon{display:block;font-size:40px;margin-bottom:13px}
.recipe-card-open:focus-visible,.recipe-card-select:focus-visible,.recipe-cooking-link:focus-visible,.recipe-plan-remove:focus-visible,.recipe-clear-plan:focus-visible,.recipe-portion-controls input:focus-visible,.recipe-contributions>summary:focus-visible,.recipe-plan-pantry>summary:focus-visible{outline:3px solid #bb853a;outline-offset:3px}
.recipe-celebrate .recipe-goal-copy>strong::after{content:' ✦';display:inline-block;color:#bc8231;animation:recipe-sparkle 1s ease-out 2}
@media(max-width:450px){
  .recipe-card-open{padding:12px;gap:7px}.recipe-card-open>strong{font-size:18px}.recipe-card-select{margin:0 8px 10px;font-size:14px;min-height:48px}.recipe-plan-bar{padding:11px;gap:9px}.recipe-plan-bar strong{display:none}.recipe-plan-bar span{font-size:14px;margin:0;line-height:1.4}.recipe-plan-bar .eden-story-button{min-width:100px;padding-inline:10px;font-size:16px;min-height:46px}
  .recipe-plan-overview{padding:15px}.recipe-plan-section-heading{align-items:stretch;flex-direction:column}.recipe-plan-section-heading .eden-story-button{align-self:flex-start}
  .recipe-plan-dish{padding:13px}.recipe-plan-dish-heading{gap:8px}.recipe-plan-dish-heading>img{width:40px;height:46px}.recipe-plan-dish-heading strong{font-size:17px}.recipe-plan-dish-heading>div>span{font-size:14px}
  .recipe-plan-dish-actions{gap:8px}.recipe-plan-dish-actions .recipe-portion-controls{width:auto;flex:1;justify-content:flex-end}.recipe-plan-dish-actions .recipe-portion-controls button{width:44px;min-width:44px;height:46px}.recipe-plan-dish-actions .recipe-portion-controls input{width:58px;height:46px;min-width:0}
  .recipe-plan-dish-actions>.recipe-cooking-link{margin-left:0;width:100%;text-align:left}.recipe-plan-cost b{font-size:22px}.recipe-plan-pantry{padding:12px 14px}
}
@media(max-width:340px){.recipe-card-open>strong{font-size:17px}.recipe-card-select{font-size:14px;padding-inline:6px}.recipe-plan-dish-heading>img{display:none}.recipe-plan-portions-label{font-size:15px}}
@media(max-width:600px){.recipe-plan-bar{top:59px}}
@media(max-height:500px) and (orientation:landscape){.recipe-plan-bar{top:55px;padding:9px 12px}.recipe-plan-bar strong{display:none}.recipe-plan-bar span{margin:0}.recipe-plan-bar .eden-story-button{min-height:44px}}
