
/* Meal previews stay above cooking tools; cooking mode keeps the instructions clear. */
.recipe-head.has-photo{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,390px);gap:20px 42px}
.recipe-head.has-photo>div:first-child{grid-column:1;grid-row:1}
.recipe-head.has-photo>.recipe-picker{grid-column:1;grid-row:2;max-width:300px}
.recipe-photo{grid-column:2;grid-row:1/span 2;align-self:center;margin:0;min-width:0}
.recipe-photo[hidden]{display:none}
.meal-photo-frame{position:relative;isolation:isolate;overflow:hidden;border-radius:14px;background:#2e3327;aspect-ratio:3/2;box-shadow:0 8px 30px #263a2d10}
.meal-photo-frame>img{display:block;width:100%;height:100%;object-fit:cover}
.recipe-photo>figcaption{font-size:10px;line-height:1.5;color:var(--muted);padding-top:8px;text-align:right}
.meal-steam{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;display:none}
.has-steam .meal-steam{display:block}
.steam-wisp{opacity:0;transform-origin:50% 80%;animation:meal-steam-rise var(--steam-duration,7s) var(--steam-delay,0s) linear infinite;animation-play-state:paused;will-change:transform,opacity}
.steam-running .steam-wisp{animation-play-state:running}
.steam-toggle{position:absolute;right:10px;bottom:10px;border:1px solid #ffffff3b;border-radius:30px;background:#1e291dc9;color:#fffefa;backdrop-filter:blur(8px);font-size:10px;padding:7px 11px}
.steam-toggle:disabled{opacity:.8;cursor:default}
.steam-toggle[hidden]{display:none}
@keyframes meal-steam-rise{
 0%{opacity:0;transform:translate(-5px,15px) scale(.88,1)}
 20%{opacity:.15}
 50%{opacity:.26;transform:translate(7px,-23px) scale(1.06,1.08)}
 80%{opacity:.12}
 100%{opacity:0;transform:translate(-12px,-65px) scale(1.3,1.16)}
}
.meal-thumbnail{position:relative;width:calc(100% + 40px);margin:-20px -20px 16px;aspect-ratio:3/2;overflow:hidden;border-radius:11px 11px 0 0;background:#2e3327}
.meal-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
.meal-thumbnail figcaption{position:absolute;right:8px;bottom:8px;border-radius:4px;padding:3px 6px;background:#1e291dbf;color:white;font-size:9px;line-height:1.4}
.catalog-photo-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.photo-filter[aria-pressed=true]{background:var(--light);border-color:var(--green)}
body.cooking .recipe-photo{display:none}
body.cooking .recipe-head.has-photo{display:flex}
@media(max-width:800px){.recipe-head.has-photo{grid-template-columns:minmax(0,1fr) minmax(250px,330px);gap:20px 24px}}
@media(max-width:620px){
 .recipe-head.has-photo{grid-template-columns:1fr;gap:20px}
 .recipe-head.has-photo>div:first-child{grid-column:1;grid-row:1}
 .recipe-photo{grid-column:1;grid-row:2;width:100%}
 .recipe-head.has-photo>.recipe-picker{grid-column:1;grid-row:3;max-width:none}
 .recipe-photo>figcaption{text-align:left}
}
@media(prefers-reduced-motion:reduce){.meal-steam{display:none!important}.steam-wisp{animation:none;will-change:auto}}
@media print{.recipe-photo{display:none!important}.recipe-head.has-photo{display:block}.meal-steam,.steam-toggle{display:none!important}}
