.recipe-detail .detail-actions .cook-start{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 16px;border:1px solid #173c31;border-radius:10px;background:#173c31;color:#fff;font-size:14px;line-height:1.3;font-weight:700;white-space:nowrap;transition:background-color .18s ease,border-color .18s ease}
.cook-start .cook-start-symbol{width:22px;height:22px;color:#e7c58c}
.cook-start .cook-start-direction{width:17px;height:17px;margin-left:4px;transform:rotate(90deg);transition:transform .18s ease}
.recipe-detail .detail-actions .cook-start:hover{background:#285b46;border-color:#285b46}
.cook-start:hover .cook-start-direction{transform:translateY(2px) rotate(90deg)}
.recipe-detail .detail-actions .cook-start:focus-visible{outline:3px solid #a7793d;outline-offset:3px}
@media(max-width:760px){
 .recipe-detail .detail-actions{gap:8px;flex-wrap:wrap}
 .recipe-detail .detail-actions .cook-start{padding:11px 12px;gap:8px;font-size:13px}
 .cook-start .cook-start-direction{display:none}
 .recipe-detail .detail-actions .button-light{min-height:46px;padding:11px 12px}
 .recipe-detail .detail-actions .print-button{width:46px;height:46px;flex-shrink:0}
}
@media(prefers-reduced-motion:reduce){.recipe-detail .detail-actions .cook-start,.cook-start .cook-start-direction{transition:none}.cook-start:hover .cook-start-direction{transform:rotate(90deg)}}
.recipe-detail .detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%}
.recipe-detail .detail-facts:has(>div:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}
.recipe-detail .detail-facts>div{min-width:0;align-items:center;text-align:center;padding:4px 8px;gap:3px}
.recipe-detail .detail-facts .icon{display:block;width:22px;height:22px;margin:0 0 5px}
.recipe-detail .detail-facts strong{line-height:1.4;font-variant-numeric:tabular-nums}
.recipe-detail .detail-facts span{line-height:1.4}
@media(max-width:760px){
 .recipe-detail .detail-facts:has(>div:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}
 .recipe-detail .detail-facts:has(>div:nth-child(4))>div:nth-child(2){border-right:0}
}
.recipe-detail .recipe-section-title{display:flex;align-items:center;gap:10px;line-height:1.3;letter-spacing:-.025em}
.recipe-section-title>.icon{width:25px;height:25px;flex-shrink:0;color:#477344}
.recipe-detail .recipe-story{border:0;padding:28px 0;margin:30px 0;border-top:1px solid #dfe7da;border-bottom:1px solid #dfe7da}
.recipe-story .recipe-section-title{font-size:23px;margin:0 0 14px}
.recipe-story>p:last-child{max-width:72ch;margin:0;line-height:1.85;color:#45604e}
.preparation .time-breakdown{display:flex;flex-wrap:wrap;gap:24px;margin:0 0 30px;padding:18px 0;border-top:1px solid #e1e8dc;border-bottom:1px solid #e1e8dc}
.time-breakdown>div{display:flex;align-items:center;gap:10px;min-width:110px}
.time-breakdown>div>.icon{width:25px;height:25px;color:#4a7043;flex-shrink:0}
.time-breakdown>div>span{display:flex;flex-direction:column;gap:4px;font-size:12px;line-height:1.3;color:#52694f}
.time-breakdown strong{font-size:16px;font-weight:650;color:#214632;margin:0;font-variant-numeric:tabular-nums}
.nutrition-panel .recipe-section-title{margin-bottom:18px}.nutrition-panel .recipe-section-title>.icon{width:21px;height:21px}
.recipe-methods{display:flex;flex-wrap:wrap;gap:10px;margin:-10px 0 28px}.recipe-methods>span{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #d8e2cd;border-radius:8px;color:#3c593b;font-size:13px}.recipe-methods .icon{width:19px;height:19px}
.recipe-detail .step-timer{margin-top:14px;gap:10px;flex-wrap:wrap}
.recipe-detail .timer-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 12px;border-radius:8px;border:1px solid #bccfb4;background:#f2f6ee;color:#365332;font-size:12px;font-weight:550}
.timer-button [data-timer-display]{font-variant-numeric:tabular-nums;font-weight:700}
.recipe-detail .timer-reset{min-height:44px;padding:8px;font-size:12px}
.recipe-detail .step-timer.running .timer-button{background:#244f39;border-color:#244f39;color:white}
.timer-button:focus-visible,.timer-reset:focus-visible{outline:3px solid #a76a18;outline-offset:3px}
.recipe-detail .timer-button{position:relative;isolation:isolate;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}
.recipe-detail .timer-button::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(100deg,#dbe8d2,#e9deb9);transform:scaleX(0);transform-origin:left center;transition:transform .5s cubic-bezier(.2,.65,.3,1)}
.recipe-detail .timer-button>.icon{transform-origin:50% 65%}
@keyframes timer-clock-shake{0%,100%{transform:rotate(0)}18%{transform:rotate(-12deg)}36%{transform:rotate(11deg)}54%{transform:rotate(-8deg)}72%{transform:rotate(5deg)}86%{transform:rotate(-2deg)}}
@media(hover:hover) and (pointer:fine){
 .recipe-detail .step-timer:not(.running) .timer-button:hover{border-color:#7d9d6b;box-shadow:0 3px 10px #36533212}
 .recipe-detail .step-timer:not(.running) .timer-button:hover::before{transform:scaleX(1)}
 .recipe-detail .step-timer:not(.running) .timer-button:hover>.icon{animation:timer-clock-shake .65s ease-in-out}
}
.recipe-detail .step-timer:not(.running) .timer-button:focus-visible::before{transform:scaleX(1)}
.recipe-detail .step-timer:not(.running) .timer-button:focus-visible>.icon{animation:timer-clock-shake .65s ease-in-out}
@media(prefers-reduced-motion:reduce){
 .recipe-detail .timer-button,.recipe-detail .timer-button::before{transition:none}
 .recipe-detail .step-timer .timer-button>.icon{animation:none!important}
}
@media(max-width:760px){
 .recipe-detail .recipe-story{padding:22px 0;margin:26px 0}
 .recipe-story .recipe-section-title{font-size:21px}
 .recipe-detail .preparation h2{font-size:24px}
 .recipe-section-title>.icon{width:23px;height:23px}
 .preparation .time-breakdown{gap:20px 18px;margin-bottom:26px;padding:16px 0}
 .time-breakdown>div{min-width:0;gap:8px}
 .time-breakdown>div>.icon{width:22px;height:22px}
 .time-breakdown>div>span{font-size:12px}.time-breakdown strong{font-size:15px}
 .recipe-detail .timer-button{font-size:12px;max-width:100%;flex-wrap:wrap}
}
@media print{.recipe-detail .step-timer{display:none}}

.recipe-detail .cook-tip>.icon{width:28px;height:28px;flex-shrink:0;color:#916018}.recipe-detail .steps-list p{white-space:pre-line}.recipe-detail .cook-tip p{white-space:pre-line}
/* Let step content shrink below the timer's preferred width on narrow screens. */
.recipe-detail .steps-list>li>div{min-width:0;overflow-wrap:anywhere}
/* Source links in older published tips must not force the flex column wider. */
.recipe-detail .cook-tip>div{min-width:0;overflow-wrap:anywhere}

.recipe-photo{margin:0;min-width:0}.recipe-photo .detail-photo{width:100%}.photo-credit{font-size:11px;line-height:1.6;color:#526758;margin-top:10px}.photo-credit a{text-decoration:underline;text-underline-offset:3px}.photo-credit span{display:block}
@media screen and (max-width:760px){
 .recipe-detail .detail-title{display:contents}
 .recipe-detail .detail-copy{order:0}
 .recipe-detail .recipe-photo{order:1}
 .recipe-detail .detail-facts{order:2;margin-top:0}
}

/* Fixed geometry and a remaining-time underline, independent of the label. */
.recipe-detail .timer-button{width:260px;max-width:100%;flex-wrap:nowrap;min-height:44px}
.timer-button [data-timer-action]{flex:1;min-width:0;text-align:left;white-space:normal}
.timer-button [data-timer-display]{flex:0 0 var(--timer-digits,5ch);width:var(--timer-digits,5ch);text-align:right;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums;letter-spacing:0;white-space:nowrap}
.recipe-detail .timer-button::after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:#41794e;transform:scaleX(var(--timer-progress,1));transform-origin:left;opacity:0;transition:transform .25s linear;pointer-events:none}
.recipe-detail .timer-started .timer-button::after{opacity:1}
.recipe-detail .running .timer-button::after{background:#d3e5b9}
@media(prefers-reduced-motion:reduce){.recipe-detail .timer-button::after{transition:none}}

.recipe-detail .running .timer-button::before{opacity:0;transform:scaleX(0);transition:none}
.detail-utility-actions{display:flex;align-items:center;gap:10px;flex:none}
.recipe-top-navigation{display:flex;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap}
.recipe-detail .recipe-top-navigation .public-back-nav{margin:0;flex:none;width:auto;max-width:none}
.recipe-detail .recipe-top-navigation .breadcrumbs{margin:0;min-width:0;flex:1}
@media(max-width:600px){.recipe-top-navigation{gap:12px;margin-bottom:20px}.recipe-detail .recipe-top-navigation .breadcrumbs{flex-basis:100%}}
@media print{.recipe-top-navigation{display:none!important}}
