/*! tailwindcss v4.3.3 | 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)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight: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-outline-style:solid;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--color-blue-200:oklch(88.2% .059 254.128);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-800:oklch(42.4% .199 265.638);--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-muted:var(--glass-highlight,#f8e7c9);--color-accent:var(--app-accent);--color-border:var(--app-border)}}@layer base,components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.relative{position:relative}.mx-1{margin-inline:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.w-4{width:calc(var(--spacing) * 4)}.w-6{width:calc(var(--spacing) * 6)}.w-16{width:calc(var(--spacing) * 16)}.w-px{width:1px}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:2147483647px}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-blue-200{border-color:var(--color-blue-200)}.border-border{border-color:var(--app-border)}.bg-background{background-color:var(--color-page,#fbf1e0)}.bg-border{background-color:var(--app-border)}.bg-transparent{background-color:#0000}.p-1{padding:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-accent{color:var(--app-accent)}.text-blue-500{color:var(--color-blue-500)}.text-muted-foreground{color:var(--color-muted)}.text-primary{color:var(--color-ink,#064e3b)}.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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:bg-muted:hover{background-color:var(--glass-highlight,#f8e7c9)}.hover\:text-foreground:hover{color:var(--color-ink,#064e3b)}}.dark\:border-blue-800:where(.dark,.dark *){border-color:var(--color-blue-800)}}.expandable-tabs{border-style:solid}.expandable-tab{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:#064e3b1a;border:0;min-width:44px;min-height:48px;text-decoration:none}.expandable-tab:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.meal-navigation{z-index:5;bottom:max(20px, env(safe-area-inset-bottom));max-width:calc(100% - 24px);transition:opacity .2s,transform .2s,visibility .2s;position:fixed;left:50%;transform:translate(-50%)}.meal-navigation-glass{border:1px solid var(--glass-border);background:var(--glass-fill);-webkit-backdrop-filter:blur(28px)saturate(160%);box-shadow:var(--nav-shadow);border-radius:28px;flex-wrap:nowrap;gap:4px;padding:6px}.meal-navigation{width:min(460px,100% - 24px)}.meal-navigation .expandable-tab{border-radius:21px;flex-direction:column;flex:1 1 0;justify-content:center;gap:6px;min-width:0;padding:8px 2px;font-weight:650}.tab-label{white-space:nowrap;font-size:10px;line-height:1.2}@media (width<=360px){.tab-label{font-size:9px}.meal-navigation-glass{gap:0;padding:4px}}body.planner-open .meal-navigation{visibility:hidden;opacity:0;pointer-events:none;transform:translate(-50%,18px)}body.planner-open .shell{display:none}.sheet-head{flex-wrap:wrap;gap:0}.sheet-head>span{flex-wrap:wrap;gap:8px;display:flex}#inicio,#planos,#compras{scroll-margin-top:100px}body{min-width:0}body.demo-route .meal-navigation,body.demo-route .topbar,body.demo-route .active-order-bar{display:none!important}body.demo-route #app-content{padding:0}.preview-screen h1[tabindex="-1"]:focus{box-shadow:none;outline:none}.compare-notice{align-items:flex-start;gap:.65rem;margin-bottom:1rem;display:flex}.compare-notice svg{flex:none;margin-top:.15rem}.result-group+.result-group{margin-top:1rem}.compare-section-title{color:var(--color-ink);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:.65rem;margin:1.35rem 0 .65rem;font-size:.82rem;display:flex}.compare-section-title:after{background:var(--color-border);content:"";flex:1;height:1px}.comparison-metric{background:var(--color-accent);border-radius:.8rem;justify-content:space-between;align-items:center;gap:1rem;margin:.8rem 0;padding:.7rem .8rem;display:flex}@supports (color:color-mix(in lab, red, red)){.comparison-metric{background:color-mix(in srgb, var(--color-accent) 10%, transparent)}}.comparison-metric{font-size:.82rem}.comparison-metric strong{color:var(--color-accent-strong,var(--color-ink));white-space:nowrap}.meal-screen{box-sizing:border-box;min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 20px max(20px, env(safe-area-inset-bottom));background:var(--color-page);color:var(--color-ink)}.meal-screen .sheet-head{justify-content:space-between;align-items:flex-start;gap:12px;max-width:460px;margin:0 auto;display:flex}.meal-screen .sheet-head h2{margin:0;padding:8px 0}.meal-screen .form{width:min(100%,460px);margin:0 auto;padding:0}.meal-screen .footer-actions{bottom:calc(env(safe-area-inset-bottom) * -1);width:min(100%,460px);padding:14px 0 max(14px, env(safe-area-inset-bottom));background:var(--color-page);gap:10px;margin:24px auto 0;display:flex;position:sticky}.meal-screen .footer-actions .button{flex:1}.active-order-bar{z-index:4;right:12px;bottom:calc(88px + env(safe-area-inset-bottom));border:1px solid var(--glass-border);background:var(--glass-solid);max-width:436px;box-shadow:var(--nav-shadow);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin:auto;padding:10px 12px;display:flex;position:fixed;left:12px}.active-order-bar p{gap:2px;min-width:0;margin:0;display:grid}.active-order-bar strong{font-size:13px}.active-order-bar span{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.active-order-bar div{flex:none;gap:8px;display:flex}.active-order-bar .text-action{white-space:nowrap;min-height:36px;font-size:12px}body.has-active-order #app-content{padding-bottom:148px}body.planner-keyboard-open .meal-navigation,body.planner-keyboard-open .active-order-bar{display:none}@media (prefers-reduced-transparency:reduce){.meal-navigation-glass{background:var(--glass-solid);-webkit-backdrop-filter:none}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.meal-navigation-glass{background:var(--glass-solid)}}:root{--app-accent:#9a3412;--app-border:#8c7b61;--glass-solid:#fdf6ea;--nav-shadow:0 8px 24px #064e3b1a, inset 0 1px 0 #ffffffa6;--toggle-track:#fff;--toggle-thumb:#f8e7c9;--glow-green:#16a34a3d;--glow-gold:#d99a2d33}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-page:#080d0b;--color-surface:#111c17;--color-cream:#1a3025;--color-ink:#e4f3ea;--color-muted:#a7bdb0;--color-action:#65d69a;--color-on-action:#082315;--color-accent:#65d69a;--app-accent:#65d69a;--color-border:#608370;--app-border:#608370;--color-divider:#2c4538;--color-focus:#8ff0bc;--color-danger:#ffaaa3;--color-warn:#edc778;--glass-fill:#111c17eb;--glass-highlight:#1e382a;--glass-border:#3c604b;--glass-solid:#111c17;--nav-shadow:0 8px 24px #00000047, inset 0 1px 0 #8ff0bc14;--sheet-shadow:0 -12px 32px #00000059;--toggle-track:#080d0b;--toggle-thumb:#1e382a;--glow-green:#65d69a38;--glow-gold:#edc77824}:root[data-theme=dark] .brand,:root[data-theme=dark] .mark{color:var(--color-action)}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}#pwa-status{align-items:center;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pwa-chip{border:1px solid var(--color-border);background:var(--color-surface);min-height:36px;color:var(--color-ink);font:inherit;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:.78rem;font-weight:700;display:inline-flex}.install-help{z-index:80;background:#04110b99;align-items:end;display:grid;position:fixed;inset:0}.install-help>div{width:min(100%,440px);padding:28px 24px max(32px, env(safe-area-inset-bottom));background:var(--color-surface);color:var(--color-ink);box-shadow:var(--sheet-shadow);border-radius:24px 24px 0 0;margin:0 auto;position:relative}.install-help h2{margin:0 40px 8px 0;font-size:1.2rem}.install-help p{color:var(--color-muted);margin:0;line-height:1.55}.install-help .icon{position:absolute;top:18px;right:18px}.pwa-action{cursor:pointer;transition:border-color .16s,transform .16s,background .16s}.pwa-action:disabled{cursor:wait;opacity:.72}.pwa-action:hover{border-color:var(--color-action);background:var(--glass-highlight);transform:translateY(-1px)}.pwa-action:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}#theme-toggle{align-items:center;width:64px;min-height:44px;display:flex}.theme-toggle{cursor:pointer;touch-action:manipulation;background:0 0;border:0;width:64px;min-height:44px;padding:0}.theme-toggle-track{border:1px solid var(--color-border);background:var(--toggle-track);color:var(--color-muted)}.theme-toggle-thumb{background:var(--toggle-thumb);transition:transform .2s;left:3px;transform:translate(32px)}.theme-toggle[aria-checked=true] .theme-toggle-thumb{transform:translate(0)}.theme-toggle[aria-checked=true] .theme-toggle-track>span:nth-child(2),.theme-toggle[aria-checked=false] .theme-toggle-track>span:nth-child(3){color:var(--color-ink)}.theme-toggle:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-radius:999px}.theme-toggle:hover .theme-toggle-track{border-color:var(--color-ink)}@media (prefers-reduced-motion:reduce){.theme-toggle-thumb{transition:none}}@media (width<=380px){.topbar{flex-wrap:wrap;gap:8px;padding-inline:12px}.brand{gap:6px;font-size:1rem}.brand .mark{width:28px;height:28px}.header-actions{gap:4px}.header-actions .icon{width:32px}.pwa-chip{padding-inline:10px;font-size:.7rem}.pwa-chip svg{flex:none}}.phone-showcase{--phone-frame:#08120e;background:radial-gradient(circle at 16% 12%, var(--color-action), transparent 34%), radial-gradient(circle at 86% 74%, var(--color-warn), transparent 32%), var(--color-page);align-content:center;place-items:center;gap:18px;min-height:100dvh;padding:40px 18px;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.phone-showcase{background:radial-gradient(circle at 16% 12%, color-mix(in srgb, var(--color-action) 22%, transparent), transparent 34%), radial-gradient(circle at 86% 74%, color-mix(in srgb, var(--color-warn) 18%, transparent), transparent 32%), var(--color-page)}}.phone-showcase-copy{text-align:center;max-width:620px}.phone-showcase-copy h1{margin:5px 0 8px;font-size:clamp(1.65rem,5vw,2.5rem);line-height:1.05}.phone-showcase-copy p:last-child{color:var(--color-muted);margin:0}.phone-stage{grid-template-columns:44px minmax(0,292px) 44px;align-items:center;gap:12px;display:grid}.phone-device{background:var(--phone-frame);border:1px solid #42564d;border-radius:43px;width:292px;padding:10px;position:relative;box-shadow:0 28px 70px #00000047,inset 0 0 0 2px #ffffff0f}.phone-device:after{content:"";pointer-events:none;border:1px solid #ffffff1f;border-radius:38px;position:absolute;inset:4px}.phone-speaker{z-index:3;background:#030604;border-radius:999px;width:76px;height:20px;position:absolute;top:18px;left:50%;transform:translate(-50%)}.phone-screen{aspect-ratio:390/844;background:var(--color-page);border-radius:34px;position:relative;overflow:hidden}.phone-screen img{object-fit:cover;object-position:top;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.phone-control{border:1px solid var(--color-border);background:var(--color-surface);width:44px;height:44px;color:var(--color-ink);cursor:pointer;border-radius:999px;place-items:center;transition:transform .16s,border-color .16s;display:grid}.phone-control:hover{border-color:var(--color-action);transform:translateY(-2px)}.phone-control:focus-visible,.phone-dots button:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.phone-caption{justify-content:space-between;align-items:center;gap:16px;width:min(392px,100%);display:flex}.phone-caption span{color:var(--color-muted);font-size:.78rem}.phone-dots{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.phone-dots button{background:var(--color-border);cursor:pointer;border:0;border-radius:999px;width:8px;height:8px;padding:0;transition:width .18s,background .18s}.phone-dots button[aria-selected=true]{background:var(--color-action);width:28px}@media (width<=420px){.phone-showcase{padding-inline:10px}.phone-stage{grid-template-columns:34px minmax(0,252px) 34px;gap:6px}.phone-device{border-radius:37px;width:252px}.phone-screen{border-radius:29px}.phone-control{width:34px;height:34px}}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{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-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}:root{--preview-ease:cubic-bezier(.22,1,.36,1)}.brand{gap:9px;line-height:1}.brand>svg{flex:0 0 32px}.brand-accent{color:var(--color-accent)}.brand-dot{fill:var(--color-accent)}.topbar{gap:8px}.preview-screen{padding:24px 4px 12px}.preview-screen h1{max-width:18ch;margin:8px 0;font-size:clamp(28px,8.7vw,34px)}.preview-screen .copy{font-size:14px}.preview-screen svg{flex-shrink:0}.quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0;display:grid}.quick-action{border:1px solid var(--color-divider);background:var(--color-surface);min-height:110px;color:var(--color-ink);border-radius:18px;flex-direction:column;align-items:center;gap:10px;padding:14px 8px 12px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.quick-photo{background:var(--color-action);border-color:var(--color-action);color:var(--color-on-action)}.quick-icon{background:var(--color-page);border:1px solid var(--color-divider);border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.quick-photo .quick-icon{color:inherit;background:color-mix(in srgb, currentColor 12%, transparent);border-color:color-mix(in srgb, currentColor 24%, transparent)}.warning-icon{color:var(--color-warn)}.flip-icon{perspective:200px}.flip-icon-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .5s var(--preview-ease);position:relative}.flip-icon-inner>span{backface-visibility:hidden;place-items:center;display:grid;position:absolute;inset:0}.flip-icon-inner>span:last-child,.quick-photo:hover .flip-icon-inner,.quick-photo:focus-visible .flip-icon-inner,.quick-photo:active .flip-icon-inner{transform:rotateY(180deg)}.start-card{isolation:isolate;background:var(--color-action);color:var(--color-on-action);border-radius:20px;margin-bottom:16px;padding:22px 20px;position:relative;overflow:hidden}.start-card:before,.start-card:after{z-index:-1;opacity:.05;content:"";background:currentColor;border-radius:50%;width:96px;height:96px;position:absolute;top:-24px;right:-24px}.start-card:after{opacity:.07;width:72px;height:72px;top:auto;bottom:-32px;right:16px}.start-card .eyebrow{color:inherit;font-size:11px}.start-card h2{margin-bottom:4px;font-size:20px;line-height:1.2}.start-card>p:not(.eyebrow){margin-bottom:16px;font-size:13px;line-height:1.4}.start-button{background:var(--color-on-action);min-height:44px;color:var(--color-action);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:7px;padding:11px 22px;font-size:14px;font-weight:700;display:inline-flex}.preview-card{border:1px solid var(--color-divider);background:var(--color-surface);border-radius:18px;margin-bottom:12px;overflow:hidden}.preview-card-label{border-bottom:1px solid var(--color-divider);letter-spacing:.06em;text-transform:uppercase;margin:0;padding:14px 16px 12px;font-size:12px;font-weight:800}.preview-empty{text-align:center;color:var(--color-muted);padding:24px 16px}.empty-icon{background:var(--color-page);width:44px;height:44px;color:var(--color-ink);border-radius:50%;place-items:center;margin:0 auto 10px;display:grid}.preview-empty p{margin:0;font-size:14px;line-height:1.5}.preview-footnote,.result-meta{color:var(--color-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:14px 0 0;font-size:12px;display:flex}.summary-link{color:var(--color-ink);align-items:center;gap:10px;padding:24px 16px;font-size:14px;text-decoration:none;display:flex}.preview-back{align-items:center;gap:5px;margin-bottom:12px;display:inline-flex}.session-note{color:var(--color-muted);margin:12px 0 20px;font-size:12px;line-height:1.5}.preview-screen .button,.detail-dialog .button{justify-content:center;align-items:center;gap:8px;padding:12px 20px;display:inline-flex}.preview-screen .button:disabled,.detail-dialog .button:disabled{cursor:not-allowed}.preview-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.preview-notice{border:1px solid var(--color-warn);color:var(--color-warn);border-radius:12px;align-items:flex-start;gap:8px;margin:20px 0;padding:12px;font-size:13px;line-height:1.5;display:flex}.error-notice{border-color:var(--color-danger);color:var(--color-danger)}.error-notice p{overflow-wrap:anywhere;margin:0}.settings-row{justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.photo-picker{border:1px dashed var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:18px;justify-content:center;align-items:center;gap:12px;min-height:112px;display:flex;position:relative}.photo-picker input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.photo-picker:focus-within{outline:2px solid var(--color-focus);outline-offset:3px}.photo-preview{text-align:center;margin:16px 0}.photo-preview img{object-fit:contain;background:var(--color-surface);border-radius:18px;width:100%;max-height:300px;display:block}.photo-preview button{align-items:center;gap:5px;display:inline-flex}.preview-form{gap:16px;margin-top:20px;display:grid}.preview-form label{gap:8px;font-size:14px;font-weight:600;display:grid}.preview-form input,.preview-form textarea{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-ink);border-radius:10px;min-height:48px;padding:12px}.preview-form textarea{resize:vertical;min-height:96px}.preview-form ::placeholder{color:var(--color-muted);opacity:1}.quick-suggestions{gap:9px;margin:2px 0 4px;display:grid}.suggestions-label{color:var(--color-muted);letter-spacing:.025em;font-size:12px;font-weight:750}.suggestion-list{flex-wrap:wrap;gap:8px;display:flex}.suggestion-chip{border:1px solid var(--color-border);background:var(--color-surface);min-height:38px;color:var(--color-ink);cursor:pointer;transition:transform .12s var(--preview-ease), border-color .12s, background-color .12s, box-shadow .18s;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:7px 13px;font-size:12px;font-weight:700;display:inline-flex}.suggestion-chip:hover{border-color:var(--color-ink)}.suggestion-chip:active{transform:scale(.96)}.suggestion-chip[aria-pressed=true]{border-color:var(--color-action);background:var(--color-action);color:var(--color-on-action);box-shadow:0 0 0 3px var(--glow-green), 8px 5px 18px var(--glow-gold)}.glow-action:not(:disabled),#next:not(:disabled),#generate:not(:disabled){box-shadow:0 7px 20px var(--glow-green), 7px 3px 20px var(--glow-gold)}.mode-row{position:relative}.mode-icon{background:color-mix(in srgb, var(--color-action) 10%, var(--color-surface));width:44px;height:44px;color:var(--color-action);box-shadow:0 0 0 3px var(--glow-green), 6px 3px 18px var(--glow-gold);border-radius:50%;flex:0 0 44px;place-items:center;display:grid}.mode-copy{flex:1;min-width:0}.mode-icon>span{place-items:center;display:none}.mode-row[data-mode=cook] #mode-cook-icon,.mode-row[data-mode=ready] #mode-ready-icon,.mode-row[data-mode=compare] #mode-compare-icon{display:grid}.progress{isolation:isolate;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:18px 0 22px;display:grid;position:relative}.progress:before{z-index:-1;background:var(--color-divider);content:"";height:2px;position:absolute;top:6px;left:11%;right:11%}.progress-step{color:var(--color-muted);text-align:center;justify-items:center;gap:7px;font-size:10px;font-weight:650;display:grid}.progress-step .dot{border:2px solid var(--color-border);background:var(--color-surface);border-radius:50%;width:13px;height:13px}.progress-step[aria-current=step]{color:var(--color-ink);font-weight:800}.progress-step[aria-current=step] .dot{border-color:var(--color-action);background:var(--color-action);box-shadow:0 0 0 4px var(--glow-green), 6px 2px 15px var(--glow-gold)}.progress-step[hidden]~.progress-step{grid-column:3}.progress:has(.progress-step[hidden]){grid-template-columns:repeat(3,minmax(0,1fr))}.quick-action:is(:hover,:focus-visible) .quick-icon,.photo-picker:is(:hover,:focus-within) .guided-icon{box-shadow:0 0 0 3px var(--glow-green), 7px 4px 18px var(--glow-gold)}.guided-icon{background:var(--color-page);width:46px;height:46px;color:var(--color-action);transition:box-shadow .18s var(--preview-ease), transform .12s var(--preview-ease);border-radius:50%;place-items:center;display:grid}.photo-picker:active .guided-icon{transform:scale(.96)}.weekly-card{border:1px solid color-mix(in srgb, var(--color-action) 25%, var(--color-border));background:linear-gradient(135deg, color-mix(in srgb, var(--color-action) 10%, var(--color-surface)) 0%, var(--color-surface) 58%, color-mix(in srgb, var(--color-warm) 13%, var(--color-surface)) 100%);box-shadow:0 12px 28px -22px var(--color-action);border-radius:22px;margin:18px 0;padding:20px;position:relative;overflow:hidden}.weekly-card:after{background:var(--glow-green);filter:blur(18px);content:"";pointer-events:none;border-radius:50%;width:130px;height:130px;position:absolute;top:-62px;right:-54px}.weekly-card-head{align-items:center;gap:12px;display:flex}.weekly-card-head .eyebrow{margin:0 0 2px}.weekly-card h2{margin:0;font-size:21px}.weekly-icon{width:42px;height:42px;color:var(--color-action);background:color-mix(in srgb, var(--color-action) 13%, var(--color-surface));box-shadow:0 0 0 4px var(--glow-green);border-radius:14px;place-items:center;display:grid}.weekly-icon svg,.weekly-card button svg,.photo-preview button svg{width:18px;height:18px}.weekly-stats{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 12px;display:grid}.weekly-stats strong{color:var(--color-ink);gap:1px;font-size:27px;line-height:1;display:grid}.weekly-stats strong+strong{border-left:1px solid var(--color-border);padding-left:14px}.weekly-stats span{color:var(--color-muted);font-size:11px;font-weight:650}.weekly-card>p{color:var(--color-muted);font-size:13px;line-height:1.45}.weekly-card .button{z-index:1;justify-content:center;width:100%;position:relative}.weekly-foods{align-items:center;min-height:38px;margin:14px 0 -4px;display:flex}.weekly-foods span{border:2px solid var(--color-surface);background:var(--color-page);border-radius:50%;place-items:center;width:38px;height:38px;margin-right:-7px;font-size:20px;display:grid;box-shadow:0 4px 12px #0000001a}.share-fields{border:0;gap:8px;margin:16px 0;padding:0;display:grid}.share-fields label{border:1px solid var(--color-border);background:var(--color-surface);border-radius:13px;align-items:center;gap:10px;min-height:44px;padding:0 12px;font-weight:700;display:flex}.share-fields input{width:18px;height:18px;accent-color:var(--color-action)}.share-preview{border-left:3px solid var(--color-action);background:color-mix(in srgb, var(--color-action) 8%, var(--color-surface));color:var(--color-ink);border-radius:0 14px 14px 0;margin:16px 0;padding:16px;font-size:14px;line-height:1.55}.share-studio{gap:12px;display:grid}.share-art{aspect-ratio:9/16;text-align:center;color:#f4f7f4;background:radial-gradient(circle at 78% 18%,#30d47a40,#0000 35%),#07110c;border:1px solid #365043;border-radius:24px;flex-direction:column;align-items:center;width:min(100%,315px);margin:0 auto;padding:25px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 45px -24px #000}.share-art.is-light{color:#073f32;background:radial-gradient(circle at 78% 18%,#30d47a33,#0000 35%),#fff8e9;border-color:#b8cabc}.share-brand{color:#30d47a;letter-spacing:.08em;align-self:flex-start;font-size:11px;font-weight:900}.share-art h3{text-wrap:balance;margin:54px 0 12px;font-size:25px;line-height:1.08}.share-art>strong{margin-top:25px;font-size:78px;line-height:1}.share-art>p{color:currentColor;opacity:.7;margin:5px 0;font-size:13px}.share-art>b{margin-top:18px;font-size:22px}.share-art small{opacity:.72;font-size:10px;font-weight:750;position:absolute;bottom:24px}.plate-art{border:17px solid #f4bd68;border-radius:50%;place-items:center;width:102px;height:102px;margin-top:28px;display:grid;box-shadow:inset 0 0 0 5px #30d47a}.plate-art svg{color:#30d47a;width:32px;height:32px}.food-cluster{grid-template-columns:repeat(2,1fr);place-items:center;padding:15px;font-size:27px;line-height:1;display:grid}.food-cluster i{font-style:normal}.share-art-meals{text-align:left;align-items:stretch}.share-art-meals h3{margin-top:45px;font-size:30px}.share-art-meals ul{gap:17px;margin:26px 0 0;padding:0;list-style:none;display:grid}.share-art-meals li{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:11px;font-size:15px;font-weight:700;display:flex;overflow:hidden}.share-art-meals li>span{background:#30d47a1f;border-radius:11px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:21px;display:grid}.share-art-streak h3{color:#30d47a;margin-top:10px;font-size:26px}.share-art-streak>strong{text-shadow:0 0 35px #30d47a3b;margin-top:105px;font-size:116px}.streak-foods{gap:5px;margin:18px 0 8px;font-size:31px;display:flex}.streak-dots{gap:9px;margin-top:45px;display:flex}.streak-dots i{background:#80968940;border-radius:50%;width:16px;height:16px}.streak-dots i.done{background:#30d47a;box-shadow:0 0 12px #30d47a80}.share-model-nav{grid-template-columns:42px 1fr 42px;align-items:center;display:grid}.share-model-nav>button{border:1px solid var(--color-border);background:var(--color-surface);height:42px;color:var(--color-ink);border-radius:50%;place-items:center;display:grid}.share-model-nav>div{justify-content:center;gap:8px;display:flex}.share-model-nav>div button{background:var(--color-border);border:0;border-radius:50%;width:8px;height:8px;padding:0}.share-model-nav>div button.current{background:var(--color-action);border-radius:999px;width:22px}.share-model-name{text-align:center;color:var(--color-muted);margin:-5px 0 0;font-size:12px;font-weight:700}.share-options{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.share-options button,.share-options label{border:1px solid var(--color-border);min-height:40px;color:var(--color-ink);background:var(--color-surface);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:750;display:flex}.share-options button.selected{border-color:var(--color-action);color:var(--color-action);box-shadow:0 0 0 3px var(--glow-green)}.share-options label svg{width:16px;height:16px}.share-options input{opacity:0;width:1px;height:1px;position:absolute}.pantry-heading .button:hover svg,.entry-content .icon:hover svg{filter:drop-shadow(3px 2px 5px var(--glow-gold))}:root[data-theme=dark] .suggestion-chip:not([aria-pressed=true]){background:var(--color-surface)}.local-feedback{align-items:center;gap:8px;margin:16px 0;font-size:14px;display:flex}.swipe-row{isolation:isolate;border-radius:18px;margin-bottom:12px;position:relative;overflow:hidden}.swipe-row-track{background:var(--color-surface);border:1px solid var(--color-divider);touch-action:pan-y;transition:transform .25s var(--preview-ease);border-radius:18px;position:relative}.swipe-row-track.dragging{-webkit-user-select:none;user-select:none;transition:none}.swipe-revealed{background:var(--color-danger);width:76px;color:var(--color-surface);cursor:pointer;border:0;place-items:center;display:grid;position:absolute;inset:0 0 0 auto}.swipe-alternative{color:var(--color-danger);align-items:center;gap:6px;margin:0 16px;display:flex}.entry-content{align-items:center;gap:12px;padding:16px;display:flex}.entry-content>div{flex:1;min-width:0}.entry-content h2{overflow-wrap:anywhere;margin-bottom:4px;font-size:15px}.entry-content p{color:var(--color-muted);overflow-wrap:anywhere;margin:0;font-size:13px}.entry-icon{color:var(--color-muted)}.saved-plan summary{cursor:pointer;align-items:center;gap:10px;min-height:64px;padding:16px;display:flex}.saved-plan summary span{overflow-wrap:anywhere;flex:1}.saved-plan summary::-webkit-details-marker{display:none}.saved-plan[open] summary>svg:last-child{transform:rotate(180deg)}.saved-plan-body{animation:previewIn .28s var(--preview-ease);padding:0 16px 16px;font-size:14px;line-height:1.5}.meal-rating{border-top:1px solid var(--color-divider);margin-top:18px;padding-top:14px}.meal-rating-follow-up{margin-top:14px}.meal-rating-heading{color:var(--color-muted);justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.meal-rating-heading strong{color:var(--color-ink);font-size:12px}.meal-rating-controls{align-items:center;gap:4px;margin-top:8px;display:flex}.meal-rating-choice{width:32px;height:32px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.meal-rating-choice svg{stroke-width:1.8px;width:19px;height:19px}.meal-rating-choice.is-highlighted{color:var(--color-action)}.meal-rating-choice.is-selected{background:color-mix(in srgb, var(--color-action) 12%, transparent)}.meal-rating-choice:focus-visible,.meal-rating-remove:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.meal-rating-remove{color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:5px 0;font-size:12px;text-decoration:underline}.meal-rating-choice:disabled,.meal-rating-remove:disabled{cursor:wait;opacity:.55}.preview-result{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:18px;margin-top:16px;padding:20px;line-height:1.5}.preview-result .result-meta{justify-content:flex-start;margin:0 0 14px}.recipe-steps p{white-space:pre-line}.video-support{border-top:1px solid var(--color-divider);margin-top:18px;padding-top:16px}.video-support-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.video-support-head h3{margin:0 0 3px;font-size:14px}.video-support-head p,.video-origin,.video-unavailable{color:var(--color-muted);margin:0;font-size:12px;line-height:1.45}.video-info{width:38px;height:38px;color:var(--color-warn);flex:0 0 38px}.video-support-toggle{color:var(--color-ink);align-items:center;gap:5px;margin-top:10px;padding:0;display:inline-flex}.video-support-toggle svg{transition:transform .18s var(--preview-ease)}.video-support-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.video-support-body{gap:10px;margin-top:12px;display:grid}.video-support-body .preview-notice{margin:0}.video-origin{letter-spacing:.03em;text-transform:uppercase;font-weight:750}.video-search-link{align-items:center;gap:7px;width:fit-content;text-decoration:none;display:inline-flex}.detail-dialog{border:1px solid var(--color-border);background:var(--color-surface);width:100%;max-width:440px;max-height:90dvh;color:var(--color-ink);box-shadow:var(--sheet-shadow);overscroll-behavior:contain;transition:transform .25s var(--preview-ease);border-bottom:0;border-radius:24px 24px 0 0;margin:0 auto;padding:0;position:fixed;inset:auto 0 0}.detail-dialog[open]{animation:previewSheetIn .35s var(--preview-ease)}.detail-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#040e0a8c}.detail-drag-handle{touch-action:none;cursor:grab;place-items:center;height:28px;display:grid}.detail-drag-handle>span{background:var(--color-border);border-radius:2px;width:40px;height:4px}.detail-dialog-body{padding:8px 20px max(32px, env(safe-area-inset-bottom))}.detail-dialog-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.detail-dialog-heading h2{margin:0}.pressable,.button,.outline,.text-action{transition:transform .12s var(--preview-ease), opacity .12s;touch-action:manipulation}.pressable:active:not(:disabled),.button:active:not(:disabled),.outline:active:not(:disabled),.text-action:active:not(:disabled){opacity:.88;transform:scale(.96)}.tab-selection-highlight{background:var(--glass-highlight);border:1px solid var(--glass-border);border-radius:inherit;pointer-events:none;position:absolute;inset:0}.expandable-tab>svg,.expandable-tab>span:not(.tab-selection-highlight){position:relative}.expandable-tab>svg{transition:transform .32s var(--preview-ease)}.expandable-tab[data-current=true]>svg{transform:translateY(-1px)scale(1.05)}@keyframes previewIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes previewInUp{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes previewSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes previewFade{0%{opacity:0}to{opacity:1}}.screen-enter{animation:previewIn .28s var(--preview-ease)}.screen-enter-up{animation:previewInUp .28s var(--preview-ease)}.question.current{animation:previewIn .28s var(--preview-ease)}.meal-screen:not([hidden]){animation:previewFade .25s var(--preview-ease)}.form.loading{display:block}.loading-box{border:2px solid var(--color-divider);border-top-color:var(--color-action);border-radius:50%}.loading-box:before,.loading-box:after{display:none}.inline-preview-icon{vertical-align:middle;align-items:center;margin-right:5px;display:inline-flex}.icon-forward{transform:rotate(180deg)}#form .field-grid>.field{align-content:start}#budget{border:1px solid var(--color-border);border-radius:var(--field);background:var(--color-surface);width:100%;min-width:0;min-height:3.125rem;color:var(--color-ink);padding:0 12px}.field{min-width:0}@media (width<=30rem){#form .field-grid>.field>.label{align-items:flex-end;min-height:2.5rem;line-height:1.25;display:flex}#form .number-stepper{width:100%;max-width:none}}@media (width<=380px){.brand{gap:5px;font-size:15px}.brand>svg{flex-basis:27px;width:27px;height:27px}.preview-actions>.button{flex:1}}.shopping-segments{gap:8px;margin:20px 0 24px;display:flex}.shopping-segments a{text-align:center;color:var(--color-muted);border-radius:14px;flex:1;padding:14px 8px;font-weight:700;text-decoration:none}.shopping-segments a[aria-current=page]{background:var(--color-action);color:var(--color-on-action)}.pantry-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.pantry-heading .button{min-height:38px;padding:0 16px}.pantry-item{border:1px solid var(--color-divider);background:var(--color-surface);border-radius:20px;justify-content:space-between;align-items:center;gap:14px;margin:10px 0;padding:16px;display:flex}.pantry-item>div{overflow-wrap:anywhere;min-width:0}.pantry-item h3,.personalization-row h2{color:var(--color-ink);margin:0 0 6px;font-size:15px}.pantry-item p,.personalization-row p{color:var(--color-muted);margin:0;font-size:13px;line-height:1.5}.pantry-item .outline{flex-shrink:0;min-height:40px;margin:0;padding:0 14px;font-size:12px}.personalization-options{border:1px solid var(--color-divider);background:var(--color-surface);border-radius:20px;margin-top:24px;overflow:hidden}.personalization-row{justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 16px;display:flex}.personalization-row+.personalization-row{border-top:1px solid var(--color-divider)}.permission-switch{cursor:pointer;background:0 0;border:0;flex-shrink:0;width:50px;height:44px;padding:8px 3px;position:relative}.permission-switch:before{content:"";background:var(--color-divider);border-radius:999px;position:absolute;inset:8px 0}.permission-switch span{background:var(--color-ink);border-radius:50%;width:22px;height:22px;transition:transform .15s ease-out;display:block;position:relative}.permission-switch[aria-checked=true]:before{background:var(--color-action)}.permission-switch[aria-checked=true] span{background:var(--color-on-action);transform:translate(22px)}:root[data-theme=dark] .personalization-row h2,:root[data-theme=dark] .pantry-item h3{color:var(--color-action)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.diary-book{transition:transform .24s var(--preview-ease);transform:translate(-4px)}.diary-cover{fill:var(--color-page);transform-box:view-box;transform-origin:12px 12px;transition:transform .24s var(--preview-ease);transform:scaleX(-1)}.quick-diary:is(:hover,:focus-visible,:active) .diary-book{transform:translate(0)}.quick-diary:is(:hover,:focus-visible,:active) .diary-cover{transform:scaleX(1)}.quick-errors .warning-icon svg{transform-origin:50%;transition:transform .15s var(--preview-ease)}.quick-errors:is(:hover,:focus-visible,:active) .warning-icon svg{animation:.32s ease-out warning-hop;transform:scale(1.12)}@keyframes warning-hop{0%{transform:translateY(0)scale(1)}45%{transform:translateY(-4px)scale(1.16)}75%{transform:translateY(1px)scale(1.08)}to{transform:translateY(0)scale(1.12)}}@media (prefers-reduced-motion:reduce){.suggestion-chip,.guided-icon,.diary-book,.diary-cover,.quick-errors .warning-icon svg{transition:none!important}.quick-errors:is(:hover,:focus-visible,:active) .warning-icon svg{transform:none;animation:none!important}.screen-enter,.screen-enter-up,.question.current,.saved-plan-body,.detail-dialog[open],.meal-screen:not([hidden]){animation:none!important}.flip-icon-inner,.swipe-row-track,.detail-dialog,.expandable-tab>svg{transition:none!important}.quick-photo:hover .flip-icon-inner,.quick-photo:focus-visible .flip-icon-inner,.quick-photo:active .flip-icon-inner,.pressable:active,.button:active,.outline:active,.text-action:active,.expandable-tab[data-current=true]>svg{transform:none}}
/*$vite$:1*/