.servings-stepper[data-astro-cid-cx5njqkt]{display:inline-flex;align-items:center;gap:var(--space-xs);border:1px solid var(--accent-warm-muted);border-radius:var(--border-radius-md);padding:var(--space-xs)}.stepper-btn[data-astro-cid-cx5njqkt]{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--border-radius-sm);color:var(--accent-warm);font-size:var(--text-xl);line-height:1;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast)}.stepper-btn[data-astro-cid-cx5njqkt]:hover{background:var(--accent-warm-muted);color:var(--text)}.stepper-btn[data-astro-cid-cx5njqkt]:disabled{opacity:.25;cursor:not-allowed;pointer-events:none}.stepper-number[data-astro-cid-cx5njqkt]{font-size:var(--text-xl);min-width:2.5ch;text-align:center}#scroll-progress{position:fixed;top:0;left:0;width:var(--scroll, 0%);height:2px;background:linear-gradient(90deg,var(--accent),var(--accent-warm));z-index:200;pointer-events:none;transition:width 60ms linear}.recipe-header{margin-bottom:0}.recipe-header h1{font-size:var(--text-4xl);font-weight:700;color:var(--accent);margin-bottom:var(--space-sm);line-height:1.3;display:flex;align-items:flex-start;gap:var(--space-sm)}.recipe-header h1:before{content:"";width:6px;align-self:stretch;background:var(--accent);border-radius:2px;flex-shrink:0}.recipe-description{color:var(--text-muted);font-size:var(--text-lg);line-height:1.6;margin-bottom:var(--space-md)}.recipe-meta{display:flex;flex-wrap:wrap;gap:var(--space-lg);font-family:JetBrains Mono,monospace;font-size:var(--text-sm);margin-bottom:var(--space-lg)}.recipe-meta-item{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--border-radius-sm);min-width:120px}.recipe-meta-item--compact{flex:0 0 auto;justify-content:center;align-items:center}.meta-label{color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.meta-value{color:var(--accent-warm);font-weight:600;font-size:var(--text-base)}.meta-time-breakdown{border-top:1px solid var(--border);padding-top:var(--space-sm);margin-top:var(--space-xs);display:flex;flex-direction:column;gap:var(--space-xs)}.meta-time-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-md)}.meta-time-label{color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.meta-time-value{color:var(--accent-warm);font-size:var(--text-xs);text-align:right}.nutrition-card{border:2px solid var(--text);border-radius:var(--border-radius-sm);padding:var(--space-md) var(--space-lg);max-width:360px;margin-inline:auto;font-family:Inter,sans-serif;margin-top:var(--space-3xl)}.nutrition-header{font-size:var(--text-3xl);font-weight:900;color:var(--text);letter-spacing:-.02em;line-height:1;padding-bottom:var(--space-xs)}.nutrition-serving{font-size:var(--text-sm);padding-bottom:var(--space-sm)}.nutrition-serving-value{color:var(--accent-warm);font-weight:600}.nutrition-divider-thick{height:8px;background:var(--text);margin:var(--space-sm) 0}.nutrition-divider{height:1px;background:var(--border);margin:var(--space-sm) 0}.nutrition-row{display:flex;justify-content:space-between;font-size:var(--text-base);color:var(--text);padding:var(--space-xs) 0}.nutrition-row span:first-child{font-weight:600}.nutrition-row span:last-child{font-family:JetBrains Mono,monospace;color:var(--accent-warm)}.nutrition-calories{font-size:var(--text-xl);font-weight:700}.calories-value{font-size:var(--text-2xl)}.recipe-img-wrapper{display:flex;justify-content:center;margin-bottom:var(--space-xl)}.recipe-img{max-width:100%;max-height:600px;border:1px solid var(--border);border-radius:var(--border-radius-sm)}.recipe-img.landscape{width:100%;object-fit:cover}.prose{max-width:var(--content-width);line-height:1.8;color:var(--text)}.prose h2{font-size:var(--text-2xl);font-weight:600;color:var(--accent);margin-top:var(--space-xl);margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:2px solid var(--border);display:flex;align-items:center;gap:var(--space-sm)}.prose h2:before{content:"";width:4px;height:24px;background:var(--accent);border-radius:2px}.prose h2:first-of-type{margin-top:0}.prose h3{font-size:var(--text-xl);font-weight:600;color:var(--text);margin-top:var(--space-2xl);margin-bottom:var(--space-lg)}.prose h4{font-size:var(--text-base);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--space-xl);margin-bottom:var(--space-sm)}.prose p{margin-bottom:var(--space-xl);color:var(--text);line-height:1.9}.prose ul{list-style:none;padding:0;margin-bottom:var(--space-xl);display:grid;gap:0}.prose li{padding:var(--space-xs) 0;padding-left:calc(20px + var(--space-md));position:relative}.prose li:before{content:"−";color:var(--accent);font-weight:700;font-size:var(--text-lg);position:absolute;left:0;width:20px;text-align:center}.prose ol{counter-reset:recipe-counter;list-style:none;padding:0;margin-bottom:var(--space-xl);display:grid;gap:var(--space-xs)}.prose ol li{counter-increment:recipe-counter}.prose ol li:before{content:counter(recipe-counter);color:var(--bg);background:var(--accent-warm);font-weight:700;font-size:var(--text-xs);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:3px}.prose strong{color:var(--accent);font-weight:600}.prose em{color:var(--text-muted);font-style:italic}.prose ul em{color:var(--accent-warm);font-style:normal}.prose code{background:var(--code-bg);color:var(--accent);padding:.2em .4em;border-radius:var(--border-radius-sm);font-family:JetBrains Mono,monospace;font-size:.9em}.prose table{border-collapse:collapse;margin-bottom:var(--space-xl);font-size:var(--text-sm)}.prose th,.prose td{padding:var(--space-xs) var(--space-md);border:1px solid var(--border);text-align:left}.prose th{background:var(--card-bg);color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:var(--text-xs)}@media(max-width:768px){.recipe-meta{flex-direction:column}.recipe-meta-item{width:100%}}
