:root{--ground:#faf6ef;--panel:#fff;--ink:#2b2621;--ink-body:#4a4239;--muted:#a08b6c;--ink-note:#7d6a45;--rule:#e2d8c8;--rule-dotted:#ded2be;--accent:#b8964f;--serif:Georgia, "Iowan Old Style", "Times New Roman", serif;--sans:system-ui, -apple-system, "Segoe UI", sans-serif;--column:660px}*,:before,:after{box-sizing:border-box}body{background:var(--ground);color:var(--ink);font-family:var(--serif);-webkit-text-size-adjust:100%;margin:0;line-height:1.6}.column{max-width:var(--column);margin:0 auto;padding:28px 20px 64px}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.label{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:.62rem}.meta{font-family:var(--sans);color:var(--muted);font-size:.72rem}.site-header{text-align:center;border-bottom:1px solid var(--rule);margin-bottom:22px;padding-bottom:20px}.site-header h1{margin:0;font-size:1.6rem;font-weight:400}@media (width>=700px){.site-header h1{font-size:1.9rem}}.browse-controls{margin-bottom:24px}.search-input{width:100%;font-family:var(--sans);color:var(--ink);background:var(--panel);border:1px solid var(--rule);border-radius:3px;padding:10px 12px;font-size:16px}.search-input::placeholder{color:var(--muted)}.tag-filters{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.tag-chip{font-family:var(--sans);color:var(--ink-body);background:var(--panel);border:1px solid var(--rule);cursor:pointer;border-radius:999px;padding:4px 12px;font-size:.7rem}.tag-chip.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.course-heading{margin:26px 0 8px;display:block}.course-group:first-child .course-heading{margin-top:0}.recipe-list{margin:0;padding:0;list-style:none}.recipe-row a{border-bottom:1px dotted var(--rule-dotted);justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;display:flex}.recipe-name{font-size:1.05rem}.recipe-meta{text-align:right;flex-shrink:0;gap:12px;display:flex}.no-results{text-align:center;padding:32px 0}@media (width<=520px){.recipe-row a{flex-direction:column;gap:3px}.recipe-meta{text-align:left;gap:8px}}.recipe-nav{margin-bottom:18px}.recipe-photo{border-radius:5px;width:100%;height:auto;margin-bottom:20px}.recipe-title{margin:8px 0 0;font-size:1.9rem;font-weight:400}.recipe-actions{border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 20px;padding-bottom:18px;display:flex}.servings-stepper{font-family:var(--sans);background:var(--panel);border:1px solid var(--rule);border-radius:4px;align-items:center;gap:10px;padding:5px 10px;font-size:.78rem;display:flex}.servings-stepper button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:1rem;line-height:1}.servings-stepper button:disabled{opacity:.3;cursor:default}.button-primary,.button-quiet{font-family:var(--sans);cursor:pointer;border:1px solid #0000;border-radius:4px;padding:8px 16px;font-size:.78rem}.button-primary{background:var(--accent);color:#fff}.button-quiet{color:var(--muted);background:0 0}.recipe-body{align-items:flex-start;gap:30px;display:flex}.ingredients-rail{flex:0 0 38%}.method{flex:1;min-width:0}.ingredient-list,.method-list{color:var(--ink-body);margin:8px 0 24px;padding:0;list-style:none}.ingredient{gap:8px;font-size:.9rem;line-height:1.9;display:flex}.method-step{gap:8px;margin-bottom:12px;font-size:.94rem;display:flex}.step-number{color:var(--accent);flex:none;font-size:1.2rem;line-height:1.3}.step-body{flex:1;min-width:0}.step-note{font-family:var(--sans);color:var(--ink-note);margin:4px 0 0;font-size:.78rem;line-height:1.55}.equipment-list{color:var(--ink-body);margin:8px 0 24px;padding:0;font-size:.9rem;line-height:1.9;list-style:none}.checkbox-slot{display:none}@media (width<=640px){.recipe-body{flex-direction:column;gap:8px}.ingredients-rail{flex:auto;width:100%}}body.cooking .ingredient,body.cooking .method-step{font-size:1.05rem;line-height:1.75}body.cooking .method-step{margin-bottom:16px}body.cooking .step-note{font-size:.88rem}body.cooking .checkbox-slot{flex:none;padding-top:4px;display:block}.cook-checkbox{width:24px;height:24px;accent-color:var(--accent);cursor:pointer}body.cooking .ingredient,body.cooking .method-step{cursor:pointer;touch-action:manipulation;padding:6px 0}body.cooking .is-checked{opacity:.4}body.cooking .is-checked .ingredient-text,body.cooking .is-checked .step-text{text-decoration:line-through}body.cooking .method-step.is-current{background:var(--panel);border-left:3px solid var(--accent);border-radius:0 4px 4px 0;margin-left:-15px;padding:8px 12px}@media (width<=640px){body.cooking .ingredient,body.cooking .method-step{padding:9px 0;font-size:1.15rem}body.cooking .step-note{font-size:.95rem}.cook-checkbox{width:26px;height:26px}}@media print{.no-print,.browse-controls,.checkbox-slot,.recipe-nav{display:none!important}body{color:#000;background:#fff;font-size:11pt}.column{max-width:none;padding:0}.recipe-title{margin-bottom:4pt;font-size:20pt}.recipe-body{display:block}.ingredients-rail{width:auto;margin-bottom:16pt}.method-step,.ingredient{break-inside:avoid;page-break-inside:avoid}.label,.step-number{color:#000}a{text-decoration:none}.recipe-photo{display:none}}
