:root{--color-bg:#f8fafc;--color-card:#ffffff;--color-surface:#f1f5f9;--color-text:#0f172a;--color-text-muted:#475569;--color-text-light:#64748b;--color-accent:#0ea5e9;--color-accent-hover:#0284c7;--color-accent-contrast:#ffffff;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--shadow-sm:0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);--shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);--shadow-xl:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)}[data-theme=dark]{--color-bg:#0b1020;--color-card:#0f172a;--color-surface:#1e293b;--color-text:#e5e7eb;--color-text-muted:#94a3b8;--color-text-light:#64748b;--color-accent:#0ea5e9;--color-accent-hover:#38bdf8;--color-accent-contrast:#031318;--color-success:#34d399;--color-warning:#fbbf24;--color-error:#f87171;--color-info:#60a5fa;--color-border:#334155;--color-border-light:#1e293b;--shadow-sm:0 1px 2px 0 rgba(0, 0, 0, 0.3);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -1px rgba(0, 0, 0, 0.3);--shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.4), 0 4px 6px -2px rgba(0, 0, 0, 0.3);--shadow-xl:0 20px 25px -5px rgba(0, 0, 0, 0.4), 0 10px 10px -5px rgba(0, 0, 0, 0.3)}[data-theme=high-contrast]{--color-bg:#000000;--color-card:#1a1a1a;--color-surface:#2a2a2a;--color-text:#ffffff;--color-text-muted:#cccccc;--color-text-light:#999999;--color-accent:#ffff00;--color-accent-hover:#ffff66;--color-accent-contrast:#000000;--color-success:#00ff00;--color-warning:#ffaa00;--color-error:#ff0000;--color-info:#00aaff;--color-border:#666666;--color-border-light:#444444;--shadow-sm:0 1px 2px 0 rgba(255, 255, 255, 0.1);--shadow-md:0 4px 6px -1px rgba(255, 255, 255, 0.2), 0 2px 4px -1px rgba(255, 255, 255, 0.1);--shadow-lg:0 10px 15px -3px rgba(255, 255, 255, 0.2), 0 4px 6px -2px rgba(255, 255, 255, 0.1);--shadow-xl:0 20px 25px -5px rgba(255, 255, 255, 0.2), 0 10px 10px -5px rgba(255, 255, 255, 0.1)}:root{--font-sans:system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Ubuntu, Cantarell, 'Noto Sans', Arial, sans-serif;--font-mono:'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700}:root{--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem}:root{--container-max-width:1280px;--container-padding:var(--space-4)}@media(min-width:768px){:root{--container-padding:var(--space-6)}}@media(min-width:1024px){:root{--container-padding:var(--space-8)}}:root{--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px}:root{--transition-fast:150ms ease-in-out;--transition-base:250ms ease-in-out;--transition-slow:350ms ease-in-out}:root{--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}*,*::before,*::after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.2}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6,p,blockquote,pre,ul,ol,dl,figure,hr{margin:0}ul,ol{list-style:none}input,button,textarea,select{font:inherit}button{background:0 0;border:none;cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}table{border-collapse:collapse;border-spacing:0}fieldset{border:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-accent);color:var(--color-accent-contrast);padding:var(--space-2)var(--space-4);text-decoration:none;z-index:var(--z-tooltip)}.skip-link:focus{top:0}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text);margin-bottom:var(--space-4)}h1{font-size:clamp(var(--font-size-3xl),5vw,var(--font-size-5xl))}h2{font-size:clamp(var(--font-size-2xl),4vw,var(--font-size-4xl))}h3{font-size:clamp(var(--font-size-xl),3vw,var(--font-size-3xl))}h4{font-size:clamp(var(--font-size-lg),2.5vw,var(--font-size-2xl))}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--space-4);line-height:var(--line-height-relaxed)}a{color:var(--color-accent);text-decoration:underline;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}ul,ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}ul li,ol li{margin-bottom:var(--space-2);line-height:var(--line-height-relaxed)}ul{list-style-type:disc}ol{list-style-type:decimal}blockquote{border-left:4px solid var(--color-accent);padding-left:var(--space-4);margin:var(--space-6)0;font-style:italic;color:var(--color-text-muted)}code{font-family:var(--font-mono);font-size:.9em;background-color:var(--color-surface);padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm)}pre{background-color:var(--color-surface);padding:var(--space-4);border-radius:var(--radius-md);overflow-x:auto;margin-bottom:var(--space-4)}pre code{background:0 0;padding:0}strong,b{font-weight:var(--font-weight-bold)}em,i{font-style:italic}small{font-size:var(--font-size-sm)}hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-8)0}table{width:100%;margin-bottom:var(--space-6);border-collapse:collapse}table th,table td{padding:var(--space-3)var(--space-4);text-align:left;border-bottom:1px solid var(--color-border)}table th{font-weight:var(--font-weight-semibold);background-color:var(--color-surface)}table tbody tr:hover{background-color:var(--color-surface)}dl{margin-bottom:var(--space-4)}dl dt{font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}dl dd{margin-left:var(--space-4);margin-bottom:var(--space-4)}.container{width:100%;max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}.main-content{min-height:calc(100vh - 200px);padding:var(--space-8)0}.grid{display:grid;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.flex{display:flex;gap:var(--space-4)}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.section{padding:var(--space-12)0}@media(min-width:768px){.section{padding:var(--space-16)0}}.card{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}@media(max-width:767px){.hide-mobile{display:none!important}}@media(min-width:768px){.hide-desktop{display:none!important}}.show-mobile{display:none!important}@media(max-width:767px){.show-mobile{display:block!important}}.show-desktop{display:none!important}@media(min-width:768px){.show-desktop{display:block!important}}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3)var(--space-6);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:1;text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;border:2px solid transparent}.button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.button-primary{background-color:var(--color-accent);color:var(--color-accent-contrast)}.button-primary:hover{background-color:var(--color-accent-hover)}.button-secondary{background-color:var(--color-surface);color:var(--color-text)}.button-secondary:hover{background-color:var(--color-border)}.button-outline{background-color:initial;color:var(--color-accent);border-color:var(--color-accent)}.button-outline:hover{background-color:var(--color-accent);color:var(--color-accent-contrast)}.tag{display:inline-block;padding:var(--space-1)var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background-color:var(--color-surface);color:var(--color-text);border-radius:var(--radius-full);text-decoration:none;transition:background-color var(--transition-fast)}.tag:hover{background-color:var(--color-border)}.tag-taste{background-color:rgba(14,165,233,.1);color:var(--color-accent)}.tag-application{background-color:rgba(16,185,129,.1);color:var(--color-success)}.tag-dietary{background-color:rgba(245,158,11,.1);color:var(--color-warning)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.badge-success{background-color:var(--color-success);color:#fff}.badge-warning{background-color:var(--color-warning);color:#fff}.badge-error{background-color:var(--color-error);color:#fff}.mt-0{margin-top:0!important}.mt-1{margin-top:var(--space-1)!important}.mt-2{margin-top:var(--space-2)!important}.mt-4{margin-top:var(--space-4)!important}.mt-6{margin-top:var(--space-6)!important}.mt-8{margin-top:var(--space-8)!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:var(--space-1)!important}.mb-2{margin-bottom:var(--space-2)!important}.mb-4{margin-bottom:var(--space-4)!important}.mb-6{margin-bottom:var(--space-6)!important}.mb-8{margin-bottom:var(--space-8)!important}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-muted{color:var(--color-text-muted)}.text-light{color:var(--color-text-light)}.font-bold{font-weight:var(--font-weight-bold)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-medium{font-weight:var(--font-weight-medium)}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.site-header{background-color:var(--color-card);border-bottom:1px solid var(--color-border);padding:var(--space-4)0;position:sticky;top:0;z-index:var(--z-sticky);box-shadow:var(--shadow-sm)}.header-content{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}.site-branding{flex:none}.site-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text);text-decoration:none}.site-title:hover{color:var(--color-accent)}.site-description{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-1)}.main-navigation{flex:auto}@media(max-width:767px){.main-navigation{flex-basis:100%;order:3}}.menu-toggle{display:none}@media(max-width:767px){.menu-toggle{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background-color:var(--color-surface);border-radius:var(--radius-md)}}.menu{display:flex;gap:var(--space-6);list-style:none;padding:0;margin:0}@media(max-width:767px){.menu{display:none;flex-direction:column;gap:var(--space-2);padding:var(--space-4)0}.menu[aria-expanded=true]{display:flex}}.menu-item a{color:var(--color-text);text-decoration:none;font-weight:var(--font-weight-medium);padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.menu-item a:hover{background-color:var(--color-surface);color:var(--color-accent)}.menu-item.current-menu-item a{color:var(--color-accent);background-color:var(--color-surface)}.header-controls{display:flex;align-items:center;gap:var(--space-3)}.theme-toggle,.search-toggle{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:var(--color-surface);border-radius:var(--radius-md);transition:all var(--transition-fast);color:var(--color-text)}.theme-toggle:hover,.search-toggle:hover{background-color:var(--color-border)}.theme-toggle:focus-visible,.search-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.theme-toggle-icon{display:inline-block;width:20px;height:20px;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23333333" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M12 2a10 10 0 0 1 0 20V2z"></path></svg>');background-size:contain;background-repeat:no-repeat;background-position:50%;background-color:initial}.search-toggle-icon{display:inline-block;width:20px;height:20px;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23333333" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.35-4.35"></path></svg>');background-size:contain;background-repeat:no-repeat;background-position:50%;background-color:initial}[data-theme=light] .theme-toggle-icon,[data-theme=light] .search-toggle-icon{filter:brightness(.85)contrast(1.1)}[data-theme=dark] .theme-toggle-icon,[data-theme=dark] .search-toggle-icon{filter:invert(1)brightness(1.1)}[data-theme=high-contrast] .theme-toggle-icon,[data-theme=high-contrast] .search-toggle-icon{filter:brightness(0)contrast(1.5)saturate(0)}.theme-toggle,.search-toggle{color:var(--color-text)}.site-footer{background-color:var(--color-card);border-top:1px solid var(--color-border);padding:var(--space-12)0 var(--space-6);margin-top:var(--space-16)}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-8);margin-bottom:var(--space-8)}.footer-section h2{font-size:var(--font-size-lg);margin-bottom:var(--space-4)}.footer-menu{list-style:none;padding:0}.footer-menu li{margin-bottom:var(--space-2)}.footer-menu a{color:var(--color-text-muted);text-decoration:none;transition:color var(--transition-fast)}.footer-menu a:hover{color:var(--color-accent)}.footer-bottom{padding-top:var(--space-6);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted)}.footer-bottom a{color:var(--color-text-muted);text-decoration:underline}.footer-bottom a:hover{color:var(--color-accent)}.page-navigation{margin-top:var(--space-12);padding:var(--space-8)0;border-top:1px solid var(--color-border)}.nav-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-6)}.nav-link{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;transition:all var(--transition-base)}.nav-link:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md)}.nav-link.nav-next{text-align:right}.nav-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.nav-title{font-size:var(--font-size-lg);color:var(--color-text);font-weight:var(--font-weight-semibold)}.recipe-header{padding:var(--space-8)0;background-color:var(--color-card);border-bottom:1px solid var(--color-border)}.recipe-title{margin-bottom:var(--space-4)}.recipe-description{font-size:var(--font-size-lg);color:var(--color-text-muted);margin-bottom:var(--space-6)}.recipe-meta-bar{display:flex;flex-wrap:wrap;gap:var(--space-6);margin-bottom:var(--space-6)}.recipe-meta-bar .meta-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-base)}.recipe-meta-bar .meta-item svg{color:var(--color-accent)}.recipe-tags-bar{display:flex;flex-direction:column;gap:var(--space-3)}.tag-group{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.tag-group-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.recipe-hero{margin-bottom:var(--space-8)}.recipe-hero-image{width:100%;height:auto;max-height:500px;object-fit:cover;border-radius:var(--radius-xl)}.recipe-warnings{margin-bottom:var(--space-8)}.warning-box{background-color:rgba(245,158,11,.1);border:2px solid var(--color-warning);border-radius:var(--radius-lg);padding:var(--space-6)}.warning-title{display:flex;align-items:center;gap:var(--space-2);color:var(--color-warning);margin-bottom:var(--space-4)}.warning-title svg{flex-shrink:0}.sensory-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-4)}.sensory-category h3{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-base);margin-bottom:var(--space-2)}.sensory-category ul{list-style:disc;padding-left:var(--space-6);margin:0}.sensory-category ul li{margin-bottom:var(--space-1);font-size:var(--font-size-sm)}.recipe-controls{margin-bottom:var(--space-6);display:flex;justify-content:flex-end}.language-toggle{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.language-toggle:hover{background-color:var(--color-border)}.language-toggle[aria-pressed=true]{background-color:var(--color-accent);color:var(--color-accent-contrast);border-color:var(--color-accent)}.recipe-mode-selector{display:flex;gap:var(--space-2);margin-bottom:var(--space-8);border-bottom:2px solid var(--color-border);overflow-x:auto}.mode-tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-muted);background:0 0;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.mode-tab svg{flex-shrink:0}.mode-tab:hover{color:var(--color-text);background-color:var(--color-surface)}.mode-tab[aria-selected=true]{color:var(--color-accent);border-bottom-color:var(--color-accent)}.recipe-layout{display:grid;grid-template-columns:1fr;gap:var(--space-8)}@media(min-width:1024px){.recipe-layout{grid-template-columns:350px 1fr}}@media(min-width:1024px){.recipe-sidebar{position:sticky;top:calc(var(--space-16) + 60px);align-self:start;max-height:calc(100vh - var(--space-16) - 80px);overflow-y:auto}}.recipe-ingredients{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6)}.recipe-ingredients h2{font-size:var(--font-size-xl);margin-bottom:var(--space-4)}.ingredients-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);flex-wrap:wrap;gap:var(--space-4)}.servings-control{display:flex;align-items:center;gap:var(--space-2)}.servings-control label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.servings-adjuster{display:flex;align-items:center;gap:var(--space-1)}.servings-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);transition:all var(--transition-fast)}.servings-btn:hover{background-color:var(--color-accent);color:var(--color-accent-contrast);border-color:var(--color-accent)}.servings-input{width:60px;height:32px;text-align:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-weight:var(--font-weight-semibold)}.ingredients-list{list-style:none;padding:0;margin:0}.ingredient-item{padding:var(--space-3)0;border-bottom:1px solid var(--color-border-light)}.ingredient-item:last-child{border-bottom:none}.ingredient-amount{font-weight:var(--font-weight-bold);color:var(--color-accent);min-width:3ch;display:inline-block}.ingredient-unit{color:var(--color-text-muted);margin-right:var(--space-2)}.ingredient-name{font-weight:var(--font-weight-medium)}.ingredient-prep{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-1);margin-left:calc(3ch + var(--space-2))}.ingredient-substitutes-toggle{display:inline-block;margin-left:var(--space-2);padding:var(--space-1)var(--space-2);font-size:var(--font-size-xs);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.ingredient-substitutes-toggle:hover{background-color:var(--color-accent);color:var(--color-accent-contrast);border-color:var(--color-accent)}.ingredient-substitutes{margin-top:var(--space-2);margin-left:calc(3ch + var(--space-2));padding:var(--space-3);background-color:var(--color-surface);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.ingredient-substitutes ul{list-style:none;padding:0;margin:0}.ingredient-substitutes ul li{margin-bottom:var(--space-2)}.ingredient-substitutes ul li:last-child{margin-bottom:0}.recipe-utensils{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.recipe-utensils h2{font-size:var(--font-size-xl);margin-bottom:var(--space-4)}.utensils-table{font-size:var(--font-size-sm)}.utensils-table th{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.recipe-steps h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-6);margin-top:var(--space-8)}.recipe-steps h3:first-child{margin-top:0}.recipe-steps-checklist .steps-list{list-style:none;padding:0;counter-reset:step-counter}.recipe-steps-checklist .step-item{display:flex;gap:var(--space-4);padding:var(--space-4);margin-bottom:var(--space-4);background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base)}.recipe-steps-checklist .step-item:hover{box-shadow:var(--shadow-md)}.recipe-steps-checklist .step-checkbox{flex-shrink:0;width:24px;height:24px;margin-top:2px;cursor:pointer}.recipe-steps-checklist .step-checkbox:checked+.step-checkbox-label+.step-content{opacity:.6;text-decoration:line-through}.recipe-steps-checklist .step-content{flex:1}.recipe-steps-checklist .step-instruction{display:block;margin-bottom:var(--space-2);line-height:var(--line-height-relaxed)}.recipe-steps-checklist .step-meta{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted)}.recipe-steps-checklist .step-time,.recipe-steps-checklist .step-temperature{display:flex;align-items:center;gap:var(--space-1)}.recipe-steps-checklist .timer-btn{margin-left:var(--space-2);padding:var(--space-1)var(--space-2);font-size:var(--font-size-xs);background-color:var(--color-accent);color:var(--color-accent-contrast);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.recipe-steps-checklist .timer-btn:hover{background-color:var(--color-accent-hover)}.recipe-steps-photos .steps-photo-grid{display:grid;gap:var(--space-8)}.recipe-steps-photos .step-photo-item{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media(min-width:768px){.recipe-steps-photos .step-photo-item{grid-template-columns:300px 1fr}}.recipe-steps-photos .step-photo img{width:100%;height:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.recipe-steps-photos .step-number{display:inline-block;padding:var(--space-1)var(--space-3);background-color:var(--color-accent);color:var(--color-accent-contrast);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);margin-bottom:var(--space-2)}.recipe-steps-narrative .steps-phase{margin-bottom:var(--space-8)}.recipe-steps-narrative .steps-narrative-content{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.recipe-steps-narrative .step-narrative{margin-bottom:var(--space-4);line-height:var(--line-height-relaxed)}.recipe-steps-narrative .step-narrative:last-child{margin-bottom:0}.recipe-steps-narrative .step-narrative strong{color:var(--color-accent)}.recipe-steps-narrative .step-meta-inline{color:var(--color-text-muted);font-size:var(--font-size-sm)}.recipe-additional,.recipe-tips{margin-top:var(--space-12);padding:var(--space-6);background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.recipe-additional h2,.recipe-tips h2{margin-bottom:var(--space-4)}.tips-list{list-style:disc;padding-left:var(--space-6)}.tips-list li{margin-bottom:var(--space-3);line-height:var(--line-height-relaxed)}.recipe-changelog{margin-top:var(--space-8);padding:var(--space-4);background-color:var(--color-surface);border-radius:var(--radius-md)}.recipe-changelog summary{font-weight:var(--font-weight-semibold);cursor:pointer;padding:var(--space-2)}.recipe-changelog summary:hover{color:var(--color-accent)}.recipe-changelog .changelog-list{margin-top:var(--space-4)}.recipe-changelog .changelog-entry{padding:var(--space-3)0;border-bottom:1px solid var(--color-border-light)}.recipe-changelog .changelog-entry:last-child{border-bottom:none}.recipe-changelog .changelog-entry dt{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-1)}.recipe-changelog .changelog-entry dd{margin-left:0}.recipe-metadata{margin-top:var(--space-12);padding:var(--space-8)0;background-color:var(--color-surface);border-top:1px solid var(--color-border)}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-6);margin-bottom:var(--space-6)}.metadata-item h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.metadata-item p{font-size:var(--font-size-base);margin:0}.metadata-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.action-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.action-btn:hover{background-color:var(--color-accent);color:var(--color-accent-contrast);border-color:var(--color-accent)}.action-btn svg{flex-shrink:0}.recipe-card{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-base);display:flex;flex-direction:column;height:100%}.recipe-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.recipe-card-image{position:relative;aspect-ratio:4/3;overflow:hidden}.recipe-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.recipe-card-image a:hover img{transform:scale(1.1)}.recipe-difficulty{position:absolute;top:var(--space-3);right:var(--space-3);padding:var(--space-1)var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;border-radius:var(--radius-full);background-color:rgba(255,255,255,.95);color:var(--color-text)}.recipe-difficulty.recipe-difficulty-einfach{background-color:rgba(16,185,129,.95);color:#fff}.recipe-difficulty.recipe-difficulty-mittel{background-color:rgba(245,158,11,.95);color:#fff}.recipe-difficulty.recipe-difficulty-schwer{background-color:rgba(239,68,68,.95);color:#fff}.recipe-card-content{padding:var(--space-4);flex:1;display:flex;flex-direction:column}.recipe-card-title{font-size:var(--font-size-xl);margin-bottom:var(--space-2)}.recipe-card-title a{color:var(--color-text);text-decoration:none;transition:color var(--transition-fast)}.recipe-card-title a:hover{color:var(--color-accent)}.recipe-card-description{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-relaxed);margin-bottom:var(--space-3);flex:1}.recipe-card-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-3)}.recipe-card-meta .meta-item{display:flex;align-items:center;gap:var(--space-1)}.recipe-card-meta .meta-item svg{flex-shrink:0;color:var(--color-accent)}.recipe-card-meta .meta-separator{color:var(--color-border)}.recipe-card-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.recipe-card-warning{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background-color:rgba(245,158,11,.1);border:1px solid var(--color-warning);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-warning);font-weight:var(--font-weight-medium)}.recipe-card-warning svg{flex-shrink:0}.search-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--z-modal);display:flex;align-items:flex-start;justify-content:center;padding:var(--space-8)var(--space-4)}.search-modal[hidden]{display:none}.search-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:var(--z-modal-backdrop);cursor:pointer}.search-modal-content{position:relative;width:100%;max-width:700px;max-height:80vh;background-color:var(--color-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:var(--z-modal);display:flex;flex-direction:column}.search-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4)var(--space-6);border-bottom:1px solid var(--color-border)}.search-modal-title{font-size:var(--font-size-xl);margin:0}.search-modal-close{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font-size:var(--font-size-3xl);line-height:1;transition:all var(--transition-fast)}.search-modal-close:hover{background-color:var(--color-surface)}.search-modal-body{flex:1;overflow-y:auto;padding:var(--space-6)}.search-form{margin-bottom:var(--space-4)}.search-input{width:100%;padding:var(--space-3)var(--space-4);font-size:var(--font-size-lg);background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(14,165,233,.1)}.search-results{min-height:200px}.search-results-empty{text-align:center;color:var(--color-text-muted);padding:var(--space-8)}.search-result-item{padding:var(--space-4);border-bottom:1px solid var(--color-border);transition:background-color var(--transition-fast)}.search-result-item:hover{background-color:var(--color-surface)}.search-result-item:last-child{border-bottom:none}.search-result-item a{text-decoration:none;color:var(--color-text)}.search-result-item a:hover{color:var(--color-accent)}.search-result-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.search-result-excerpt{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-relaxed)}.search-results-header{padding:var(--space-2)0 var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.search-result-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2)}.search-result-type{font-size:var(--font-size-xs);padding:var(--space-1)var(--space-2);background-color:var(--color-accent);color:var(--color-accent-contrast);border-radius:var(--radius-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;flex-shrink:0}.search-result-meta{display:flex;gap:var(--space-3);margin-top:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted)}.result-time,.result-difficulty{display:inline-flex;align-items:center;gap:var(--space-1)}.timer-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-fixed);display:flex;flex-direction:column;gap:var(--space-3);max-width:300px}@media(max-width:640px){.timer-container{bottom:var(--space-4);right:var(--space-4);left:var(--space-4);max-width:none}}.timer-item{background-color:var(--color-card);border:2px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-xl);animation:timer-slide-in .3s ease-out}.timer-item.timer-paused{border-color:var(--color-warning)}.timer-item.timer-complete{border-color:var(--color-success);animation:timer-pulse .5s ease-in-out 3}.timer-item.timer-removing{animation:timer-slide-out .3s ease-in}@keyframes timer-slide-in{from{transform:translateX(400px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes timer-slide-out{from{transform:translateX(0);opacity:1}to{transform:translateX(400px);opacity:0}}@keyframes timer-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}.timer-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3);gap:var(--space-2)}.timer-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);flex:1;line-height:1.4}.timer-close{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:var(--font-size-xl);line-height:1;color:var(--color-text-muted);transition:all var(--transition-fast);flex-shrink:0}.timer-close:hover{background-color:var(--color-surface);color:var(--color-text)}.timer-display{text-align:center;margin-bottom:var(--space-3)}.timer-time{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--color-accent)}.timer-complete .timer-time{color:var(--color-success)}.timer-paused .timer-time{color:var(--color-warning)}.timer-controls{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.timer-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-2)var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.timer-btn svg{flex-shrink:0}.timer-btn:hover{background-color:var(--color-accent);color:var(--color-accent-contrast);border-color:var(--color-accent)}.timer-btn.timer-started{animation:button-press .3s ease-out}@keyframes button-press{0%{transform:scale(1)}50%{transform:scale(.95)}100%{transform:scale(1)}}.timer-progress{height:4px;background-color:var(--color-surface);border-radius:var(--radius-full);overflow:hidden}.timer-progress-bar{height:100%;background-color:var(--color-accent);transition:width 1s linear}.timer-complete .timer-progress-bar{background-color:var(--color-success)}.timer-paused .timer-progress-bar{background-color:var(--color-warning)}.timer-notification{position:fixed;top:var(--space-6);right:var(--space-6);max-width:350px;background-color:var(--color-success);color:#fff;padding:var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:var(--z-tooltip);animation:notification-slide-in .3s ease-out}.timer-notification.timer-notification-fade{animation:notification-fade-out .3s ease-in}.timer-notification strong{display:block;font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.timer-notification p{margin:0;font-size:var(--font-size-sm)}@media(max-width:640px){.timer-notification{top:var(--space-4);right:var(--space-4);left:var(--space-4);max-width:none}}@keyframes notification-slide-in{from{transform:translateY(-100px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes notification-fade-out{from{opacity:1}to{opacity:0}}.progress-indicator{background-color:var(--color-card);border:2px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6);position:sticky;top:calc(var(--space-16) + 60px);z-index:var(--z-sticky);box-shadow:var(--shadow-md)}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3);gap:var(--space-4)}.progress-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.progress-percentage{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-accent)}.progress-bar-container{height:8px;background-color:var(--color-surface);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-3)}.progress-bar{height:100%;background:linear-gradient(90deg,var(--color-accent),var(--color-success));border-radius:var(--radius-full);transition:width .3s ease-out}.progress-reset{width:100%;padding:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.progress-reset:hover{background-color:var(--color-error);color:#fff;border-color:var(--color-error)}.step-checkbox{appearance:none;width:24px;height:24px;border:2px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-card);cursor:pointer;position:relative;transition:all var(--transition-fast);flex-shrink:0}.step-checkbox:hover{border-color:var(--color-accent)}.step-checkbox:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.step-checkbox:checked{background-color:var(--color-success);border-color:var(--color-success)}.step-checkbox:checked::after{content:'';position:absolute;left:7px;top:3px;width:6px;height:12px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.help-toggle{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:var(--color-surface);border-radius:var(--radius-md);transition:all var(--transition-fast)}.help-toggle:hover{background-color:var(--color-border)}.help-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.keyboard-help-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.keyboard-help-modal[hidden]{display:none}.keyboard-help-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:var(--z-modal-backdrop);cursor:pointer}.keyboard-help-content{position:relative;width:100%;max-width:600px;max-height:80vh;background-color:var(--color-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:var(--z-modal);display:flex;flex-direction:column;animation:modal-slide-up .3s ease-out}@keyframes modal-slide-up{from{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.keyboard-help-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);border-bottom:1px solid var(--color-border)}.keyboard-help-header h2{margin:0;font-size:var(--font-size-2xl)}.keyboard-help-close{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font-size:var(--font-size-3xl);line-height:1;transition:all var(--transition-fast)}.keyboard-help-close:hover{background-color:var(--color-surface)}.keyboard-help-body{flex:1;overflow-y:auto;padding:var(--space-6)}.shortcuts-list{display:grid;gap:var(--space-4)}.shortcut-item{display:grid;grid-template-columns:auto 1fr;gap:var(--space-4);align-items:center;padding:var(--space-3);background-color:var(--color-surface);border-radius:var(--radius-md)}.shortcut-item dt{margin:0}.shortcut-item dd{margin:0;color:var(--color-text-muted)}kbd{display:inline-block;padding:var(--space-1)var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);background-color:var(--color-card);border:2px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 2px 0 var(--color-border);color:var(--color-text)}body.using-keyboard *:focus{outline:3px solid var(--color-accent);outline-offset:3px;box-shadow:0 0 0 5px rgba(14,165,233,.2)}body.using-keyboard button:focus,body.using-keyboard a:focus{outline:3px solid var(--color-accent);outline-offset:3px}.skip-link:focus{outline:3px solid var(--color-accent-contrast);outline-offset:2px}.sr-only-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}[data-theme=high-contrast] .card,[data-theme=high-contrast] .recipe-card,[data-theme=high-contrast] .recipe-ingredients,[data-theme=high-contrast] .recipe-utensils,[data-theme=high-contrast] .step-item{border-width:3px}[data-theme=high-contrast] a{text-decoration:underline;text-decoration-thickness:2px}[data-theme=high-contrast] *:focus-visible{outline-width:4px;outline-offset:4px}[data-theme=high-contrast] .card,[data-theme=high-contrast] .recipe-card{box-shadow:none}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}a:not(.button):hover,a:not(.button):focus{text-decoration-thickness:2px}@media(pointer:coarse){button,a,input[type=checkbox],input[type=radio],select{min-width:44px;min-height:44px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.recipe-ingredients:focus-within,.recipe-utensils:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(14,165,233,.1)}.home-page .hero{padding:var(--space-16)0;text-align:center;background:radial-gradient(1200px 600px at 50% 0%,rgba(14,165,233,.1),transparent 70%)}.home-page .hero-title{margin-bottom:var(--space-4)}.home-page .hero-description{font-size:var(--font-size-xl);color:var(--color-text-muted);max-width:600px;margin:0 auto var(--space-8)}.home-page .hero-actions{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.home-page .featured-recipes{padding:var(--space-12)0}.home-page .section-title{text-align:center;margin-bottom:var(--space-8)}.home-page .recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.home-page .section-actions{text-align:center}.home-page .features{padding:var(--space-12)0;background-color:var(--color-surface)}.home-page .features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6);margin-top:var(--space-8)}.home-page .feature-card{padding:var(--space-6);text-align:center}.home-page .feature-icon{width:64px;height:64px;margin:0 auto var(--space-4);display:flex;align-items:center;justify-content:center;background-color:rgba(14,165,233,.1);border-radius:var(--radius-xl);color:var(--color-accent)}.home-page .feature-title{font-size:var(--font-size-xl);margin-bottom:var(--space-3)}.home-page .feature-description{color:var(--color-text-muted);line-height:var(--line-height-relaxed)}.home-page .cta{padding:var(--space-16)0;text-align:center}.home-page .cta-title{margin-bottom:var(--space-4)}.home-page .cta-description{font-size:var(--font-size-lg);color:var(--color-text-muted);max-width:600px;margin:0 auto var(--space-6)}.list-page .page-header,.recipes-page .page-header{padding:var(--space-8)0;background-color:var(--color-card);border-bottom:1px solid var(--color-border);text-align:center}.list-page .page-title,.recipes-page .page-title{margin-bottom:var(--space-3)}.list-page .page-description,.recipes-page .page-description{font-size:var(--font-size-lg);color:var(--color-text-muted);max-width:700px;margin:0 auto}.list-page .page-content,.recipes-page .page-content{padding:var(--space-8)0}.list-page .page-intro,.recipes-page .page-intro{max-width:800px;margin:0 auto var(--space-8);text-align:center}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.item-card{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-base)}.item-card:hover{box-shadow:var(--shadow-md)}.item-image{aspect-ratio:16/9;overflow:hidden}.item-image img{width:100%;height:100%;object-fit:cover}.item-content{padding:var(--space-4)}.item-title{font-size:var(--font-size-xl);margin-bottom:var(--space-2)}.item-title a{color:var(--color-text);text-decoration:none}.item-title a:hover{color:var(--color-accent)}.item-summary{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-relaxed);margin-bottom:var(--space-3)}.item-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-3)}.item-meta .meta-separator{color:var(--color-border)}.item-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.recipes-layout{display:grid;grid-template-columns:1fr;gap:var(--space-8)}@media(min-width:1024px){.recipes-layout{grid-template-columns:280px 1fr}}@media(min-width:1024px){.recipes-sidebar{position:sticky;top:calc(var(--space-16) + 60px);align-self:start;max-height:calc(100vh - var(--space-16) - 80px);overflow-y:auto}}.filter-section{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.filter-title{font-size:var(--font-size-xl);margin-bottom:var(--space-4)}.filter-group{margin-bottom:var(--space-6)}.filter-group:last-child{margin-bottom:0}.filter-group-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3)}.filter-list{list-style:none;padding:0;margin:0}.filter-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);text-decoration:none;color:var(--color-text);transition:all var(--transition-fast)}.filter-item:hover{background-color:var(--color-surface);color:var(--color-accent)}.filter-count{font-size:var(--font-size-sm);color:var(--color-text-muted)}.recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6)}.no-content{text-align:center;color:var(--color-text-muted);padding:var(--space-12);font-size:var(--font-size-lg)}.single-page .page-header{padding:var(--space-8)0;background-color:var(--color-card);border-bottom:1px solid var(--color-border)}.single-page .page-title{margin-bottom:var(--space-3)}.single-page .page-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.single-page .page-meta .meta-separator{color:var(--color-border)}.single-page .page-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.single-page .page-hero{margin:var(--space-8)0}.single-page .page-hero .hero-image{width:100%;height:auto;max-height:500px;object-fit:cover;border-radius:var(--radius-xl)}.single-page .page-content{padding:var(--space-8)0}.single-page .content-wrapper{max-width:800px;margin:0 auto}.single-page .content-wrapper>*+*{margin-top:var(--space-4)}.blog-page .page-header{padding:var(--space-12)0;background:linear-gradient(135deg,rgba(14,165,233,5%),rgba(14,165,233,2%));border-bottom:1px solid var(--color-border)}.blog-posts{display:grid;gap:var(--space-8);max-width:900px;margin:0 auto}.blog-post-card{background-color:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-base)}.blog-post-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.blog-post-image{aspect-ratio:16/9;overflow:hidden}.blog-post-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.blog-post-image a:hover img{transform:scale(1.1)}.blog-post-content{padding:var(--space-6)}.post-categories{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.post-category{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent);text-decoration:none}.post-category:hover{text-decoration:underline}.blog-post-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-3)}.blog-post-title a{color:var(--color-text);text-decoration:none}.blog-post-title a:hover{color:var(--color-accent)}.blog-post-summary{font-size:var(--font-size-base);color:var(--color-text-muted);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.blog-post-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.blog-post-meta .meta-separator{color:var(--color-border)}.blog-post-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-accent);font-weight:var(--font-weight-medium);text-decoration:none;transition:gap var(--transition-fast)}.blog-post-link:hover{gap:var(--space-3)}.blog-post .post-header{padding:var(--space-12)0;background:linear-gradient(135deg,rgba(14,165,233,5%),rgba(14,165,233,2%));border-bottom:1px solid var(--color-border)}.blog-post .post-title{margin-bottom:var(--space-4)}.blog-post .post-description{font-size:var(--font-size-xl);color:var(--color-text-muted);line-height:var(--line-height-relaxed);margin-bottom:var(--space-6)}.blog-post .post-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.blog-post .post-meta .meta-separator{color:var(--color-border)}.blog-post .post-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.blog-post .post-hero{margin:var(--space-8)0}.blog-post .post-hero .post-hero-image{width:100%;height:auto;max-height:500px;object-fit:cover;border-radius:var(--radius-xl)}.blog-post .post-content{padding:var(--space-8)0}.blog-post .post-content .content-wrapper{max-width:800px;margin:0 auto;font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}.blog-post .post-content .content-wrapper h2{margin-top:var(--space-12);margin-bottom:var(--space-4)}.blog-post .post-content .content-wrapper h3{margin-top:var(--space-8);margin-bottom:var(--space-3)}.blog-post .post-content .content-wrapper p{margin-bottom:var(--space-6)}.blog-post .post-content .content-wrapper ul,.blog-post .post-content .content-wrapper ol{margin-bottom:var(--space-6)}.blog-post .post-content .content-wrapper blockquote{margin:var(--space-8)0;padding:var(--space-6);background-color:var(--color-surface);border-left:4px solid var(--color-accent);border-radius:var(--radius-md)}.blog-post .related-recipes{padding:var(--space-12)0;background-color:var(--color-surface)}.blog-post .related-recipes h2{margin-bottom:var(--space-6)}.blog-post .related-recipes .related-recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6)}.blog-post .post-navigation{margin-top:var(--space-12);padding:var(--space-8)0;border-top:1px solid var(--color-border)}.reference-page .content-wrapper{max-width:900px;margin:0 auto}.reference-page .content-wrapper h2{margin-top:var(--space-12);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:2px solid var(--color-border)}.reference-page .content-wrapper h2:first-of-type{margin-top:var(--space-6)}.reference-page .content-wrapper h3{margin-top:var(--space-8);margin-bottom:var(--space-3);color:var(--color-accent)}.reference-page .content-wrapper p strong{display:block;margin-bottom:var(--space-2);color:var(--color-text)}.reference-page .content-wrapper hr{margin:var(--space-8)0;border-color:var(--color-border-light)}.reference-page .content-wrapper ul,.reference-page .content-wrapper ol{margin-bottom:var(--space-6)}.reference-page .content-wrapper ul li,.reference-page .content-wrapper ol li{margin-bottom:var(--space-3);line-height:var(--line-height-relaxed)}.taxonomy-page .page-header,.terms-page .page-header{padding:var(--space-8)0;background-color:var(--color-card);border-bottom:1px solid var(--color-border);text-align:center}.taxonomy-page .page-content,.terms-page .page-content{padding:var(--space-8)0}.terms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4)}.term-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6);background-color:var(--color-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;text-align:center;transition:all var(--transition-base);min-height:120px}.term-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.term-title{font-size:var(--font-size-xl);color:var(--color-text);margin-bottom:var(--space-2)}.term-count{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:var(--font-weight-medium)}@media print{.site-header,.site-footer,.header-controls,.menu-toggle,.theme-toggle,.search-toggle,.recipe-mode-selector,.language-toggle,.recipe-controls,.page-navigation,.metadata-actions,.ingredient-substitutes-toggle,.timer-btn,.search-modal{display:none!important}*{background:#fff!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}body{font-size:12pt;line-height:1.5}.container{max-width:100%;padding:0}h1{font-size:24pt;page-break-after:avoid}h2{font-size:18pt;page-break-after:avoid}h3{font-size:14pt;page-break-after:avoid}a{text-decoration:underline}a[href]:after{content:" (" attr(href)")";font-size:10pt}.recipe-layout{display:block}.recipe-sidebar{position:static;max-height:none;margin-bottom:20pt}.recipe-mode{display:block!important}#mode-photos,#mode-narrative{display:none!important}.recipe-ingredients{border:2pt solid #000;padding:10pt;margin-bottom:15pt;page-break-inside:avoid}.ingredients-list li{margin-bottom:5pt}.recipe-utensils{border:1pt solid #000;padding:10pt;margin-bottom:15pt;page-break-inside:avoid}.utensils-table{font-size:10pt}.utensils-table th,.utensils-table td{padding:5pt;border:1pt solid #000}.recipe-steps .step-item{border:1pt solid #000;padding:10pt;margin-bottom:10pt;page-break-inside:avoid}.recipe-steps .step-checkbox{display:none}.recipe-tips{border:1pt solid #000;padding:10pt;margin-top:15pt;page-break-inside:avoid}.recipe-header,.recipe-warnings,.steps-phase{page-break-inside:avoid}.recipe-title{page-break-before:avoid}}