*{box-sizing:border-box}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18211b;background:#f3f1eb;font-synthesis:none;text-rendering:optimizeLegibility}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:3px solid #14532d;outline-offset:3px}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:100;padding:.75rem 1rem;border-radius:.5rem;background:#18211b;color:#fff;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.page{min-height:100vh;padding:clamp(1rem,4vw,4rem)}.recipe-card{width:min(1100px,100%);margin:0 auto;overflow:hidden;border:1px solid #d7d5cc;border-radius:1.25rem;background:#fff;box-shadow:0 18px 50px #18211b14}.recipe-header{padding:clamp(1.5rem,5vw,4rem);background:#eef3e9}.eyebrow{margin:0 0 .5rem;color:#14532d;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{max-width:700px;margin-bottom:1rem;font-size:clamp(2.2rem,7vw,4.5rem);line-height:.98;letter-spacing:-.045em}.intro{max-width:650px;margin-bottom:2rem;color:#4d5a50;font-size:clamp(1rem,2vw,1.2rem);line-height:1.65}.recipe-meta{display:flex;flex-wrap:wrap;gap:1.5rem;margin:0}.recipe-meta div{min-width:80px}.recipe-meta dt{color:#667269;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.recipe-meta dd{margin:.25rem 0 0;font-weight:750}.serving-control{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem clamp(1.25rem,4vw,2rem);border-bottom:1px solid #e1dfd7}.serving-control h2,.panel-heading h2{margin-bottom:.25rem;font-size:1.25rem}.serving-control p{margin-bottom:0;color:#667269;font-size:.9rem}.stepper{display:flex;flex:0 0 auto;align-items:center;gap:.5rem}.icon-button{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid #aeb8af;border-radius:.6rem;background:#fff;color:#18211b;font-size:1.5rem;font-weight:700}.icon-button:hover:not(:disabled){background:#f0f3ef}.stepper input{width:4.5rem;height:2.75rem;border:1px solid #aeb8af;border-radius:.6rem;text-align:center;font-weight:800}.recipe-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.recipe-panel{min-width:0;padding:clamp(1.25rem,4vw,2.5rem)}.recipe-panel+.recipe-panel{border-left:1px solid #e1dfd7}.panel-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.panel-heading span{flex:0 0 auto;color:#667269;font-size:.8rem}.ingredient-list,.method-list{margin:0;padding:0;list-style:none}.ingredient-list{display:grid;gap:.75rem}.ingredient-list li{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:.75rem;align-items:baseline;padding-bottom:.75rem;border-bottom:1px solid #eceae3;line-height:1.5}.quantity{color:#14532d;font-weight:800}.method-list{display:grid;gap:1.25rem;counter-reset:steps}.method-list li{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:1rem;align-items:start}.step-number{display:grid;width:2rem;height:2rem;place-items:center;border-radius:50%;background:#eef3e9;color:#14532d;font-weight:800}.method-list p{margin:0;line-height:1.7}.sr-status,.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:700px){.page{padding:.75rem}.recipe-card{border-radius:.85rem}.serving-control{align-items:flex-start;flex-direction:column}.recipe-grid{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,45vh) minmax(0,45vh);min-height:90vh}.recipe-panel{min-height:0;overflow-y:auto;overscroll-behavior:contain}.recipe-panel+.recipe-panel{border-top:1px solid #e1dfd7;border-left:0}.recipe-panel:first-child{border-bottom:0}}@media(max-width:380px){.page{padding:0}.recipe-card{border-right:0;border-left:0;border-radius:0}.recipe-header,.recipe-panel{padding:1rem}h1{font-size:2.25rem}.ingredient-list li{grid-template-columns:4.6rem minmax(0,1fr);gap:.5rem}.method-list li{grid-template-columns:1.75rem minmax(0,1fr);gap:.65rem}.step-number{width:1.75rem;height:1.75rem}}
