.site-header[data-astro-cid-qlfjksao]{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:50;transition:box-shadow var(--transition-fast)}.header-inner[data-astro-cid-qlfjksao]{display:flex;align-items:center;justify-content:space-between;height:var(--header-height);gap:var(--space-md)}.header-brand-wrap[data-astro-cid-qlfjksao]{display:flex;align-items:center;flex-shrink:0}.site-logo[data-astro-cid-qlfjksao]{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-serif);font-size:1.35rem;font-weight:700;color:var(--color-text-main);letter-spacing:-.01em;white-space:nowrap;text-decoration:none}.logo-mark-img[data-astro-cid-qlfjksao]{width:32px;height:32px;object-fit:contain;flex-shrink:0}.main-nav[data-astro-cid-qlfjksao]{display:none}@media(min-width:1024px){.main-nav[data-astro-cid-qlfjksao]{display:block}}.nav-list[data-astro-cid-qlfjksao]{display:flex;align-items:center;list-style:none;gap:.2rem;margin:0;padding:0}.nav-link[data-astro-cid-qlfjksao]{display:inline-block;padding:.35rem .55rem;font-size:.88rem;font-weight:500;color:var(--color-text-muted);border-radius:var(--radius-sm);white-space:nowrap;transition:all var(--transition-fast);text-decoration:none}@media(min-width:1200px){.nav-link[data-astro-cid-qlfjksao]{padding:.4rem .65rem;font-size:.92rem}}.nav-link[data-astro-cid-qlfjksao]:hover{color:var(--color-primary);background-color:var(--color-surface-subtle)}.nav-link[data-astro-cid-qlfjksao].is-active{color:var(--color-primary);font-weight:600;background-color:var(--color-primary-subtle)}.header-actions[data-astro-cid-qlfjksao]{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.search-trigger-btn[data-astro-cid-qlfjksao]{display:inline-flex;align-items:center;gap:.4rem;background-color:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.4rem .75rem;font-size:.85rem;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all var(--transition-fast)}.search-trigger-btn[data-astro-cid-qlfjksao]:hover{border-color:var(--color-primary-border);background-color:#fff;color:var(--color-primary)}.search-shortcut[data-astro-cid-qlfjksao]{font-size:.72rem;background-color:var(--color-surface-warm);border:1px solid var(--color-border);border-radius:3px;padding:.1rem .25rem;color:var(--color-text-subtle);font-family:var(--font-sans)}.mobile-menu-btn[data-astro-cid-qlfjksao]{display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.4rem;cursor:pointer;color:var(--color-text-main)}@media(min-width:1024px){.mobile-menu-btn[data-astro-cid-qlfjksao]{display:none}}.mobile-drawer[data-astro-cid-qlfjksao]{position:fixed;inset:0;background:#1e1c1a66;backdrop-filter:blur(2px);z-index:100;opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.mobile-drawer[data-astro-cid-qlfjksao].is-open{opacity:1;pointer-events:auto}.mobile-drawer-inner[data-astro-cid-qlfjksao]{position:absolute;top:0;right:0;bottom:0;width:280px;background:var(--color-surface);padding:var(--space-lg);display:flex;flex-direction:column;box-shadow:var(--shadow-overlay);transform:translate(100%);transition:transform var(--transition-base)}.mobile-drawer[data-astro-cid-qlfjksao].is-open .mobile-drawer-inner[data-astro-cid-qlfjksao]{transform:translate(0)}.mobile-drawer-header[data-astro-cid-qlfjksao]{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-sm);margin-bottom:var(--space-md)}.mobile-drawer-close[data-astro-cid-qlfjksao]{background:none;border:none;font-size:1.3rem;cursor:pointer;color:var(--color-text-muted)}.mobile-nav-list[data-astro-cid-qlfjksao]{list-style:none;display:flex;flex-direction:column;gap:.5rem}.mobile-nav-link[data-astro-cid-qlfjksao]{display:block;padding:.65rem .5rem;font-size:1.05rem;font-weight:500;border-bottom:1px solid var(--color-border-subtle)}.mobile-nav-link[data-astro-cid-qlfjksao]:hover{color:var(--color-primary)}.site-footer[data-astro-cid-35ed7um5]{background-color:var(--color-surface);border-top:1px solid var(--color-border);margin-top:var(--space-3xl);padding-block:var(--space-2xl) var(--space-xl)}.footer-grid[data-astro-cid-35ed7um5]{display:grid;grid-template-columns:1fr;gap:var(--space-xl)}@media(min-width:768px){.footer-grid[data-astro-cid-35ed7um5]{grid-template-columns:1.5fr 1fr 1.2fr 1.2fr}}.footer-logo[data-astro-cid-35ed7um5]{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-serif);font-size:1.4rem;font-weight:700;color:var(--color-text-main);margin-bottom:var(--space-sm)}.footer-logo-img[data-astro-cid-35ed7um5]{width:32px;height:32px;object-fit:contain;flex-shrink:0}.footer-tagline[data-astro-cid-35ed7um5]{font-size:.88rem;line-height:1.6;color:var(--color-text-muted);margin-bottom:var(--space-md)}.footer-heading[data-astro-cid-35ed7um5]{font-family:var(--font-sans);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--color-text-main);margin-bottom:var(--space-md)}.footer-links[data-astro-cid-35ed7um5]{list-style:none;display:flex;flex-direction:column;gap:.5rem}.footer-links[data-astro-cid-35ed7um5] a[data-astro-cid-35ed7um5]{font-size:.9rem;color:var(--color-text-muted);transition:color var(--transition-fast)}.footer-links[data-astro-cid-35ed7um5] a[data-astro-cid-35ed7um5]:hover{color:var(--color-primary)}.footer-about-text[data-astro-cid-35ed7um5]{font-size:.85rem;color:var(--color-text-muted);line-height:1.6;margin-bottom:var(--space-md)}.footer-copy[data-astro-cid-35ed7um5]{font-size:.8rem;color:var(--color-text-subtle)}.search-modal-backdrop[data-astro-cid-2eu6zh2g]{display:none;position:fixed;inset:0;z-index:999;background:#1e1c1a8c;backdrop-filter:blur(4px);align-items:flex-start;justify-content:center;padding-top:clamp(40px,12vh,120px);padding-inline:1rem}.search-modal-backdrop[data-astro-cid-2eu6zh2g].is-open{display:flex}.search-modal-window[data-astro-cid-2eu6zh2g]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:640px;box-shadow:var(--shadow-overlay);overflow:hidden;display:flex;flex-direction:column;max-height:80vh;animation:searchFadeIn .15s ease-out}@keyframes searchFadeIn{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.search-modal-header[data-astro-cid-2eu6zh2g]{display:flex;align-items:center;padding:var(--space-md);border-bottom:1px solid var(--color-border);gap:var(--space-sm)}.search-input-wrapper[data-astro-cid-2eu6zh2g]{display:flex;align-items:center;gap:.75rem;flex:1}.search-icon[data-astro-cid-2eu6zh2g]{color:var(--color-text-subtle);flex-shrink:0}.search-modal-input[data-astro-cid-2eu6zh2g]{width:100%;border:none;background:none;font-size:1.1rem;color:var(--color-text-main);outline:none}.search-modal-input[data-astro-cid-2eu6zh2g]::placeholder{color:var(--color-text-subtle);font-size:1rem}.search-modal-close[data-astro-cid-2eu6zh2g]{background:none;border:none;cursor:pointer;padding:.2rem}.search-modal-close[data-astro-cid-2eu6zh2g] kbd[data-astro-cid-2eu6zh2g]{background:var(--color-surface-warm);border:1px solid var(--color-border);border-radius:4px;padding:.2rem .4rem;font-size:.75rem;color:var(--color-text-subtle);font-family:var(--font-sans)}.search-results-list[data-astro-cid-2eu6zh2g]{padding:var(--space-md);overflow-y:auto;flex:1;min-height:200px;max-height:480px}.search-empty-hint,.search-no-results{text-align:center;padding:var(--space-xl) var(--space-md);color:var(--color-text-muted);font-size:.95rem}.search-empty-sub{font-size:.85rem;color:var(--color-text-subtle);margin-top:.25rem}.search-result-item{border-radius:var(--radius-sm);transition:background-color var(--transition-fast);margin-bottom:.35rem}.search-result-item:hover,.search-result-item.is-active{background-color:var(--color-surface-subtle)}.search-result-link{display:flex;align-items:flex-start;gap:var(--space-md);padding:.75rem;text-decoration:none}.search-result-title{font-family:var(--font-serif);font-size:1.05rem;color:var(--color-text-main);margin-bottom:.15rem}.search-result-desc{font-size:.85rem;color:var(--color-text-muted);line-height:1.4}.search-modal-footer[data-astro-cid-2eu6zh2g]{padding:.6rem var(--space-md);border-top:1px solid var(--color-border);background-color:var(--color-bg);display:flex;justify-content:flex-end}.search-footer-hint[data-astro-cid-2eu6zh2g]{display:flex;gap:var(--space-md);font-size:.75rem;color:var(--color-text-subtle)}.search-footer-hint[data-astro-cid-2eu6zh2g] kbd[data-astro-cid-2eu6zh2g]{background:var(--color-surface);border:1px solid var(--color-border);padding:.1rem .3rem;border-radius:3px;margin-right:.2rem}.recipe-hero{margin-bottom:var(--space-xl)}.recipe-header{margin-bottom:var(--space-lg)}.recipe-meta-strip{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md);margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.9rem}.recipe-meta-item{display:flex;flex-direction:column;gap:.15rem}.recipe-meta-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-subtle)}.recipe-meta-value{font-weight:600;color:var(--color-text-main)}.recipe-media{position:relative;border-radius:var(--radius-lg);overflow:hidden;margin-block:var(--space-lg);border:1px solid var(--color-border);background-color:var(--color-surface-subtle);aspect-ratio:16 / 9;max-height:480px}.recipe-media img{width:100%;height:100%;object-fit:cover}.recipe-body-grid{display:grid;grid-template-columns:1fr;gap:var(--space-xl)}@media(min-width:860px){.recipe-body-grid{grid-template-columns:340px 1fr;align-items:start}.recipe-sidebar{position:sticky;top:calc(var(--header-height) + 1.5rem)}}.portion-scaler{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-lg)}.portion-scaler-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.portion-controls{display:flex;align-items:center;gap:.5rem}.portion-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-subtle);cursor:pointer;font-weight:700;font-size:1.1rem;transition:all var(--transition-fast)}.portion-btn:hover{background:var(--color-surface-warm);border-color:var(--color-text-muted)}.portion-count{font-weight:600;min-width:45px;text-align:center;font-size:1rem}.ingredients-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg)}.ingredients-list{list-style:none;display:flex;flex-direction:column;gap:.75rem;margin-top:var(--space-md)}.ingredient-item{display:flex;align-items:baseline;gap:.65rem;padding-bottom:.6rem;border-bottom:1px dashed var(--color-border-subtle);font-size:.95rem;cursor:pointer}.ingredient-item:last-child{border-bottom:none;padding-bottom:0}.ingredient-item input[type=checkbox]{accent-color:var(--color-olive);width:16px;height:16px;cursor:pointer}.ingredient-amount{font-weight:600;color:var(--color-primary);white-space:nowrap}.ingredient-name{color:var(--color-text-main)}.ingredient-link{text-decoration:underline;text-underline-offset:2px;text-decoration-color:var(--color-border)}.ingredient-link:hover{color:var(--color-primary);text-decoration-color:var(--color-primary)}.ingredient-note{font-size:.82rem;color:var(--color-text-subtle);display:block}.instructions-section{margin-bottom:var(--space-xl)}.steps-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-lg);margin-top:var(--space-md)}.step-item{display:flex;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);background-color:var(--color-surface);border:1px solid var(--color-border);transition:border-color var(--transition-fast)}.step-item:hover{border-color:var(--color-border)}.step-number{flex-shrink:0;width:32px;height:32px;border-radius:50%;background-color:var(--color-primary-subtle);color:var(--color-primary);font-weight:600;font-size:.9rem;display:flex;align-items:center;justify-content:center}.step-content{flex:1}.step-instruction{color:var(--color-text-main);font-size:1.05rem;line-height:1.6}.step-tip{margin-top:var(--space-sm);padding:.5rem .75rem;background-color:var(--color-amber-subtle);border-left:3px solid var(--color-amber);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.88rem;color:var(--color-text-muted)}.step-timer-pill{display:inline-flex;align-items:center;gap:.35rem;margin-top:.5rem;padding:.25rem .6rem;background-color:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:.8rem;font-weight:500;color:var(--color-text-muted)}.veganize-box{background-color:var(--color-olive-subtle);border:1px solid var(--color-olive-border);border-radius:var(--radius-md);padding:var(--space-lg);margin-block:var(--space-xl)}.veganize-box-header{display:flex;align-items:center;gap:.5rem;margin-bottom:var(--space-sm)}.veganize-box-header h3{font-size:1.3rem;color:var(--color-olive)}.substitution-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-md);margin-top:var(--space-md)}.sub-card{background:#fff;padding:var(--space-md);border-radius:var(--radius-sm);border:1px solid var(--color-olive-border)}.sub-original{font-size:.82rem;text-decoration:line-through;color:var(--color-text-subtle)}.sub-replacement{font-weight:600;color:var(--color-olive);font-size:.95rem;margin-top:.15rem}.sub-why{font-size:.82rem;color:var(--color-text-muted);margin-top:.35rem}.nutrition-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);text-align:center;margin-block:var(--space-lg)}.nutrition-item{display:flex;flex-direction:column}.nutrition-value{font-size:1.25rem;font-weight:700;color:var(--color-text-main)}.nutrition-label{font-size:.75rem;color:var(--color-text-subtle);text-transform:uppercase}.cooking-mode-overlay{display:none;position:fixed;inset:0;z-index:9999;background-color:var(--color-bg);padding:var(--space-lg);overflow-y:auto}.cooking-mode-overlay.is-active{display:flex;flex-direction:column}.cooking-mode-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-md);margin-bottom:var(--space-xl)}.cooking-mode-content{flex:1;max-width:760px;width:100%;margin-inline:auto;display:flex;flex-direction:column;justify-content:center}.cooking-step-display{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-card)}.cooking-step-number{font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--color-primary);margin-bottom:var(--space-sm)}.cooking-step-text{font-family:var(--font-serif);font-size:1.6rem;line-height:1.45;color:var(--color-text-main);margin-bottom:var(--space-lg)}.cooking-timer-box{display:flex;align-items:center;gap:var(--space-md);background:var(--color-surface-subtle);padding:var(--space-md);border-radius:var(--radius-md);margin-top:var(--space-md)}.cooking-timer-clock{font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--color-primary)}.cooking-mode-nav{display:flex;justify-content:space-between;margin-top:var(--space-xl)}.matcher-container{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-2xl);box-shadow:var(--shadow-card)}.matcher-header{text-align:center;max-width:600px;margin-inline:auto;margin-bottom:var(--space-xl)}.matcher-header h2{font-size:2rem;margin-bottom:var(--space-xs)}.matcher-input-wrap{position:relative;max-width:680px;margin-inline:auto;margin-bottom:var(--space-md)}.matcher-input{width:100%;padding:.9rem 1.25rem .9rem 2.75rem;font-size:1.05rem;border-radius:var(--radius-md);border:2px solid var(--color-border);background-color:var(--color-bg);transition:all var(--transition-fast)}.matcher-input:focus{outline:none;border-color:var(--color-primary);background-color:#fff}.matcher-input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--color-text-subtle);pointer-events:none}.quick-ingredients-title{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-subtle);margin-bottom:var(--space-sm);text-align:center}.quick-ingredient-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:var(--space-lg)}.chip-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:.4rem .85rem;font-size:.9rem;color:var(--color-text-main);cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;transition:all var(--transition-fast)}.chip-btn:hover{border-color:var(--color-primary);background:var(--color-surface-warm)}.chip-btn.is-selected{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.selected-pantry-wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;margin-bottom:var(--space-lg);padding:var(--space-sm);background-color:var(--color-surface-warm);border-radius:var(--radius-md);min-height:48px}.selected-tag{background:#fff;color:var(--color-text-main);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:.25rem .75rem;font-size:.85rem;font-weight:500;display:inline-flex;align-items:center;gap:.4rem}.selected-tag button{background:none;border:none;color:var(--color-text-subtle);cursor:pointer;font-size:1rem;line-height:1;padding:0}.selected-tag button:hover{color:var(--color-primary)}.matcher-results{margin-top:var(--space-xl)}.matcher-stats{font-size:1.1rem;font-weight:600;color:var(--color-text-main);margin-bottom:var(--space-md)}.match-score-badge{font-size:.75rem;font-weight:700;padding:.2rem .5rem;border-radius:var(--radius-sm);background:var(--color-olive-subtle);color:var(--color-olive);border:1px solid var(--color-olive-border)}.missing-ingredients{font-size:.8rem;color:var(--color-text-subtle);margin-top:.4rem}:root{--color-bg: #fcfbf9;--color-surface: #ffffff;--color-surface-subtle: #f5f2eb;--color-surface-warm: #ede7dc;--color-border: #e4ddd2;--color-border-subtle: #eee9e0;--color-text-main: #1e1c1a;--color-text-muted: #5e574f;--color-text-subtle: #8a8175;--color-text-inverse: #ffffff;--color-primary: #b84a2d;--color-primary-hover: #9c3c22;--color-primary-subtle: #faeae5;--color-primary-border: #f0c3b6;--color-olive: #344c3d;--color-olive-hover: #26382c;--color-olive-subtle: #edf3ee;--color-olive-border: #c8ded0;--color-amber: #945814;--color-amber-subtle: #fdf5ea;--font-serif: "Newsreader", "Playfair Display", "Charter", "Iowan Old Style", Georgia, "Times New Roman", serif;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--max-width-site: 1200px;--max-width-content: 780px;--max-width-wide: 1000px;--header-height: 72px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 9999px;--shadow-subtle: 0 1px 3px rgba(30, 28, 26, .04), 0 1px 2px rgba(30, 28, 26, .02);--shadow-card: 0 3px 12px rgba(30, 28, 26, .05), 0 1px 4px rgba(30, 28, 26, .03);--shadow-overlay: 0 20px 40px -10px rgba(30, 28, 26, .2);--transition-fast: .15s cubic-bezier(.16, 1, .3, 1);--transition-base: .25s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);font-size:16px;line-height:1.6;color:var(--color-text-main);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{min-height:100vh;display:flex;flex-direction:column}main{flex:1}img,svg,picture{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);color:var(--color-text-main);line-height:1.25;font-weight:500;text-wrap:balance}h1{font-size:clamp(2rem,4vw + 1rem,3.25rem);letter-spacing:-.02em}h2{font-size:clamp(1.5rem,2.5vw + .5rem,2.25rem);letter-spacing:-.015em}h3{font-size:clamp(1.25rem,1.5vw + .5rem,1.6rem)}h4{font-size:1.2rem}p{color:var(--color-text-muted);line-height:1.7}.tabular-nums{font-variant-numeric:tabular-nums}.container{width:100%;max-width:var(--max-width-site);margin-inline:auto;padding-inline:var(--space-md)}.container-narrow{width:100%;max-width:var(--max-width-content);margin-inline:auto;padding-inline:var(--space-md)}.container-wide{width:100%;max-width:var(--max-width-wide);margin-inline:auto;padding-inline:var(--space-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.95rem;font-weight:500;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:all var(--transition-fast);line-height:1.3}.btn-primary{background-color:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}.btn-primary:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-surface);color:var(--color-text-main);border-color:var(--color-border)}.btn-secondary:hover{background-color:var(--color-surface-subtle);border-color:var(--color-text-muted)}.btn-olive{background-color:var(--color-olive);color:var(--color-text-inverse);border-color:var(--color-olive)}.btn-olive:hover{background-color:var(--color-olive-hover)}.btn-sm{padding:.4rem .85rem;font-size:.85rem}.btn-lg{padding:.85rem 1.75rem;font-size:1.05rem}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.78rem;font-weight:500;border-radius:var(--radius-sm);letter-spacing:.01em}.badge-terracotta{background-color:var(--color-primary-subtle);color:var(--color-primary);border:1px solid var(--color-primary-border)}.badge-olive{background-color:var(--color-olive-subtle);color:var(--color-olive);border:1px solid var(--color-olive-border)}.badge-neutral{background-color:var(--color-surface-subtle);color:var(--color-text-muted);border:1px solid var(--color-border-subtle)}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.card:hover{border-color:var(--color-border);box-shadow:var(--shadow-card);transform:translateY(-2px)}.card-content{padding:var(--space-md)}.section-header{margin-bottom:var(--space-lg);display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-sm)}.section-header-title{font-family:var(--font-serif);font-size:1.75rem;font-weight:500;color:var(--color-text-main)}.section-header-desc{font-size:.95rem;color:var(--color-text-muted);margin-top:.25rem}.section-header-link{font-size:.9rem;font-weight:500;color:var(--color-primary);display:inline-flex;align-items:center;gap:.25rem}.section-header-link:hover{text-decoration:underline}.grid-recipes{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-lg)}.grid-cols-2{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-lg)}.grid-cols-3{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-lg)}.grid-cols-4{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-md)}.callout{padding:var(--space-lg);border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:var(--color-surface-subtle);margin-block:var(--space-lg)}.callout-olive{background-color:var(--color-olive-subtle);border-color:var(--color-olive-border)}.callout-terracotta{background-color:var(--color-primary-subtle);border-color:var(--color-primary-border)}.callout-title{font-family:var(--font-serif);font-size:1.25rem;margin-bottom:var(--space-xs);color:var(--color-text-main)}.breadcrumbs{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--color-text-subtle);margin-bottom:var(--space-lg);flex-wrap:wrap}.breadcrumbs a{color:var(--color-text-muted)}.breadcrumbs a:hover{color:var(--color-primary)}.breadcrumbs .sep{opacity:.5}.skip-link{position:absolute;top:-100px;left:1rem;background:var(--color-primary);color:#fff;padding:.5rem 1rem;z-index:1000;border-radius:var(--radius-sm);font-weight:500;transition:top .2s ease}.skip-link:focus{top:1rem}@media print{body{background:#fff!important;color:#000!important}.no-print,header,footer,.btn,.search-trigger,.cooking-mode-btn{display:none!important}.container,.container-narrow,.container-wide{max-width:100%!important;padding:0!important}.recipe-layout{display:block!important}a{text-decoration:none!important;color:#000!important}}
