.co-public-recipe{--co-accent:#466338;border:1px solid #deded8;border-radius:12px;padding:clamp(18px,4vw,36px);margin:32px 0;color:#262626;background:#fff;line-height:1.6}
.co-public-recipe h2{margin-top:0}.co-public-recipe h3{margin:24px 0 12px}.co-public-recipe h4{margin:18px 0 8px}
.co-public-recipe img{max-width:100%;height:auto;border-radius:8px}
.co-public-recipe .co-recipe-cover img{display:block;margin:0 auto;max-height:560px;object-fit:contain}
.co-public-recipe .co-recipe-meta{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;padding:0;margin:20px 0;font-size:.95em}
.co-public-recipe .co-recipe-macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}
.co-public-recipe .co-recipe-macros>div{background:#f5f5f0;border-radius:8px;padding:12px;text-align:center}
.co-public-recipe .co-recipe-macros dt{font-size:.85em}.co-public-recipe .co-recipe-macros dd{font-size:1.3em;font-weight:700;margin:4px 0 0}
.co-public-recipe .co-recipe-macros .co-net-carbs{background:#e9efdf;color:#253b1d;border:1px solid #b6c89d}
.co-public-recipe .co-published-nutrition h3 span{display:block;font-size:.7em;font-weight:400;margin-top:4px}
.co-public-recipe .co-nutrition-notice,.co-public-recipe .co-step-meta,.co-public-recipe .co-ingredient-note,.co-public-recipe figcaption,.co-public-recipe .co-recipe-credit{font-size:.9em;color:#555}
.co-public-recipe details{overflow-x:auto}.co-public-recipe summary{cursor:pointer;font-weight:600}
.co-public-recipe table{width:100%;border-collapse:collapse;margin:12px 0;font-size:.9em}.co-public-recipe th,.co-public-recipe td{padding:8px;text-align:left;border-bottom:1px solid #ddd}
.co-public-recipe .co-recipe-ingredients li{margin:8px 0}.co-public-recipe .co-ingredient-note{display:block}
.co-public-recipe .co-recipe-instructions ol{padding-left:0;list-style:none}.co-public-recipe .co-recipe-instructions li{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:10px;padding-left:0;margin:18px 0}.co-public-recipe .co-step-number{min-width:1.5em;font-weight:700;line-height:1.6}.co-public-recipe .co-step-photo img{display:block}
.co-public-recipe .co-public-step{display:flex;gap:18px;align-items:flex-start}.co-public-recipe .co-step-photo{flex:0 0 150px}.co-public-recipe .co-step-body{flex:1;min-width:0}.co-public-recipe .co-step-body>p:first-child{margin-top:0}
.co-public-recipe .co-recipe-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.co-public-recipe figure{margin:0}.co-public-recipe .co-recipe-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.co-public-recipe figcaption{margin-top:6px}.co-public-recipe .co-photo-role{font-weight:600}
@media(max-width:600px){.co-public-recipe .co-recipe-macros{grid-template-columns:repeat(2,minmax(0,1fr))}.co-public-recipe .co-public-step{flex-direction:column}.co-public-recipe .co-step-photo{flex-basis:auto;width:100%;max-width:300px}}
.co-image-dialog{padding:0;border:0;background:transparent;max-width:94vw;max-height:94vh;overflow:visible}
.co-image-dialog[open]{display:flex;align-items:center;justify-content:center}
.co-image-dialog::backdrop{background:rgba(0,0,0,.86)}
.co-image-dialog>img{display:block;max-width:94vw;max-height:90vh;width:auto;height:auto;object-fit:contain;border-radius:6px}
.co-image-dialog>.co-image-dialog-close{position:absolute;right:8px;top:8px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #fff;border-radius:50%;background:#111;color:#fff;font-size:30px;line-height:1;cursor:pointer;z-index:1}
.co-image-dialog>.co-image-dialog-close:focus-visible{outline:3px solid #fff;outline-offset:3px}
.co-public-recipe .co-unit-controls{margin:12px 0 24px}
.co-public-recipe .co-unit-controls[hidden]{display:none}
.co-public-recipe .co-unit-controls [role="group"]{display:flex;flex-wrap:wrap;gap:8px}
.co-public-recipe .co-unit-controls button{padding:9px 16px;border:1px solid #466338;border-radius:6px;background:#fff;color:#334c27;cursor:pointer;font:inherit}
.co-public-recipe .co-unit-controls button[aria-pressed="true"]{background:#466338;color:#fff}
.co-public-recipe .co-unit-controls button:focus-visible{outline:2px solid #466338;outline-offset:3px}
.co-public-recipe .co-unit-controls p{font-size:.85em;color:#555;margin:8px 0}
.co-public-recipe .co-unit-controls [role="group"]+ [role="group"]{margin-top:12px;align-items:center}
.co-public-recipe .co-scaling-note{display:block;margin-top:4px;color:#8a4b08;font-weight:600;font-size:.85em}
.co-public-recipe .co-scaling-note[hidden]{display:none}

.co-jump-link a{display:inline-block;padding:10px 18px;border:1px solid #466338;border-radius:6px;background:#466338;color:#fff;text-decoration:none;font-weight:600}
.co-jump-link a:focus-visible{outline:2px solid #466338;outline-offset:3px}
.co-public-recipe{scroll-margin-top:90px}
.co-public-recipe .co-recipe-taxonomies dl{display:flex;flex-wrap:wrap;gap:12px 24px;margin:18px 0}
.co-public-recipe .co-recipe-taxonomies dt{font-size:.8em;font-weight:600;margin-bottom:4px}
.co-public-recipe .co-recipe-taxonomies dd{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.co-public-recipe .co-recipe-taxonomies a{display:inline-block;background:#f0f3eb;color:#334c27;border-radius:20px;padding:3px 10px;font-size:.85em;text-decoration:none}
.co-public-recipe .co-recipe-taxonomies a:hover,.co-public-recipe .co-recipe-taxonomies a:focus-visible{text-decoration:underline}
