/* =====================================================================
   GROUNDED RECIPES (recipes/recipes.css), GWG BLD 912
   The look of Grounded Recipes, moved here from recipes/index.html so the public page (/recipes/) and Home's own window
   (GGRecipes.mount in recipes/recipes.js) wear one recipe design. Every class is prefixed rc- or rg-.
   The page links this file in its head; a mount adds the same link once. The rules for a mount sit at the end, under
   .rc-mnt (the root a mount draws) and the rcm container, so the page itself looks exactly as before.
   ===================================================================== */
/* Grounded Recipes page (GWG BLD 875) */
.rc{--rc-b:#B87A2A;--rc-l:#5F7D48;--rc-d:#B8612F;--rc-s:#6E5A8A;--rc-h:#9A4E24;--rc-p:#A8443A;--rc-k:#2C7A86;--rc-c:#6E6A1E;--rc-kbg1:#DDEFEE;--rc-kbg2:#EAF0E2;--rc-tile:#F3E9D6;--rc-chip:#FFFBF3;--rc-on:#fff;--rc-panel:#F3E7D2;--rc-hbg1:#F6E2CF;--rc-hbg2:#EFE6D0;--rc-g:#7A5A26;--rc-gbg1:#EEF0DC;--rc-gbg2:#F4EAD4;}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .rc{--rc-b:#EDB85E;--rc-l:#AACB8F;--rc-d:#EE9C72;--rc-s:#BCA9DB;--rc-h:#F0A877;--rc-p:#F09A8C;--rc-k:#7FCAD3;--rc-c:#D2CB7A;--rc-kbg1:#1D2E2F;--rc-kbg2:#252A20;--rc-tile:#3A2E22;--rc-chip:#2A241D;--rc-on:#1F1A14;--rc-panel:#30251A;--rc-hbg1:#3A2619;--rc-hbg2:#2C2219;--rc-g:#DDB97E;--rc-gbg1:#262A1C;--rc-gbg2:#2E2519;}}
:root[data-theme="dark"] .rc{--rc-b:#EDB85E;--rc-l:#AACB8F;--rc-d:#EE9C72;--rc-s:#BCA9DB;--rc-h:#F0A877;--rc-p:#F09A8C;--rc-k:#7FCAD3;--rc-c:#D2CB7A;--rc-kbg1:#1D2E2F;--rc-kbg2:#252A20;--rc-tile:#3A2E22;--rc-chip:#2A241D;--rc-on:#1F1A14;--rc-panel:#30251A;--rc-hbg1:#3A2619;--rc-hbg2:#2C2219;--rc-g:#DDB97E;--rc-gbg1:#262A1C;--rc-gbg2:#2E2519;}
.rc .rc-hero{min-height:clamp(380px,34vw,540px);--pos:center 62%;}
.rc .rc-hero .cer-sub{color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6);max-width:720px;margin:14px auto 0;font-size:clamp(18px,1.8vw,22px);}
.rc .rc-hero .cp-back{color:#FFE7BD;border-bottom-color:rgba(255,231,189,.6);text-shadow:0 1px 4px rgba(0,0,0,.7);}
/* BLD 899 (Chris: "clean it up w cards.. add some color and energy"): painted meal cards, colored recipe cards grouped by meal,
   one Goals and Fits row, and Holidays and Gatherings as its own section inside the page. */
.rc-intro{max-width:820px;}
.rc-intro p{font-size:clamp(18px,1.6vw,20px);line-height:1.6;color:var(--ink-soft);margin:0 0 12px;}
.rc-intro p:first-child{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:clamp(26px,3vw,34px);line-height:1.2;color:var(--ink);margin-bottom:10px;}
.rc-doc{font-size:16px;color:var(--ink-soft);border-left:3px solid var(--sage);padding:4px 0 4px 14px;margin:6px 0 0;max-width:820px;}
.rc-lab{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);}
.rc-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.rc-cats-lab{display:block;margin:34px 0 12px;}
.rc-cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.rc-cat.rc-k-holidays{grid-column:1/-1;min-height:200px;}
.rc-cat{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:230px;padding:0;border:none;border-radius:20px;overflow:hidden;cursor:pointer;font:inherit;text-align:left;color:#fff;background:var(--k);box-shadow:0 6px 18px rgba(60,35,10,.16);transition:transform .18s ease,box-shadow .18s ease;isolation:isolate;}
.rc-cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s ease;}
.rc-cat::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,12,6,0) 30%,rgba(20,12,6,.38) 58%,rgba(20,12,6,.84) 100%);}
.rc-cat::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:var(--k);}
.rc-cat:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(60,35,10,.24);}
.rc-cat:hover img{transform:scale(1.05);}
.rc-cat:focus-visible{outline:3px solid var(--gold);outline-offset:3px;}
.rc-cat[aria-pressed="true"]{box-shadow:0 0 0 4px var(--k),0 12px 26px rgba(60,35,10,.24);}
.rc-cat-in{display:block;padding:14px 16px 18px;}
.rc-cat b{display:block;font-family:'Cormorant Garamond',serif;font-weight:700;font-size:clamp(24px,2.2vw,28px);line-height:1.08;text-shadow:0 1px 6px rgba(0,0,0,.5);}
.rc-cat .rc-cn{display:inline-block;margin-top:8px;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:1.2px;text-transform:uppercase;padding:3px 10px;border-radius:999px;background:var(--k);color:var(--rc-on);}
.rc-cat .rc-cx{display:block;margin-top:6px;font-size:14px;line-height:1.35;color:#FFF1D6;text-shadow:0 1px 4px rgba(0,0,0,.7);}
.rc-k-holidays{--k:var(--rc-h);}
/* BLD 905: Bulk Foods, its meal card, its section, and its guides. */
.rc-k-bulk{--k:var(--rc-g);}
.rc-bksec{margin-top:54px;padding:26px 22px 28px;border-radius:24px;background:linear-gradient(160deg,var(--rc-gbg1),var(--rc-gbg2));border:1px solid var(--line);scroll-margin-top:80px;}
.rc-bksec .rc-sh{border-bottom-color:var(--rc-g);--k:var(--rc-g);--rc-tint:color-mix(in srgb,var(--rc-g) 16%,var(--card));}
.rc-bkcard{align-items:center;}
.rc-bki{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--k);color:var(--rc-on);}
.rc-bki svg{width:30px;height:30px;}
.rc-bknote{font-size:15px;margin-top:18px;}
.rc-bkcols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;margin-top:18px;}
.rc-bkc{border-top:5px solid var(--k);}
.rc-bkul{margin:0;padding-left:20px;}
.rc-bkul li{margin:0 0 10px;font-size:17px;line-height:1.55;color:var(--ink-soft);overflow-wrap:anywhere;}
.rc-bkrec{margin-top:26px;}
.rc-bkrec .rc-grid{margin-top:12px;}
.rc-bkn{display:block;font-size:14px;font-weight:600;color:var(--k);margin-top:4px;}
.rc-bkhol{margin-top:16px;}
.rc-bkset{font-size:14px;color:var(--ink-soft);}
.rc-bk .rc-src{margin-top:14px;}
.rc-bkhits{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;}
.rc-bkhits .rc-lab{margin-right:4px;}
.rc-bkhits a{display:inline-flex;align-items:center;min-height:44px;padding:6px 16px;border-radius:999px;border:2px solid var(--rc-g);background:var(--rc-chip);color:var(--ink);font-size:16px;font-weight:600;text-decoration:none;}
.rc-bkhits a:focus-visible{outline:2px solid var(--rc-g);outline-offset:2px;}
.rc-tools{margin-top:30px;display:flex;flex-direction:column;gap:14px;padding:18px;border-radius:20px;background:var(--rc-panel);border:1px solid var(--line);}
.rc-find{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;}
.rc-find label{position:relative;flex:1 1 280px;max-width:560px;display:block;}
.rc-find svg{position:absolute;left:16px;top:50%;width:20px;height:20px;transform:translateY(-50%);color:var(--gold);pointer-events:none;}
.rc-find input{width:100%;min-height:52px;font:inherit;font-size:18px;padding:12px 16px 12px 46px;border-radius:999px;border:2px solid var(--line);background:var(--card);color:var(--ink);}
.rc-find input:focus-visible{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 30%,transparent);}
.rc-count{font-size:16px;color:var(--ink-soft);margin:0;}
.rc-count b{color:var(--ink);}
.rc-clear{font:inherit;font-size:15px;font-weight:600;background:none;border:none;color:var(--gold);cursor:pointer;padding:0 4px;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:3px;}
.rc-clear:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:6px;}
.rc-gf{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.rc-gf .rc-lab{margin-right:6px;}
.rc-sep{width:1px;align-self:stretch;min-height:28px;background:var(--line);margin:0 4px;}
.rc-chip{font:inherit;font-size:16px;line-height:1.3;min-height:44px;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:var(--rc-chip);color:var(--ink);cursor:pointer;transition:background .15s ease,border-color .15s ease;}
.rc-chip:hover{border-color:var(--gold);}
.rc-chip:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
.rc-chip[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--rc-on);font-weight:600;}
.rc-chip.rc-fitc[aria-pressed="true"]{background:var(--sage);border-color:var(--sage);}
.rc-results{margin-top:8px;}
.rc-results>.rc-sec:first-child{margin-top:22px;}
.rc-sec{margin-top:34px;}
.rc-sh{display:flex;align-items:center;gap:14px;padding-bottom:12px;border-bottom:3px solid var(--k);}
.rc-sh img{flex:none;width:62px;height:62px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px var(--k);}
.rc-sh h2{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:clamp(30px,3.4vw,38px);line-height:1;margin:0;color:var(--ink);}
.rc-sh .rc-shn{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:1.4px;text-transform:uppercase;color:var(--k);margin-left:auto;padding:4px 12px;border-radius:999px;background:var(--rc-tint);}
.rc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:16px;margin-top:18px;}
.rc-card{--rc-tint:color-mix(in srgb,var(--k) 16%,var(--card));display:flex;flex-direction:column;text-align:left;width:100%;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:18px;padding:0;overflow:hidden;cursor:pointer;box-shadow:0 2px 6px rgba(60,35,10,.06);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;min-width:0;}
.rc-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(60,35,10,.12);border-color:var(--k);}
.rc-card:focus-visible{outline:3px solid var(--k);outline-offset:3px;}
.rc-band{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(120deg,var(--rc-tint),color-mix(in srgb,var(--k) 6%,var(--card)));border-bottom:1px solid color-mix(in srgb,var(--k) 25%,transparent);}
.rc-ic{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--k);color:var(--rc-on);box-shadow:0 3px 8px color-mix(in srgb,var(--k) 35%,transparent);}
.rc-ic svg{width:26px;height:26px;}
.rc-ic.rc-pic{width:56px;height:56px;border-radius:16px;overflow:hidden;display:block;background:var(--rc-tint);}.rc-ic.rc-pic img{display:block;width:100%;height:100%;object-fit:cover;}
.rc-card .rc-m{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:1.4px;text-transform:uppercase;color:var(--k);}
.rc-cb{display:flex;flex-direction:column;flex:1;min-width:0;padding:14px 16px 16px;}
.rc-card b{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-weight:600;font-size:18px;line-height:1.3;margin:0 0 10px;overflow-wrap:anywhere;}
.rc-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;}
.rc-pill{display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--rc-tint);color:var(--ink);}
.rc-pill svg{width:14px;height:14px;color:var(--k);}
.rc-card .rc-n{display:block;margin-top:auto;font-size:14px;color:var(--ink-soft);line-height:1.45;}
.rc-empty{margin-top:22px;font-size:18px;color:var(--ink-soft);}
.rc-k-breakfast{--k:var(--rc-b);} .rc-k-lunch{--k:var(--rc-l);} .rc-k-dinner{--k:var(--rc-d);} .rc-k-snack{--k:var(--rc-s);} .rc-k-party{--k:var(--rc-p);} .rc-k-drink{--k:var(--rc-k);} .rc-k-sauce{--k:var(--rc-c);}
/* BLD 902: Celebration Drinks, its own section like Holidays and Gatherings */
.rc-drsec{margin-top:54px;padding:26px 22px 28px;border-radius:24px;background:linear-gradient(160deg,var(--rc-kbg1),var(--rc-kbg2));border:1px solid var(--line);scroll-margin-top:80px;--rc-tint:color-mix(in srgb,var(--k) 16%,var(--card));}
.rc-drsec .rc-sh{border-bottom-color:var(--rc-k);}
.rc-drnav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px;}
.rc-drnav a{display:inline-flex;align-items:center;min-height:44px;padding:6px 16px;border-radius:999px;border:1px solid var(--line);background:var(--rc-chip);color:var(--ink);font-size:16px;text-decoration:none;}
.rc-drnav a:hover{border-color:var(--rc-k);}
.rc-drnav a:focus-visible{outline:2px solid var(--rc-k);outline-offset:2px;}
.rc-drs{margin-top:28px;padding:0;scroll-margin-top:80px;}
.rc-drs .rc-hh{margin:0 0 2px;}
.rc-drl{color:var(--ink-soft);font-size:17px;line-height:1.55;margin:0 0 4px;max-width:760px;}
.rc-spark{border-top:5px solid var(--rc-k);padding:22px 22px 18px;}
.rc-sprows{list-style:none;padding:0;margin:14px 0 10px;counter-reset:sp;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px;}
.rc-sprows li{counter-increment:sp;position:relative;padding-left:44px;font-size:17px;line-height:1.5;min-width:0;}
.rc-sprows li::before{content:counter(sp);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--rc-k);color:var(--rc-on);font-weight:700;font-size:15px;display:grid;place-items:center;}
.rc-sprows b{display:block;}
.rc-sprows span{color:var(--ink-soft);}
.rc-stgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px;}
.rc-stp h4{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:24px;margin:0 0 8px;color:var(--ink);}
.rc-stp ul{margin:0;padding-left:20px;}
.rc-stp li{margin:6px 0;font-size:16px;line-height:1.5;color:var(--ink-soft);overflow-wrap:anywhere;}
.rc-also{margin:22px 0;}
.rc-sec{--rc-tint:color-mix(in srgb,var(--k) 16%,var(--card));}
/* Holidays and Gatherings */
.rc-holsec{margin-top:54px;padding:26px 22px 28px;border-radius:24px;background:linear-gradient(160deg,var(--rc-hbg1),var(--rc-hbg2));border:1px solid var(--line);scroll-margin-top:80px;}
.rc-holsec .rc-sh{border-bottom-color:var(--rc-h);--k:var(--rc-h);}
.rc-hl{color:var(--ink-soft);margin:12px 0 4px;font-size:17px;line-height:1.55;max-width:760px;}
.rc-hgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:14px;margin-top:18px;}
.rc-hcard{display:flex;gap:14px;align-items:flex-start;text-align:left;width:100%;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-left:6px solid var(--k);border-radius:16px;padding:14px 16px;cursor:pointer;min-width:0;box-shadow:0 2px 6px rgba(60,35,10,.06);transition:transform .15s ease,box-shadow .15s ease;}
.rc-hcard:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(60,35,10,.12);}
.rc-hcard:focus-visible{outline:3px solid var(--k);outline-offset:3px;}
.rc-hk0{--k:var(--clay);} .rc-hk1{--k:var(--honey);} .rc-hk2{--k:var(--sage);} .rc-hk3{--k:var(--plum);} .rc-hk4{--k:var(--blue);}
.rc-date{flex:none;width:60px;border-radius:12px;overflow:hidden;text-align:center;background:var(--card);border:1px solid color-mix(in srgb,var(--k) 40%,transparent);}
.rc-date i{display:block;font-style:normal;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;letter-spacing:1.2px;text-transform:uppercase;background:var(--k);color:var(--rc-on);padding:3px 0;}
.rc-date span{display:block;font-family:'Cormorant Garamond',serif;font-weight:700;font-size:26px;line-height:1.25;padding:2px 0 3px;color:var(--ink);}
.rc-date span.rc-yd{font-family:'Barlow Condensed',sans-serif;font-size:15px;line-height:1.2;padding:6px 2px;}
.rc-hcard .rc-cb{padding:0;}
.rc-hcard .rc-m{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:1.3px;text-transform:uppercase;color:var(--k);}
.rc-hcard b{display:block;font-weight:600;font-size:18px;line-height:1.3;margin:2px 0 4px;overflow-wrap:anywhere;}
.rc-hcard .rc-t{display:block;font-size:14px;font-weight:600;color:var(--ink-soft);}
.rc-hcard .rc-n{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;color:var(--ink-soft);line-height:1.45;margin-top:4px;}
.rc-hh{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;margin:6px 0 4px;}
/* The recipe's painting band */
.rc-dhero{position:relative;height:clamp(140px,20vw,230px);border-radius:22px;overflow:hidden;margin:12px 0 4px;background:var(--k);}
.rc-dhero img{display:block;width:100%;height:100%;object-fit:cover;}
.rc-dhero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--k) 55%,transparent),transparent 55%);}
/* Detail */
.rc-back{font:inherit;font-size:16px;font-weight:600;color:var(--gold);background:none;border:none;cursor:pointer;padding:6px 0;display:inline-flex;align-items:center;gap:6px;}
.rc-dh{display:flex;gap:16px;align-items:center;margin:14px 0 6px;}
.rc-dh .rc-ic{width:60px;height:60px;border-radius:16px;}
.rc-dh .rc-ic svg{width:34px;height:34px;}
.rc-dh .eyebrow{color:var(--k);margin:0;}
.rc-d h2{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:clamp(32px,4.2vw,46px);line-height:1.1;margin:2px 0 0;overflow-wrap:anywhere;}
.rc-d h2:focus{outline:none;}
.rc-meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px;}
.rc-tag{font-size:15px;padding:4px 12px;border-radius:999px;background:var(--rc-tile);color:var(--ink);}
.rc-tag.rc-g{background:none;border:1px solid var(--line);color:var(--ink-soft);}
.rc-cols{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:22px;margin-top:22px;}
.rc-d .card h3{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:26px;margin:0 0 10px;}
.rc-size{margin:0 0 16px;}
.rc-size .rc-row{gap:6px;}
.rc-size .rc-lab{min-width:0;margin-right:4px;}
.rc-size .rc-chip{min-width:44px;min-height:44px;padding:6px 10px;text-align:center;}
.rc-size-note{font-size:15px;color:var(--ink-soft);margin:8px 0 0;}
.rc-ing{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.rc-ing li{position:relative;padding-left:22px;font-size:17px;line-height:1.5;}
.rc-ing li::before{content:'';position:absolute;left:3px;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--k);}
.rc-steps{list-style:none;padding:0;margin:0;counter-reset:st;display:flex;flex-direction:column;gap:14px;}
.rc-steps li{counter-increment:st;position:relative;padding-left:44px;font-size:17px;line-height:1.55;}
.rc-steps li::before{content:counter(st);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--k);color:var(--rc-on);font-weight:700;font-size:15px;display:grid;place-items:center;line-height:1;}
.rc-steps .rc-min{display:block;font-size:14px;color:var(--ink-soft);margin-top:2px;}
.rc-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px;}
.rc-notes .card p{margin:0;font-size:17px;line-height:1.6;color:var(--ink-soft);}
.rc-notes .card p + p{margin-top:8px;}
.rc-pairs ul{margin:0;padding-left:20px;font-size:17px;line-height:1.6;}
.rc-pairs li + li{margin-top:4px;}
.rc-pairs a{color:var(--ink);text-decoration-color:var(--k,currentColor);text-underline-offset:3px;text-decoration-thickness:2px;}
.rc-low{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;margin-top:22px;align-items:start;}
.rc-nut{width:100%;border-collapse:collapse;font-size:16.5px;}
.rc-nut th,.rc-nut td{padding:7px 4px;border-bottom:1px solid var(--line);text-align:left;font-weight:400;}
.rc-nut td{text-align:right;font-weight:600;white-space:nowrap;}
.rc-nut caption{text-align:left;font-size:14px;color:var(--ink-soft);caption-side:bottom;padding-top:10px;}
.rc-cook{border-top:5px solid var(--gold);}
.rc-cook p{margin:0 0 16px;font-size:17px;line-height:1.6;color:var(--ink-soft);}
.rc-cook .btn{display:inline-flex;align-items:center;gap:8px;}
/* BLD 877: Guide Me, Step by Step */
.rc-go{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:18px 0 0;}
.rc-go span{font-size:16px;color:var(--ink-soft);}
.rc-guide-btn{display:inline-flex;align-items:center;gap:9px;min-height:50px;font-size:17px;cursor:pointer;border:none;}
.rc-play{width:18px;height:18px;flex:none;}
.rc-menu-btn{display:inline-flex;align-items:center;gap:8px;min-height:50px;font-size:17px;cursor:pointer;}.rc-menu-btn svg{width:20px;height:20px;flex:none;}
.rc-mnote{border:1px dashed var(--line);border-radius:16px;padding:12px 16px;margin:12px 0 0;}.rc-mnote p{margin:0 0 10px;color:var(--ink-soft);}
html.rg-lock,html.rg-lock body{overflow:hidden;}
.rg-ov{position:fixed;inset:0;z-index:2000;overflow:auto;-webkit-overflow-scrolling:touch;background:var(--bg);background:color-mix(in srgb,var(--rg-ac,#C9772B) 9%,var(--bg));color:var(--ink);padding:env(safe-area-inset-top,0px) max(16px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(16px,env(safe-area-inset-left,0px));}
.rg-in{max-width:660px;margin:0 auto;padding:14px 0 40px;}
/* BLD 895: the guide's food painting, behind everything, under a scrim in the page's own background color (light or dark). */
.rg-ov.rg-hasart{background:var(--bg);isolation:isolate;}
.rg-paint{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:var(--bg);}
.rg-paint picture,.rg-paint img{display:block;width:100%;height:100%;}
.rg-paint img{object-fit:cover;filter:blur(3px) saturate(1.05);transform:scale(1.06);}
.rg-paint::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 42%,transparent) 0%,color-mix(in srgb,var(--bg) 58%,transparent) 38%,color-mix(in srgb,var(--bg) 80%,transparent) 100%);}
@media (prefers-reduced-motion: no-preference){ .rg-paint img{animation:rgkb 48s ease-in-out infinite alternate;} }
@keyframes rgkb{from{transform:scale(1.06) translate(0,0);}to{transform:scale(1.14) translate(-1.5%,-1%);}}
.rg-hasart .rg-top{padding:8px 12px;border-radius:16px;background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.rg-hasart .rg-body{margin-top:12px;padding:16px 16px 18px;border-radius:22px;background:color-mix(in srgb,var(--bg) 84%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 24px rgba(0,0,0,.12);}
.rg-hasart .rg-stage{box-shadow:0 8px 28px rgba(0,0,0,.18);}
.rg-top{display:flex;justify-content:space-between;align-items:center;gap:12px;}
.rg-tt{min-width:0;}
.rg-tt b{display:block;font-size:17px;line-height:1.3;overflow-wrap:anywhere;}
.rg-kick{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold);}
.rg-x{flex:0 0 46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:28px;line-height:1;cursor:pointer;}
.rg-prog{height:6px;border-radius:4px;background:var(--bg-deep);overflow:hidden;margin-top:10px;}
.rg-prog span{display:block;height:100%;background:var(--rg-ac,var(--gold));transition:width .3s;}
.rg-stage{position:relative;margin:12px 0 0;border-radius:22px;overflow:hidden;}
/* The scene's .ggs shares its class name with the site search overlay (nav.js); keep the scene a plain panel here. */
.rg-stage .ggs{--H:clamp(130px,30vw,190px);position:relative;inset:auto;z-index:auto;display:block;padding:0;overflow:hidden;background:none;align-items:initial;justify-content:initial;}
.rg-stage.fb{height:clamp(110px,18vh,150px);background:linear-gradient(180deg,color-mix(in srgb,var(--rg-ac,#C9772B) 45%,#fff),var(--rg-ac,#C9772B));}
.rg-body{text-align:center;padding-top:16px;}
.rg-at{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15px;letter-spacing:1.2px;text-transform:uppercase;color:var(--gold);}
.rg-step{font-size:clamp(21px,5.2vw,27px);line-height:1.4;font-weight:600;max-width:34ch;margin:8px auto 16px;overflow-wrap:anywhere;}
.rg-step:focus{outline:none;}
.rg-sub{color:var(--ink-soft);font-size:17px;max-width:44ch;margin:0 auto 10px;}
.rg-note{font-size:16px;color:var(--ink-soft);max-width:44ch;margin:0 auto 10px;}
.rg-big{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(38px,9vw,48px);font-weight:700;margin:14px 0 8px;}
.rg-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:14px;}
.rg-btns .btn{min-height:54px;min-width:150px;font-size:17px;justify-content:center;cursor:pointer;}
.rg-line{background:var(--card);color:var(--ink);border:1px solid var(--line);}
.rg-line:disabled{opacity:.45;cursor:default;}
.rg-tbtn{min-height:48px;font-size:16px;margin-bottom:4px;cursor:pointer;}
.rg-link{font:inherit;font-size:16px;font-weight:600;color:var(--gold);background:none;border:none;border-bottom:1px solid currentColor;padding:0;cursor:pointer;}
.rg-under{display:inline-block;margin-top:16px;}
.rg-tg{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:20px 0 0;}
.rg-chip{font:inherit;font-size:15px;min-height:42px;padding:6px 16px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink-soft);cursor:pointer;}
.rg-chip[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--rc-on,#fff);font-weight:600;}
.rg-timers{display:grid;gap:6px;margin:10px 0 0;}
.rg-timers>div{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px 12px;min-width:0;}
.rg-timers small{flex:1;min-width:0;color:var(--ink-soft);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rg-tclock{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:26px;color:var(--rg-ac,var(--gold));font-variant-numeric:tabular-nums;}
.rg-rang{background:var(--rg-ac,#C9772B);color:#fff;border-radius:12px;padding:10px 14px;margin:10px 0 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:16px;}
.rg-rang span{flex:1;min-width:0;overflow-wrap:anywhere;}
.rg-rang .rg-link{color:#fff;}
.rc-src{font-size:14px;line-height:1.6;color:var(--ink-soft);max-width:900px;margin:0;}
.rc-src a{color:inherit;}
.rc-hmenu{display:grid;gap:16px;margin:16px 0;}.rc-hrec .rc-go{margin:10px 0;}.rc-hrec .rc-t{color:var(--ink-soft);margin:0;}
.rc-hcardtxt{border:1px dashed var(--line);border-radius:12px;padding:10px 12px;margin-top:10px;}.rc-hcardtxt p{white-space:pre-wrap;margin:6px 0 0;}
@media (max-width:1000px){.rc-grid,.rc-hgrid,.rc-stgrid{grid-template-columns:1fr 1fr;}.rc-cats{grid-template-columns:repeat(3,minmax(0,1fr));}.rc-cat.rc-k-holidays{grid-column:1/-1;min-height:160px;}.rc-cat{min-height:200px;}.rc-cat.rc-k-bulk{grid-column:span 2;}}
@media (max-width:760px){.rc-cols,.rc-notes,.rc-low,.rc-sprows,.rc-bkcols{grid-template-columns:1fr;}}
@media (max-width:620px){.rc-grid,.rc-hgrid{grid-template-columns:1fr;grid-auto-rows:auto;}.rc-cats{grid-template-columns:1fr 1fr;gap:12px;}.rc-cat{min-height:170px;}.rc-cat.rc-k-holidays{grid-column:1/-1;min-height:150px;}.rc-tools{padding:14px;}.rc-gf .rc-lab{width:100%;}.rc-sep{display:none;}.rc-holsec,.rc-drsec,.rc-bksec{padding:20px 14px 22px;margin-left:-6px;margin-right:-6px;}.rc-cat.rc-k-bulk{grid-column:auto;}.rc-stgrid{grid-template-columns:1fr;}.rc-sh img{width:52px;height:52px;}}
@media (prefers-reduced-motion:reduce){.rc-cat,.rc-cat img,.rc-card,.rc-hcard{transition:none;}.rc-cat:hover,.rc-card:hover,.rc-hcard:hover{transform:none;}.rc-cat:hover img{transform:none;}}
/* ---------- BLD 912: Grounded Recipes inside Home's own window (GGRecipes.mount) ----------
   The root is a container, so the layout follows the window's width (the same steps as the page's media rules).
   Home sets p margins to 0 and links to inherit their color (.hm p, .hm a); these lines give the recipe its own spacing back.
   Grounded Cooking plays inside the window, over its painting, in place of the list or the recipe. */
.rc-mnt{container:rcm/inline-size;font-family:'Barlow',sans-serif;font-size:19px;line-height:1.7;color:var(--ink);min-width:0;}
.rc-mnt .rc-intro{margin-top:4px;}
.rc-mnt p.rc-doc{margin:6px 0 0;}
.rc-mnt p.rc-empty{margin-top:22px;}
.rc-mnt p.rc-hl{margin:12px 0 4px;}
.rc-mnt p.rc-bknote{margin-top:18px;}
.rc-mnt p.rc-drl{margin:0 0 4px;}
.rc-mnt p.rc-size-note{margin:8px 0 0;}
.rc-mnt .rc-hrec>p:not(.rc-t){margin-top:8px;}
.rc-mnt p.rg-sub,.rc-mnt p.rg-note{margin:0 auto 10px;}
.rc-mnt p.rg-step{margin:8px auto 16px;}
.rc-mnt a.text-link{color:var(--gold);}
.rc-mnt a.btn-primary{color:#fff;}
.rc-mnt .rc-msrc{margin-top:34px;padding-top:16px;border-top:1px solid var(--line);}
.rc-mnt .rc-holsec,.rc-mnt .rc-drsec,.rc-mnt .rc-bksec{scroll-margin-top:10px;}
.rc-mnt .rg-ov{position:relative;inset:auto;z-index:auto;overflow:hidden;border-radius:22px;padding:0 14px;min-height:min(720px,calc(100dvh - 140px));}
.rc-mnt .rg-paint{position:absolute;}
@container rcm (max-width:1000px){.rc-grid,.rc-hgrid,.rc-stgrid{grid-template-columns:1fr 1fr;}.rc-cats{grid-template-columns:repeat(3,minmax(0,1fr));}.rc-cat.rc-k-holidays{grid-column:1/-1;min-height:160px;}.rc-cat{min-height:200px;}.rc-cat.rc-k-bulk{grid-column:span 2;}}
@container rcm (max-width:760px){.rc-cols,.rc-notes,.rc-low,.rc-sprows,.rc-bkcols{grid-template-columns:1fr;}}
@container rcm (max-width:620px){.rc-grid,.rc-hgrid{grid-template-columns:1fr;grid-auto-rows:auto;}.rc-cats{grid-template-columns:1fr 1fr;gap:12px;}.rc-cat{min-height:170px;}.rc-cat.rc-k-holidays{grid-column:1/-1;min-height:150px;}.rc-tools{padding:14px;}.rc-gf .rc-lab{width:100%;}.rc-sep{display:none;}.rc-holsec,.rc-drsec,.rc-bksec{padding:20px 14px 22px;margin-left:-6px;margin-right:-6px;}.rc-cat.rc-k-bulk{grid-column:auto;}.rc-stgrid{grid-template-columns:1fr;}.rc-sh img{width:52px;height:52px;}}
/* BLD 917: Share, holiday recipes in search results, words to try, and the small recipe pages (recipes/r/<id>.html). */
.rc-share-btn{display:inline-flex;align-items:center;gap:8px;min-height:50px;font-size:17px;cursor:pointer;}.rc-share-btn svg{width:20px;height:20px;flex:none;}
.rc-shnote{margin:10px 0 0;font-size:16px;font-weight:600;color:var(--rc-l);overflow-wrap:anywhere;}
.rc-hdc .rc-band{--k:var(--rc-h);}
.rc-hrec{scroll-margin-top:90px;}
.rc-hrec.rc-hd-on{box-shadow:0 0 0 3px var(--rc-h);}
.rc-hrec:focus{outline:none;}.rc-hrec:focus-visible{outline:2px solid var(--rc-h);outline-offset:3px;}
.rc-empty .rc-try{margin:6px 4px 0 0;vertical-align:middle;}
.rc-sp{padding:28px 0 56px;}
.rc-sp-card{max-width:760px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:24px;overflow:hidden;}
.rc-sp-img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:var(--bg-deep);}
.rc-sp-body{padding:22px 26px 28px;}
.rc-sp-body h1{margin:6px 0 10px;font-size:clamp(30px,5vw,44px);line-height:1.1;overflow-wrap:anywhere;}
.rc-sp-line{font-size:19px;margin:0 0 10px;}
.rc-sp-meta{font-size:16px;color:var(--ink-soft);margin:0 0 20px;}
.rc-sp-go{font-size:19px;min-height:54px;padding-left:28px;padding-right:28px;}
.rc-sp-all{margin:18px 0 0;font-size:16px;}
@media (max-width:620px){.rc-sp{padding:16px 0 40px;}.rc-sp-body{padding:18px 16px 22px;}.rc-sp-go{width:100%;justify-content:center;text-align:center;}}
