/* commitscript.com cookbook: classic print-cookbook look */
@font-face{font-family:"EB Garamond";src:url("fonts/EBGaramond.woff2") format("woff2");font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:"EB Garamond";src:url("fonts/EBGaramond-Italic.woff2") format("woff2");font-weight:400 800;font-style:italic;font-display:swap}
:root{
  --paper:#f6efdf; --paper-2:#fbf7ee; --ink:#2a2119; --ink-soft:#5b4b3c; --rust:#8a3b1f;
  --rule:#cdb995; --rule-soft:#e3d5b8;
  --serif:"EB Garamond","Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
}
*{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:1.18rem;line-height:1.55;
  background-image:radial-gradient(ellipse at 20% 0%,rgba(255,255,255,.55),transparent 60%),radial-gradient(ellipse at 100% 100%,rgba(160,120,60,.08),transparent 55%);
  background-attachment:fixed;font-variant-numeric:lining-nums;}
a{color:var(--rust);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:#5f240f}
img{max-width:100%;height:auto}
.page{max-width:48rem;margin:1.5rem auto 3rem;padding:2.5rem 2.25rem 3rem;background:var(--paper-2);
  border:1px solid var(--rule-soft);box-shadow:0 1px 0 #fff inset,0 10px 30px -18px rgba(70,45,15,.35);}
@media (max-width:640px){.page{margin:0;border:0;padding:1.4rem 1.1rem 2.5rem;box-shadow:none}body{font-size:1.12rem}}
.topnav{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-variant:small-caps;letter-spacing:.08em;
  font-size:.95rem;color:var(--ink-soft);border-bottom:1px solid var(--rule);padding-bottom:.5rem;margin-bottom:2rem}
.topnav a{color:var(--ink-soft);text-decoration:none}
.topnav a:hover{color:var(--rust)}
h1,h2,h3{font-weight:500;line-height:1.2;margin:0}
.ornament{display:flex;align-items:center;justify-content:center;gap:.8rem;color:var(--rule);margin:1.1rem auto;max-width:16rem}
.ornament::before,.ornament::after{content:"";flex:1;border-top:1px solid var(--rule)}
.ornament span{font-size:.8rem;color:var(--rust);letter-spacing:.3em}
.smallcaps{font-variant:small-caps;letter-spacing:.07em}
.muted{color:var(--ink-soft)}

/* ---------- title pages ---------- */
.title-page{text-align:center;padding:1.5rem 0 1rem}
.title-page .kicker{font-variant:small-caps;letter-spacing:.25em;color:var(--ink-soft);font-size:1rem}
.title-page h1{font-size:clamp(2.4rem,7vw,3.6rem);margin:.4rem 0 .2rem;letter-spacing:.01em}
.title-page .sub{font-style:italic;color:var(--ink-soft);font-size:1.2rem}
.home-links{list-style:none;padding:0;margin:2rem auto 0;max-width:26rem}
.home-links li{margin:.6rem 0}
.home-links a{display:block;padding:1rem 1.2rem;border:1px solid var(--rule);text-decoration:none;color:var(--ink);background:var(--paper)}
.home-links a:hover{border-color:var(--rust)}
.home-links strong{display:block;font-size:1.45rem;font-weight:500;color:var(--rust)}

/* ---------- search & filters ---------- */
.finder{margin:1.5rem 0 1rem;padding:1rem 1.1rem;border:1px solid var(--rule-soft);background:var(--paper)}
.finder label{display:block}
.finder input[type=search],.finder select{font:inherit;font-size:1.02rem;color:var(--ink);background:#fffdf8;border:1px solid var(--rule);border-radius:2px;padding:.45rem .6rem;width:100%}
.finder input[type=search]{font-size:1.12rem}
.finder input:focus,.finder select:focus{outline:2px solid rgba(138,59,31,.35);outline-offset:1px;border-color:var(--rust)}
.finder details{margin-top:.7rem}
.finder summary{cursor:pointer;font-variant:small-caps;letter-spacing:.08em;color:var(--ink-soft)}
.filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.6rem .9rem;margin-top:.7rem}
.filters span{display:block;font-variant:small-caps;letter-spacing:.06em;font-size:.92rem;color:var(--ink-soft)}
.finder-foot{display:flex;justify-content:space-between;align-items:center;margin-top:.7rem;font-style:italic;color:var(--ink-soft);font-size:1rem}
.finder button{font:inherit;font-size:.95rem;font-variant:small-caps;letter-spacing:.08em;background:none;border:1px solid var(--rule);color:var(--ink-soft);padding:.2rem .7rem;cursor:pointer}
.finder button:hover{color:var(--rust);border-color:var(--rust)}

/* ---------- table of contents ---------- */
.toc-title{text-align:center;font-variant:small-caps;letter-spacing:.3em;font-size:1.5rem;margin:2rem 0 .3rem}
.toc-section{margin:2rem 0 1rem}
.toc-section h2{text-align:center;font-size:1.55rem;font-variant:small-caps;letter-spacing:.12em;color:var(--rust);margin-bottom:.9rem}
.toc-section h2 small{display:block;font-size:.8rem;letter-spacing:.25em;color:var(--ink-soft);font-style:italic;font-variant:normal}
.toc{list-style:none;margin:0;padding:0}
.toc li{margin:0 0 .55rem}
.toc a{display:flex;align-items:baseline;color:var(--ink);text-decoration:none}
.toc a:hover .toc-name{color:var(--rust);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.toc-name{flex:0 1 auto}
.toc-leader{flex:1 1 2rem;min-width:1.5rem;border-bottom:2px dotted var(--rule);margin:0 .45rem;transform:translateY(-.3em)}
.toc-num{flex:0 0 auto;font-variant-numeric:oldstyle-nums;color:var(--ink-soft)}
.toc-meta{display:block;font-style:italic;color:var(--ink-soft);font-size:.95rem;margin-top:-.1rem;padding-right:2.5rem}
.empty{text-align:center;font-style:italic;color:var(--ink-soft);margin:2rem 0}

/* ---------- recipe page ---------- */
.recipe-head{text-align:center}
.running-head{font-variant:small-caps;letter-spacing:.25em;color:var(--ink-soft);font-size:.95rem}
.recipe-head h1{font-size:clamp(2rem,6vw,2.9rem);margin:.35rem 0 .1rem}
.recipe-head .desc{font-style:italic;color:var(--ink-soft);max-width:36rem;margin:.6rem auto 0;font-size:1.15rem}
.facts{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem 1.4rem;margin:1rem 0 0;padding:.55rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  font-variant:small-caps;letter-spacing:.06em;font-size:1rem;color:var(--ink-soft)}
.facts b{font-weight:500;color:var(--ink)}
.cover{margin:1.6rem 0 0;text-align:center}
.cover img{max-height:30rem;width:auto;border:1px solid var(--rule-soft);padding:.4rem;background:#fff;box-shadow:0 6px 18px -12px rgba(60,35,10,.5)}
figcaption{font-style:italic;font-size:.92rem;color:var(--ink-soft);margin-top:.3rem}
.recipe-body{display:grid;grid-template-columns:1fr;gap:1.6rem;margin-top:2rem}
@media (min-width:760px){.recipe-body.two-col{grid-template-columns:minmax(14rem,1fr) 1.6fr;gap:2.4rem}
  .ingredients{border-right:1px solid var(--rule-soft);padding-right:1.6rem}}
.recipe-body h2,.extra h2{font-variant:small-caps;letter-spacing:.14em;font-size:1.3rem;color:var(--rust);border-bottom:1px solid var(--rule);padding-bottom:.2rem;margin:0 0 .7rem}
.recipe-body h3,.extra h3{font-style:italic;font-size:1.12rem;margin:1rem 0 .3rem;color:var(--ink)}
.ingredients ul{list-style:none;padding:0;margin:0 0 .6rem}
.ingredients li{padding:.18rem 0 .18rem 1rem;text-indent:-1rem;border-bottom:1px dotted var(--rule-soft);cursor:pointer}
.ingredients li::before{content:"\2022";color:var(--rule);display:inline-block;width:1rem;text-indent:0}
.ingredients li.done{color:#a5957f;text-decoration:line-through}
.method ol{padding-left:0;margin:0;list-style:none;counter-reset:step}
.method ol>li{counter-increment:step;position:relative;padding-left:2.4rem;margin:0 0 .85rem}
.method ol>li::before{content:counter(step);position:absolute;left:0;top:-.05rem;font-size:1.45rem;line-height:1;color:var(--rust);font-variant-numeric:oldstyle-nums;width:1.8rem;text-align:right}
.method ol>li::after{content:"";}
blockquote{margin:.6rem 0 1rem;padding:.5rem .9rem;border-left:3px solid var(--rule);background:var(--paper);font-style:italic;color:var(--ink-soft)}
.extra{margin-top:2rem}
.extra ul{padding-left:1.2rem}
.extra li{margin:.25rem 0}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.8rem;margin:.8rem 0}
.gallery figure,.inline-figure{margin:0;text-align:center}
.gallery img,.inline-figure img{border:1px solid var(--rule-soft);padding:.3rem;background:#fff}
.gallery img{width:100%;height:13rem;object-fit:cover;object-position:top}
.provenance{margin-top:2.2rem;padding-top:.9rem;border-top:1px solid var(--rule);font-size:1rem;color:var(--ink-soft);text-align:center}
.provenance p{margin:.2rem 0}
.tags{font-variant:small-caps;letter-spacing:.06em}
.pager{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;font-size:1rem}
.print-btn{font:inherit;font-variant:small-caps;letter-spacing:.08em;background:none;border:1px solid var(--rule);color:var(--ink-soft);padding:.15rem .7rem;cursor:pointer}
.print-btn:hover{color:var(--rust);border-color:var(--rust)}
footer.colophon{text-align:center;font-style:italic;color:var(--ink-soft);font-size:.95rem;margin-top:2.5rem}

/* ---------- lightbox ---------- */
.lightbox{position:fixed;inset:0;background:rgba(25,18,10,.92);display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem;cursor:zoom-out}
.lightbox img{max-width:100%;max-height:100%;object-fit:contain;background:#fff}
.lightbox a{position:absolute;bottom:1rem;right:1rem;color:#f6efdf;font-size:.95rem}
a.zoom{cursor:zoom-in}

/* ---------- print ---------- */
@media print{
  @page{margin:1.6cm}
  body{background:#fff;font-size:11.5pt}
  .page{box-shadow:none;border:0;margin:0;padding:0;max-width:none;background:#fff}
  .topnav,.finder,.no-print,.pager,.print-btn,.lightbox,footer.colophon{display:none!important}
  a{color:var(--ink);text-decoration:none}
  .cover img{max-height:7cm;box-shadow:none}
  .recipe-body.two-col{grid-template-columns:1fr 1.6fr;gap:1.2cm}
  .ingredients{border-right:1px solid #bbb;padding-right:.6cm}
  .ingredients li{cursor:auto}
  .ingredients li.done{color:inherit;text-decoration:none}
  .method ol>li,.ingredients li{break-inside:avoid}
  .gallery{display:none}
}

/* ---------- tag chips and "more like this" modal ---------- */
.chips-wrap{margin-top:2.2rem;text-align:center}
.chips-title{font-variant:small-caps;letter-spacing:.14em;font-size:1.15rem;color:var(--rust);font-weight:500;margin-bottom:.7rem}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem .5rem}
.chip{font:inherit;font-size:.98rem;font-variant:small-caps;letter-spacing:.06em;color:var(--ink);background:var(--paper);
  border:1px solid var(--rule);border-radius:999px;padding:.15rem .85rem .25rem;cursor:pointer;line-height:1.3}
.chip:hover,.chip:focus-visible{border-color:var(--rust);color:var(--rust);outline:none;box-shadow:0 0 0 2px rgba(138,59,31,.18)}
.modal-backdrop{position:fixed;inset:0;background:rgba(42,33,25,.55);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:60}
.modal{position:relative;width:100%;max-width:30rem;max-height:85vh;overflow:auto;background:var(--paper-2);color:var(--ink);
  border:1px solid var(--rule);box-shadow:0 18px 50px -20px rgba(40,25,10,.7);padding:1.6rem 1.6rem 1.3rem}
.modal::before{content:"";position:absolute;inset:.35rem;border:1px solid var(--rule-soft);pointer-events:none}
.modal h2{text-align:center;font-variant:small-caps;letter-spacing:.12em;color:var(--rust);font-size:1.45rem;font-weight:500;margin:0 1.5rem}
.modal .modal-sub{text-align:center;font-style:italic;color:var(--ink-soft);font-size:1rem;margin:.2rem 0 0}
.modal .toc{margin-top:.6rem}
.modal .empty{margin:1.2rem 0 .6rem}
.modal-close{position:absolute;top:.55rem;right:.65rem;font:inherit;font-size:1.6rem;line-height:1;background:none;border:0;color:var(--ink-soft);cursor:pointer;padding:.15rem .45rem;z-index:1}
.modal-close:hover,.modal-close:focus-visible{color:var(--rust);outline:2px solid rgba(138,59,31,.3)}
@media print{.chips-wrap,.modal-backdrop{display:none!important}}

/* ---- meal plan checkboxes and shopping list ---- */
.topnav{flex-wrap:wrap}
.nav-r{display:flex;gap:1.1rem;flex-wrap:wrap;align-items:baseline}
.plan-badge{display:inline-block;min-width:1.25rem;padding:0 .35rem;margin-left:.35rem;border-radius:1rem;background:var(--rust);
  color:#fff;font-size:.78rem;line-height:1.35rem;text-align:center;font-variant:normal;letter-spacing:0;font-variant-numeric:lining-nums}
.plan-badge[hidden]{display:none}
.plan-cb{accent-color:var(--rust);width:1.05rem;height:1.05rem;margin:0;cursor:pointer}
.toc li.has-cb{display:grid;grid-template-columns:1.8rem 1fr;align-items:baseline}
.toc li.has-cb>.plan-cb{grid-row:1;grid-column:1;transform:translateY(.12em)}
.toc li.has-cb>a,.toc li.has-cb>.toc-meta{grid-column:2}
.plan-bar{display:flex;flex-wrap:wrap;gap:.4rem 1rem;align-items:baseline;justify-content:center;margin:.6rem 0 0;padding:.5rem .8rem;
  border:1px solid var(--rule-soft);background:var(--paper);font-size:1rem}
.plan-bar[hidden],.plan-view[hidden]{display:none}
.plan-hint{text-align:center;font-style:italic;color:var(--ink-soft);font-size:.95rem;margin:.4rem 0 0}
.plan-clear,.sl-tools button,.sl-remove{font:inherit;font-size:.92rem;font-variant:small-caps;letter-spacing:.08em;background:none;
  border:1px solid var(--rule);color:var(--ink-soft);padding:.15rem .7rem;cursor:pointer;border-radius:2px}
.plan-clear:hover,.sl-tools button:hover,.sl-remove:hover{border-color:var(--rust);color:var(--rust)}
.plan-toggle{margin:.9rem 0 0;text-align:center;font-size:1.02rem}
.plan-toggle label{display:inline-flex;gap:.5rem;align-items:center;cursor:pointer;padding:.3rem .8rem;border:1px solid var(--rule-soft);
  background:var(--paper)}
.plan-toggle .plan-view{margin-left:.6rem;font-size:.95rem}
.sl-plan h2,.sl-section h2{font-variant:small-caps;letter-spacing:.12em;color:var(--rust);font-size:1.3rem;margin:1.6rem 0 .5rem;
  border-bottom:1px solid var(--rule-soft);padding-bottom:.2rem}
.sl-recipes{list-style:none;margin:0;padding:0}
.sl-recipes li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.2rem 0}
.sl-tools{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.8rem 0 .2rem}
.sl-status{font-style:italic;color:var(--ink-soft);font-size:.95rem}
.sl-count{color:var(--ink-soft);font-style:italic;font-size:.95rem;margin:.4rem 0 0}
.sl-items{list-style:none;margin:0;padding:0}
.sl-item{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 1rem;padding:.45rem .3rem .45rem 2rem;position:relative;
  border-bottom:1px dotted var(--rule);cursor:pointer;-webkit-tap-highlight-color:transparent}
.sl-item::before{content:"";position:absolute;left:.3rem;top:.7rem;width:.95rem;height:.95rem;border:1.5px solid var(--ink-soft);border-radius:2px}
.sl-item.crossed::before{background:var(--rust);border-color:var(--rust)}
.sl-item.crossed::after{content:"";position:absolute;left:.62rem;top:.78rem;width:.3rem;height:.55rem;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.sl-item:focus-visible{outline:2px solid var(--rust);outline-offset:1px}
.sl-label{flex:1 1 14rem}
.sl-from{flex:0 1 auto;font-style:italic;color:var(--ink-soft);font-size:.88rem;text-align:right}
.sl-item.crossed .sl-label{text-decoration:line-through;color:var(--ink-soft)}
.sl-item.crossed .sl-from{opacity:.6}
.sl-empty{text-align:center;margin:2rem 0;font-size:1.08rem}
.sl-expiry{text-align:center;font-style:italic;color:var(--ink-soft);font-size:.9rem;margin-top:2rem}
@media (max-width:640px){.sl-from{text-align:left;flex-basis:100%}.toc li.has-cb{grid-template-columns:1.6rem 1fr}}
@media print{.plan-cb,.plan-bar,.plan-hint,.plan-toggle,.sl-tools,.sl-remove,.sl-expiry{display:none!important}
  .sl-item{break-inside:avoid;padding-top:.2rem;padding-bottom:.2rem}}
/* ---------- tip card ---------- */
.tip-card{margin:1.5rem auto;max-width:34rem;padding:1.1rem 1.4rem 1rem;border:1px solid var(--rule);background:var(--paper);text-align:center}
.tip-cat{font-variant:small-caps;letter-spacing:.2em;color:var(--rust);font-size:.95rem}
.tip-title{font-weight:500;font-size:1.35rem;margin:.3rem 0 .4rem}
.tip-body{margin:0 0 .8rem;color:var(--ink)}
.tip-next{font:inherit;font-size:.95rem;font-variant:small-caps;letter-spacing:.08em;background:none;border:1px solid var(--rule);color:var(--ink-soft);padding:.2rem .8rem;cursor:pointer}
.tip-next:hover{color:var(--rust);border-color:var(--rust)}
@media print{.tip-card{display:none}}
/* footer ad */
.kr-ad{position:relative;width:100%;aspect-ratio:5/1;margin:2.5rem 0 0;overflow:hidden;border:1px solid var(--rule)}
.kr-slide{position:absolute;inset:0;background-size:cover;background-position:center;display:flex;align-items:center;
  padding:0 5%;text-decoration:none;opacity:0;transition:opacity 1.2s ease;pointer-events:none}
.kr-slide.on{opacity:1;pointer-events:auto}
.kr-left{justify-content:flex-start}.kr-right{justify-content:flex-end;text-align:right}
.kr-text{display:flex;flex-direction:column;max-width:48%;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.7)}
.kr-line{font-size:clamp(.95rem,2.6vw,1.6rem);line-height:1.2}
.kr-sub{font-size:clamp(.65rem,1.4vw,.85rem);font-variant:small-caps;letter-spacing:.06em;opacity:.85;margin-top:.3rem}
.kr-slide:hover .kr-line{text-decoration:underline}
@media print{.kr-ad{display:none!important}}
/* ---------- contents homepage: tabs, add-to-list column, live shopping list ---------- */
.foot-links{display:flex;justify-content:center;flex-wrap:wrap;gap:.4rem 1.6rem;margin-top:2.5rem;font-variant:small-caps;letter-spacing:.08em;font-size:.98rem}
.foot-links a{color:var(--ink-soft);text-decoration:none}.foot-links a:hover{color:var(--rust);text-decoration:underline}
.foot-links+.kr-ad{margin-top:1rem}
.title-page .kicker a{color:inherit;text-decoration:none}
.back-toc{text-align:center;margin:1.2rem 0 0;font-variant:small-caps;letter-spacing:.08em}
.title-page .tip-card{margin:1.2rem auto .4rem;text-align:center}
.tabs{display:flex;flex-wrap:wrap;gap:.25rem .2rem;align-items:flex-end;border-bottom:1px solid var(--rule);margin:1.2rem 0 .3rem;padding:0 .3rem}
.tab{position:relative;bottom:-1px;font-variant:small-caps;letter-spacing:.06em;font-size:.95rem;color:var(--ink-soft);text-decoration:none;
  padding:.3rem .8rem .2rem;background:#efe4cc;border:1px solid var(--rule);border-bottom-color:var(--rule);border-radius:.55rem .55rem 0 0;line-height:1.3}
.tab:nth-child(7n+2){background:#ece0c2}.tab:nth-child(7n+3){background:#e9dcc6}.tab:nth-child(7n+4){background:#eee2c8}
.tab:hover{color:var(--rust)}
.tab.on{background:var(--paper-2);color:var(--rust);border-bottom-color:var(--paper-2);z-index:1}
.cb-head{font-variant:small-caps;letter-spacing:.06em;font-size:.78rem;color:var(--ink-soft);line-height:1.1;margin:.6rem 0 -.5rem;white-space:nowrap}
.toc-main .toc li.has-cb{grid-template-columns:3.2rem 1fr}
.toc-main .toc li.has-cb>.plan-cb{justify-self:start;margin-left:.6rem}
.toc-main .toc-section:first-child{margin-top:1.2rem}
.live-list[hidden]{display:none}
.live-list{font-size:1rem}
.ll-bar{display:none}
.ll-title{font-variant:small-caps;letter-spacing:.14em;color:var(--rust);font-size:1.3rem;text-align:center;margin:0 0 .5rem;border-bottom:1px solid var(--rule-soft);padding-bottom:.3rem}
.live-list .sl-recipes li{padding:.1rem 0;font-size:.98rem}
.live-list .sl-remove{padding:0 .45rem;font-size:1rem;line-height:1.3}
.live-list .sl-section h3{font-variant:small-caps;letter-spacing:.1em;color:var(--rust);font-size:1.02rem;font-weight:500;margin:.8rem 0 .15rem}
.live-list .sl-item{padding:.25rem .2rem .25rem 1.6rem;font-size:.97rem}
.live-list .sl-item::before{top:.45rem;left:.15rem;width:.85rem;height:.85rem}
.live-list .sl-item.crossed::after{top:.52rem;left:.44rem}
.ll-tools{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin:.9rem 0 0;font-size:.98rem}
.live-list.flash{box-shadow:0 0 0 3px rgba(138,59,31,.25)}
@media (min-width:1000px){
  body.has-list .page{max-width:74rem}
  body.has-list .toc-layout{display:grid;grid-template-columns:minmax(0,1fr) 21rem;gap:2.2rem;align-items:start}
  .live-list{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto;padding:1rem 1.1rem;border:1px solid var(--rule);
    background:var(--paper);transition:box-shadow .5s}
}
@media (max-width:999px){
  body.has-list{padding-bottom:3.5rem}
  .live-list{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--paper);border-top:2px solid var(--rust);
    box-shadow:0 -8px 24px -12px rgba(40,25,10,.5);max-height:75vh;overflow:auto;transition:box-shadow .5s}
  .ll-bar{display:flex;width:100%;justify-content:space-between;align-items:baseline;font:inherit;font-variant:small-caps;letter-spacing:.1em;
    color:var(--rust);background:var(--paper);border:0;padding:.7rem 1.1rem;cursor:pointer;position:sticky;top:0}
  .ll-bar::after{content:"\25B4";margin-left:.6rem}
  .live-list.open .ll-bar::after{content:"\25BE"}
  .ll-n{font-variant:normal;letter-spacing:0;font-style:italic;color:var(--ink-soft);font-size:.95rem;margin-left:auto}
  .ll-body{display:none;padding:0 1.1rem 1rem}
  .live-list.open .ll-body{display:block}
  .ll-title{display:none}
}
@media print{.tabs,.cb-head,.live-list,.foot-links,.back-toc{display:none!important}}
.tip-card.tip-long .tip-body{text-align:left;line-height:1.55}
.tip-src{margin:-.3rem 0 .7rem;font-size:.85rem;color:var(--ink-soft)}
.tip-src a{color:var(--ink-soft);text-decoration:underline}
.tip-src a:hover{color:var(--rust)}
/* ---------- techniques tab ---------- */
.show-tech .cb-head{visibility:hidden}
.tech-card{margin:0 0 1.6rem;padding:0 0 1.3rem;border-bottom:1px solid var(--rule)}
.tech-card:last-child{border-bottom:0}
.tech-card h3{font-size:1.25rem;font-weight:500;margin:0 0 .4rem;color:var(--ink)}
.tech-card p{margin:0 0 .5rem;line-height:1.6;max-width:40rem}
.tech-src{font-size:.85rem;color:var(--ink-soft)}
.tech-src a{color:var(--ink-soft)}
.tech-src a:hover{color:var(--rust)}
/* ---------- recipe modal (homepage) ---------- */
.top-back{text-align:left;margin:0 0 .6rem;font-variant:small-caps;letter-spacing:.08em;font-size:.95rem}
.top-back a{color:var(--ink-soft);text-decoration:none}
.top-back a:hover{color:var(--rust);text-decoration:underline}
.in-frame .top-back,.in-frame .foot-links,.in-frame .kr-ad,.in-frame .colophon{display:none!important}
.rmodal-on,.rmodal-on body{overflow:hidden}
.rmodal{position:fixed;inset:0;z-index:1000;background:rgba(30,22,14,.55);display:flex;align-items:stretch;justify-content:center;padding:1.5vh 1rem}
.rmodal[hidden]{display:none}
.rmodal-panel{position:relative;width:100%;max-width:58rem;background:var(--paper);border:1px solid var(--rule);display:flex;flex-direction:column;box-shadow:0 10px 40px rgba(0,0,0,.3)}
.rmodal-bar{display:flex;align-items:center;justify-content:space-between;padding:.35rem .5rem .35rem 1rem;border-bottom:1px solid var(--rule);font-variant:small-caps;letter-spacing:.08em}
.rmodal-full{color:var(--ink-soft);text-decoration:none;font-size:.95rem}
.rmodal-full:hover{color:var(--rust);text-decoration:underline}
.rmodal-x{font:inherit;font-size:1.8rem;line-height:1;background:none;border:0;color:var(--ink-soft);cursor:pointer;padding:.1rem .5rem}
.rmodal-x:hover{color:var(--rust)}
.rmodal-frame{flex:1 1 auto;width:100%;border:0;background:var(--paper)}
@media (max-width:640px){.rmodal{padding:0}.rmodal-panel{max-width:none;border:0}}
@media print{.rmodal{display:none!important}}
