.kitchen-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:55;justify-content:center;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--paper,#faf8f2);color:var(--ink,#233d32);border-top:1px solid var(--line,#ddd)}
.kitchen-nav a,.kitchen-nav button{flex:1;max-width:180px;font:600 12px/1.3 system-ui;text-align:center;min-height:48px;padding:8px 3px;border:0;background:transparent;color:inherit;border-radius:8px;display:flex;align-items:center;justify-content:center}.kitchen-nav :is(a,button):focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.kitchen-nav [aria-current]{background:var(--soft)}body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.kitchen-dialog{width:min(620px,calc(100% - 24px));max-height:85dvh;overflow:auto;border:1px solid var(--line);border-radius:20px;padding:24px;background:var(--paper,#faf8f2);color:var(--ink,#233d32)}.kitchen-dialog::backdrop{background:#102018aa}.kitchen-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.kitchen-head h2{font:28px/1.15 Georgia;margin:0}.kitchen-dialog button{margin:4px;min-height:44px}.kitchen-dialog input:not([type=checkbox]),.kitchen-dialog select{display:block;width:100%;padding:12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px}.kitchen-dialog label{display:block}.kitchen-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0;gap:8px}.kitchen-row label{flex:1}.kitchen-row input[type=checkbox]{margin-right:10px;width:20px;height:20px}.kitchen-note{font-size:13px;color:var(--muted);margin-top:24px}.kitchen-chips{display:flex;flex-wrap:wrap;margin:18px 0}.kitchen-chips button[aria-pressed=false]{background:transparent;color:var(--ink)}.kitchen-step{font-size:24px;line-height:1.65}.kitchen-dialog button:disabled{opacity:.4;cursor:default}#privacy-banner{bottom:calc(80px + env(safe-area-inset-bottom))!important}#floating-share-btn{bottom:calc(86px + env(safe-area-inset-bottom))!important}
html[data-theme=dark]{color-scheme:dark;--paper:#171e1a;--ink:#edf2e8;--muted:#bac5bb;--accent:var(--brand-orange);--line:#455248;--soft:#2b382e}html[data-theme=dark] body,html[data-theme=dark] #site-header,html[data-theme=dark] #mobile-menu{background:var(--paper)!important;color:var(--ink)!important}html[data-theme=dark] :is(.fresh-description,.fresh-meta,.fresh-published,.description,.fresh-kicker,.eyebrow){color:var(--muted)}html[data-theme=dark] :is(.search-band,.ingredients,.review-notes,.recipe-ratings){background:var(--soft);color:var(--ink)}html[data-theme=dark] .fresh-cta{background:var(--brand-orange);color:var(--brand-on-orange)}html[data-theme=dark] .wordmark{color:var(--ink)}
@media(max-width:650px){html .fresh-layout{display:flex;flex-direction:column}html .fresh-art{order:-1;width:100%;margin-top:0}html .fresh-photo{aspect-ratio:1.65;border-radius:30px 5px 5px 5px}html .fresh-seal{display:none}html .fresh-copy h1{font-size:30px;margin:12px 0}html .fresh-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}html .fresh-published{margin-top:10px}html .fresh-masthead{margin-bottom:14px}html .fresh-category{font-size:12px;padding:5px 12px}html .fresh-meta{margin-bottom:12px}#floating-share-btn{display:none!important}.kitchen-dialog{padding:18px}.kitchen-head h2{font-size:25px}}
@media print{.kitchen-nav,.kitchen-dialog{display:none!important}body{padding-bottom:0}}
html[data-theme=dark] .visual-v8 main .button{background:var(--brand-orange);color:var(--brand-on-orange);border-color:var(--brand-orange)}html[data-theme=dark] .kitchen-nav :is(button,a){background:transparent;color:var(--ink);border:0}html[data-theme=dark] .kitchen-nav [aria-current]{background:var(--soft)}html[data-theme=dark] :is(.fresh-category,.search-band input){background:var(--soft);color:var(--ink);border-color:var(--line)}html[data-theme=dark] #site-header :is(a,button){color:var(--ink)}html[data-theme=dark] #site-header>div{background:var(--paper)!important}html[data-theme=dark] .search-band input::placeholder{color:var(--muted)}
@media(max-width:650px){.search-band{padding:14px;margin-bottom:24px;gap:12px}.search-band h2{font-size:22px}.search-band input{min-width:0}.search-band form{display:flex;gap:6px}.search-band button{padding:8px 12px}html .fresh-masthead{display:none}html .fresh-photo{aspect-ratio:1.8}html .fresh-art{padding-bottom:12px}html .fresh-category{display:none}}
.kitchen-suggestion{padding:18px 0;border-bottom:1px solid var(--line)}.kitchen-suggestion>a{font:600 22px/1.3 Georgia;text-decoration:underline}.kitchen-suggestion p{font-size:14px}.kitchen-dialog details{margin:16px 0}.kitchen-dialog summary{cursor:pointer;min-height:44px;padding:8px 0}.kitchen-servings{margin:16px 0}.kitchen-servings input{max-width:90px;margin-left:8px}.kitchen-servings small{display:block;color:var(--muted)}
@media(min-width:900px){.kitchen-nav{left:auto;right:24px;bottom:20px;border:1px solid var(--line);border-radius:16px;width:430px;padding:6px;box-shadow:0 5px 25px #0002}.kitchen-nav a,.kitchen-nav button{font-size:13px}}
html[data-theme=dark] :is(#site-header,#site-footer,#mobile-menu){--paper:#171e1a;--ink:#edf2e8;--muted:#bac5bb;--accent:var(--brand-orange);--line:#455248;--soft:#2b382e;background:var(--paper)!important;color:var(--ink)!important}html[data-theme=dark] :is(.search-band form,.recipe-jumps,.facts){background:var(--soft);color:var(--ink)}html[data-theme=dark] #site-header .wordmark{color:var(--ink)!important}html[data-theme=dark] #site-header [class*="text-gray"]{color:var(--ink)!important}
.kitchen-nav :is(a,button){flex-direction:column;gap:3px}.kitchen-nav svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.kitchen-nav span{white-space:nowrap;font-size:11px}
.recipe-video{padding:24px 0;border-top:1px solid var(--line);margin:24px 0}.recipe-video video{display:block;width:min(100%,360px);max-height:70vh;background:#152219;border-radius:16px;margin:16px auto}.recipe-video h2{font:28px Georgia}.recipe-video p{color:var(--muted)}

/* Visual review: isolate components from legacy global form/button rules. */
html{color-scheme:light}html[data-theme=dark]{color-scheme:dark}
html .kitchen-dialog{--k-surface:#fffdf8;--k-field:#f4f1e9;--k-ink:#233d32;--k-muted:#667168;--k-line:#dddcd1;background:var(--k-surface);color:var(--k-ink);padding:30px;border:1px solid var(--k-line);border-radius:26px;box-shadow:0 32px 100px #14281e38;width:min(600px,calc(100% - 32px));}
html[data-theme=dark] .kitchen-dialog{--k-surface:#202b24;--k-field:#29362d;--k-ink:#f4f0e5;--k-muted:#bac8bd;--k-line:#48584b}
html .kitchen-dialog[open]{animation:kitchen-enter .26s cubic-bezier(.2,.8,.2,1) both}html .kitchen-dialog.is-closing{animation:kitchen-exit .18s ease both}
html .kitchen-dialog::backdrop{background:#10201870;backdrop-filter:blur(5px);animation:kitchen-backdrop .25s ease both}
html .kitchen-head{margin-bottom:24px;align-items:center}html .kitchen-head h2{font:400 32px/1.1 Georgia,serif;letter-spacing:-.7px;color:var(--k-ink)}
html .kitchen-dialog button{font:600 14px/1.3 system-ui;min-height:44px;padding:12px 18px;margin:4px 4px 4px 0;border:1px solid transparent;border-radius:12px;background:var(--brand-orange);color:var(--brand-on-orange);cursor:pointer;transition:background .18s,transform .18s,box-shadow .18s}
html .kitchen-dialog button:hover{background:var(--brand-orange);box-shadow:0 4px 12px #10201814;transform:translateY(-1px)}html .kitchen-dialog button:active{transform:translateY(0)}
html .kitchen-head button{background:transparent;color:var(--k-muted);border-color:var(--k-line);padding:9px 14px;margin:0;font-size:12px}html .kitchen-head button:hover{background:var(--k-field);color:var(--k-ink)}
html .kitchen-dialog form{display:flex;align-items:flex-end;gap:12px;background:transparent;border:0;padding:0;margin:16px 0;width:100%;box-shadow:none;border-radius:0}
html .kitchen-dialog form label{flex:1;min-width:0;font:600 13px/1.5 system-ui;color:var(--k-muted)}
html .kitchen-dialog input:not([type=checkbox]),html .kitchen-dialog select{box-sizing:border-box;width:100%;min-width:0;height:52px;margin-top:8px;background:var(--k-field);color:var(--k-ink);border:1px solid var(--k-line);border-radius:12px;padding:12px 14px;font:400 16px/1.4 system-ui;box-shadow:none}
html .kitchen-dialog input::placeholder{color:var(--k-muted);opacity:1}html .kitchen-dialog form button{height:52px;margin:0;flex-shrink:0}
html .kitchen-dialog :is(input,select,button,a):focus-visible{outline:2px solid var(--brand-orange);outline-offset:3px}
html .kitchen-note{color:var(--k-muted);font:400 12px/1.6 system-ui;border-top:1px solid var(--k-line);padding-top:18px;margin-top:24px}
html .kitchen-intro{color:var(--k-muted);font-size:15px;line-height:1.6;margin:0 0 24px}
html .kitchen-tools{display:grid;gap:10px}html .kitchen-tools button{display:flex;flex-direction:column;gap:6px;text-align:left;margin:0;background:var(--k-field);border:1px solid var(--k-line);color:var(--k-ink);padding:18px 20px}html .kitchen-tools button:hover{background:var(--k-field);border-color:#b2785e;transform:translateX(3px)}html .kitchen-tools strong{font-size:16px}html .kitchen-tools span{font:400 13px/1.4 system-ui;color:var(--k-muted)}html .kitchen-appearance{font:600 13px/1.5 system-ui;margin-top:24px;color:var(--k-muted)}
html .kitchen-chips button[aria-pressed=false]{background:var(--k-field);color:var(--k-ink);border-color:var(--k-line)}
.kitchen-desktop-tools{display:flex;gap:8px;align-items:center}.kitchen-desktop-tools button{font:600 12px/1.2 system-ui;background:transparent;color:inherit;border:1px solid currentColor;border-radius:20px;padding:9px 12px;cursor:pointer}
@media(min-width:768px){html .kitchen-nav{display:none}body{padding-bottom:0}#privacy-banner{bottom:0!important}#floating-share-btn{bottom:24px!important}}
@media(max-width:767px){.kitchen-desktop-tools{display:none}html .kitchen-dialog{padding:24px 20px;border-radius:24px;max-height:82dvh}html .kitchen-head h2{font-size:27px}html .kitchen-dialog form{gap:8px}html .kitchen-dialog form button{padding:10px 14px}html .kitchen-nav{box-shadow:0 -5px 25px #233d320a}}
html[data-theme=dark] .green-edit{background:#29382b;color:#edf2e8}html[data-theme=dark] .green-edit :is(h2,a){color:#edf2e8}html[data-theme=dark] .green-edit :is(p,.eyebrow){color:#c2cebf}html[data-theme=dark] .green-edit h2 em{color:#bed5a5}html[data-theme=dark] .green-photo span{background:#202b24;color:#f4f0e5}html[data-theme=dark] .green-links a{border-color:#697b65}
html[data-theme=dark] :is(#google_btn_desktop,#google_btn_mobile){color-scheme:light;background:#fff;color:#202124;border-radius:24px;overflow:hidden}html[data-theme=dark] #modal-panel{color-scheme:light;color:#233d32}html[data-theme=dark] #site-header #google_btn_desktop *{color:revert!important}
@keyframes kitchen-enter{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes kitchen-exit{to{opacity:0;transform:translateY(10px) scale(.99)}}@keyframes kitchen-backdrop{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){html .kitchen-dialog,html .kitchen-dialog::backdrop,html .kitchen-dialog button{animation:none!important;transition:none!important;transform:none!important}}
html[data-theme=dark] .search-band button{background:var(--brand-orange);color:var(--brand-on-orange);border-color:var(--brand-orange)}html[data-theme=dark] .search-band form{border-color:var(--line)}html[data-theme=dark] .fresh-recent-grid small{color:var(--brand-orange)}html[data-theme=dark] .fresh-recent{border-color:var(--line)}html[data-theme=dark] .editorial-pair p{color:var(--muted)}html .kitchen-tools button{align-items:flex-start;text-align:left}
html[data-theme=dark] #privacy-settings{background:#29382b;color:#edf2e8;border-color:#697b65}html[data-theme=dark] .mini-recipe small{color:var(--brand-orange)}
@media(min-width:768px){#site-header>div:first-child{max-width:1440px;gap:20px}#site-header nav:not([aria-label]){gap:16px}#site-header nav:not([aria-label])>*{margin-left:0!important;white-space:nowrap}#site-header .kitchen-desktop-tools{gap:14px}#site-header .kitchen-desktop-tools button{padding:8px 0;white-space:nowrap}}
@media(min-width:768px) and (max-width:1199px){#site-header>div:first-child{flex-wrap:wrap;height:auto;padding-block:16px;row-gap:10px}#site-header nav:not([aria-label]){order:3;width:100%;justify-content:center}#site-header nav[aria-label]{margin-left:auto}}

.kitchen-theme-bar{display:flex;justify-content:flex-end;width:min(1280px,100%);margin:0 auto;padding:8px 24px;box-sizing:border-box}.kitchen-theme-bar button{font:600 12px/1.4 system-ui;color:var(--ink,#233d32);background:transparent;border:1px solid var(--line,#d9ddd2);border-radius:24px;padding:8px 14px;min-height:40px;cursor:pointer}.kitchen-theme-bar button:focus-visible{outline:2px solid var(--brand-orange);outline-offset:3px}@media(max-width:600px){#site-header .brand-social{gap:10px}#site-header .brand-social a{min-width:24px;font-size:16px}.kitchen-theme-bar{padding:6px 18px}}

@media(max-width:767px){#site-header .brand-social{display:none!important}#site-header>div:first-child{gap:12px!important}}

/* Theme changes: keep photographs untouched; animate only interface colors. */
html.theme-changing :is(body,main,section,article,header,footer,nav,div,h1,h2,h3,p,a,button,label,input,select,small,span,dialog){transition:background-color .32s ease,color .32s ease,border-color .32s ease,box-shadow .32s ease!important}
html #site-header .kitchen-desktop-tools button{background:transparent;color:var(--ink,#233d32);border-color:transparent;border-radius:12px;padding:10px 12px;transition:background-color .2s,color .2s}
html #site-header .kitchen-desktop-tools button:is(:hover,:focus-visible){background:#edf0e5;color:#233d32}
html[data-theme=dark] #site-header .kitchen-desktop-tools button{background:transparent;color:#edf2e8;border-color:transparent}
html[data-theme=dark] #site-header .kitchen-desktop-tools button:is(:hover,:focus-visible,:active){background:#334739;color:#f6f3e9}
html #site-header .kitchen-desktop-tools button:focus-visible{outline:2px solid var(--brand-orange);outline-offset:2px}
html[data-theme=dark] #mobile-menu-btn:is(:hover,:focus-visible){background:#334739!important;color:#f6f3e9!important}
@media(prefers-reduced-motion:reduce){html.theme-changing *{transition:none!important}}

/* Recipe actions: scoped colors and consistent hierarchy in both themes. */
html .visual-v8 .recipe-intro .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
html .visual-v8 .recipe-intro .actions :is(button,a.button){display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;margin:0;padding:12px 14px;border:1px solid var(--line,#d9ddd2);border-radius:12px;font:600 14px/1.4 system-ui;text-align:center;text-decoration:none;white-space:normal;cursor:pointer;box-shadow:none;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s}
html .visual-v8 .recipe-intro .actions>a.button{background:var(--brand-orange);color:var(--brand-on-orange);border-color:var(--brand-orange)}
html .visual-v8 .recipe-intro .actions>button{background:#233d32;color:#fff;border-color:#233d32}
html .visual-v8 .recipe-intro .recipe-utilities{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:14px;margin-top:2px;border-top:1px solid var(--line,#d9ddd2)}
html .visual-v8 .recipe-intro .recipe-utilities button{background:transparent;color:var(--ink,#233d32);border-color:var(--line,#d9ddd2);font-size:13px;min-height:44px}
html .visual-v8 .recipe-intro .recipe-utilities button:hover{background:var(--soft,#edf0e5);border-color:var(--ink,#233d32)}
html .visual-v8 .recipe-intro .actions>a.button:hover{background:var(--brand-orange);border-color:var(--brand-orange)}
html .visual-v8 .recipe-intro .actions>button:hover{background:#345344;border-color:#345344}
html[data-theme=dark] .visual-v8 .recipe-intro .actions>button{background:#334c3e;border-color:#66816e;color:#f4f1e7}
html[data-theme=dark] .visual-v8 .recipe-intro .actions>button:hover{background:#42614f}
html .visual-v8 .recipe-intro .actions :is(button,a):focus-visible{outline:3px solid var(--brand-orange);outline-offset:3px}
html .visual-v8 .recipe-intro .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:1px solid var(--line,#d9ddd2);border-radius:14px;padding:20px}
html .visual-v8 .recipe-intro .facts>div+div{border-left:1px solid var(--line,#d9ddd2);padding-left:14px}
@media(max-width:480px){html .visual-v8 .recipe-intro .actions{gap:8px}html .visual-v8 .recipe-intro .actions :is(button,a.button){padding:11px 8px;font-size:13px}html .visual-v8 .recipe-intro .facts{padding:16px 12px;gap:8px}html .visual-v8 .recipe-intro .facts>div+div{padding-left:8px}}
@media(prefers-reduced-motion:reduce){html .visual-v8 .recipe-intro .actions :is(button,a){transition:none}}

/* Header controls share fixed targets; icon strokes morph without layout shift. */
#site-header .header-utilities{display:flex;align-items:center;gap:12px;flex-shrink:0}
#site-header .kitchen-theme-bar{width:auto;margin:0;padding:0;display:flex}
#site-header .kitchen-theme-bar button,#site-header #mobile-menu-btn{width:44px;height:44px;min-height:44px;flex:0 0 44px;padding:0;align-items:center;justify-content:center;border:1px solid var(--line,#d9ddd2);border-radius:50%;background:transparent;color:var(--ink,#233d32);transform:none}
#site-header .kitchen-theme-bar button{display:flex;font-size:20px;line-height:1}
#site-header #mobile-menu-btn{display:none}
#site-header .recipe-menu-icon{width:24px;height:24px;flex:none}
.recipe-menu-icon path{transform-origin:12px 12px;transition:transform 280ms ease,opacity 180ms ease}
#mobile-menu-btn[aria-expanded="true"] .menu-line-top{transform:translateY(6px) rotate(45deg);transform-origin:12px 6px}
#mobile-menu-btn[aria-expanded="true"] .menu-line-middle{opacity:0;transform:scaleX(.4)}
#mobile-menu-btn[aria-expanded="true"] .menu-line-bottom{transform:translateY(-6px) rotate(-45deg);transform-origin:12px 18px}
#site-header #mobile-menu{display:block;max-height:calc(100dvh - 150px);overflow-y:auto;height:auto;transform:translateY(-8px);opacity:0;visibility:hidden;pointer-events:none;transition:transform 280ms ease,opacity 180ms ease,visibility 280ms}
#site-header #mobile-menu.open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}
@media(min-width:768px){#site-header #mobile-menu{display:none}}
@media(max-width:767px){
 #site-header .header-utilities{gap:8px}#site-header .brand-social{display:none!important}#site-header #mobile-menu-btn{display:flex}
 #cookie-banner{bottom:calc(65px + env(safe-area-inset-bottom));max-height:calc(100dvh - 155px);padding-bottom:16px}
 html .kitchen-nav{height:calc(65px + env(safe-area-inset-bottom));box-sizing:border-box}
}
.category-directory{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.category-directory .category-tile{display:flex;flex-direction:column;overflow:hidden;padding:0;border:1px solid var(--line,#d9ddd2);border-radius:18px;background:var(--paper,#faf8f2);color:var(--ink,#233d32);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}
.category-tile .category-image{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--soft,#edf0e5)}
.category-tile .category-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.category-tile .category-copy{display:flex;flex-direction:column;gap:8px;padding:20px}
.category-tile strong{font:600 25px/1.2 Georgia,serif}.category-tile small{font:500 13px/1.5 system-ui;color:var(--muted,#647067)}
.category-tile:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0001}.category-tile:hover img{transform:scale(1.04)}
.category-tile:focus-visible{outline:3px solid var(--brand-orange);outline-offset:4px}
@media(max-width:900px){.category-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:480px){.category-directory{gap:12px}.category-tile .category-copy{padding:14px}.category-tile strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.recipe-menu-icon path,#site-header #mobile-menu,.category-tile,.category-tile img{transition:none!important}.category-tile:hover,.category-tile:hover img{transform:none}}

.category-tile .category-copy{align-items:flex-start;text-align:left;min-width:0}.category-tile strong{max-width:100%;overflow-wrap:anywhere}

html .kitchen-dialog.is-closing::backdrop{animation:kitchen-backdrop-exit .18s ease both}
@keyframes kitchen-backdrop-exit{from{opacity:1}to{opacity:0}}
