.recipe{max-width:900px;margin:0 auto;padding:2rem;background:var(--theme-bg);border:4px solid var(--theme-accent);font-family:Inter,sans-serif;line-height:1.6}.recipe-header{text-align:left;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:4px solid var(--theme-accent);position:relative}.recipe:has(.recipe-image) .recipe-header{z-index:2;margin-top:-650px;padding-top:650px}.recipe-image{margin:-2rem -2rem 0;width:calc(100% + 4rem);position:relative;overflow:hidden;border-bottom:4px solid var(--theme-accent)}.recipe-image img{width:100%;height:400px;-o-object-fit:cover;object-fit:cover;filter:grayscale(100%) contrast(1.1);transition:filter .3s ease}.recipe-image:hover img{filter:grayscale(0%) contrast(1)}.recipe-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:200px;background:linear-gradient(transparent 0%,rgba(0,0,0,.5) 50%,var(--theme-bg) 100%);pointer-events:none}.recipe h1{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:700;margin-bottom:.5rem;color:var(--theme-text);font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.recipe-tags{font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--theme-accent);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.1em}.recipe-description{font-size:1rem;color:var(--theme-muted);max-width:600px;margin:0;border-left:4px solid var(--theme-accent);padding-left:1rem}.controls{display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-start;align-items:center;margin-bottom:2rem;padding:1.5rem;background:var(--theme-bg-secondary);border:4px solid var(--theme-accent)}.scaler,.units,.actions{display:flex;align-items:center;gap:.5rem}.scaler button,.nav-btn,.cook-mode-btn{background:0 0;color:var(--theme-accent);border:2px solid var(--theme-accent);padding:.5rem 1rem;cursor:pointer;font-weight:700;transition:all .15s ease;font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.scaler button:hover,.nav-btn:hover,.cook-mode-btn:hover{background:var(--theme-accent);color:var(--theme-bg);transform:translate(-2px,-2px);box-shadow:2px 2px 0 var(--glitch-cyan)}.scaler button:focus-visible,.nav-btn:focus-visible,.cook-mode-btn:focus-visible{outline:2px solid var(--theme-accent);outline-offset:2px}.scaler button:disabled,.nav-btn:disabled{border-color:var(--theme-muted);color:var(--theme-muted);cursor:not-allowed}.scaler button:disabled:hover,.nav-btn:disabled:hover{background:0 0;transform:none;box-shadow:none}.cook-mode-btn{background:var(--theme-accent);color:var(--theme-bg)}.cook-mode-btn:hover{background:0 0;color:var(--theme-accent)}.units label{display:flex;align-items:center;gap:.25rem;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--theme-text)}.ingredients-section{margin-bottom:2rem}.ingredients-section h2{font-size:1.25rem;color:var(--theme-text);margin-bottom:1rem;font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.ingredients-section h2:before{content:"// ";color:var(--theme-accent)}.ingredients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.75rem;margin-bottom:1.5rem}.ingredient-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--theme-bg-secondary);border-left:4px solid var(--theme-accent);position:relative}.ingredient-quantity{font-family:JetBrains Mono,monospace;font-weight:700;color:var(--theme-accent);min-width:80px}.ingredient-name{color:var(--theme-text);flex:1;margin-left:1rem;margin-right:.5rem;text-transform:capitalize}.utensils-section{margin-bottom:2rem}.utensils-section h2{font-size:1.25rem;color:var(--theme-text);margin-bottom:1rem;font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.utensils-section h2:before{content:"// ";color:var(--theme-accent)}.utensils-list{display:flex;flex-wrap:wrap;gap:.5rem}.utensil-tag{background:0 0;color:var(--theme-accent);padding:.25rem .75rem;border:2px solid var(--theme-accent);font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.shopping-list{margin-bottom:2rem;padding:1.5rem;background:var(--theme-bg-secondary);color:var(--theme-text);border:4px solid var(--theme-accent)}.shopping-list h2{margin:0 0 1rem;color:var(--theme-text);font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.shopping-list h2:before{content:"// ";color:var(--theme-accent)}.shopping-list-controls{margin-bottom:1rem}.clear-list-btn{background:0 0;color:var(--glitch-red);border:2px solid var(--glitch-red);padding:.5rem 1rem;font-family:JetBrains Mono,monospace;font-size:.875rem;cursor:pointer;transition:all .15s ease;text-transform:uppercase}.clear-list-btn:hover{background:var(--glitch-red);color:var(--theme-bg)}.clear-list-btn:focus-visible{outline:2px solid var(--glitch-red);outline-offset:2px}.shopping-list ul{list-style:none;padding:0;margin:0}.shopping-list li{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:.5rem;background:var(--theme-bg);color:var(--theme-text);border:2px solid var(--theme-accent);transition:all .15s ease}.shopping-list li:hover{transform:translate(-2px,-2px);box-shadow:2px 2px 0 var(--theme-accent)}.shopping-list li span{flex:1;font-weight:500;color:var(--theme-text)}.remove-item-btn{background:var(--glitch-red);color:var(--theme-bg);border:0;width:28px;height:28px;cursor:pointer;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.remove-item-btn:hover{background:#ff1f3d;transform:scale(1.1)}.remove-item-btn:focus-visible{outline:2px solid var(--glitch-red);outline-offset:2px}.add-to-list-btn{background:var(--theme-accent);color:var(--theme-bg);border:0;width:28px;height:28px;cursor:pointer;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .15s ease;margin-left:auto}.add-to-list-btn:hover{background:var(--theme-accent-hover);transform:scale(1.1)}.add-to-list-btn:focus-visible{outline:2px solid var(--theme-accent);outline-offset:2px}.method-section h2{font-size:1.25rem;color:var(--theme-text);margin-bottom:1.5rem;font-family:JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.method-section h2:before{content:"// ";color:var(--theme-accent)}.steps-container{margin-bottom:2rem}.step{display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--theme-bg-secondary);border-left:4px solid var(--theme-muted);transition:all .15s ease}.step.active{background:#daff010d;border-left-color:var(--theme-accent);transform:translate(4px)}.step.inactive{opacity:.4}.step-number{flex-shrink:0;width:2.5rem;height:2.5rem;background:var(--theme-accent);color:var(--theme-bg);display:flex;align-items:center;justify-content:center;font-family:JetBrains Mono,monospace;font-weight:700;font-size:1rem}.step-content{flex:1}.step-text{margin:0;font-size:1rem;color:var(--theme-text);line-height:1.7}.cook-navigation{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:var(--theme-bg-secondary);border:4px solid var(--theme-accent);margin-top:2rem}.step-counter{font-family:JetBrains Mono,monospace;font-weight:700;color:var(--theme-accent);font-size:1rem;text-transform:uppercase}.timers{margin-top:.5rem;display:flex;gap:.5rem;flex-wrap:wrap}.timers button{background:0 0;color:var(--glitch-cyan);border:2px solid var(--glitch-cyan);padding:.5rem 1rem;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.875rem;transition:all .15s ease;text-transform:uppercase}.timers button:hover{background:var(--glitch-cyan);color:var(--theme-bg)}.timers button:focus-visible{outline:2px solid var(--glitch-cyan);outline-offset:2px}.timer-display{display:inline-flex;align-items:center;gap:.5rem;background:var(--theme-bg-secondary);border:2px solid var(--theme-accent);padding:.5rem 1rem;font-family:JetBrains Mono,monospace;font-weight:700;color:var(--theme-accent)}.stop-timer{background:var(--glitch-red);color:var(--theme-bg);border:0;padding:.25rem .5rem;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:700;transition:all .15s ease;text-transform:uppercase}.stop-timer:hover{background:#ff1f3d}.stop-timer:focus-visible{outline:2px solid var(--glitch-red);outline-offset:2px}.recipe.cook-mode{max-width:100%;padding:1rem}.recipe.cook-mode .recipe-header,.recipe.cook-mode .controls{margin-bottom:1rem}.recipe.cook-mode .step.active{background:#daff011a;border-left-width:8px;border-left-color:var(--theme-accent);transform:translate(8px);box-shadow:-4px 0 0 var(--glitch-cyan)}.recipe.cook-mode .step.inactive{opacity:.2}.recipe.cook-mode .step-number{width:3rem;height:3rem;font-size:1.25rem}.recipe.cook-mode .step-text{font-size:1.1rem}@media (max-width:768px){.recipe{padding:1rem}.recipe h1{font-size:1.5rem}.controls{flex-direction:column;gap:.75rem}.ingredients-grid{grid-template-columns:1fr}.cook-navigation{flex-direction:column;gap:1rem}.step{flex-direction:column;text-align:left}.step-number{align-self:flex-start}}@media (prefers-reduced-motion:reduce){.step.active,.recipe.cook-mode .step.active{transform:none}.scaler button:hover,.nav-btn:hover,.cook-mode-btn:hover,.shopping-list li:hover,.remove-item-btn:hover,.add-to-list-btn:hover{transform:none;box-shadow:none}}