:root{--color-bg: #FDFAF5;--color-text: #2C1810;--color-accent: #B85C38;--color-border: #E8E0D5;--color-muted: #8B7B72;--color-surface: #F5EFE6;--font-serif: "Lora", Georgia, "Times New Roman", serif;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--max-width: 48rem;--max-width-wide: 72rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}img,video{max-width:100%;display:block}html{font-size:18px;-webkit-text-size-adjust:100%}body{font-family:var(--font-serif);background:var(--color-bg);color:var(--color-text);line-height:1.7;min-height:100vh;display:flex;flex-direction:column}main{flex:1}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:600;line-height:1.25}a{color:var(--color-accent);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{text-decoration:none}.site-header{border-bottom:1px solid var(--color-border);padding:1rem 1.5rem}.site-header-inner{max-width:var(--max-width-wide);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.site-title{font-family:var(--font-serif);font-size:1.05rem;font-weight:600;color:var(--color-text);text-decoration:none;letter-spacing:.01em}.site-title:hover{color:var(--color-accent)}.site-nav{display:flex;gap:1.5rem;font-size:.8rem}.site-nav a{color:var(--color-muted);text-decoration:none;font-family:var(--font-sans)}.site-nav a:hover{color:var(--color-accent)}.site-footer{border-top:1px solid var(--color-border);padding:1.5rem;text-align:center;font-size:.75rem;font-family:var(--font-sans);color:var(--color-muted)}.index-header{max-width:var(--max-width-wide);margin:0 auto;padding:3.5rem 1.5rem 2rem}.index-header h1{font-size:2.25rem;margin-bottom:.5rem}.index-header p{color:var(--color-muted);font-style:italic;font-size:.95rem;max-width:36rem}.filter-row{max-width:var(--max-width-wide);margin:0 auto;padding:0 1.5rem 2.5rem;display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end}.filter-row label{display:flex;flex-direction:column;gap:3px;font-family:var(--font-sans);font-size:.65rem;text-transform:uppercase;letter-spacing:.07em;color:var(--color-muted)}.filter-row select{font-family:var(--font-sans);font-size:.82rem;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:3px;padding:5px 8px;cursor:pointer;min-width:120px}.filter-row select:focus{outline:2px solid var(--color-accent);outline-offset:1px}.filter-reset{font-family:var(--font-sans);font-size:.75rem;color:var(--color-muted);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0 0 6px}.filter-reset:hover{color:var(--color-accent)}.recipe-grid{max-width:var(--max-width-wide);margin:0 auto;padding:0 1.5rem 4rem;display:grid;grid-template-columns:1fr;gap:1.25rem}@media(min-width:600px){.recipe-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:960px){.recipe-grid{grid-template-columns:repeat(3,1fr)}}.recipe-card{border:1px solid var(--color-border);border-radius:3px;padding:1.25rem;text-decoration:none;color:inherit;display:block;transition:border-color .12s}.recipe-card:hover{border-color:var(--color-accent)}.recipe-card[hidden]{display:none!important}.recipe-card-cuisine{font-family:var(--font-sans);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);margin-bottom:.4rem}.recipe-card h2{font-size:1.05rem;font-weight:600;line-height:1.3;margin-bottom:.25rem}.recipe-card-subtitle{font-size:.8rem;font-style:italic;color:var(--color-muted);margin-bottom:.85rem;line-height:1.4}.recipe-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-family:var(--font-sans);font-size:.72rem;color:var(--color-muted)}.diet-flag{font-family:var(--font-sans);font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:1px 5px;border-radius:2px;background:var(--color-surface);color:var(--color-text)}.no-results{grid-column:1 / -1;text-align:center;padding:3rem;font-style:italic;color:var(--color-muted);display:none}.no-results.visible{display:block}.cuisine-header{max-width:var(--max-width);margin:0 auto;padding:3rem 1.5rem 2rem}.cuisine-back{display:inline-block;margin-bottom:1.25rem;font-family:var(--font-sans);font-size:.8rem;color:var(--color-muted);text-decoration:none}.cuisine-back:hover{color:var(--color-accent)}.cuisine-header h1{font-size:1.9rem;margin-bottom:.4rem}.cuisine-header h1 span{color:var(--color-accent)}.cuisine-header p{font-family:var(--font-sans);font-size:.8rem;color:var(--color-muted)}.recipe-page{max-width:var(--max-width);margin:0 auto;padding:2.5rem 1.5rem 4rem}.recipe-eyebrow{font-family:var(--font-sans);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);margin-bottom:.5rem}.recipe-page h1{font-size:2rem;line-height:1.2;margin-bottom:.4rem}.recipe-subtitle{font-size:1rem;font-style:italic;color:var(--color-muted);margin-bottom:1.5rem;line-height:1.5}.print-btn{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-sans);font-size:.75rem;color:var(--color-muted);background:none;border:1px solid var(--color-border);border-radius:3px;padding:5px 12px;cursor:pointer;margin-bottom:1.75rem;transition:border-color .12s,color .12s}.print-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.recipe-meta-strip{display:flex;flex-wrap:wrap;gap:1.75rem;padding:1rem 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin-bottom:1.25rem}.recipe-meta-item{display:flex;flex-direction:column;gap:2px}.recipe-meta-label{font-family:var(--font-sans);font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.recipe-meta-value{font-family:var(--font-sans);font-size:.88rem;font-weight:500;color:var(--color-text);text-transform:capitalize}.recipe-dietary-flags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.5rem}.tradition-note{font-family:var(--font-sans);font-size:.75rem;color:var(--color-muted);font-style:italic;padding:.75rem 1rem;border-left:3px solid var(--color-border);margin-bottom:2rem;line-height:1.5}.recipe-body h2{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;font-weight:600;color:var(--color-muted);margin-top:2.5rem;margin-bottom:.85rem;padding-bottom:.4rem;border-bottom:1px solid var(--color-border)}.recipe-body h3{font-size:.9rem;font-weight:600;font-style:italic;color:var(--color-text);margin-top:1.5rem;margin-bottom:.5rem}.recipe-body p{margin-bottom:.85rem}.recipe-body ul,.recipe-body ol{padding-left:1.4rem;margin-bottom:1.25rem}.recipe-body li{margin-bottom:.5rem;line-height:1.6}.recipe-body ol li{padding-left:.35rem}.recipe-body strong{font-weight:600}.recipe-body em{font-style:italic}.recipe-footer{margin-top:3rem;padding-top:1.25rem;border-top:1px solid var(--color-border);font-family:var(--font-sans);font-size:.72rem;color:var(--color-muted);line-height:1.8}@media print{.site-header,.site-footer,.print-btn,.recipe-eyebrow,.tradition-note,.recipe-footer{display:none!important}@page{margin:.75in;size:letter}html{font-size:11.5pt}body{background:#fff;color:#000;font-family:Georgia,Times New Roman,serif;line-height:1.45}.recipe-page{padding:0;max-width:none}.recipe-page h1{font-size:22pt;color:#000;margin-bottom:3pt}.recipe-subtitle{font-size:11pt;color:#444;margin-bottom:10pt}.recipe-meta-strip{gap:1.25rem;padding:7pt 0;margin-bottom:10pt;border-color:#ccc}.recipe-meta-label{font-size:6.5pt;color:#777}.recipe-meta-value{font-size:8.5pt}.recipe-dietary-flags{margin-bottom:10pt}.diet-flag{font-size:6.5pt;background:none;border:.5pt solid #999;color:#444}.recipe-body h2{font-size:7pt;margin-top:14pt;margin-bottom:5pt;border-bottom-color:#ccc;break-after:avoid}.recipe-body h3{font-size:9pt;margin-top:9pt;margin-bottom:3pt;break-after:avoid}.recipe-body p{margin-bottom:5pt}.recipe-body ul,.recipe-body ol{margin-bottom:7pt;break-inside:avoid}.recipe-body li{margin-bottom:2.5pt;line-height:1.35;break-inside:avoid}.recipe-body h2+ul,.recipe-body h2+ol,.recipe-body h3+ul,.recipe-body h3+ol{break-before:avoid}a{color:#000;text-decoration:none}.recipe-page:after{content:attr(data-url);display:block;font-size:7pt;color:#aaa;font-family:Arial,sans-serif;border-top:.5pt solid #ddd;padding-top:5pt;margin-top:14pt}}
