/* Low-calorie action is part of the hero action row. */
.cd-public.cd-detail-page .cd-recipe-hero .cd-lowcal{display:inline-flex;align-items:center;gap:10px;vertical-align:middle;padding:0;margin:0;border:0;background:none;box-shadow:none;max-width:100%;flex-wrap:wrap}
.cd-public.cd-detail-page .cd-recipe-hero .cd-lowcal-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:1px solid #b5d2c0;border-radius:16px;background:#f4faf5;color:#295743;text-decoration:none;padding:0 16px;font-weight:700;font-size:14px;line-height:1.3;font-family:inherit;white-space:nowrap;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s}
.cd-public.cd-detail-page .cd-recipe-hero .cd-lowcal-action:hover{transform:translateY(-2px);background:#e9f5eb;box-shadow:0 8px 22px #21473420}
.cd-public.cd-detail-page .cd-recipe-hero .cd-lowcal-action:focus-visible,.cd-lowcal-retry:focus-visible{outline:3px solid #f18c68;outline-offset:3px}
.cd-lowcal-diff{font:600 13px/1.4 inherit;color:#387657}
.cd-lowcal-retry{border:1px solid #ba7a5e;color:#9e4b31;background:#fff5f0;border-radius:14px;min-height:44px;padding:0 14px;font-weight:700;font-size:13px;font-family:inherit;cursor:pointer}
.cd-lowcal-status{margin:0;color:#9e4b31;font-size:13px;max-width:270px;line-height:1.35}
.cd-lowcal-status:empty{display:none}.cd-lowcal-error,.cd-lowcal-loading{display:none}
.cd-lowcal-progress[hidden]{display:none!important}
.cd-public.cd-detail-page .cd-recipe-hero .cd-lowcal-progress{position:relative;display:flex;align-items:center;gap:14px;flex:1 1 100%;width:min(440px,100%);max-width:100%;padding:16px;border:1px solid #d3e5d8;border-radius:20px;background:linear-gradient(120deg,#f7fcf8,#fff8ee);box-shadow:0 8px 22px #2348320b}
.cd-lowcal-progress-text{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px;font-size:12px;color:#5a7564;line-height:1.45}
.cd-lowcal-progress-text strong{font-size:14px;color:#274c3b}
.cd-lowcal-progress-track{height:5px;border-radius:9px;background:#dce8dd;overflow:hidden;margin-top:5px}
.cd-lowcal-progress-track i{display:block;width:35%;height:100%;border-radius:9px;background:linear-gradient(90deg,#f49b64,#fb764e);animation:cdLowcalSweep 2.8s ease-in-out infinite alternate}
.cd-lowcal-pot{width:66px;height:66px;position:relative;flex:0 0 66px}
.cd-lowcal-pot-body{position:absolute;left:6px;right:6px;bottom:6px;height:35px;background:#386d56;border-radius:9px 9px 19px 19px;border-top:7px solid #274e3b;box-shadow:inset 0 -6px #2c5a44}
.cd-lowcal-pot-body:before,.cd-lowcal-pot-body:after{content:'';position:absolute;top:2px;width:10px;height:12px;border:4px solid #386d56;border-radius:50%}
.cd-lowcal-pot-body:before{left:-14px}.cd-lowcal-pot-body:after{right:-14px}
.cd-lowcal-spoon{position:absolute;width:5px;height:39px;background:#cb8753;transform:rotate(-21deg);transform-origin:bottom center;left:36px;top:2px;border-radius:5px;z-index:2;animation:cdLowcalStir 1.5s ease-in-out infinite alternate}
.cd-lowcal-steam{position:absolute;top:0;left:18px;width:7px;height:19px;border-left:3px solid #90b8a3;border-radius:50%;opacity:0;animation:cdLowcalSteam 1.9s ease-out infinite}
.cd-lowcal-steam.steam-two{left:45px;animation-delay:.8s}
.cd-lowcal-bubble{position:absolute;left:22px;top:-8px;width:8px;height:8px;background:#f18e65;border-radius:50%;animation:cdLowcalBubble .9s ease-in-out infinite alternate}
@keyframes cdLowcalStir{to{transform:rotate(20deg)}}
@keyframes cdLowcalSteam{20%{opacity:.9}100%{opacity:0;transform:translateY(-17px)}}
@keyframes cdLowcalBubble{to{transform:translateY(-8px);opacity:.4}}
@keyframes cdLowcalSweep{to{transform:translateX(185%)}}
@media(max-width:760px){.cd-public.cd-detail-page .cd-recipe-hero .cd-lowcal{flex:1 1 100%}.cd-public.cd-detail-page .cd-recipe-hero .cd-lowcal-action{min-height:45px}}
@media(prefers-reduced-motion:reduce){.cd-lowcal-pot *, .cd-lowcal-progress-track i{animation:none!important}}
@media print{.cd-lowcal{display:none!important}}

.cd-lowcal-kcal{display:block;font-weight:750;letter-spacing:.01em;color:#ed744f;font-size:12px}

/* Align all detail actions in a single wrapping row; the loader occupies its own full-width line. */
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions{display:flex;flex-wrap:wrap;align-items:center;align-content:start;column-gap:12px;row-gap:12px;margin:18px 0 0;max-width:100%;min-width:0}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions > .cd-detail-action{margin:0!important;flex:0 0 48px;align-self:center}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal{display:contents!important}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-action,.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-retry{margin:0!important;min-height:48px;height:48px;box-sizing:border-box;align-self:center;flex:0 0 auto;line-height:1.1}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-progress:not([hidden]){display:flex;flex:0 0 100%;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin:6px 0 0;align-items:center;gap:18px;padding:20px 24px}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-status:not(:empty){flex:0 0 100%;max-width:100%;margin:0;color:#a74d35}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-status:empty{display:none}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-pot{flex-shrink:0}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-progress-text{flex:1 1 auto;min-width:0}
@media(max-width:600px){.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions{gap:9px}.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-action{max-width:100%;font-size:13px;padding:0 12px}.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-progress:not([hidden]){padding:15px 12px;gap:13px}}
@media print{.cd-recipe-actions{display:none!important}}
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions [data-lowcal-create][hidden]{display:none!important}

/* Premium compact calorie savings card, below actions. */
.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-savings{
  flex:0 1 330px; display:flex; align-items:center; gap:12px;
  min-width:min(100%,250px); margin:2px 0 0; padding:12px 15px;
  border:1px solid #cce4d3; border-radius:18px;
  background:linear-gradient(125deg,#ecf8ef 0%,#f7fcf8 63%,#fffdf6 100%);
  box-shadow:0 4px 16px rgba(31,88,58,.06); color:#205840;
  box-sizing:border-box; line-height:1.2;
}
.cd-lowcal-savings-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:13px;background:#d9f0e1;color:#286f4c}
.cd-lowcal-savings-copy{display:flex; flex-direction:column;min-width:0;gap:4px}
.cd-lowcal-savings-label{font-size:11px;font-weight:700;color:#557765;letter-spacing:.01em}
.cd-lowcal-savings-estimate{font-weight:500}
.cd-lowcal-savings-value{font-size:22px;letter-spacing:-.035em;font-weight:800;color:#206b49;font-variant-numeric:tabular-nums}
.cd-lowcal-savings-percent{display:inline-flex;white-space:nowrap;align-items:center;justify-content:center;padding:7px 9px;border-radius:999px;background:#d4eddd;color:#246845;font-size:12px;font-weight:800;margin-left:auto;font-variant-numeric:tabular-nums}
@media(max-width:600px){.cd-public.cd-detail-page .cd-recipe-hero .cd-recipe-actions .cd-lowcal-savings{flex-basis:100%;padding:11px 13px}.cd-lowcal-savings-value{font-size:20px}}
@media print{.cd-lowcal-savings{display:none!important}}
