@font-face{font-family:Patrick Hand;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/patrick-hand-vietnamese-400-normal.65jA92mZ.woff2) format("woff2"),url(/_astro/patrick-hand-vietnamese-400-normal.CZjY324Y.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Patrick Hand;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/patrick-hand-latin-ext-400-normal.Dno5CMlI.woff2) format("woff2"),url(/_astro/patrick-hand-latin-ext-400-normal.C2ywpnn3.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Patrick Hand;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/patrick-hand-latin-400-normal.B7HHA2Vw.woff2) format("woff2"),url(/_astro/patrick-hand-latin-400-normal.Df9_VoRQ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dancing-script-vietnamese-400-normal.lz8MlVep.woff2) format("woff2"),url(/_astro/dancing-script-vietnamese-400-normal.D2srOv8f.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dancing-script-latin-ext-400-normal.C917Kz-3.woff2) format("woff2"),url(/_astro/dancing-script-latin-ext-400-normal.DaWfpMsu.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dancing-script-latin-400-normal.-YrtvvVF.woff2) format("woff2"),url(/_astro/dancing-script-latin-400-normal.BY5FxJb0.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/fraunces-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/fraunces-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/fonts/bricolage-grotesque-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/fonts/bricolage-grotesque-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--paper: #fff5d2;--paper-panel: #fffbee;--ink: #2f2922;--ink-soft: #6f6253;--rule: #ddd0b3;--accent: #b0492f;--accent-deep: #8f3a25;--olive: #6c763d;--steel: #5e7d8d;--faded: #b0a48c;--serif: "Fraunces Variable", "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--sans: "Bricolage Grotesque Variable", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--display: "Patrick Hand", var(--sans);--script: "Dancing Script", cursive;--measure: 52rem;--gap: clamp(1rem, 4vw, 2rem)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:clamp(1.05rem,.95rem + .4vw,1.2rem);line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}main{max-width:var(--measure);margin:0 auto;padding:clamp(1.5rem,5vw,3rem) var(--gap) 4rem}a{color:var(--accent-deep);text-underline-offset:.15em}a:hover{color:var(--accent)}h1,h2,h3{font-family:var(--serif);line-height:1.2;font-weight:600}.script{font-family:var(--script);font-style:normal;color:var(--accent-deep)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}header.masthead{text-align:center;padding:clamp(1.5rem,5vw,2.5rem) var(--gap) 1.2rem;border-bottom:1px solid var(--rule)}header.masthead .brand{display:inline-flex;flex-direction:column;align-items:center;gap:.5rem;text-decoration:none;color:var(--ink)}header.masthead .brand-logo{height:clamp(4.5rem,3.5rem + 4.5vw,7rem);width:auto;display:block}header.masthead .wordmark{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,1.4rem + 2vw,2.8rem);letter-spacing:.01em;line-height:1;display:inline-block;transform:scaleX(1.15);transform-origin:center}header.masthead .brand:hover .wordmark{color:var(--accent-deep)}header.masthead nav{margin-top:.8rem;font-family:var(--sans);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;display:flex;gap:1.2rem;justify-content:center;align-items:center}header.masthead nav a{text-decoration:none;color:var(--ink-soft)}header.masthead nav a:hover{color:var(--accent)}header.masthead nav .lang-switch{border:1px solid var(--rule);border-radius:999px;padding:.15rem .7rem}.page-title{font-size:clamp(1.6rem,1.3rem + 1.5vw,2.2rem);margin:0 0 .3rem}.recipe-list{list-style:none;padding:0;margin:0}.cat-group{margin-top:2.6rem}.cat-group:first-of-type{margin-top:1.5rem}.cat-header{font-family:var(--sans);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--olive);margin:0 0 .2rem;padding-bottom:.45rem;border-bottom:1px solid var(--rule)}.recipe-list li{padding:1.1rem 0;border-bottom:1px solid var(--rule)}.r-main{display:flex;gap:1rem;align-items:flex-start;text-decoration:none;color:inherit}.r-thumb{flex:0 0 auto;width:76px;height:76px;margin-top:.28rem;border-radius:8px;overflow:hidden;display:block}.r-thumb img{width:100%;height:100%;object-fit:cover;display:block}.r-thumb--empty{display:flex;align-items:center;justify-content:center;background:var(--ink-soft);border:1px solid var(--ink-soft);color:var(--paper)}.r-thumb--empty svg{opacity:.8}.r-text{min-width:0}.recipe-list .r-title{display:inline-block;font-size:1.35rem;line-height:1.2;text-decoration:none;color:var(--ink)}.r-main:hover .r-title{color:var(--accent-deep)}html:not(.drafts-shown) .is-draft{display:none}html:not(.drafts-shown) .cat-group:not(:has(.recipe-list li:not(.is-draft))){display:none}.draft-badge{display:inline-block;margin-left:.5em;font-family:var(--sans);font-size:.58em;font-weight:600;text-transform:uppercase;letter-spacing:.08em;vertical-align:middle;color:var(--paper-panel);background:var(--olive);border-radius:999px;padding:.15em .55em}.recipe-list .r-summary{display:block;margin-top:.25rem;color:var(--ink-soft);font-style:italic}article .recipe-head h1{font-size:clamp(1.9rem,1.4rem + 2.2vw,2.7rem);margin:0 0 .4rem}article .lead{font-size:1.2rem;color:var(--ink-soft);font-style:italic;margin:0 0 1.2rem}article .story{max-width:42rem;margin:0 0 1.6rem}article .story p{margin:0 0 .8rem}article .story p:last-child{margin-bottom:0}article .keeps{font-family:var(--sans);font-size:1.1rem;color:var(--ink);margin:1.3rem 0 0;padding-top:1.2rem;border-top:1px solid var(--rule)}article .keeps .keeps-label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--olive);margin-bottom:.35rem}.meta{display:flex;flex-wrap:wrap;gap:0;margin:1.5rem 0;padding:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-family:var(--sans)}.meta .meta-item{padding:.8rem 1.4rem .8rem 0;margin-right:1.4rem}.meta dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft)}.meta dd{margin:.15rem 0 0;font-size:1.15rem}.servings-control{display:inline-flex;align-items:center;gap:.5rem}.servings-control .step{width:1.6rem;height:1.6rem;display:grid;place-items:center;padding:0;font-size:1.1rem;line-height:1;color:var(--ink-soft);background:none;border:1px solid var(--rule);border-radius:50%;cursor:pointer}.servings-control .step:hover{border-color:var(--accent);color:var(--accent)}.servings-control .servings-value{width:3ch;padding:0 0 1px;font-family:var(--sans);font-size:1.15rem;text-align:center;color:var(--ink);background:none;border:none;border-bottom:1px dashed var(--rule);cursor:text}.servings-control .servings-value:focus{outline:none;border-bottom-color:var(--accent)}.servings-control.is-scaled .servings-value{color:var(--accent-deep);font-weight:600}@media print{.servings-control .step{display:none}}.pan-control{display:inline-flex;align-items:center;gap:.35rem}.pan-control .pan-value{width:3ch;padding:0 0 1px;font-family:var(--sans);font-size:1.15rem;text-align:center;color:var(--ink);background:none;border:none;border-bottom:1px dashed var(--rule);cursor:text}.pan-control .pan-value:focus{outline:none;border-bottom-color:var(--accent)}.pan-control .pan-unit{color:var(--ink-soft);font-size:.95rem}.recipe-body{display:grid;gap:2.5rem;margin-top:2rem;position:relative}@media(min-width:46rem){.recipe-body{grid-template-columns:15rem 1fr;align-items:start}}.ingredients h2,.method h2{font-size:1.3rem;margin:0 0 .8rem;padding-bottom:.3rem;border-bottom:2px solid var(--accent);display:inline-block}.ingredients ul{list-style:none;padding:0;margin:0}.ingredients li{padding:.4rem 0;border-bottom:1px dotted var(--rule)}.ingredients .amt{font-variant-numeric:tabular-nums;font-weight:600}.ingredients .amt-alt{color:var(--ink-soft);font-weight:400;font-variant-numeric:tabular-nums}.ingredients .note{color:var(--ink-soft)}.ing-section-note{margin:.5rem 0 0;font-size:.86rem;line-height:1.45;color:var(--ink-soft)}.ing-section-note strong{color:var(--ink)}.method .amt-inline{font-variant-numeric:tabular-nums}.method .amt-dose{color:#9a8d76;font-size:.92em}.method ol>li.done .amt-dose{color:var(--faded)}.method ol{counter-reset:step;list-style:none;padding:0;margin:0}.method ol>li{counter-increment:step;position:relative;padding:0 0 1.3rem 2.6rem;margin:0}.method ol>li:before{content:counter(step);position:absolute;left:0;top:0;width:1.8rem;height:1.8rem;display:grid;place-items:center;background:var(--accent);color:var(--paper-panel);border-radius:50%;font-family:var(--sans);font-size:.9rem;font-weight:700}.method ol>li>strong:first-child{display:block;margin-bottom:.3rem}.method ul{list-style:disc;padding-left:1.1rem;margin:.3rem 0 0}.method ul li{padding:.15rem 0}.method blockquote{margin:0 0 1.5rem;padding:.6rem 0 .6rem 1rem;border-left:3px solid var(--rule);color:var(--ink-soft);font-size:.95rem}.method blockquote p{margin:.3rem 0}.method img,.method video{display:block;width:100%;max-width:24rem;height:auto;border-radius:6px;margin:.9rem 0 .3rem}.img-pair{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;max-width:34rem;margin:.9rem 0 .3rem}.img-pair img{width:100%;max-width:none;height:auto;border-radius:6px;margin:0;display:block}@media(max-width:30rem){.img-pair{grid-template-columns:1fr}}.ingredients li.checkable{position:relative;padding-left:1.75rem;cursor:pointer}.ingredients li.checkable:before{content:"";position:absolute;left:0;top:.72rem;width:1.05rem;height:1.05rem;border:1.5px solid var(--rule);border-radius:4px;background:var(--paper-panel)}.ingredients li.checkable.done:before{background-color:var(--accent);border-color:var(--accent);background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23fffbee'%20stroke-width='3.5'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M5%2012.5l4.5%204.5L19%207'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:72%}.ingredients li.done{text-decoration:line-through;color:var(--faded)}.ingredients li.done .amt-alt,.ingredients li.done .note{color:var(--faded)}.method ol>li.checkable{cursor:pointer}.method ol>li.done{color:var(--faded)}.method ol>li.done:before{content:"✓";background:var(--steel)}.checkable:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.btn-reset:disabled{opacity:.35;cursor:default}.btn-reset:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--paper-panel)}.btn-reset:not(:disabled):hover{background:var(--accent-deep);border-color:var(--accent-deep)}.btn-reset--meta{margin-left:auto;align-self:center}.recipe-actions{display:flex;gap:.8rem;align-items:center}.recipe-actions .btn-reset--bar{display:none}@media(max-width:45.999rem){.btn-reset--meta{display:none}.recipe-actions .btn-reset--bar{display:inline-block}.recipe-actions .btn-print,.recipe-actions .btn-reset--bar{flex:1;text-align:center}}.about{max-width:38rem}.about p{font-size:1.25rem;line-height:1.75;margin-top:1.5rem}.about s{text-decoration:none;background:linear-gradient(currentColor,currentColor) left calc(50% + .15em) / 100% 1px no-repeat}.about .contact{margin-top:1.6rem;font-size:.95rem;color:var(--ink-soft)}.hero{display:block;width:100%;height:auto;border-radius:6px;margin:1.5rem 0 .5rem;background:var(--paper);color:var(--faded);font-family:var(--sans);font-size:.85rem}.ing-group+.ing-group{margin-top:1.2rem}.ing-section{font-family:var(--sans);font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--olive);margin:0 0 .5rem;padding-bottom:.25rem;border-bottom:1px solid var(--rule)}footer.site-foot{border-top:1px solid var(--rule);text-align:center;padding:2rem var(--gap);color:var(--ink-soft)}footer.site-foot .script{font-size:1.5rem}.btn-print,.btn-reset{font-family:var(--sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;background:none;border:1px solid var(--rule);border-radius:999px;padding:.35rem .9rem;color:var(--ink-soft);cursor:pointer}.btn-print:hover{border-color:var(--accent);color:var(--accent)}@media print{:root{--paper: #fff;--ink: #000}header.masthead nav,footer.site-foot,.btn-print,.btn-reset,.hero,.method img,.method video,.img-pair{display:none}body{font-size:11pt}main{max-width:none;padding:0}.recipe-body{grid-template-columns:1fr;gap:1.5rem}.method ol>li:before{background:none;color:#000;border:1px solid #000}.ingredients li.checkable{padding-left:0}.ingredients li.checkable:before,.ingredients li.checkable.done:after{display:none}.ingredients li.done,.ingredients li.done .amt-alt,.ingredients li.done .note,.method ol>li.done{text-decoration:none;color:inherit;opacity:1}.method ol>li.done:before{content:counter(step);background:none}a{color:#000;text-decoration:none}}
