/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-stone-200:oklch(92.3% .003 48.717);--color-stone-500:oklch(55.3% .013 58.071);--color-stone-800:oklch(26.8% .007 34.298);--color-stone-900:oklch(21.6% .006 56.043);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--font-weight-medium:500;--font-weight-semibold:600;--radius-sm:.25rem;--radius-md:.375rem;--radius-2xl:1rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-8{margin-top:calc(var(--spacing)*8)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.items-center{align-items:center}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-stone-200{border-color:var(--color-stone-200)}.bg-stone-900{background-color:var(--color-stone-900)}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white)80%,transparent)}}.p-5{padding:calc(var(--spacing)*5)}.px-5{padding-inline:calc(var(--spacing)*5)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.pt-6{padding-top:calc(var(--spacing)*6)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.text-stone-500{color:var(--color-stone-500)}.text-stone-900{color:var(--color-stone-900)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-stone-800:hover{background-color:var(--color-stone-800)}}}:root{--font-sans:"Avenir Next","Segoe UI","Helvetica Neue",system-ui,-apple-system,sans-serif;--font-serif:"Iowan Old Style","Palatino","Georgia",serif;--color-background:#f8f2e8;--color-surface:#fdf7ef;--color-text:#2f2219;--color-text-muted:#5d4b3d;--color-accent-terracotta:#bc6a48;--color-accent-olive:#788351;--color-border:#d9c9ba;--color-on-accent:#fffdf9;--radius-md:18px;--radius-pill:999px;--shadow-soft:0 14px 30px #271c1514;--shadow-raised:0 20px 42px #271c1524;--layout-max-width:1800px;--layout-gutter-x:clamp(18px,3vw,72px);--max-width:var(--layout-max-width);--page-padding-x:var(--layout-gutter-x);--page-padding-top:34px;--page-padding-bottom:56px;--nav-padding-y:20px;--color-focus-ring:var(--color-accent-olive);--type-caption:.875rem;--type-label:.9375rem;--type-body-sm:.9375rem;--type-body:clamp(1rem,.96rem + .2vw,1.125rem);--type-body-lg:clamp(1.0625rem,1rem + .45vw,1.375rem);--type-heading-sm:clamp(1.75rem,1.56rem + .9vw,2.375rem);--type-heading-md:clamp(2.25rem,1.98rem + 1.35vw,3.2rem);--type-heading-lg:clamp(2.7rem,2.28rem + 1.85vw,3.85rem);--type-nav:1.03rem;--type-brand:clamp(1.7rem,1.42rem + .95vw,2.25rem);--lh-body:1.58;--lh-meta:1.48;--lh-heading:1.12;--lh-tight:1.06;--space-2:10px;--space-3:14px;--space-4:18px;--space-5:24px;--space-6:30px;--space-7:40px;--control-min-h:52px;--chip-min-h:48px;--card-pad-sm:20px;--card-pad-md:26px;--card-pad-lg:34px;--measure-body:72ch;--page-header-gap:6px;--page-description-inset:2px;--discover-hero-title-gap:4px;--discover-shelf-pad:clamp(16px,1.9vw,22px);--discover-ask-search-min-h:64px;--discover-ask-search-border-w:2px;--discover-ask-search-submit-min-h:48px;--discover-ask-search-submit-pad-x:24px;--discover-ask-search-submit-font-size:var(--type-body-sm);--discover-ask-search-clear-scale:1.8;--discover-ask-search-icon-size:24px}@media (min-width:1024px){:root{--space-5:26px;--space-6:32px;--space-7:42px;--control-min-h:54px;--chip-min-h:50px;--card-pad-md:28px;--card-pad-lg:34px;--discover-ask-search-min-h:62px;--discover-ask-search-submit-min-h:46px;--discover-ask-search-submit-pad-x:24px;--discover-ask-search-clear-scale:1.65;--discover-ask-search-icon-size:24px;--page-padding-top:40px;--page-padding-bottom:60px}}@media (min-width:1536px){:root{--control-min-h:56px;--chip-min-h:52px;--discover-ask-search-min-h:64px;--discover-ask-search-submit-min-h:48px;--discover-ask-search-submit-pad-x:24px}}*{box-sizing:border-box}body{background:radial-gradient(1200px 700px at 18% -10%,#bc6a4814,transparent 60%),radial-gradient(1000px 640px at 90% 0,#78835117,transparent 58%),var(--color-background);color:var(--color-text);font-family:var(--font-sans),system-ui,-apple-system,sans-serif;font-size:var(--type-body);line-height:var(--lh-body);margin:0}h1,h2,h3{font-family:var(--font-serif);letter-spacing:.01em;line-height:var(--lh-heading)}.app-shell{background:linear-gradient(180deg,var(--color-background)0,var(--color-background)240px),var(--color-background);min-height:100dvh}@supports (color:color-mix(in lab,red,red)){.app-shell{background:linear-gradient(180deg,color-mix(in srgb,var(--color-background)86%,white 14%)0,var(--color-background)240px),var(--color-background)}}.page-container{max-width:var(--max-width);width:min(calc(100% - (2*var(--page-padding-x))),92vw);margin:0 auto}.site-header{z-index:40;border-bottom:1px solid var(--color-border);position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.site-header{border-bottom:1px solid color-mix(in srgb,var(--color-border)84%,white 16%)}}.site-header{background:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.site-header{background:color-mix(in srgb,var(--color-background)84%,white 16%)}}.site-header{-webkit-backdrop-filter:blur(14px)saturate(1.05);backdrop-filter:blur(14px)saturate(1.05);box-shadow:0 10px 28px #271c150d}.nav-container{padding-top:var(--nav-padding-y);padding-bottom:var(--nav-padding-y);justify-content:space-between;align-items:center;gap:28px;display:flex}.brand{font-family:var(--font-serif);font-size:var(--type-brand);letter-spacing:.01em;color:var(--color-text);text-shadow:0 1px #fffdf980;font-weight:700;line-height:1;text-decoration:none}.nav-links{border-radius:calc(var(--radius-pill) + 2px);background:var(--color-surface);flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;padding:6px;display:flex;position:relative}@supports (color:color-mix(in lab,red,red)){.nav-links{background:color-mix(in srgb,var(--color-surface)72%,white 28%)}}.nav-links{border:1px solid var(--color-border)}@supports (color:color-mix(in lab,red,red)){.nav-links{border:1px solid color-mix(in srgb,var(--color-border)76%,white 24%)}}.nav-links{box-shadow:inset 0 1px #fffdf999}.nav-active-indicator{border-radius:var(--radius-pill);background:linear-gradient(180deg,var(--color-accent-terracotta)0,var(--color-accent-terracotta)100%);position:absolute;top:0;left:0}@supports (color:color-mix(in lab,red,red)){.nav-active-indicator{background:linear-gradient(180deg,color-mix(in srgb,var(--color-accent-terracotta)16%,white 84%)0,color-mix(in srgb,var(--color-accent-terracotta)24%,var(--color-surface)76%)100%)}}.nav-active-indicator{border:1px solid var(--color-accent-terracotta)}@supports (color:color-mix(in lab,red,red)){.nav-active-indicator{border:1px solid color-mix(in srgb,var(--color-accent-terracotta)34%,var(--color-border)66%)}}.nav-active-indicator{opacity:0;pointer-events:none;transition:transform .42s cubic-bezier(.2,.9,.22,1),width .42s cubic-bezier(.2,.9,.22,1),height .42s cubic-bezier(.2,.9,.22,1),opacity .22s;box-shadow:0 8px 18px #271c1514,inset 0 1px #fffdf9b8}.nav-active-indicator--ready{opacity:1}.nav-link{z-index:1;color:var(--color-text);justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.nav-link{color:color-mix(in srgb,var(--color-text)92%,var(--color-text-muted)8%)}}.nav-link{border-radius:var(--radius-pill);font-size:var(--type-nav);letter-spacing:.01em;min-height:48px;font-weight:700;line-height:var(--lh-tight);background:0 0;border:1px solid #0000;padding:0 18px;transition:color .16s,transform .16s}.nav-link__label{z-index:1;position:relative}.nav-link:hover{color:var(--color-text);transform:translateY(-1px)}.nav-link:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.nav-link--active{color:var(--color-text)}.app-main{padding-top:var(--page-padding-top);padding-bottom:var(--page-padding-bottom)}@media (min-width:1024px){.nav-container{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.brand{grid-column:1;justify-self:start}.nav-links{grid-column:2;justify-self:center;gap:18px}.nav-link{min-height:var(--control-min-h);padding:0 24px}}@media (max-width:720px){.nav-container{flex-direction:column;align-items:flex-start;gap:16px}.nav-links{flex-direction:column;align-items:stretch;gap:6px;width:100%}.nav-link{justify-content:flex-start;width:100%}}.page-heading{font-size:var(--type-heading-md);letter-spacing:-.018em;line-height:var(--lh-tight);text-wrap:balance;margin:0}.page-kicker{font-size:var(--type-caption);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-weight:700}.section-heading{font-size:var(--type-heading-sm);letter-spacing:-.016em;line-height:var(--lh-heading);text-wrap:balance;margin:0}.page-description{color:var(--color-text-muted);max-width:var(--measure-body);line-height:var(--lh-body);padding-left:var(--page-description-inset);text-indent:0;margin:0}.page-heading+.page-description{margin-top:var(--page-header-gap)}.discover-section--hero .page-heading+.page-description{margin-top:var(--discover-hero-title-gap)}.discover-hero{gap:var(--space-5);border:1px solid var(--color-border);border-radius:28px;padding:clamp(22px,2.2vw,36px);display:grid}@supports (color:color-mix(in lab,red,red)){.discover-hero{border:1px solid color-mix(in srgb,var(--color-border)78%,white 22%)}}.discover-hero{background:linear-gradient(145deg,var(--color-surface)0,var(--color-surface)100%)}@supports (color:color-mix(in lab,red,red)){.discover-hero{background:linear-gradient(145deg,color-mix(in srgb,var(--color-surface)90%,white 10%)0,color-mix(in srgb,var(--color-surface)75%,var(--color-background)25%)100%)}}.discover-hero{box-shadow:var(--shadow-soft)}.discover-helper{font-size:var(--type-body-sm);color:var(--color-text-muted);margin:0;line-height:1.5}.discover-helper--status{font-size:var(--type-caption);letter-spacing:.01em;opacity:.82}.discover-section{gap:28px;margin-top:28px;display:grid}.discover-section--hero{gap:4px;margin-top:0}.discover-section--shelf{gap:16px;padding-bottom:12px}.discover-section--for-you{gap:12px}.discover-loading-list{gap:10px;margin-top:20px;display:grid}.discover-loading-item{min-height:82px}.discover-loading-item,.discover-state-card{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface)}.discover-state-card{margin-top:var(--space-6);box-shadow:var(--shadow-soft);padding:var(--card-pad-lg);gap:var(--space-3);display:grid}.discover-state-card .section-heading{margin:0}.discover-state-card--prominent{margin-top:var(--space-4);padding:var(--card-pad-lg);border-color:var(--color-accent-terracotta)}@supports (color:color-mix(in lab,red,red)){.discover-state-card--prominent{border-color:color-mix(in srgb,var(--color-accent-terracotta)40%,var(--color-border)60%)}}.discover-setup-steps{font-size:var(--type-body-sm);opacity:.92;line-height:1.5}.discover-loading-progress{border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;width:100%;height:8px}@supports (color:color-mix(in lab,red,red)){.discover-loading-progress{background:color-mix(in srgb,var(--color-surface)80%,white 20%)}}.discover-loading-progress{overflow:hidden}.discover-loading-progress__bar{border-radius:inherit;background:linear-gradient(90deg,var(--color-accent-terracotta)0,var(--color-accent-olive)100%);width:38%;height:100%;display:block}@supports (color:color-mix(in lab,red,red)){.discover-loading-progress__bar{background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent-terracotta)80%,white 20%)0,color-mix(in srgb,var(--color-accent-olive)55%,white 45%)100%)}}.discover-loading-progress__bar{animation:discoverProgressSlide 1.2s ease-in-out infinite}@keyframes discoverProgressSlide{0%{transform:translate(-120%)}50%{transform:translate(95%)}to{transform:translate(260%)}}.discover-assistant-card{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-soft);padding:var(--card-pad-lg);gap:var(--space-3);display:grid}.discover-assistant-message{color:var(--color-text);line-height:var(--lh-body);max-width:var(--measure-body);margin:0}.discover-followups{gap:var(--space-3);flex-wrap:wrap;display:flex}.discover-followup-chip{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:var(--type-label);font-weight:700;line-height:var(--lh-tight);min-height:var(--chip-min-h);cursor:pointer;padding:0 18px}.discover-followup-chip:focus-visible,.discover-followup-chip:hover{border-color:var(--color-accent-terracotta);color:var(--color-text);outline:none}.discover-gathering-custom{width:100%;margin-top:var(--space-2)}.discover-gathering-custom-row{gap:var(--space-3);margin-top:var(--space-2);align-items:center;display:flex}.discover-gathering-custom-input{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);flex:1}@supports (color:color-mix(in lab,red,red)){.discover-gathering-custom-input{background:color-mix(in srgb,var(--color-surface)86%,white 14%)}}.discover-gathering-custom-input{color:var(--color-text);font-size:var(--type-label);min-height:var(--control-min-h);outline:none;padding:0 18px;font-weight:600}.discover-gathering-custom-input:focus{border-color:var(--color-accent-terracotta)}.discover-gathering-custom-input::placeholder{color:var(--color-text-muted);opacity:.7}.discover-gathering-generate-btn:disabled{opacity:.4;cursor:not-allowed}.discover-state-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.discover-continue-card{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-soft);padding:var(--card-pad-md);gap:var(--space-3);justify-items:start;display:grid}.discover-continue-card .page-description{margin:0}.discover-continue-meta{font-size:var(--type-label);margin:0;font-weight:700}.discover-action-card{align-content:start;gap:var(--space-4);min-height:0;display:grid}.discover-preview-trigger{width:100%;text-align:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:block}.discover-preview-trigger:focus-visible{outline:2px solid var(--color-accent-terracotta);outline-offset:2px;border-radius:var(--radius-md)}.discover-action-card .recipe-card{align-self:start;height:auto}.discover-action-card .recipe-card--small{grid-template-columns:clamp(180px,15vw,260px)minmax(200px,min(1.8fr,340px));align-items:flex-start;gap:clamp(22px,2.2vw,38px);padding:clamp(22px,1.8vw,34px)}.discover-action-card .recipe-card--small .recipe-card__media--small{border-radius:26px;width:100%;height:clamp(180px,15vw,260px);min-height:clamp(180px,15vw,260px);max-height:clamp(180px,15vw,260px)}.discover-action-card .recipe-card--small .recipe-card__content{gap:var(--space-2)}.discover-action-card .recipe-card--small .recipe-card__title{overflow-wrap:break-word;word-break:break-word;min-width:0;font-size:clamp(1.35rem,1.1rem + .9vw,1.8rem);line-height:1.12}.discover-action-card .recipe-card--small .recipe-card__meta{font-size:var(--type-label)}.discover-action-card--large{gap:var(--space-5)}.discover-action-row{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.discover-meta-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.discover-reason{color:var(--color-text-muted);font-size:var(--type-label);font-weight:600;line-height:var(--lh-meta);margin:0}.discover-source-badge{border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:var(--type-caption);color:var(--color-text-muted);background:var(--color-surface);align-items:center;padding:6px 12px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.discover-source-badge{background:color-mix(in srgb,var(--color-surface)65%,white 35%)}}.discover-source-badge{white-space:nowrap;flex-shrink:0}.discover-action-button{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface)}@supports (color:color-mix(in lab,red,red)){.discover-action-button{background:color-mix(in srgb,var(--color-surface)84%,white 16%)}}.discover-action-button{color:var(--color-text);font-size:var(--type-label);min-height:var(--control-min-h);cursor:pointer;padding:0 20px;font-weight:700;transition:border-color .16s,background .16s,color .16s,transform .16s}.discover-action-button:focus-visible,.discover-action-button:hover{border-color:var(--color-accent-terracotta);outline:none;transform:translateY(-1px)}.discover-action-button--active{background:var(--color-accent-terracotta);color:var(--color-on-accent);border-color:#0000}.discover-action-button--planned{background:var(--color-accent-olive);color:var(--color-on-accent);border-color:#0000}.discover-link-button{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);justify-self:start}@supports (color:color-mix(in lab,red,red)){.discover-link-button{background:color-mix(in srgb,var(--color-surface)78%,white 22%)}}.discover-link-button{color:var(--color-text);font-size:var(--type-label);min-height:var(--control-min-h);cursor:pointer;padding:0 20px;font-weight:700;text-decoration:none;transition:border-color .16s,color .16s,transform .16s,background .16s}.discover-link-button:focus-visible,.discover-link-button:hover{color:var(--color-accent-terracotta);border-color:var(--color-accent-terracotta);outline:none;transform:translateY(-1px)}.discover-for-you-card{border:1px solid var(--color-border);gap:0;padding:0;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.discover-for-you-card{border:1px solid color-mix(in srgb,var(--color-border)80%,white 20%)}}.discover-for-you-card{background:linear-gradient(180deg,var(--color-surface)0,var(--color-surface)100%);border-radius:26px}@supports (color:color-mix(in lab,red,red)){.discover-for-you-card{background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface)82%,white 18%)0,color-mix(in srgb,var(--color-surface)74%,var(--color-background)26%)100%)}}.discover-for-you-card{box-shadow:0 18px 38px #271c1514,inset 0 1px #fffdf9b8}.discover-for-you-card .recipe-card--large{gap:var(--space-4);box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);padding:22px 22px 18px}.discover-for-you-card .recipe-card__media{border-color:var(--color-border);height:clamp(260px,22vw,420px);min-height:260px;max-height:420px}@supports (color:color-mix(in lab,red,red)){.discover-for-you-card .recipe-card__media{border-color:color-mix(in srgb,var(--color-border)76%,white 24%)}}.discover-for-you-card .recipe-card__media{box-shadow:0 12px 24px #271c150f}.discover-for-you-card .recipe-card__content{gap:12px}.discover-for-you-card .recipe-card__title--large{font-size:clamp(1.58rem,1.34rem + .8vw,2.05rem)}.discover-for-you-body{border-top:1px solid var(--color-border);gap:12px;padding:14px 22px 16px;display:grid}@supports (color:color-mix(in lab,red,red)){.discover-for-you-body{border-top:1px solid color-mix(in srgb,var(--color-border)72%,white 28%)}}.discover-for-you-body{background:linear-gradient(180deg,var(--color-surface)0,var(--color-surface)100%)}@supports (color:color-mix(in lab,red,red)){.discover-for-you-body{background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface)62%,white 38%)0,color-mix(in srgb,var(--color-surface)78%,var(--color-background)22%)100%)}}.discover-for-you-meta-row{align-items:flex-start}.discover-for-you-pills{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.discover-status-pill{border-radius:var(--radius-pill);border:1px solid var(--color-accent-terracotta);align-items:center;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.discover-status-pill{border:1px solid color-mix(in srgb,var(--color-accent-terracotta)32%,var(--color-border)68%)}}.discover-status-pill{background:var(--color-accent-terracotta)}@supports (color:color-mix(in lab,red,red)){.discover-status-pill{background:color-mix(in srgb,var(--color-accent-terracotta)10%,var(--color-surface)90%)}}.discover-status-pill{color:var(--color-accent-terracotta);font-size:var(--type-caption);white-space:nowrap;padding:6px 12px;font-weight:700}.discover-for-you-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:4px;display:flex}.discover-for-you-pills-row{align-items:center;gap:var(--space-2);flex-shrink:0;display:inline-flex}.discover-for-you-primary-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.discover-for-you-primary-action{width:auto;min-width:152px;padding-left:20px;padding-right:20px}.discover-for-you-plan-panel{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(190px,auto);align-items:end;display:grid}@supports (color:color-mix(in lab,red,red)){.discover-for-you-plan-panel{background:color-mix(in srgb,var(--color-surface)75%,white 25%)}}.discover-for-you-select-group{color:var(--color-text-muted);font-size:var(--type-label);gap:6px;font-weight:700;display:grid}.discover-for-you-select{min-height:var(--control-min-h);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-background)}@supports (color:color-mix(in lab,red,red)){.discover-for-you-select{background:color-mix(in srgb,var(--color-background)82%,white 18%)}}.discover-for-you-select{color:var(--color-text);font-size:var(--type-label);padding:0 18px;font-weight:700}.discover-for-you-select:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.discover-for-you-utility-row{flex-wrap:wrap;align-items:center;gap:12px;margin-left:auto;display:flex}.discover-for-you-nav-buttons{align-items:center;gap:10px;display:inline-flex}.discover-for-you-nav-button{border:1px solid var(--color-border);border-radius:999px;width:42px;height:42px}@supports (color:color-mix(in lab,red,red)){.discover-for-you-nav-button{border:1px solid color-mix(in srgb,var(--color-border)78%,white 22%)}}.discover-for-you-nav-button{background:var(--color-surface)}@supports (color:color-mix(in lab,red,red)){.discover-for-you-nav-button{background:color-mix(in srgb,var(--color-surface)72%,white 28%)}}.discover-for-you-nav-button{color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;font-size:1.15rem;font-weight:700;transition:border-color .16s,background .16s,color .16s,transform .16s;display:inline-flex}.discover-for-you-nav-button:focus-visible,.discover-for-you-nav-button:hover{border-color:var(--color-accent-terracotta);color:var(--color-accent-terracotta);outline:none;transform:translateY(-1px)}.discover-for-you-nav-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.discover-for-you-link-button{background:0 0;justify-self:auto;min-height:42px;margin-left:0;padding:0 16px}.discover-preview-tools{gap:var(--space-4);justify-items:start;display:grid}.discover-preview-regenerate-button{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface)}@supports (color:color-mix(in lab,red,red)){.discover-preview-regenerate-button{background:color-mix(in srgb,var(--color-surface)80%,white 20%)}}.discover-preview-regenerate-button{color:var(--color-text);font-size:var(--type-label);min-height:var(--control-min-h);cursor:pointer;padding:0 20px;font-weight:700;transition:border-color .16s,background .16s,color .16s}.discover-preview-regenerate-button:focus-visible,.discover-preview-regenerate-button:hover{border-color:var(--color-accent-terracotta);color:var(--color-accent-terracotta);outline:none}.discover-preview-regenerate-button:disabled{opacity:.5;cursor:not-allowed}.discover-preview-refinement{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);width:min(100%,620px)}@supports (color:color-mix(in lab,red,red)){.discover-preview-refinement{background:color-mix(in srgb,var(--color-surface)88%,white 12%)}}.discover-preview-refinement{padding:var(--card-pad-md);gap:var(--space-3);box-shadow:var(--shadow-soft);display:grid}.discover-preview-refinement-header{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.discover-preview-refinement-title{font-size:var(--type-body-sm);color:var(--color-text);margin:0;font-weight:700}.discover-preview-refinement-counter{color:var(--color-text-muted);font-size:var(--type-caption);font-weight:600}.discover-preview-refinement-textarea{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:112px;padding:14px 16px}@supports (color:color-mix(in lab,red,red)){.discover-preview-refinement-textarea{background:color-mix(in srgb,var(--color-surface)80%,white 20%)}}.discover-preview-refinement-textarea{color:var(--color-text);font:inherit;line-height:var(--lh-body);resize:vertical}.discover-preview-refinement-textarea:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.discover-preview-refinement-actions{justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.discover-feedback-overlay{z-index:120;background:var(--color-background);position:fixed;inset:0}@supports (color:color-mix(in lab,red,red)){.discover-feedback-overlay{background:color-mix(in srgb,var(--color-background)58%,black 42%)}}.discover-feedback-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:flex-end;padding:22px;display:flex}.discover-feedback-sheet{border:1px solid var(--color-border);background:var(--color-surface);border-radius:22px;gap:14px;width:min(860px,100%);max-height:min(86vh,760px);padding:22px;display:grid;overflow:auto;box-shadow:0 24px 64px #00000038}.discover-feedback-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.discover-feedback-title{font-size:var(--type-heading-sm);letter-spacing:-.012em;margin:0;line-height:1.1}.discover-feedback-subtitle{color:var(--color-text-muted);font-size:var(--type-body-sm);max-width:var(--measure-body);margin:8px 0 0;line-height:1.52}.discover-feedback-close{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface)}@supports (color:color-mix(in lab,red,red)){.discover-feedback-close{background:color-mix(in srgb,var(--color-surface)76%,white 24%)}}.discover-feedback-close{color:var(--color-text);font-size:var(--type-label);min-height:var(--control-min-h);cursor:pointer;padding:0 20px;font-weight:700}.discover-feedback-section-label{color:var(--color-text);font-size:var(--type-body-sm);margin:0;font-weight:700}.discover-feedback-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.discover-feedback-chip{min-height:var(--chip-min-h);border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.discover-feedback-chip{background:color-mix(in srgb,var(--color-surface)78%,white 22%)}}.discover-feedback-chip{color:var(--color-text);font-size:var(--type-label);text-align:center;cursor:pointer;padding:0 18px;font-weight:700}.discover-feedback-chip--selected{border-color:var(--color-accent-terracotta);background:var(--color-accent-terracotta);color:var(--color-on-accent)}.discover-feedback-chip:disabled{opacity:.45;cursor:not-allowed}.discover-feedback-text-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.discover-feedback-counter{color:var(--color-text-muted);font-size:var(--type-caption);font-weight:600}.discover-feedback-textarea{border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;min-height:130px;font:inherit;color:var(--color-text);line-height:var(--lh-body);background:var(--color-surface);padding:14px 16px}@supports (color:color-mix(in lab,red,red)){.discover-feedback-textarea{background:color-mix(in srgb,var(--color-surface)82%,white 18%)}}.discover-feedback-textarea{resize:vertical}.discover-feedback-textarea:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.discover-feedback-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (max-width:900px){.discover-action-card .recipe-card--small{grid-template-columns:140px 1fr;gap:14px;padding:14px}.discover-action-card .recipe-card--small .recipe-card__media--small{border-radius:14px;height:120px;min-height:120px;max-height:130px}.discover-preview-regenerate-button{width:100%}.discover-preview-refinement{width:100%;padding:12px}.discover-preview-refinement-actions{justify-content:stretch}.discover-preview-refinement-actions .discover-action-button{flex:220px}.discover-feedback-overlay{padding:0}.discover-feedback-sheet{border-bottom:0;border-radius:20px 20px 0 0;width:100%;max-height:88vh;padding:18px 16px 16px}.discover-feedback-title{font-size:var(--type-heading-sm)}.discover-feedback-chip-grid{grid-template-columns:1fr}.discover-for-you-footer{align-items:stretch}.discover-for-you-primary-row{justify-content:flex-start;width:100%}.discover-for-you-plan-panel{grid-template-columns:1fr}.discover-for-you-plan-panel .discover-action-button{width:100%}.discover-for-you-utility-row{justify-content:flex-start;width:100%;margin-left:0}.discover-for-you-link-button{margin-left:0}}.section-header{margin-bottom:2px;display:grid}.discover-section--shelf .section-header{padding:0 2px}.section-header .section-heading{margin:0}.section-heading__link{color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.section-heading__link:hover{color:var(--color-accent-terracotta)}.section-heading__link:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:4px;border-radius:var(--radius-pill)}.recipe-row{gap:var(--space-5);scroll-snap-type:x mandatory;grid-auto-columns:minmax(360px,1fr);grid-auto-flow:column;padding-bottom:10px;display:grid;overflow-x:auto}.recipe-row>*{scroll-snap-align:start}.discover-recipe-row{gap:var(--space-7);padding:4px var(--discover-shelf-pad)16px 2px;margin:-4px calc(var(--discover-shelf-pad)*-1)0 -2px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;grid-auto-columns:clamp(380px,32vw,560px);grid-auto-flow:column;display:grid;overflow:auto visible}.discover-recipe-row>*{scroll-snap-align:start}.recipe-card{color:inherit;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-soft);text-decoration:none;transition:box-shadow .18s,transform .18s,border-color .18s,background .18s}.recipe-card:hover{box-shadow:var(--shadow-raised);border-color:var(--color-border)}@supports (color:color-mix(in lab,red,red)){.recipe-card:hover{border-color:color-mix(in srgb,var(--color-border)60%,var(--color-text)40%)}}.recipe-card:hover{background:var(--color-surface)}@supports (color:color-mix(in lab,red,red)){.recipe-card:hover{background:color-mix(in srgb,var(--color-surface)90%,white 10%)}}.recipe-card:hover{transform:translateY(-3px)}.recipe-card:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:3px}.recipe-card--static{cursor:default}.recipe-card--static:hover{box-shadow:var(--shadow-soft);border-color:var(--color-border);transform:none}.recipe-card__media{aspect-ratio:4/3;border-radius:calc(var(--radius-md) - 2px);background:linear-gradient(140deg,var(--color-surface)0,var(--color-background)100%);border:1px solid var(--color-border);justify-content:center;align-items:center;width:100%;height:clamp(300px,24vw,540px);min-height:300px;max-height:540px;display:flex;position:relative;overflow:hidden}.recipe-card__media--small{aspect-ratio:1;border-radius:20px;width:132px;height:132px;min-height:132px;max-height:132px}.recipe-card__image{object-fit:cover;width:100%;height:100%;display:block}.recipe-card__media-fallback{width:100%;height:100%;color:var(--color-text-muted);background:linear-gradient(140deg,var(--color-accent-terracotta)0,var(--color-accent-olive)100%);justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.recipe-card__media-fallback{background:linear-gradient(140deg,color-mix(in srgb,var(--color-accent-terracotta)16%,var(--color-surface)84%)0,color-mix(in srgb,var(--color-accent-olive)12%,var(--color-background)88%)100%)}}.recipe-card__media-fallback svg{width:32px;height:32px}.recipe-card__content{gap:var(--space-3);display:grid}.recipe-card__title{font-size:var(--type-body-lg);font-family:var(--font-serif);letter-spacing:-.01em;margin:0}.recipe-card__title--large{font-size:var(--type-heading-sm)}.recipe-card__meta{color:var(--color-text-muted);font-size:var(--type-body-sm);line-height:var(--lh-meta);margin:0}.recipe-card__tag{border-radius:var(--radius-pill);border:1px solid var(--color-accent-terracotta);color:var(--color-accent-terracotta);font-size:var(--type-caption);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;align-self:start;max-width:100%;padding:6px 12px;font-weight:700;display:inline-flex;overflow:hidden}.recipe-card__icon{border:1px solid var(--color-border);background:var(--color-background);width:48px;height:48px;color:var(--color-text-muted);border-radius:16px;justify-content:center;align-items:center;display:inline-flex}.recipe-card__icon svg{width:26px;height:26px}.recipe-card--large{gap:var(--space-7);padding:var(--card-pad-lg);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:stretch;display:grid}.recipe-card--large .recipe-card__content{align-content:center}.recipe-card--small{gap:var(--space-5);padding:var(--card-pad-md);grid-template-columns:132px 1fr;align-items:center;min-width:0;display:grid}.discover-section--shelf .recipe-card--small{border-radius:22px}.discover-section--shelf .recipe-card--small .recipe-card__media--small{box-shadow:inset 0 1px #fffdf980}.discover-section--shelf .recipe-card--small .recipe-card__content{gap:8px}.discover-section--shelf .recipe-card--small .recipe-card__tag{color:var(--color-text-muted)}@supports (color:color-mix(in lab,red,red)){.discover-section--shelf .recipe-card--small .recipe-card__tag{color:color-mix(in srgb,var(--color-text-muted)86%,var(--color-accent-olive)14%)}}.discover-section--shelf .recipe-card--small .recipe-card__title{letter-spacing:-.012em}.recipe-detail{gap:28px;display:grid}.recipe-detail__actions,.recipe-detail__header{gap:12px;display:grid}.recipe-detail__actions-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.recipe-detail__actions-row--manage,.recipe-detail__actions-row--meta{align-items:flex-start}.recipe-detail__image-wrap{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);overflow:hidden}.recipe-detail__image{object-fit:contain;background:var(--color-background);width:100%;max-height:500px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;display:block}.recipe-detail__image-fallback{border-radius:var(--radius-md);border:1px dashed var(--color-border);background:var(--color-surface)}@supports (color:color-mix(in lab,red,red)){.recipe-detail__image-fallback{background:color-mix(in srgb,var(--color-surface)80%,white 20%)}}.recipe-detail__image-fallback{padding:12px 14px}.recipe-detail__image-fallback,.recipe-meta{color:var(--color-text-muted);font-size:var(--type-body-sm)}.recipe-meta{line-height:var(--lh-meta);margin:0}.recipe-detail__grid{gap:20px;display:grid}.recipe-detail__panel{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);padding:var(--card-pad-md);box-shadow:var(--shadow-soft)}.recipe-detail__panel .section-heading{margin:0 0 12px}.recipe-list{gap:var(--space-3);color:var(--color-text);margin:0;padding-left:18px;display:grid}.recipe-list--numbered{padding-left:20px}.recipe-list--indented{padding-left:34px}.recipe-ingredient-sections{gap:14px;display:grid}.recipe-converter{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-background);margin-bottom:14px;display:grid}@supports (color:color-mix(in lab,red,red)){.recipe-converter{background:color-mix(in srgb,var(--color-background)72%,var(--color-surface)28%)}}.recipe-converter__label{font-size:var(--type-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin:0}.recipe-converter__presets{gap:var(--space-3);flex-wrap:wrap;display:flex}.recipe-converter__preset{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-size:var(--type-label);min-height:var(--control-min-h);cursor:pointer;padding:8px 14px}.recipe-converter__preset:focus-visible,.recipe-converter__preset:hover{border-color:var(--color-accent-terracotta);outline:none}.recipe-converter__preset--active{background:var(--color-accent-olive)}@supports (color:color-mix(in lab,red,red)){.recipe-converter__preset--active{background:color-mix(in srgb,var(--color-accent-olive)20%,var(--color-surface))}}.recipe-converter__preset--active{border-color:#0000}.recipe-converter__controls{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.recipe-converter__field{font-size:var(--type-caption);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);gap:6px;display:grid}.recipe-converter__input,.recipe-converter__select{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);min-height:var(--control-min-h);font-size:var(--type-body-sm);line-height:1.45;font-family:var(--font-sans),system-ui,-apple-system,sans-serif;padding:0 14px}.recipe-converter__input:focus-visible,.recipe-converter__select:focus-visible{outline:2px solid var(--color-accent-olive);outline-offset:2px}.recipe-converter__error{font-size:var(--type-label);color:var(--color-accent-terracotta);margin:0}.recipe-ingredient-section{gap:8px;display:grid}.recipe-ingredient-section__title{font-size:var(--type-label);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin:0}.recipe-step-sections{gap:14px;display:grid}.recipe-step-section{gap:8px;display:grid}.recipe-step-item{gap:10px;display:grid}.recipe-step-image-button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:zoom-in;width:fit-content;padding:0;overflow:hidden}.recipe-step-image-button:hover{border-color:var(--color-accent-terracotta)}.recipe-step-image-button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.recipe-step-image-thumb{object-fit:cover;width:128px;height:96px;display:block}.recipe-step-image-lightbox{z-index:50;background:#15100cc7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.recipe-step-image-lightbox-close{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);cursor:pointer;min-height:40px;padding:6px 14px;position:absolute;top:18px;right:18px}.recipe-step-image-lightbox-full{max-width:var(--max-width);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);object-fit:contain;width:auto;height:auto;max-height:86vh}.recipe-substitutes{gap:8px;margin-top:12px;display:grid}.primary-button{min-height:var(--control-min-h);border-radius:var(--radius-pill);background:var(--color-accent-terracotta);color:var(--color-on-accent);width:fit-content;font-size:var(--type-body-sm);box-shadow:var(--shadow-soft);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:700;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex}.primary-button:hover{box-shadow:var(--shadow-raised);transform:translateY(-1px)}.primary-button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:3px}.recipe-delete-button{background:var(--color-accent-terracotta)}@supports (color:color-mix(in lab,red,red)){.recipe-delete-button{background:color-mix(in srgb,var(--color-accent-terracotta)85%,#5a241a 15%)}}.recipe-manage-button{border-color:var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:none}.recipe-manage-button:hover{box-shadow:var(--shadow-soft)}.cook-mode{border-radius:var(--radius-md);border:1px dashed var(--color-border);background:var(--color-background);gap:10px;padding:18px;display:grid}.cook-mode .section-heading{margin:0}@media (min-width:1000px){.recipe-row{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;overflow-x:visible}.recipe-detail__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start}}@media (min-width:1200px){.discover-recipe-row{grid-auto-columns:clamp(420px,30vw,640px)}}@media (min-width:1600px){.recipe-row{grid-template-columns:repeat(4,minmax(0,1fr))}.discover-recipe-row{grid-auto-columns:clamp(460px,28vw,700px)}}@media (max-width:900px){.discover-recipe-row{margin-right:0;padding-right:0}}@media (max-width:820px){.recipe-card--large,.recipe-converter__controls{grid-template-columns:1fr}}.icon{width:22px;height:22px}.icon-button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:48px;height:48px;transition:border-color .16s,color .16s,background .16s;display:inline-flex}.icon-button:focus-visible,.icon-button:hover{border-color:var(--color-accent-terracotta);color:var(--color-text);outline:none}.search-bar{align-items:center;gap:var(--space-3);border-radius:var(--radius-pill);min-height:var(--control-min-h);background:var(--color-surface);padding:0 18px;display:flex}@supports (color:color-mix(in lab,red,red)){.search-bar{background:color-mix(in srgb,var(--color-surface)86%,white 14%)}}.search-bar{border:1px solid var(--color-border)}.search-bar--discover{width:100%;min-height:var(--discover-ask-search-min-h);border-width:var(--discover-ask-search-border-w);padding:0 14px 0 20px}.search-icon{color:var(--color-text-muted)}.search-input{font-size:var(--type-body-sm);width:100%;color:var(--color-text);font-family:var(--font-sans),system-ui,-apple-system,sans-serif;background:0 0;border:none}.search-input::placeholder{color:var(--color-text-muted)}.search-input:focus{outline:none}.search-bar--discover .search-icon{width:var(--discover-ask-search-icon-size);height:var(--discover-ask-search-icon-size)}.search-bar--discover .search-input{font-size:var(--type-body)}.search-bar--discover .search-input::-webkit-search-cancel-button{cursor:pointer;transform:scale(var(--discover-ask-search-clear-scale));transform-origin:50%}.search-submit-button{background:var(--color-accent-terracotta);color:var(--color-on-accent);border-radius:var(--radius-pill);min-height:var(--control-min-h);font-size:var(--type-label);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding:0 20px;font-weight:700;transition:background .16s,transform .16s,border-color .16s}.search-bar--discover .search-submit-button{min-height:var(--discover-ask-search-submit-min-h);padding:0 var(--discover-ask-search-submit-pad-x);font-size:var(--discover-ask-search-submit-font-size);margin:6px 0}.search-submit-button:focus-visible,.search-submit-button:hover{background:var(--color-accent-terracotta)}@supports (color:color-mix(in lab,red,red)){.search-submit-button:focus-visible,.search-submit-button:hover{background:color-mix(in srgb,var(--color-accent-terracotta)88%,#000 12%)}}.search-submit-button:focus-visible,.search-submit-button:hover{outline:none}.search-submit-button:active{transform:translateY(1px)}.search-submit-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.chip-row{flex-wrap:wrap;gap:12px;display:flex}.chip{border-radius:var(--radius-pill);min-height:var(--chip-min-h);border:1px solid var(--color-border);background:var(--color-surface);padding:0 20px}@supports (color:color-mix(in lab,red,red)){.chip{background:color-mix(in srgb,var(--color-surface)82%,white 18%)}}.chip{color:var(--color-text);font-size:var(--type-label);font-weight:700;line-height:var(--lh-tight);cursor:pointer;transition:background .16s,border-color .16s,color .16s}.chip:focus-visible,.chip:hover{border-color:var(--color-accent-terracotta);outline:none}.chip--active{background:var(--color-accent-terracotta);color:var(--color-on-accent);border-color:#0000}.signin-page{min-height:calc(100vh - var(--page-padding-top) - var(--page-padding-bottom));padding:var(--space-5);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.signin-page__backdrop{background:radial-gradient(ellipse 620px 420px at 20% -20%,#bc6a480f,transparent 70%),radial-gradient(ellipse 480px 360px at 85% 10%,#7883510d,transparent 65%),var(--color-background);pointer-events:none;position:absolute;inset:0}.signin-page__glow{pointer-events:none;opacity:.8;background:radial-gradient(circle,#bc6a4806 0,#0000 50%);width:120%;height:120%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.signin-card{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;max-width:400px;padding:var(--space-7);box-shadow:var(--shadow-soft);position:relative}.signin-card__header{text-align:center;margin-bottom:var(--space-6)}.signin-brand{font-family:var(--font-serif);font-size:var(--type-heading-sm);letter-spacing:.01em;color:var(--color-text);margin:0;font-weight:700}.signin-subtitle{margin:var(--space-2)0 0;font-size:var(--type-body-sm);color:var(--color-text-muted)}.signin-oauth{gap:var(--space-3);display:grid}.signin-button{justify-content:center;align-items:center;gap:var(--space-2);width:100%;min-height:var(--control-min-h);border-radius:var(--radius-pill);font-size:var(--type-body-sm);cursor:pointer;font-weight:700;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s;display:flex}.signin-button__icon{flex-shrink:0;width:20px;height:20px}.signin-button--apple{color:#fff;background:#000;border:1px solid #0000}.signin-button--apple:hover{background:#1a1a1a;transform:translateY(-1px);box-shadow:0 6px 16px #00000026}.signin-button--google{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.signin-button--google:hover{border-color:var(--color-text)}@supports (color:color-mix(in lab,red,red)){.signin-button--google:hover{border-color:color-mix(in srgb,var(--color-text)20%,var(--color-border)80%)}}.signin-button--google:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.signin-button--primary{color:var(--color-on-accent);font-size:var(--type-body-sm);border:1px solid #0000}.signin-button--primary,.signin-button--primary:hover{background:var(--color-accent-terracotta)}@supports (color:color-mix(in lab,red,red)){.signin-button--primary:hover{background:color-mix(in srgb,var(--color-accent-terracotta)88%,#000 12%)}}.signin-button--primary:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.signin-button--primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.signin-divider{align-items:center;gap:var(--space-3);margin:var(--space-5)0;display:flex}.signin-divider__line{background:var(--color-border);flex:1;height:1px}.signin-divider__label{font-size:var(--type-caption);color:var(--color-text-muted);white-space:nowrap;font-weight:600}.signin-form{gap:var(--space-4);display:grid}.signin-field{gap:var(--space-2);display:grid}.signin-field label{font-weight:700}.signin-field input,.signin-field label{font-size:var(--type-body-sm);color:var(--color-text)}.signin-field input{width:100%;min-height:var(--control-min-h);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);padding:0 var(--space-4);transition:border-color .16s,box-shadow .16s}.signin-field input:focus{border-color:var(--color-accent-terracotta);box-shadow:0 0 0 3px var(--color-accent-terracotta);outline:none}@supports (color:color-mix(in lab,red,red)){.signin-field input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent-terracotta)15%,transparent)}}.signin-field input::placeholder{color:var(--color-text-muted);opacity:.7}.signin-field input:disabled{opacity:.5;cursor:not-allowed}.signin-alert{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-radius:var(--radius-pill);background:var(--color-accent-terracotta);display:flex}@supports (color:color-mix(in lab,red,red)){.signin-alert{background:color-mix(in srgb,var(--color-accent-terracotta)12%,var(--color-surface)88%)}}.signin-alert{border:1px solid var(--color-accent-terracotta)}@supports (color:color-mix(in lab,red,red)){.signin-alert{border:1px solid color-mix(in srgb,var(--color-accent-terracotta)25%,var(--color-border)75%)}}.signin-alert p{font-size:var(--type-body-sm);color:var(--color-accent-terracotta);margin:0}.signin-alert__dismiss{font-size:var(--type-caption);color:var(--color-accent-terracotta);cursor:pointer;opacity:.8;background:0 0;border:none;flex-shrink:0;text-decoration:underline}.signin-alert__dismiss:hover{opacity:1}.signin-success{gap:var(--space-3);text-align:center;padding:var(--space-5)0;display:grid}.signin-success__icon{background:var(--color-accent-olive);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.signin-success__icon{background:color-mix(in srgb,var(--color-accent-olive)18%,var(--color-surface)82%)}}.signin-success__icon{color:var(--color-accent-olive)}.signin-success__icon svg{width:26px;height:26px}.signin-success__title{font-family:var(--font-serif);font-size:var(--type-body-lg);color:var(--color-text);margin:0;font-weight:700}.signin-success__text{font-size:var(--type-body-sm);color:var(--color-text-muted);margin:0}.signin-success__text strong{color:var(--color-text)}.signin-success__hint{margin:var(--space-2)0 0;font-size:var(--type-caption);color:var(--color-text-muted);opacity:.8}.signin-loading{padding:var(--space-7)0;font-size:var(--type-body);color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}@media (max-width:480px){.signin-card{padding:var(--space-5);border-radius:var(--radius-md)}.signin-brand{font-size:var(--type-heading-sm)}.signin-button{min-height:var(--chip-min-h);font-size:var(--type-label)}.signin-button__icon{width:18px;height:18px}}.mobile-bottom-nav{display:none}@media (max-width:767px){.mobile-bottom-nav{z-index:50;background:var(--color-background);justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.mobile-bottom-nav{background:color-mix(in srgb,var(--color-background)92%,white 8%)}}.mobile-bottom-nav{-webkit-backdrop-filter:blur(12px)saturate(1.1);backdrop-filter:blur(12px)saturate(1.1);border-top:1px solid var(--color-border)}@supports (color:color-mix(in lab,red,red)){.mobile-bottom-nav{border-top:1px solid color-mix(in srgb,var(--color-border)82%,white 18%)}}.mobile-bottom-nav{padding:6px 4px calc(8px + env(safe-area-inset-bottom,0px));box-shadow:0 -8px 28px #271c150f}.site-header{display:none}.app-main{padding-bottom:max(var(--page-padding-bottom),calc(64px + env(safe-area-inset-bottom,0px)))}.page-container{width:100%;max-width:none;padding-left:16px;padding-right:16px}}.mobile-nav-item{max-width:80px;color:var(--color-text-muted);-webkit-tap-highlight-color:transparent;background:0 0;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:6px 8px 4px;font-size:.6875rem;font-weight:600;line-height:1;text-decoration:none;transition:color .16s,background .16s,transform .12s;display:flex}.mobile-nav-item__label{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.mobile-nav-item .mobile-nav__icon{width:24px;height:24px;color:inherit;justify-content:center;align-items:center;display:flex}.mobile-nav-item .mobile-nav__icon svg{width:22px;height:22px}.mobile-nav-item:focus-visible,.mobile-nav-item:hover{color:var(--color-text);outline:none;transform:translateY(-1px)}.mobile-nav-item--active,.mobile-nav-item--active .mobile-nav__icon{color:var(--color-accent-terracotta)}@supports (padding:max(0px)){@media (max-width:767px){:root{--page-padding-bottom:max(56px,72px)}}}@media (max-width:767px){.discover-section:last-of-type{padding-bottom:8px}}@media (min-width:768px) and (max-width:1023px){.mobile-bottom-nav{display:none}}@media (min-width:1024px){.mobile-bottom-nav{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}