.recipe-hero{position:relative;width:100%;height:50vh;min-height:320px;max-height:500px;background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:flex-end;margin-top:var(--nav-height)}.recipe-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0000001a,#000000bf);z-index:1}.recipe-hero-pin-btn{position:absolute;top:1.25rem;right:1.5rem;z-index:3;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#e60023;color:#fff;border-radius:var(--radius-full);font-family:var(--font-body);font-size:.82rem;font-weight:600;letter-spacing:.02em;text-decoration:none;box-shadow:0 4px 14px #00000059;transition:all .25s cubic-bezier(.4,0,.2,1)}.recipe-hero-pin-btn:hover{background:#c8001d;color:#fff;transform:translateY(-2px) scale(1.03);box-shadow:0 6px 20px #e6002373}.recipe-hero-content{position:relative;z-index:2;width:100%;max-width:var(--container-max);margin:0 auto;padding:2rem 1.5rem;color:#fff}.recipe-hero-breadcrumb{font-family:var(--font-body);font-size:.8rem;margin-bottom:.75rem;opacity:.85}.recipe-hero-breadcrumb a{color:#fff;text-decoration:none;transition:opacity .2s}.recipe-hero-breadcrumb a:hover{opacity:.6}.breadcrumb-sep{margin:0 .4rem;opacity:.5}.breadcrumb-current{opacity:.7}.recipe-hero-title{font-family:var(--font-heading);font-size:2rem;font-weight:700;line-height:1.15;margin-bottom:.5rem;color:#fff}.recipe-hero-subtitle{font-family:var(--font-body);font-size:.95rem;line-height:1.6;color:#fffc;max-width:600px}.recipe-meta-bar{background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:0 1px 8px var(--color-shadow);padding:.75rem 0}.recipe-meta-inner{display:flex;flex-direction:column;align-items:center;gap:.75rem}.recipe-meta-items{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem}.recipe-meta-item{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.8rem;font-family:var(--font-body);color:var(--color-text-secondary)}.recipe-meta-item svg{width:16px;height:16px;color:var(--color-accent);flex-shrink:0}.meta-label{display:none}.meta-value{font-weight:600;color:var(--color-text-primary)}.recipe-meta-divider{width:1px;height:20px;background:var(--color-border);align-self:center}.recipe-meta-actions{display:flex;gap:.5rem}.recipe-action-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-full);font-family:var(--font-body);font-size:.8rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;text-decoration:none;transition:all .2s}.recipe-action-btn svg{width:15px;height:15px}.recipe-action-btn:hover{border-color:var(--color-accent);color:var(--color-accent);background:#c85a320a}.recipe-action-btn.pinterest:hover{border-color:#e60023;color:#e60023;background:#e600230d}.recipe-action-btn.saved{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.recipe-content{padding:2rem 0}.recipe-quick-nav{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:1.25rem;padding:.35rem .5rem;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-full, 9999px);box-shadow:0 2px 8px #0000000a;flex-wrap:wrap}.quick-nav-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;font-family:var(--font-body);font-size:.78rem;font-weight:600;border-radius:var(--radius-full, 9999px);text-decoration:none;cursor:pointer;transition:all .15s ease-in-out;border:none;line-height:1.2}.quick-nav-btn.primary{background:var(--color-accent, #c85a32);color:#fff!important;box-shadow:0 2px 6px #c85a3233}.quick-nav-btn.primary:hover{background:var(--color-accent-dark, #b04b25);transform:translateY(-1px);box-shadow:0 4px 10px #c85a324d;color:#fff!important}.quick-nav-btn.secondary{background:#c85a3214;color:var(--color-accent, #c85a32)!important}.quick-nav-btn.secondary:hover{background:#c85a3226;transform:translateY(-1px);color:var(--color-accent-dark, #b04b25)!important}.quick-nav-btn.outline{background:transparent;color:var(--color-text-secondary, #555555);border:1px solid var(--color-border, #d1d5db)}.quick-nav-btn.outline:hover{border-color:var(--color-accent, #c85a32);color:var(--color-accent, #c85a32);background:#c85a320a;transform:translateY(-1px)}.recipe-rating-section{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--color-border)}.recipe-stars-display{display:flex;gap:2px}.recipe-star{font-size:1.1rem;color:var(--color-border)}.recipe-star.filled{color:#fbbf24}.recipe-rating-value{font-family:var(--font-heading);font-size:1.4rem;font-weight:700;color:var(--color-text-primary)}.recipe-rating-count{font-size:.85rem;color:var(--color-text-light)}.recipe-layout{display:grid;grid-template-columns:1fr;gap:2.5rem}.recipe-main{min-width:0}.recipe-sidebar{display:flex;flex-direction:column;gap:1.5rem}.recipe-ingredients{background:var(--color-surface);border-radius:var(--radius-md);padding:1.5rem;box-shadow:0 2px 12px var(--color-shadow);margin-bottom:2.5rem}.recipe-ingredients-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.recipe-ingredients-header h2{font-family:var(--font-heading);font-size:1.5rem;color:var(--color-text-primary);display:flex;align-items:center;gap:.5rem;margin:0}.recipe-ingredients-header h2 svg{color:var(--color-accent)}.servings-adjuster{display:flex;align-items:center;gap:.5rem}.servings-btn{width:32px;height:32px;border-radius:50%;border:2px solid var(--color-accent);background:transparent;color:var(--color-accent);font-size:1.1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.servings-btn:hover{background:var(--color-accent);color:#fff}.servings-count{font-weight:700;font-size:1.1rem;min-width:1.5rem;text-align:center;color:var(--color-text-primary)}.servings-label{font-size:.8rem;color:var(--color-text-light)}.ingredient-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.unit-toggle{display:flex;gap:0;border-radius:var(--radius-full);overflow:hidden;border:1px solid var(--color-border);width:fit-content}.unit-btn{padding:.4rem 1rem;border:none;background:transparent;font-family:var(--font-body);font-size:.8rem;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.unit-btn.active{background:var(--color-accent);color:#fff}.copy-grocery-btn{display:inline-flex;align-items:center;gap:.45rem;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);padding:.45rem 1.05rem;border-radius:var(--radius-full);font-family:var(--font-body);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000000a}.copy-grocery-btn:hover{border-color:var(--color-accent);color:var(--color-accent);background:#fff;transform:translateY(-1px)}.copy-grocery-btn.copied{background:#10b981!important;border-color:#10b981!important;color:#fff!important;box-shadow:0 2px 10px #10b98166}.ingredient-list{list-style:none;padding:0;margin:0}.ingredient-item{display:flex;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid rgba(0,0,0,.04);font-family:var(--font-body);font-size:.95rem;color:var(--color-text-primary);transition:opacity .2s}.ingredient-item:last-child{border-bottom:none}.ingredient-item input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid var(--color-border);border-radius:4px;cursor:pointer;flex-shrink:0;position:relative;transition:all .2s}.ingredient-item input[type=checkbox]:checked{background:var(--color-accent);border-color:var(--color-accent)}.ingredient-item input[type=checkbox]:checked:after{content:"✓";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;font-weight:700}.ingredient-item.checked label{text-decoration:line-through;opacity:.5}.ingredient-item label{cursor:pointer;line-height:1.5}.ingredient-amount{font-weight:600}.recipe-instructions{margin-bottom:2.5rem}.recipe-instructions h2{font-family:var(--font-heading);font-size:1.5rem;color:var(--color-text-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.recipe-instructions h2 svg{color:var(--color-accent)}.instruction-step{display:flex;gap:1.25rem;padding:1.25rem 0}.step-number{width:38px;height:38px;min-width:38px;border-radius:50%;background:var(--color-accent);color:#fff;font-family:var(--font-heading);font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.step-content{flex:1;min-width:0}.step-header-wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.step-title{font-family:var(--font-body);font-weight:600;font-size:1.05rem;color:var(--color-text-primary);margin:0}.step-action-pills{display:inline-flex;align-items:center;gap:.5rem}.step-timer-pill,.step-speech-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:var(--radius-full);font-family:var(--font-body);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;user-select:none}.step-timer-pill{background:#c85a321a;color:var(--color-accent);border:1px solid rgba(200,90,50,.25)}.step-timer-pill:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.step-speech-pill{background:#6b705c1a;color:var(--color-accent-secondary);border:1px solid rgba(107,112,92,.25)}.step-speech-pill:hover{background:var(--color-accent-secondary);color:#fff;border-color:var(--color-accent-secondary)}.step-speech-pill.speaking{background:#10b981;color:#fff;border-color:#10b981;box-shadow:0 0 10px #10b98166;animation:wakePulse 1.5s infinite}.cook-mode-topbar-actions{display:flex;align-items:center;gap:.75rem}.cook-mode-speech-btn{display:inline-flex;align-items:center;gap:.45rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.45rem .85rem;border-radius:var(--radius-full);font-family:var(--font-body);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.cook-mode-speech-btn:hover{background:#fff3;border-color:#fff6}.cook-mode-speech-btn.speaking{background:#10b981;border-color:#10b981;animation:wakePulse 1.5s infinite}.step-text{font-family:var(--font-body);font-size:.95rem;line-height:1.7;color:var(--color-text-secondary);margin:0}.step-divider{border:none;border-top:1px dashed var(--color-border);margin:0 0 0 calc(38px + 1.25rem)}.recipe-tips{background:#6b705c0f;border-left:4px solid var(--color-accent-secondary);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:1.5rem;margin-bottom:2.5rem}.tip-icon{font-size:1.25rem;margin-bottom:.5rem}.tip-title{font-family:var(--font-body);font-size:1.05rem;font-weight:700;color:var(--color-text-primary);margin:0 0 .75rem}.tip-list{margin:0;padding-left:1.25rem;font-size:.9rem;color:var(--color-text-secondary);line-height:1.7}.tip-list li{margin-bottom:.5rem}.tip-list li:last-child{margin-bottom:0}.recipe-reviews{margin-top:1rem}.reviews-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.reviews-header h2{font-family:var(--font-heading);font-size:1.4rem;color:var(--color-text-primary);margin:0;display:flex;align-items:center;gap:.5rem}.reviews-header h2 svg{color:var(--color-accent)}.reviews-count{font-size:.85rem;font-weight:600;color:var(--color-accent)}.review-card{background:var(--color-surface);border-radius:var(--radius-md);padding:1.25rem;border:1px solid var(--color-border);margin-bottom:1rem}.review-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.review-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-weight:700;font-size:.8rem;color:#fff;flex-shrink:0}.review-author-info{flex:1;min-width:0}.review-name{display:block;font-weight:600;font-size:.9rem;color:var(--color-text-primary)}.review-date{font-size:.75rem;color:var(--color-text-light)}.review-stars{color:#fbbf24;font-size:.85rem;letter-spacing:1px}.review-text{font-size:.9rem;line-height:1.65;color:var(--color-text-secondary);margin:0 0 .75rem}.review-helpful{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-text-light)}.helpful-btn{background:none;border:1px solid var(--color-border);padding:.2rem .6rem;border-radius:var(--radius-full);font-size:.75rem;cursor:pointer;transition:all .2s;color:var(--color-text-secondary)}.helpful-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.recipe-nutrition{background:var(--color-surface);border-radius:var(--radius-md);padding:1.25rem;box-shadow:0 2px 12px var(--color-shadow)}.nutrition-title{font-family:var(--font-heading);font-size:1.2rem;color:var(--color-text-primary);margin:0 0 .25rem;display:flex;align-items:center;gap:.5rem}.nutrition-title svg{color:var(--color-accent)}.nutrition-serving{font-size:.75rem;color:var(--color-text-light);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.nutrition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.25rem}.nutrition-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.5rem .25rem;border-radius:var(--radius-sm);background:var(--color-bg)}.nutrition-item.highlight{grid-column:span 3;background:linear-gradient(135deg,#c85a3214,#c85a3205);padding:.75rem;border-radius:var(--radius-sm)}.nutrition-value{font-family:var(--font-heading);font-size:1.3rem;font-weight:700;color:var(--color-text-primary)}.nutrition-item.highlight .nutrition-value{font-size:2rem;color:var(--color-accent)}.nutrition-label{font-family:var(--font-body);font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-light);margin-top:.15rem}.macro-bar{display:flex;height:8px;border-radius:var(--radius-full);overflow:hidden;margin-bottom:.75rem;background:var(--color-bg)}.macro-segment{height:100%}.macro-segment.carbs{background:#f59e0b}.macro-segment.protein{background:#3b82f6}.macro-segment.fat{background:#ef4444}.macro-legend{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.7rem;color:var(--color-text-light)}.macro-legend-item{display:flex;align-items:center;gap:.3rem}.macro-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.macro-dot.carbs{background:#f59e0b}.macro-dot.protein{background:#3b82f6}.macro-dot.fat{background:#ef4444}.nutrition-dv{font-size:.65rem;font-weight:700;color:var(--color-accent-secondary);background:#6b705c1a;padding:.1rem .35rem;border-radius:var(--radius-full);margin-top:.2rem;letter-spacing:.3px}.nutrition-disclaimer{font-size:.68rem;color:var(--color-text-light);line-height:1.5;margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--color-border);font-style:italic}.recipe-quick-info{background:var(--color-surface);border-radius:var(--radius-md);padding:1.25rem;box-shadow:0 2px 12px var(--color-shadow)}.recipe-quick-info h3{font-family:var(--font-heading);font-size:1.1rem;color:var(--color-text-primary);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-border)}.quick-info-list{list-style:none;padding:0;margin:0}.quick-info-list li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,.04);font-size:.875rem}.quick-info-list li:last-child{border-bottom:none}.quick-info-label{color:var(--color-text-light)}.quick-info-value{font-weight:600;color:var(--color-text-primary)}.recipe-author-card{background:var(--color-surface);border-radius:var(--radius-md);padding:1.25rem;box-shadow:0 2px 12px var(--color-shadow);text-align:center}.author-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;margin-bottom:.75rem;border:3px solid var(--color-accent)}.author-name{font-family:var(--font-heading);font-size:1.1rem;margin:0 0 .35rem;color:var(--color-text-primary)}.author-bio{font-size:.8rem;color:var(--color-text-secondary);line-height:1.6;margin:0 0 .75rem}.author-link{font-size:.85rem;font-weight:600;color:var(--color-accent);text-decoration:none;transition:opacity .2s}.author-link:hover{opacity:.7}.sidebar-widget{background:var(--color-surface);border-radius:var(--radius-md);padding:1.25rem;box-shadow:0 2px 12px var(--color-shadow)}.sidebar-widget-title{font-family:var(--font-heading);font-size:1.1rem;color:var(--color-text-primary);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-border);display:flex;align-items:center;gap:.5rem}.sidebar-widget-title svg{color:var(--color-accent)}.equipment-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.85rem}.equipment-item{display:flex;align-items:flex-start;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(0,0,0,.05)}.equipment-item:last-child{padding-bottom:0;border-bottom:none}.equipment-icon{font-size:1.25rem;line-height:1;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.35rem;box-shadow:0 1px 3px #0000000a;flex-shrink:0}.equipment-details{display:flex;flex-direction:column;gap:.15rem;min-width:0}.equipment-name{font-family:var(--font-body);font-size:.85rem;font-weight:600;color:var(--color-text-primary);line-height:1.3}.equipment-note{font-size:.76rem;line-height:1.45;color:var(--color-text-secondary)}.sidebar-posts-list{display:flex;flex-direction:column;gap:.75rem}.sidebar-post-item{display:flex;align-items:center;gap:.75rem;text-decoration:none;padding:.5rem;border-radius:var(--radius-sm);transition:background .2s,transform .2s}.sidebar-post-item:hover{background:var(--color-bg);transform:translate(3px)}.sidebar-post-img{width:60px;height:60px;border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0}.sidebar-post-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.sidebar-post-category{font-size:.65rem;font-weight:600;text-transform:uppercase;color:var(--color-accent-secondary);letter-spacing:.5px}.sidebar-post-title{font-family:var(--font-heading);font-size:.9rem;font-weight:600;color:var(--color-text-primary);line-height:1.3;margin:0;transition:color .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-post-item:hover .sidebar-post-title{color:var(--color-accent)}.sidebar-post-meta{font-size:.7rem;color:var(--color-text-light)}.related-recipes{padding:3rem 0;border-top:1px solid var(--color-border);margin-top:1rem}.related-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}.cook-mode-btn{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);background:var(--color-accent);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-full);font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;z-index:50;box-shadow:0 4px 20px #c85a3266;transition:all .2s}.cook-mode-btn:hover{transform:translate(-50%) scale(1.05);box-shadow:0 6px 24px #c85a3280}.cook-mode-overlay{position:fixed;inset:0;background:var(--color-dark-bg);z-index:3000;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .3s}.cook-mode-overlay.active{opacity:1;pointer-events:auto}.cook-mode-progress{height:4px;background:var(--color-accent);width:0%;transition:width .3s}.cook-mode-topbar{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem;width:100%;max-width:900px;margin:0 auto;position:relative;z-index:3001}.cook-mode-wakelock-pill{display:inline-flex;align-items:center;gap:.55rem;background:#ffffff14;border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:.45rem .95rem;border-radius:var(--radius-full);font-family:var(--font-body);font-size:.8rem;font-weight:600;letter-spacing:.02em;color:#fffc;cursor:pointer;transition:all .25s ease;user-select:none}.cook-mode-wakelock-pill:hover{background:#ffffff24;border-color:#ffffff4d;color:#fff}.cook-mode-wakelock-pill.active{background:#10b98126;border-color:#34d39973;color:#a7f3d0}.cook-mode-wakelock-pill.active:hover{background:#10b98140;border-color:#34d399b3}.wakelock-pulse{width:8px;height:8px;border-radius:50%;background:#9ca3af;display:inline-block;transition:background .3s,box-shadow .3s}.cook-mode-wakelock-pill.active .wakelock-pulse{background:#10b981;box-shadow:0 0 10px #10b981;animation:wakePulse 2s infinite ease-in-out}@keyframes wakePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.3)}}.cook-mode-close{background:#ffffff14;border:1px solid rgba(255,255,255,.16);border-radius:50%;width:42px;height:42px;display:flex;align-items:center;justify-content:center;color:#ffffffd9;cursor:pointer;transition:all .2s ease}.cook-mode-close:hover{background:#fff3;border-color:#ffffff59;color:#fff;transform:scale(1.05)}.cook-mode-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;max-width:700px;margin:0 auto;width:100%}.cook-mode-step-display{text-align:center}.cook-mode-step-label{font-family:var(--font-body);font-size:.85rem;text-transform:uppercase;letter-spacing:2px;color:var(--color-accent);display:block;margin-bottom:1rem}.cook-mode-step-title{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:#fff;margin:0 0 1.5rem}.cook-mode-step-text{font-size:1.15rem;line-height:1.8;color:#fffc;margin:0}.cook-mode-nav{display:flex;justify-content:space-between;padding:1.5rem 2rem;width:100%;max-width:700px;margin:0 auto}.cook-mode-nav-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.2);background:transparent;color:#ffffffb3;font-family:var(--font-body);font-size:.9rem;cursor:pointer;transition:all .2s}.cook-mode-nav-btn:hover{border-color:#ffffff80;color:#fff}.cook-mode-nav-btn.primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.cook-mode-nav-btn.primary:hover{background:var(--color-accent-hover)}.timer-popup{position:fixed;bottom:5rem;right:1.5rem;background:var(--color-dark-bg);color:#fff;padding:1.25rem;border-radius:var(--radius-md);box-shadow:0 8px 30px #0000004d;z-index:100;display:none;flex-direction:column;align-items:center;gap:.5rem;min-width:160px}.timer-popup.active{display:flex}.timer-display{font-family:var(--font-heading);font-size:2rem;font-weight:700}.timer-label{font-size:.75rem;color:#fff9;text-transform:uppercase;letter-spacing:1px}.timer-actions{display:flex;gap:.5rem;margin-top:.5rem}.timer-btn{padding:.3rem .75rem;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;font-size:.75rem;cursor:pointer;transition:all .2s}.timer-btn:hover{background:#ffffff1a}.timer-btn.danger{border-color:#ef4444;color:#ef4444}.timer-btn.danger:hover{background:#ef4444;color:#fff}@media (min-width: 768px){.recipe-hero{height:55vh}.recipe-hero-title{font-size:2.5rem}.recipe-meta-inner{flex-direction:row;justify-content:space-between}.meta-label{display:block}.recipe-layout{grid-template-columns:1fr;gap:2.5rem}.related-grid{grid-template-columns:repeat(2,1fr)}.recipe-ingredients-header{flex-wrap:nowrap}.nutrition-grid{grid-template-columns:repeat(3,1fr)}.nutrition-item.highlight{grid-column:span 3}.cook-mode-step-title{font-size:2.5rem}.cook-mode-step-text{font-size:1.3rem}}@media (min-width: 1024px){.recipe-hero{height:60vh;max-height:550px}.recipe-hero-title{font-size:3rem}.recipe-hero-subtitle{font-size:1.05rem}.recipe-layout{grid-template-columns:1fr 340px;gap:3rem;align-items:start}.recipe-sidebar{position:sticky;top:calc(var(--nav-height) + 1.5rem)}.related-grid{grid-template-columns:repeat(3,1fr)}.recipe-meta-items{gap:.5rem}.recipe-meta-item{padding:.5rem 1rem}}@media (min-width: 1440px){.recipe-layout{grid-template-columns:1fr 380px}}@media print{header,nav,footer,.recipe-meta-actions,.recipe-hero-pin-btn,.recipe-quick-nav,.ingredient-toolbar,.copy-grocery-btn,.step-action-pills,.step-speech-pill,.step-timer-pill,.recipe-box-drawer,.search-overlay,.recipe-sidebar,.related-recipes,.recipe-reviews,.cook-mode-btn,.cook-mode-overlay,.timer-popup,.back-to-top,.recipe-hero:after,.unit-toggle,.servings-btn,.step-timer,.ad-slot-container{display:none!important}body{background:#fff!important;color:#000!important;font-size:12pt}.recipe-content{padding:0}.recipe-layout{display:block}.recipe-main{width:100%}.recipe-hero{height:auto;min-height:0;background:none!important}.recipe-hero-content{padding:0;color:#000}.recipe-hero-title{color:#000;page-break-after:avoid}.recipe-hero-subtitle{color:#333}.recipe-ingredients,.recipe-instructions{box-shadow:none;padding:0;page-break-inside:avoid}.instruction-step{page-break-inside:avoid}.step-number{background:#000;color:#fff;print-color-adjust:exact;-webkit-print-color-adjust:exact}}.recipe-hero-seo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.timer-popup{position:fixed;bottom:6rem;right:1.5rem;z-index:9999;opacity:0;visibility:hidden;transform:translateY(1rem);transition:all .3s ease}.timer-popup.active{opacity:1;visibility:visible;transform:translateY(0)}.timer-popup-inner{background:var(--dark, #1a1a2e);color:#fff;padding:1.25rem 1.5rem;border-radius:1rem;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:180px}.timer-popup .timer-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;opacity:.7}.timer-popup .timer-display{font-size:2rem;font-weight:700;font-family:Inter,monospace;letter-spacing:.05em}.timer-popup .timer-actions{display:flex;gap:.5rem;margin-top:.25rem}.timer-popup .timer-btn{background:#ffffff26;border:none;color:#fff;padding:.35rem 1rem;border-radius:.5rem;cursor:pointer;font-size:.8rem;font-weight:500;transition:background .2s}.timer-popup .timer-btn:hover{background:#ffffff40}.timer-popup .timer-btn.cancel:hover{background:#ef444480}.recipe-article-body{background:var(--color-surface, #ffffff);border-radius:1rem;padding:2.25rem 2rem;margin-bottom:2.5rem;border:1px solid var(--color-border, #e5e7eb);box-shadow:0 4px 20px #0000000a}.intro-article-body{margin-bottom:2.25rem}.intro-article-body>.article-h3:first-child,.intro-article-body>.article-h2:first-child{margin-top:0}.post-article-body{margin-top:2.25rem;margin-bottom:2.5rem}.recipe-article-body .article-h1,.recipe-article-body .article-h2,.recipe-article-body .article-h3{font-family:var(--font-heading, "Playfair Display", serif);color:var(--color-text-heading, #111827);margin-top:2rem;margin-bottom:.85rem;font-weight:700;line-height:1.3}.recipe-article-body .article-h2{font-size:1.55rem;border-bottom:2px solid var(--color-primary-light, #ffedd5);padding-bottom:.5rem;margin-top:2.25rem}.recipe-article-body .article-h3{font-size:1.25rem;color:var(--color-primary, #e65100)}.recipe-article-body .article-p{font-family:var(--font-body, "Inter", sans-serif);font-size:1.05rem;line-height:1.8;color:var(--color-text-body, #374151);margin-bottom:1.25rem}.recipe-article-body .article-list{margin-bottom:1.5rem;padding-left:1.5rem}.recipe-article-body .article-list li{font-family:var(--font-body, "Inter", sans-serif);font-size:1rem;line-height:1.75;color:var(--color-text-body, #374151);margin-bottom:.5rem}.recipe-article-body .article-link{color:var(--color-primary, #e65100);font-weight:600;text-decoration:underline;transition:color .2s ease}.recipe-article-body .article-link:hover{color:var(--color-primary-dark, #c74000)}.recipe-article-body .article-hr{border:none;border-top:1px dashed var(--color-border, #e5e7eb);margin:1.75rem 0;height:0}.recipe-article{font-family:var(--font-body, "Inter", sans-serif);font-size:1rem;line-height:1.8;color:var(--color-text, #1f2937);margin:1.75rem 0 2.25rem}.recipe-article-intro{border-bottom:2px solid var(--color-border, #f0f0f0);padding-bottom:2rem;margin-bottom:2rem}.recipe-article-post{border-top:2px solid var(--color-border, #f0f0f0);padding-top:2rem;margin-top:2rem}.recipe-article .article-h2{font-family:var(--font-heading, "Playfair Display", serif);font-size:1.6rem;font-weight:700;color:var(--color-heading, #111827);margin:2rem 0 1rem;line-height:1.3;border-bottom:2px solid var(--color-primary, #FF6B35);padding-bottom:.35rem;display:inline-block}.recipe-article .article-h3{font-family:var(--font-heading, "Playfair Display", serif);font-size:1.25rem;font-weight:700;color:var(--color-heading, #111827);margin:1.75rem 0 .75rem;line-height:1.35}.recipe-article .article-p{margin:0 0 1.2rem;color:var(--color-text-secondary, #374151);line-height:1.85}.recipe-article .article-list{padding-left:1.4rem;margin:.75rem 0 1.5rem;list-style:none}.recipe-article .article-list li{position:relative;padding-left:1.4rem;margin-bottom:.65rem;line-height:1.75;color:var(--color-text-secondary, #374151)}.recipe-article .article-list li:before{content:"✓";position:absolute;left:0;top:.1em;color:var(--color-primary, #FF6B35);font-weight:700;font-size:.85rem}.recipe-article .article-hr{border:none;border-top:1px dashed var(--color-border, #e5e7eb);margin:1.75rem 0;height:0}.recipe-article strong{font-weight:700;color:var(--color-heading, #111827)}.recipe-article em{font-style:italic;color:var(--color-text-muted, #6b7280)}.recipe-article .article-link{color:var(--color-primary, #FF6B35);text-decoration:underline;text-underline-offset:3px;transition:color .2s}.recipe-article .article-link:hover{color:var(--color-primary-dark, #c74000)}@media (max-width: 768px){.recipe-article .article-h2{font-size:1.35rem}.recipe-article .article-h3{font-size:1.1rem}.recipe-article .article-p{font-size:.95rem}}.recipe-story-card{background:linear-gradient(135deg,#c85a320d,#6b705c0d);border-left:3px solid var(--color-accent, #C85A32);border-radius:0 12px 12px 0;padding:1.25rem 1.5rem;margin-bottom:2rem}.recipe-story-card p{font-family:var(--font-body, "Inter", sans-serif);font-size:1.05rem;line-height:1.75;color:var(--color-text-primary, #2B2523);margin:0;font-style:italic}.recipe-guide-section{margin-top:3rem;padding-top:2rem;border-top:2px dashed var(--color-border, #E8E2D8)}.guide-title{font-family:var(--font-heading, "Playfair Display", serif);font-size:1.6rem;font-weight:700;color:var(--color-text-primary, #2B2523);display:flex;align-items:center;gap:.6rem;margin-bottom:1.5rem}.guide-title svg{color:var(--color-accent, #C85A32)}.recipe-accordion{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #E8E2D8);border-radius:12px;margin-bottom:1rem;overflow:hidden;box-shadow:0 2px 6px var(--color-shadow, rgba(43, 37, 35, .04));transition:border-color var(--transition-fast, .2s)}.recipe-accordion[open]{border-color:#c85a3266}.accordion-header{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:1.1rem 1.4rem;cursor:pointer;background:var(--color-surface, #ffffff);user-select:none;transition:background var(--transition-fast, .2s)}.accordion-header::-webkit-details-marker{display:none}.accordion-header:hover{background:#c85a320a}.accordion-title-wrap{display:flex;align-items:center;gap:.75rem}.accordion-icon{font-size:1.25rem;line-height:1}.accordion-heading{font-family:var(--font-heading, "Playfair Display", serif);font-size:1.15rem;font-weight:600;color:var(--color-text-primary, #2B2523);margin:0}.accordion-chevron{font-size:1.2rem;color:var(--color-text-light, #9A9490);transition:transform var(--transition-fast, .2s);display:inline-block;line-height:1}.recipe-accordion[open] .accordion-chevron{transform:rotate(180deg);color:var(--color-accent, #C85A32)}.accordion-body{padding:1rem 1.4rem 1.4rem;font-size:.95rem;line-height:1.75;color:var(--color-text-secondary, #6B6560);border-top:1px solid rgba(232,226,216,.5);margin-top:.25rem}.accordion-body p{margin-bottom:.85rem}.accordion-body p:last-child{margin-bottom:0}.accordion-body .article-list{padding-left:1.25rem;margin:.5rem 0}.accordion-body .article-list li{margin-bottom:.75rem;line-height:1.65}.recipe-reviews-section{margin-top:3.5rem;padding-top:2.5rem;border-top:2px solid var(--color-border)}.reviews-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap}.reviews-badge{display:inline-block;font-family:var(--font-body);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--color-accent);margin-bottom:.5rem}.reviews-heading{font-family:var(--font-heading);font-size:1.85rem;font-weight:700;color:var(--color-text-primary);margin:0 0 .5rem;line-height:1.25}.reviews-subheading{font-family:var(--font-body);font-size:.95rem;color:var(--color-text-secondary);margin:0;max-width:520px;line-height:1.6}.reviews-score-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;text-align:center;box-shadow:0 4px 14px #0000000a;min-width:160px}.score-stars{color:#f59e0b;font-size:1.15rem;letter-spacing:2px;margin-bottom:.25rem}.score-number{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:var(--color-text-primary);line-height:1.1}.score-max{font-size:1rem;color:var(--color-text-light);font-weight:400}.score-count{display:block;font-size:.75rem;color:var(--color-text-secondary);margin-top:.25rem;font-weight:500}.review-form-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.75rem;margin-bottom:2.5rem;box-shadow:0 4px 16px #00000008}.form-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0 0 1.25rem}.review-form{display:flex;flex-direction:column;gap:1.25rem}.form-row{display:flex;gap:1.5rem;flex-wrap:wrap}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group.flex-1{flex:1;min-width:220px}.form-label{font-family:var(--font-body);font-size:.82rem;font-weight:600;color:var(--color-text-primary)}.form-label .required{color:var(--color-accent)}.star-rating-select{display:flex;gap:.25rem;padding:.35rem 0}.star-btn{background:none;border:none;font-size:1.5rem;color:#d1d5db;cursor:pointer;line-height:1;transition:transform .15s ease,color .15s ease;padding:0 .1rem}.star-btn:hover,.star-btn.hovered,.star-btn.active{color:#f59e0b}.star-btn:hover{transform:scale(1.2)}.form-input,.form-textarea{font-family:var(--font-body);font-size:.92rem;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s;outline:none}.form-input:focus,.form-textarea:focus{border-color:var(--color-accent);background:#fff;box-shadow:0 0 0 3px #c85a321f}.form-textarea{resize:vertical;min-height:85px}.form-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.submit-review-btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--color-accent);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-full);font-family:var(--font-body);font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s}.submit-review-btn:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #c85a3240}.review-status-msg{font-size:.85rem;color:#059669;font-weight:600}.reviews-list{display:flex;flex-direction:column;gap:1.25rem}.review-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;transition:box-shadow .2s}.review-card:hover{box-shadow:0 4px 14px #0000000a}.review-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}.review-author-wrap{display:flex;align-items:center;gap:.75rem}.review-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-accent),#f97316);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:.85rem;font-weight:700;letter-spacing:.05em}.review-meta{display:flex;flex-direction:column}.review-author-name{font-family:var(--font-body);font-size:.92rem;font-weight:600;color:var(--color-text-primary)}.review-date{font-size:.76rem;color:var(--color-text-light)}.review-stars{color:#f59e0b;font-size:.95rem;letter-spacing:1px}.review-body{font-family:var(--font-body);font-size:.95rem;line-height:1.65;color:var(--color-text-secondary);margin:0 0 1rem}.review-footer{display:flex;align-items:center;gap:.75rem}.helpful-btn{display:inline-flex;align-items:center;gap:.4rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-full);padding:.35rem .85rem;font-family:var(--font-body);font-size:.78rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.helpful-btn:hover,.helpful-btn.voted{background:#c85a320f;border-color:var(--color-accent);color:var(--color-accent)}.reviews-empty-state{text-align:center;padding:2.5rem 1.5rem;background:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius-md);margin-top:.5rem}.reviews-empty-icon{font-size:2.2rem;margin-bottom:.4rem}.reviews-empty-state h4{font-family:var(--font-heading);font-size:1.15rem;color:var(--color-text-primary);margin:0 0 .35rem}.reviews-empty-state p{font-size:.85rem;color:var(--color-text-secondary);max-width:440px;margin:0 auto;line-height:1.6}.ad-slot-container{margin:28px 0;padding:12px;background:var(--color-surface, #fff);border:1px dashed var(--color-border, #e5e5e5);border-radius:var(--radius-md, 12px);text-align:center;min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .2s ease}.ad-slot-label{display:block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted, #888);margin-bottom:6px}.ad-slot-inner{width:100%;min-height:80px;display:flex;align-items:center;justify-content:center}.ad-slot-container:has(.ad-slot-inner:empty){display:none!important}.ad-slot-sidebar{position:sticky;top:90px;margin-top:24px}@media (max-width: 640px){.recipe-hero{min-height:290px;height:auto;padding-top:5rem}.recipe-hero-content{padding:1.25rem 1rem}.recipe-hero-title{font-size:1.65rem;line-height:1.2}.recipe-hero-subtitle{font-size:.95rem;line-height:1.5}.recipe-quick-nav{display:flex;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:.35rem;gap:.45rem;flex-wrap:nowrap;border-radius:var(--radius-md)}.recipe-quick-nav::-webkit-scrollbar{display:none}.quick-nav-btn{flex-shrink:0;padding:.5rem .85rem;font-size:.8rem;min-height:38px}.recipe-meta-bar{padding:.5rem 0}.recipe-meta-items{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:.35rem;text-align:center}.recipe-meta-item{padding:.35rem .2rem;font-size:.78rem;flex-direction:column;gap:.15rem}.recipe-meta-divider{display:none}.recipe-meta-actions{width:100%;justify-content:center;gap:.5rem;margin-top:.25rem}.recipe-action-btn{flex:1;justify-content:center;padding:.55rem .4rem;font-size:.8rem;min-height:42px}.recipe-ingredients{padding:1.25rem 1rem;margin-bottom:1.75rem}.recipe-ingredients-header{flex-direction:column;align-items:flex-start;gap:.75rem}.servings-adjuster{width:100%;justify-content:space-between}.servings-btn{width:36px;height:36px;font-size:1.2rem}.ingredient-toolbar{flex-direction:column;align-items:stretch;gap:.65rem}.copy-grocery-btn{width:100%;justify-content:center;min-height:44px;font-size:.88rem}.ingredient-item{padding:.65rem 0}.ingredient-item input[type=checkbox]{width:22px;height:22px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.ingredient-item label{cursor:pointer;flex:1;padding:2px 0;line-height:1.5}.instruction-step{gap:.85rem;padding:1rem 0}.step-number{width:32px;height:32px;font-size:.95rem}.step-title{font-size:1.15rem}.step-action-pills{margin-top:.55rem;gap:.45rem}.step-timer-pill,.step-speech-pill{padding:.45rem .8rem;font-size:.82rem;min-height:38px}.cook-mode-content{padding:1rem}.cook-mode-step-title{font-size:1.45rem;margin-bottom:.85rem}.cook-mode-step-text{font-size:1.05rem;line-height:1.65}.cook-mode-nav{padding:.85rem 1rem;gap:.5rem}.cook-mode-nav-btn{flex:1;justify-content:center;padding:.85rem;font-size:.95rem;min-height:50px}.timer-popup{bottom:1rem;left:1rem;right:1rem;width:auto;padding:1rem}}
