@charset "UTF-8";
:root{--paper:#f4eee4;--ink:#252523;--red:#872d27;--rule:#c6bbad;--muted:#62594f;--white:#fffdf8;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.6 var(--sans)}[hidden]{display:none!important}a{color:inherit;text-underline-offset:.2em}a:hover{color:var(--red)}a:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:4px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400;font-family:var(--serif)}.page{max-width:1232px;padding:0 40px;margin:auto}.skip{position:absolute;top:-100px;left:15px;background:var(--ink);color:white;padding:12px;z-index:5}.skip:focus{top:10px}.masthead{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-bottom:2px solid var(--ink);font-size:.875rem}.brand{border-left:5px solid var(--red);padding-left:13px;letter-spacing:.11em;font-weight:700;text-decoration:none}.intro{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:25px 0 28px}.intro>div{min-width:0}.eyebrow{font:700 .875rem var(--sans);letter-spacing:.11em;color:var(--red);margin-bottom:7px}h1{font-size:clamp(2.4rem,5vw,3.8rem);line-height:1.08;letter-spacing:-.04em}h1 em{color:var(--red);font-weight:400}.intro h1+p{margin-top:12px}.intro figure{flex:0 0 85px}.intro img{display:block;width:100%;height:auto}.intro figcaption{font-size:.75rem;line-height:1.3;color:var(--muted);margin-top:4px}.workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:48px;align-items:start;border-top:1px solid var(--rule);padding-top:25px}.builder-panel{position:sticky;top:25px}.builder-panel h2{font-size:1.8rem;line-height:1.2}.panel-intro{color:var(--muted);font-size:.875rem;margin:7px 0 20px}.field{margin-bottom:18px}label{display:flex;gap:12px;align-items:baseline;margin-bottom:7px;font-weight:700;font-size:.9375rem}label span{font-size:.8125rem;color:var(--red);font-weight:400}select{width:100%;min-width:0;min-height:48px;background:var(--white);color:var(--ink);border:1px solid #988a7a;border-radius:0;padding:10px 30px 10px 12px;font:1rem var(--sans);cursor:pointer}select:disabled{cursor:default}.choice-note{font-size:.875rem;color:var(--red);border-left:3px solid var(--red);padding-left:12px;margin:10px 0 18px}.library-note{border-top:1px solid var(--rule);padding-top:18px;font-size:.875rem;color:var(--muted)}.library-note a{color:var(--ink)}.results{min-width:0}.results-heading{display:flex;gap:20px;align-items:baseline;justify-content:space-between;padding-bottom:12px;border-bottom:2px solid var(--ink)}.results-heading h2{font-size:1.9rem;line-height:1.2}.count{font-size:.875rem;color:var(--muted);text-align:right}.selected-base{font-size:.9375rem;color:var(--muted);padding:14px 0 10px}.suggestion{position:relative;padding:24px 0;border-bottom:1px solid var(--rule)}.suggestion-header{display:flex;align-items:baseline;gap:14px;margin-bottom:15px}.suggestion-number{color:var(--red);font-size:.8125rem;letter-spacing:.08em}.suggestion h3{font-size:2rem;line-height:1.15;letter-spacing:-.03em}.suggestion h3 em{font-style:normal;color:var(--red)}.build{font-size:1rem;line-height:1.7;margin-bottom:16px}.recipe-detail{display:grid;grid-template-columns:108px 1fr;gap:18px;margin-top:12px}.recipe-detail strong{font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em;padding-top:2px}.recipe-detail p{font-size:.9375rem}.reason{color:var(--muted)}.finish strong{color:var(--red)}.prep{background:var(--white);border-left:4px solid var(--red);padding:22px 24px;margin-top:28px}.prep h3{font-size:1.5rem}.prep ul{padding-left:18px;margin:12px 0}.prep li{font-size:.9375rem;margin:8px 0}.ingredient-links{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.875rem;margin-top:15px}.end-note{color:var(--muted);font-size:.875rem;border-top:1px solid var(--rule);padding-top:20px;margin:32px 0 25px}.no-script{padding:25px 0}.no-script h3{font-size:1.7rem}.no-script p{margin-top:12px}footer{border-top:2px solid var(--ink);padding:24px 0 32px;display:flex;justify-content:space-between;gap:20px;font-size:.875rem}footer strong{letter-spacing:.04em}footer nav{display:flex;flex-wrap:wrap;gap:12px 20px}
@media(max-width:860px){.page{padding:0 24px}.workspace{grid-template-columns:250px minmax(0,1fr);gap:26px}.results-heading{display:block}.count{text-align:left;margin-top:6px}.recipe-detail{grid-template-columns:1fr;gap:3px}.suggestion h3{font-size:1.8rem}}
@media(max-width:650px){.page{padding:0 18px}.masthead{padding:18px 0;font-size:.8125rem;gap:15px}.brand{letter-spacing:.06em;padding-left:9px}.masthead>a:last-child{max-width:100px;text-align:right;line-height:1.4}.intro{gap:15px;padding:20px 0}.intro figure{flex-basis:65px}.intro figcaption{font-size:.75rem}.intro h1+p{font-size:.9375rem;margin-top:8px}.eyebrow{font-size:.8125rem;letter-spacing:.06em}h1{font-size:2.5rem}.workspace{display:block;padding-top:20px}.builder-panel{position:static}.builder-panel h2{font-size:1.65rem}.panel-intro{margin:5px 0 15px}form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{margin:0}label{font-size:.875rem;gap:7px;line-height:1.3}select{font-size:1rem;padding:10px 6px;min-height:46px}.library-note{font-size:.875rem;border-top:0;padding:0;margin:14px 0 20px}.library-note br{display:none}.library-note a{margin-left:4px}.choice-note{margin:15px 0}.results-heading{display:flex;align-items:baseline;gap:10px}.results-heading h2{font-size:1.75rem}.count{flex-shrink:0}.selected-base{font-size:.875rem}.suggestion{padding:20px 0}.recipe-detail{grid-template-columns:1fr;gap:3px}.suggestion h3{font-size:1.85rem}.prep{padding:18px}footer{display:block}footer nav{margin-top:14px}.end-note{margin-top:24px}}
@media(max-width:360px){.intro figure{display:none}form{grid-template-columns:1fr}.results-heading{display:block}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media print{body{background:white}.page{max-width:none;padding:0}.workspace{grid-template-columns:250px 1fr;gap:25px}.builder-panel{position:static}footer nav{display:none}.suggestion,.prep{break-inside:avoid}}
