@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-border-style:solid;--tw-outline-style:solid;--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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-body);--default-mono-font-family:var(--font-mono);--color-background:var(--background);--color-foreground:var(--foreground)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-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}.relative{position:relative}.sticky{position:sticky}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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))}}:root{--enamel:#064e3b;--enamel-mid:#047857;--cobalt:#059669;--cobalt-soft:#10b981;--frost:#ecfdf5;--paper:#fff;--paper-lift:#f0fdf4;--ink:#0f172a;--ink-muted:#64748b;--accent:#d97706;--accent-hover:#b45309;--line:var(--enamel)}@supports (color:color-mix(in lab, red, red)){:root{--line:color-mix(in srgb, var(--enamel) 12%, transparent)}}:root{--stamp-expired:#dc2626;--stamp-critical:#ea580c;--stamp-soon:#ca8a04;--stamp-low:#7c3aed;--ok:#059669;--danger:var(--stamp-expired);--warn:var(--stamp-critical);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.75rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--touch:2.75rem;--nav-height:5.25rem;--header-height:3.75rem;--sidebar-width:15.5rem;--shell-max:100%;--content-max:40rem;--content-max-wide:48rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--focus-ring:0 0 0 3px var(--cobalt)}@supports (color:color-mix(in lab, red, red)){:root{--focus-ring:0 0 0 3px color-mix(in srgb, var(--cobalt) 40%, white)}}:root{--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 4px 12px #064e3b14;--background:var(--frost);--foreground:var(--ink)}@keyframes page-enter{0%{opacity:0;transform:translateY(.35rem)}to{opacity:1;transform:translateY(0)}}@keyframes stamp-press{0%{opacity:0;transform:rotate(-5deg)scale(1.06)}to{opacity:1;transform:rotate(-2deg)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:focus{outline:none}:focus-visible{box-shadow:var(--focus-ring);outline:none}body{min-height:100%;color:var(--ink);font-family:var(--font-body), "Nunito Sans", sans-serif;touch-action:manipulation;overscroll-behavior-y:contain;background-color:var(--frost);background-image:radial-gradient(ellipse 120% 80% at 10% -10%, var(--cobalt-soft), transparent 55%), radial-gradient(ellipse 90% 60% at 100% 0%, var(--accent), transparent 50%), linear-gradient(180deg, #f0fdf4 0%, var(--frost) 40%, #d1fae5 100%);margin:0;font-size:1rem;line-height:1.5}@supports (color:color-mix(in lab, red, red)){body{background-image:radial-gradient(ellipse 120% 80% at 10% -10%, color-mix(in srgb, var(--cobalt-soft) 28%, transparent), transparent 55%), radial-gradient(ellipse 90% 60% at 100% 0%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 50%), linear-gradient(180deg, #f0fdf4 0%, var(--frost) 40%, #d1fae5 100%)}}body{background-attachment:fixed}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.skip-link{z-index:100;border-radius:var(--radius-md);background:var(--enamel);color:#f4f8fb;transition:transform .18s var(--ease-out);padding:.65rem 1rem;font-weight:650;text-decoration:none;position:absolute;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{box-shadow:var(--focus-ring);transform:translateY(0)}.app-shell{width:100%;min-height:100dvh;max-width:var(--shell-max);flex-direction:column;margin-inline:auto;display:flex;position:relative}.app-sidebar{display:none}.app-frame{min-width:0;min-height:100dvh;padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));background:var(--paper);flex-direction:column;flex:1;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.app-frame{background:color-mix(in srgb, var(--paper) 92%, var(--frost))}}.app-frame{box-shadow:var(--shadow-sm)}.app-header{z-index:10;min-height:var(--header-height);padding:.45rem 1.15rem;padding-top:max(.45rem, env(safe-area-inset-top,0px));background:var(--paper-lift);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.65rem;display:flex;position:sticky;top:0}.app-brand-block,.app-sidebar__brand{flex:auto;align-items:center;gap:.7rem;min-width:0;display:flex}.app-brand-mark{object-fit:contain;flex:0 0 2.35rem;width:2.35rem;height:2.35rem;display:block}.app-brand-text{flex:auto;min-width:0}.app-brand{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.04em;color:var(--enamel);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:clamp(1.15rem,4vw,1.4rem);font-weight:700;line-height:1.05;overflow:hidden}.app-tagline{letter-spacing:.01em;color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;margin:.1rem 0 0;font-size:.74rem;font-weight:500;line-height:1.25;overflow:hidden}@media (max-width:420px){.app-tagline{display:none}}.app-main{flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.app-main:focus{outline:none}.app-main:focus-visible{box-shadow:none}.page-enter{min-height:0;animation:page-enter .28s var(--ease-out);flex-direction:column;flex:1;display:flex}.screen{flex-direction:column;flex:1;justify-content:flex-start;min-height:0;padding:1rem 1.15rem 1.25rem;display:flex;position:relative;overflow:auto}.screen__body{z-index:1;width:100%;max-width:var(--content-max);flex-direction:column;align-items:stretch;padding-top:.75rem;display:flex;position:relative}.screen__title{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.03em;color:var(--ink);margin:0;font-size:clamp(1.4rem,4.6vw,1.7rem);font-weight:700;line-height:1.15}.screen__title+.screen__lead,.screen__title+.product-form,.screen__back+.screen__title{margin-top:.35rem}.screen__lead{color:var(--ink-muted);margin:0 0 1.35rem;font-size:1.02rem;line-height:1.5}.screen__actions{flex-direction:column;align-items:stretch;gap:.5rem;width:100%;display:flex}.screen__actions .btn{width:100%}.screen__hint{color:var(--ink-muted);margin:0;font-size:.85rem;line-height:1.4}@supports (color:color-mix(in lab, red, red)){.screen__hint{color:color-mix(in srgb, var(--ink-muted) 90%, transparent)}}.screen--list,.screen--form{gap:1rem}.screen__toolbar{z-index:1;flex-direction:column;align-items:stretch;gap:.75rem;display:flex;position:relative}.screen__heading{flex-direction:column;gap:.3rem;min-width:0;display:flex}.screen__subtitle{max-width:36rem;color:var(--ink-muted);margin:0;font-size:.9rem;line-height:1.4}.screen__actions-row{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.screen__actions-row .voice-action,.screen__actions-row .screen__action-secondary{text-align:center;letter-spacing:-.01em;justify-content:center;width:100%;margin:0;font-family:inherit;font-size:.9rem;font-weight:700;line-height:1.15}.screen__action-secondary{min-height:var(--touch);border-radius:var(--radius-md);border:1.5px solid var(--line);background:var(--paper);color:var(--enamel);-webkit-tap-highlight-color:transparent;transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out);justify-content:center;align-items:center;gap:.35rem;padding:.45rem .75rem;text-decoration:none;display:inline-flex}.screen__action-secondary svg{flex-shrink:0;width:1.2rem;height:1.2rem}.screen__action-secondary:hover{border-color:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.screen__action-secondary:hover{border-color:color-mix(in srgb, var(--cobalt) 40%, var(--line))}}.screen__action-secondary:hover{background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.screen__action-secondary:hover{background:color-mix(in srgb, var(--frost) 70%, white)}}.screen__action-secondary:active{background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.screen__action-secondary:active{background:color-mix(in srgb, var(--frost) 90%, white)}}.screen__action-secondary:focus-visible{box-shadow:var(--focus-ring);outline:none}.screen__action-secondary--active{border-color:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.screen__action-secondary--active{border-color:color-mix(in srgb, var(--cobalt) 45%, var(--line))}}.screen__action-secondary--active{background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.screen__action-secondary--active{background:color-mix(in srgb, var(--cobalt) 10%, white)}}.screen__action-secondary--active{color:var(--enamel-mid)}.screen__store-actions{flex-direction:column;gap:.65rem;display:flex}.screen__manual-panel{padding-top:.15rem}.screen__manual-panel .shopping-add{border-top:1px solid var(--line);border-bottom:0;margin:0;padding:.85rem 0 0}.screen__empty-title{font-family:var(--font-display), system-ui, sans-serif;color:var(--ink);margin:0 0 .5rem;font-size:1.3rem;font-weight:700}.screen__back{z-index:1;color:var(--cobalt);align-self:flex-start;margin-bottom:.15rem;font-size:.95rem;font-weight:650;text-decoration:none;position:relative}.screen__back:hover{text-underline-offset:.15em;text-decoration:underline}.empty-fridge{flex-direction:column;align-items:stretch;gap:1.1rem;margin-top:.5rem;display:flex}.empty-fridge__glyph{width:4.5rem;height:5.5rem;color:var(--enamel);opacity:.55}.empty-fridge__glyph svg{width:100%;height:100%;display:block}.shelf-bins{z-index:1;flex-direction:column;gap:.85rem;display:flex;position:relative}.shelf-bin{animation:page-enter .35s var(--ease-out) both;flex-direction:column;gap:.3rem;display:flex}.shelf-bin:nth-child(2){animation-delay:40ms}.shelf-bin:nth-child(3){animation-delay:80ms}.shelf-bin:nth-child(4){animation-delay:.12s}.shelf-bin:nth-child(5){animation-delay:.16s}.shelf-bin__head{align-items:center;gap:.5rem;padding:.05rem .1rem;display:flex}.shelf-bin__mark{width:1.85rem;height:1.85rem;color:var(--enamel);background:var(--cobalt);border-radius:.55rem;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.shelf-bin__mark{background:color-mix(in srgb, var(--cobalt) 12%, white)}}.shelf-bin__mark{flex-shrink:0}.shelf-bin__mark svg{width:1.05rem;height:1.05rem}.shelf-bin--fresh .shelf-bin__mark{color:#047857;background:#d4f2e8}.shelf-bin--dairy .shelf-bin__mark{color:#0369a1;background:#dff4fe}.shelf-bin--eggs .shelf-bin__mark{color:#a16207;background:#fef2d3}.shelf-bin--meat .shelf-bin__mark{color:#9f1239;background:#fee8eb}.shelf-bin--bread .shelf-bin__mark{color:#9a3412;background:#fff0e0}.shelf-bin--frozen .shelf-bin__mark{color:#0e7490;background:#dcf8fc}.shelf-bin--pantry .shelf-bin__mark{color:#78716c;background:#f4f3f2}.shelf-bin--spices .shelf-bin__mark{color:#b45309;background:#fff0e0}.shelf-bin--default .shelf-bin__mark{color:var(--enamel-mid);background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.shelf-bin--default .shelf-bin__mark{background:color-mix(in srgb, var(--frost) 70%, white)}}.shelf-bin__titles{flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;min-width:0;display:flex}.shelf-bin__title{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:.88rem;font-weight:750;line-height:1.2}.shelf-bin__count{color:var(--ink-muted);margin:0;font-size:.75rem;font-weight:550}.shelf-bin__list{border-radius:var(--radius-md);background:var(--paper);border:1px solid var(--line);margin:0;padding:.05rem .4rem;list-style:none}@supports (color:color-mix(in lab, red, red)){.shelf-bin__list{border:1px solid color-mix(in srgb, var(--line) 80%, transparent)}}.shelf-bin--fresh .shelf-bin__list{background:#ecfdf5}@supports (color:color-mix(in lab, red, red)){.shelf-bin--fresh .shelf-bin__list{background:color-mix(in srgb, #ecfdf5 28%, var(--paper))}}.shelf-bin--dairy .shelf-bin__list{background:#f0f9ff}@supports (color:color-mix(in lab, red, red)){.shelf-bin--dairy .shelf-bin__list{background:color-mix(in srgb, #f0f9ff 32%, var(--paper))}}.shelf-bin--eggs .shelf-bin__list{background:#fffbeb}@supports (color:color-mix(in lab, red, red)){.shelf-bin--eggs .shelf-bin__list{background:color-mix(in srgb, #fffbeb 30%, var(--paper))}}.shelf-bin--meat .shelf-bin__list{background:#fff1f2}@supports (color:color-mix(in lab, red, red)){.shelf-bin--meat .shelf-bin__list{background:color-mix(in srgb, #fff1f2 26%, var(--paper))}}.shelf-bin--bread .shelf-bin__list{background:#fff7ed}@supports (color:color-mix(in lab, red, red)){.shelf-bin--bread .shelf-bin__list{background:color-mix(in srgb, #fff7ed 30%, var(--paper))}}.shelf-bin--frozen .shelf-bin__list{background:#ecfeff}@supports (color:color-mix(in lab, red, red)){.shelf-bin--frozen .shelf-bin__list{background:color-mix(in srgb, #ecfeff 28%, var(--paper))}}.shelf-bin--pantry .shelf-bin__list{background:#f5f5f4}@supports (color:color-mix(in lab, red, red)){.shelf-bin--pantry .shelf-bin__list{background:color-mix(in srgb, #f5f5f4 28%, var(--paper))}}.shelf-bin--spices .shelf-bin__list{background:#fff7ed}@supports (color:color-mix(in lab, red, red)){.shelf-bin--spices .shelf-bin__list{background:color-mix(in srgb, #fff7ed 30%, var(--paper))}}.product-list{z-index:1;border-top:1px solid var(--line);flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex;position:relative}.product-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.55rem .15rem .55rem .35rem;display:flex}@supports (color:color-mix(in lab, red, red)){.product-row{border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent)}}.product-row{background:0 0}.shelf-bin__list .product-row:last-child{border-bottom:none}.product-row--expired .product-row__main{opacity:.72}.product-row__main{flex:1;min-width:0}.product-row__title-line{flex-wrap:wrap;align-items:center;gap:.3rem .45rem;display:flex}.product-row__name{color:var(--ink);word-break:break-word;margin:0;font-size:.98rem;font-weight:650;line-height:1.25}.product-row__meta{color:var(--ink-muted);margin:.18rem 0 0;font-size:.82rem;line-height:1.35}.product-row__qty{color:var(--ink);font-weight:650}@supports (color:color-mix(in lab, red, red)){.product-row__qty{color:color-mix(in srgb, var(--ink) 78%, var(--ink-muted))}}.product-row__dot{margin:0 .3rem}.product-row__actions{flex-direction:row;flex-shrink:0;align-items:center;gap:.25rem;margin-top:0;display:flex}.product-row:has(.product-row__actions--confirm){background:var(--stamp-expired);align-items:center}@supports (color:color-mix(in lab, red, red)){.product-row:has(.product-row__actions--confirm){background:color-mix(in srgb, var(--stamp-expired) 7%, transparent)}}.product-row:has(.product-row__actions--confirm){border-radius:var(--radius-sm)}.product-row:has(.product-row__actions--pending){opacity:.65}.product-row__actions--confirm{gap:.3rem}.product-row__confirm-no,.product-row__confirm-yes{box-sizing:border-box;min-height:var(--touch);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;touch-action:manipulation;transition:color .18s ease, background-color .18s ease, transform .18s var(--ease-out);border:none;justify-content:center;align-items:center;margin:0;padding:0 .75rem;font-family:inherit;font-size:.88rem;font-weight:650;line-height:1.2;display:inline-flex}.product-row__confirm-no{color:var(--ink-muted);background:0 0}.product-row__confirm-no:hover:not(:disabled){color:var(--enamel);background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.product-row__confirm-no:hover:not(:disabled){background:color-mix(in srgb, var(--frost) 80%, white)}}.product-row__confirm-yes{background:var(--stamp-expired)}@supports (color:color-mix(in lab, red, red)){.product-row__confirm-yes{background:color-mix(in srgb, var(--stamp-expired) 12%, white)}}.product-row__confirm-yes{color:var(--stamp-expired)}.product-row__confirm-yes:hover:not(:disabled){background:var(--stamp-expired)}@supports (color:color-mix(in lab, red, red)){.product-row__confirm-yes:hover:not(:disabled){background:color-mix(in srgb, var(--stamp-expired) 20%, white)}}.product-row__confirm-no:active:not(:disabled),.product-row__confirm-yes:active:not(:disabled){transform:scale(.96)}.product-row__confirm-no:disabled,.product-row__confirm-yes:disabled{cursor:not-allowed;opacity:.7}@media (prefers-reduced-motion:reduce){.shelf-bin{animation:none}}@media (min-width:640px){.shelf-bin__list{grid-template-columns:1fr 1fr;gap:0;padding:.15rem .2rem;display:grid}.shelf-bin__list .product-row{border-radius:var(--radius-sm);border-bottom:none;padding:.5rem .35rem .5rem .4rem}.shelf-bin__list .product-row:nth-child(odd){border-right:1px solid var(--line)}@supports (color:color-mix(in lab, red, red)){.shelf-bin__list .product-row:nth-child(odd){border-right:1px solid color-mix(in srgb, var(--line) 65%, transparent)}}}.row-action{box-sizing:border-box;width:var(--touch);height:var(--touch);border-radius:var(--radius-md);color:var(--ink-muted);cursor:pointer;touch-action:manipulation;transition:color .18s ease, background-color .18s ease, transform .18s var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;text-decoration:none;display:inline-flex}.row-action:hover{color:var(--enamel);background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.row-action:hover{background:color-mix(in srgb, var(--frost) 80%, white)}}.row-action:active{transform:scale(.96)}.row-action--danger:hover{color:var(--stamp-expired);background:var(--stamp-expired)}@supports (color:color-mix(in lab, red, red)){.row-action--danger:hover{background:color-mix(in srgb, var(--stamp-expired) 10%, white)}}.stamp{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;animation:stamp-press .35s var(--ease-out);-webkit-user-select:none;user-select:none;background:0 0;border:1px dashed;border-radius:.2rem;justify-content:center;align-items:center;padding:.12rem .34rem;font-size:.64rem;font-weight:750;line-height:1.15;display:inline-flex;transform:rotate(-2deg)}.stamp--expired{color:var(--stamp-expired)}.stamp--critical{color:var(--stamp-critical)}.stamp--soon{color:var(--stamp-soon)}.stamp--low{color:var(--stamp-low);transform:rotate(1.5deg)}.staple-toggle{border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--paper-lift);cursor:pointer;align-items:flex-start;gap:.7rem;padding:.85rem .9rem;display:flex}.staple-toggle input{width:1.1rem;height:1.1rem;accent-color:var(--enamel);flex-shrink:0;margin-top:.2rem}.staple-toggle__title{color:var(--ink);font-size:.95rem;font-weight:650;display:block}.staple-toggle__hint{color:var(--ink-muted);margin-top:.2rem;font-size:.85rem;line-height:1.35;display:block}.product-form{z-index:1;width:100%;max-width:var(--content-max);flex-direction:column;gap:1.1rem;display:flex;position:relative}.field-error{color:var(--stamp-expired);margin:.15rem 0 0;font-size:.85rem;font-weight:600;line-height:1.35}.auth-input--invalid{border-color:var(--stamp-expired)}@supports (color:color-mix(in lab, red, red)){.auth-input--invalid{border-color:color-mix(in srgb, var(--stamp-expired) 55%, var(--line))}}.auth-input--invalid{background:var(--stamp-expired)}@supports (color:color-mix(in lab, red, red)){.auth-input--invalid{background:color-mix(in srgb, var(--stamp-expired) 5%, white)}}.product-form__row{grid-template-columns:1.4fr 1fr;gap:.75rem;display:grid}.product-form__unit-hint{color:var(--enamel);margin-top:.35rem;font-size:.8rem;font-weight:600;line-height:1.35;display:block}.product-form__actions{flex-direction:column;gap:.5rem;display:flex}.product-form__actions .btn{width:100%;text-decoration:none}.expiry-field__hint{color:var(--ink-muted);margin:-.15rem 0 .55rem;font-size:.88rem;line-height:1.4}.expiry-field__kind{color:var(--enamel);font-weight:600}.expiry-presets{flex-wrap:wrap;gap:.45rem;margin:0 0 .65rem;display:flex}.expiry-preset{border:1.5px solid var(--enamel);justify-content:center;align-items:center;min-height:2.5rem;padding:.4rem .85rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.expiry-preset{border:1.5px solid color-mix(in srgb, var(--enamel) 16%, transparent)}}.expiry-preset{background:var(--frost);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.expiry-preset{background:color-mix(in srgb, var(--frost) 55%, white)}}.expiry-preset{color:var(--ink);cursor:pointer;transition:background-color .18s ease, border-color .18s ease, color .18s ease, transform .15s var(--ease-out);font-family:inherit;font-size:.88rem;font-weight:650}.expiry-preset:hover:not(:disabled){border-color:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.expiry-preset:hover:not(:disabled){border-color:color-mix(in srgb, var(--cobalt) 45%, transparent)}}.expiry-preset:hover:not(:disabled){background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.expiry-preset:hover:not(:disabled){background:color-mix(in srgb, var(--cobalt) 10%, white)}}.expiry-preset:active:not(:disabled){transform:scale(.97)}.expiry-preset--selected{background:linear-gradient(160deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff;box-shadow:0 2px 8px var(--accent);border-color:#0000}@supports (color:color-mix(in lab, red, red)){.expiry-preset--selected{box-shadow:0 2px 8px color-mix(in srgb, var(--accent) 30%, transparent)}}.expiry-preset:disabled{cursor:not-allowed;opacity:.55}.expiry-field__preview{color:var(--cobalt);margin:.45rem 0 0;font-size:.9rem;font-weight:600}.btn--danger-text{color:var(--stamp-expired)}.btn--danger-text:hover:not(:disabled){color:var(--stamp-expired);background:var(--stamp-expired)}@supports (color:color-mix(in lab, red, red)){.btn--danger-text:hover:not(:disabled){background:color-mix(in srgb, var(--stamp-expired) 10%, white)}}a.btn{text-decoration:none}.btn{min-height:var(--touch);border-radius:var(--radius-md);letter-spacing:.01em;cursor:pointer;transition:transform .18s var(--ease-out), background-color .18s ease, opacity .18s ease;border:none;justify-content:center;align-items:center;padding:.7rem 1.25rem;font-family:inherit;font-size:1rem;font-weight:650;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn--primary{background:linear-gradient(160deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff;box-shadow:0 2px 8px var(--accent)}@supports (color:color-mix(in lab, red, red)){.btn--primary{box-shadow:0 2px 8px color-mix(in srgb, var(--accent) 35%, transparent)}}.btn--primary:hover:not(:disabled){background:linear-gradient(160deg, #e8900a 0%, var(--accent) 100%);transform:translateY(-1px)}.btn--primary:active:not(:disabled){transform:scale(.98)}.btn--primary:disabled,.btn--soon:disabled{cursor:not-allowed;opacity:.55}.btn--soon{background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.btn--soon{background:color-mix(in srgb, var(--frost) 70%, white)}}.btn--soon{color:var(--enamel);border:1.5px solid var(--enamel)}@supports (color:color-mix(in lab, red, red)){.btn--soon{border:1.5px solid color-mix(in srgb, var(--enamel) 18%, transparent)}}.btn--ghost{color:var(--ink-muted);background:0 0}.btn--ghost:hover:not(:disabled){color:var(--enamel);background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.btn--ghost:hover:not(:disabled){background:color-mix(in srgb, var(--frost) 65%, transparent)}}.btn--small{min-height:var(--touch);min-width:var(--touch);flex-shrink:0;padding:.5rem .85rem;font-size:.9rem}.auth-screen{box-sizing:border-box;width:100%;min-height:100dvh;padding:max(1.25rem, env(safe-area-inset-top,0px)) max(1.25rem, env(safe-area-inset-right,0px)) max(1.25rem, env(safe-area-inset-bottom,0px)) max(1.25rem, env(safe-area-inset-left,0px));background:radial-gradient(ellipse 80% 55% at 50% -10%, var(--cobalt), transparent 70%), linear-gradient(180deg, var(--frost) 0%, var(--paper) 55%, var(--enamel) 100%);justify-content:center;align-items:flex-start;margin-inline:auto;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.auth-screen{background:radial-gradient(ellipse 80% 55% at 50% -10%, color-mix(in srgb, var(--cobalt) 22%, transparent), transparent 70%), linear-gradient(180deg, var(--frost) 0%, var(--paper) 55%, color-mix(in srgb, var(--enamel) 6%, var(--paper)) 100%)}}.auth-screen__glow{background:radial-gradient(ellipse at center, var(--cobalt-soft), transparent 65%);height:40%;position:absolute;inset:auto -20% 15%}@supports (color:color-mix(in lab, red, red)){.auth-screen__glow{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--cobalt-soft) 12%, transparent), transparent 65%)}}.auth-screen__glow{pointer-events:none}.auth-panel{z-index:1;box-sizing:border-box;border:1px solid var(--enamel);flex-direction:column;width:100%;max-width:26rem;margin-inline:auto;padding:1.35rem 1.15rem 1.25rem;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.auth-panel{border:1px solid color-mix(in srgb, var(--enamel) 10%, transparent)}}.auth-panel{border-radius:var(--radius-lg);background:var(--paper);box-shadow:0 1px 2px var(--enamel), 0 10px 28px var(--enamel)}@supports (color:color-mix(in lab, red, red)){.auth-panel{box-shadow:0 1px 2px color-mix(in srgb, var(--enamel) 4%, transparent), 0 10px 28px color-mix(in srgb, var(--enamel) 7%, transparent)}}.auth-panel{animation:auth-panel-in .55s var(--ease-out) both}@keyframes auth-panel-in{0%{opacity:0;transform:translateY(.65rem)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.auth-panel{animation:none}}.auth-brand{align-items:center;gap:.85rem;min-width:0;margin:0 0 1.5rem;display:flex}.auth-brand .app-brand-mark{flex:0 0 3rem;width:3rem;height:3rem}.auth-brand .app-brand{white-space:normal;font-size:clamp(1.85rem,7vw,2.35rem)}.auth-brand .app-tagline{white-space:normal;font-size:.92rem}.auth-heading{flex-direction:column;gap:.4rem;margin:0 0 1.35rem;display:flex}.auth-title{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(1.45rem,4.5vw,1.7rem);font-weight:700;line-height:1.2}.auth-form{flex-direction:column;gap:1.1rem;width:100%;display:flex}.auth-stack{flex-direction:column;gap:1.15rem;width:100%;display:flex}.auth-social{flex-direction:column;gap:.65rem;width:100%;display:flex}.auth-social-btn{border:2px solid var(--cobalt);border-radius:var(--radius-md);width:100%;min-height:3.1rem;color:var(--enamel);transition:border-color .2s var(--ease-out), background .2s var(--ease-out), color .2s var(--ease-out), transform .2s var(--ease-out);background:0 0;justify-content:center;align-items:center;gap:.65rem;font-size:.98rem;font-weight:650;display:inline-flex}.auth-social-btn__icon{flex:none}.auth-social-btn:hover:not(:disabled){background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.auth-social-btn:hover:not(:disabled){background:color-mix(in srgb, var(--cobalt) 8%, var(--paper))}}.auth-social-btn:hover:not(:disabled){border-color:var(--enamel-mid);transform:translateY(-1px)}.auth-social-btn:active:not(:disabled){background:var(--cobalt);transform:none}@supports (color:color-mix(in lab, red, red)){.auth-social-btn:active:not(:disabled){background:color-mix(in srgb, var(--cobalt) 12%, var(--paper))}}.auth-divider{color:var(--ink-muted);align-items:center;gap:.75rem;margin:.2rem 0 0;font-size:.86rem;font-weight:550;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.passkey-banner{box-sizing:border-box;width:100%;max-width:var(--content-max-wide);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--cobalt);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem 1rem;margin:1rem auto .35rem;padding:.95rem 1.15rem;display:flex}@supports (color:color-mix(in lab, red, red)){.passkey-banner{background:color-mix(in srgb, var(--cobalt) 7%, var(--paper-lift))}}.passkey-banner{box-shadow:var(--shadow-sm)}.passkey-banner__text{flex:12rem;min-width:0}.passkey-banner--ok{background:var(--ok)}@supports (color:color-mix(in lab, red, red)){.passkey-banner--ok{background:color-mix(in srgb, var(--ok) 12%, white)}}.passkey-banner--ok{color:var(--ok);border-color:#0000}.passkey-banner__title{color:var(--ink);margin:0 0 .2rem;font-size:.98rem;font-weight:650}.passkey-banner__lead{color:var(--ink-muted);margin:0;font-size:.9rem;line-height:1.45}.passkey-banner__error{color:var(--stamp-expired);margin:.45rem 0 0;font-size:.88rem}.passkey-banner__actions{flex-wrap:wrap;flex:none;gap:.5rem;display:flex}.passkey-banner__actions .btn{min-height:2.5rem;padding-inline:.9rem}.app-main>.passkey-banner{width:auto;margin-inline:1.15rem}@media (min-width:900px){.app-main>.passkey-banner{width:100%;max-width:var(--content-max-wide);margin-inline:auto;margin-top:1.25rem;padding-inline:1.75rem}}.auth-field{flex-direction:column;gap:.4rem;width:100%;display:flex}.auth-label{color:var(--ink);font-size:.92rem;font-weight:650}.auth-input{box-sizing:border-box;width:100%;min-height:var(--touch);border-radius:var(--radius-md);background:var(--paper-lift);color:var(--ink);font:inherit;border:1.5px solid #e1f2ed;padding:.7rem .9rem;font-size:1rem;line-height:1.3;transition:border-color .2s,box-shadow .2s,background .2s}.auth-input:focus-visible{border-color:var(--cobalt);background:var(--paper);box-shadow:0 0 0 3px var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.auth-input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--cobalt) 20%, transparent)}}.auth-input:disabled{opacity:.65}.auth-forgot{color:var(--cobalt);text-underline-offset:.18em;align-self:flex-end;margin-top:.15rem;font-size:.88rem;font-weight:650;text-decoration:underline}.auth-forgot:hover{color:var(--enamel)}.auth-lead{max-width:22rem;color:var(--ink-muted);margin:0;font-size:.95rem;line-height:1.45}.auth-input::placeholder{color:var(--ink-muted)}@supports (color:color-mix(in lab, red, red)){.auth-input::placeholder{color:color-mix(in srgb, var(--ink-muted) 72%, transparent)}}.auth-alert{border-radius:var(--radius-sm);margin:0;padding:.75rem .9rem;font-size:.92rem;line-height:1.45}.auth-alert--error{background:var(--stamp-expired)}@supports (color:color-mix(in lab, red, red)){.auth-alert--error{background:color-mix(in srgb, var(--stamp-expired) 10%, white)}}.auth-alert--error{color:var(--stamp-expired)}.auth-alert--ok{background:var(--ok)}@supports (color:color-mix(in lab, red, red)){.auth-alert--ok{background:color-mix(in srgb, var(--ok) 12%, white)}}.auth-alert--ok{color:var(--ok)}.auth-submit{width:100%;min-height:3rem;margin-top:.25rem}.auth-switch{text-align:center;color:var(--ink-muted);margin:.35rem 0 0;font-size:.95rem;line-height:1.45}.auth-link{color:var(--cobalt);text-underline-offset:.18em;font-weight:650;text-decoration:underline}.auth-link:hover{color:var(--enamel)}.auth-legal{text-align:center;color:var(--ink-muted);margin:1rem 0 0;font-size:.8rem;line-height:1.45}.land{--land-nav-h:4.25rem;--land-dock-h:0px;background:var(--paper);color:var(--ink)}.land-nav-chrome{z-index:50;transition:background .22s var(--ease-out), box-shadow .22s var(--ease-out), border-color .22s var(--ease-out);background:0 0;border-bottom:1px solid #0000;position:fixed;inset:0 0 auto}.land-nav-chrome--solid{background:var(--paper-lift)}@supports (color:color-mix(in lab, red, red)){.land-nav-chrome--solid{background:color-mix(in srgb, var(--paper-lift) 94%, transparent)}}.land-nav-chrome--solid{border-bottom-color:var(--line);box-shadow:0 8px 28px var(--enamel)}@supports (color:color-mix(in lab, red, red)){.land-nav-chrome--solid{box-shadow:0 8px 28px color-mix(in srgb, var(--enamel) 8%, transparent)}}.land-nav-chrome--solid{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.land-nav{max-width:72rem;min-height:var(--land-nav-h);padding:max(.55rem, env(safe-area-inset-top,0px)) max(1rem, env(safe-area-inset-right,0px)) .55rem max(1rem, env(safe-area-inset-left,0px));justify-content:space-between;align-items:center;gap:.75rem;margin-inline:auto;display:flex}.land-nav__brand{color:#f4f8fb;min-width:0;transition:color .2s var(--ease-out);align-items:center;gap:.55rem;text-decoration:none;display:flex}.land-nav-chrome--solid .land-nav__brand{color:var(--enamel)}.land-nav__mark{filter:brightness(0)invert();width:2rem;height:2rem;transition:filter .2s var(--ease-out);flex:none}.land-nav-chrome--solid .land-nav__mark{filter:none}.land-nav__name{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.03em;font-size:1.05rem;font-weight:700}.land-nav__actions{flex-shrink:0;align-items:center;gap:.35rem .55rem;display:flex}.land-nav__link{min-height:var(--touch);color:#ffffffe6;border-radius:var(--radius-sm);transition:color .2s var(--ease-out), background .2s var(--ease-out);justify-content:center;align-items:center;padding:0 .55rem;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex}.land-nav__link:hover{color:#fff;background:#ffffff1a}.land-nav-chrome--solid .land-nav__link{color:var(--cobalt)}.land-nav-chrome--solid .land-nav__link:hover{color:var(--enamel);background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.land-nav-chrome--solid .land-nav__link:hover{background:color-mix(in srgb, var(--cobalt) 8%, transparent)}}.land-nav__cta{min-height:var(--touch);padding-inline:.95rem;font-size:.9rem}.land-nav-chrome .locale-switch{border-color:#ffffff4d}.land-nav-chrome--solid .locale-switch{border-color:var(--line)}.land-nav-chrome .locale-switch__btn{color:#ffffffd1}.land-nav-chrome .locale-switch__btn:hover:not(:disabled){color:#fff;background:#ffffff1f}.land-nav-chrome .locale-switch__btn--active{color:#fff;background:#ffffff2e}.land-nav-chrome--solid .locale-switch__btn{color:var(--ink-muted)}.land-nav-chrome--solid .locale-switch__btn:hover:not(:disabled){color:var(--enamel);background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.land-nav-chrome--solid .locale-switch__btn:hover:not(:disabled){background:color-mix(in srgb, var(--cobalt) 8%, transparent)}}.land-nav-chrome--solid .locale-switch__btn--active{background:var(--enamel);color:#f4f8fb}.locale-switch{border:1.5px solid var(--line);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.locale-switch__btn{min-height:var(--touch);min-width:var(--touch);color:var(--ink-muted);font:inherit;letter-spacing:.04em;cursor:pointer;transition:background .18s var(--ease-out), color .18s var(--ease-out);background:0 0;border:0;padding:0 .65rem;font-size:.78rem;font-weight:700}.locale-switch__btn:hover:not(:disabled){color:var(--enamel);background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.locale-switch__btn:hover:not(:disabled){background:color-mix(in srgb, var(--cobalt) 8%, transparent)}}.locale-switch__btn--active{background:var(--enamel);color:#f4f8fb;cursor:default}.land-nav-chrome :focus-visible,.land-hero :focus-visible,.land-dock :focus-visible{outline:none;box-shadow:0 0 0 3px #fff}@supports (color:color-mix(in lab, red, red)){.land-nav-chrome :focus-visible,.land-hero :focus-visible,.land-dock :focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, white 55%, var(--cobalt))}}.land-nav-chrome--solid :focus-visible{box-shadow:var(--focus-ring)}.land-hero{isolation:isolate;background:var(--enamel);min-height:100svh;display:grid;position:relative}.land-hero__media{z-index:0;position:absolute;inset:0;overflow:hidden}.land-hero__picture{display:block;position:absolute;inset:0}.land-hero__img{object-fit:cover;object-position:78% 32%;width:100%;height:100%;animation:land-hero-drift 20s var(--ease-out) both;position:absolute;inset:0;transform:scale(1.03)}.land-hero__panel{z-index:1;box-sizing:border-box;width:100%;max-width:36rem;padding:calc(var(--land-nav-h) + 1.5rem) max(1.15rem, env(safe-area-inset-right,0px)) max(2rem, env(safe-area-inset-bottom,0px)) max(1.15rem, env(safe-area-inset-left,0px));color:#f4f8fb;background:linear-gradient(180deg, transparent 0%, var(--enamel) 18%, var(--enamel) 52%, var(--enamel) 100%);flex-direction:column;justify-content:flex-end;margin-top:auto;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.land-hero__panel{background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--enamel) 42%, transparent) 18%, color-mix(in srgb, var(--enamel) 88%, black) 52%, color-mix(in srgb, var(--enamel) 96%, black) 100%)}}.land-hero__panel{animation:land-hero-in .65s var(--ease-out) both}.land-hero__kicker{color:#ffffffd6;margin:0 0 .55rem;font-size:.92rem;font-weight:500;line-height:1.4}.land-hero__brand{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.05em;color:#f4f8fb;text-shadow:0 1px #00000040;margin:0 0 .55rem;font-size:clamp(2.75rem,11vw,4.75rem);font-weight:700;line-height:.92}.land-hero__title{max-width:16ch;font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.025em;color:#e8eef3;margin:0 0 .75rem;font-size:clamp(1.3rem,4vw,1.75rem);font-weight:600;line-height:1.2}.land-hero__lead{color:#ffffffe0;max-width:32rem;margin:0 0 1.25rem;font-size:clamp(1rem,2.3vw,1.08rem);line-height:1.55}.land-hero__actions{flex-direction:column;align-items:stretch;gap:.65rem;width:100%;max-width:26rem;display:flex}.land-hero__btn{box-sizing:border-box;width:100%;min-height:var(--touch);text-align:center;text-wrap:balance;justify-content:center;padding-inline:1.1rem;line-height:1.25}.land-hero__btn--primary{color:var(--enamel);background:#f4f8fb}.land-hero__btn--primary:hover:not(:disabled){color:var(--enamel);background:#fff}.land-hero__btn--ghost{color:#f4f8fb;background:#ffffff1a;border:1.5px solid #ffffff6b}.land-hero__btn--ghost:hover:not(:disabled){background:#ffffff2e;border-color:#ffffffa6}.land-hero__scroll{min-height:var(--touch);color:#ffffffd6;border-bottom:1px solid #ffffff5c;align-items:center;width:fit-content;margin-top:.85rem;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.land-hero__scroll:hover{color:#fff;border-color:#ffffffa6}@keyframes land-hero-in{0%{opacity:0;transform:translateY(.85rem)}to{opacity:1;transform:none}}@keyframes land-hero-drift{0%{transform:scale(1.08)}to{transform:scale(1.02)}}.land-main{outline:none}.land-section{scroll-margin-top:calc(var(--land-nav-h) + .75rem);padding:clamp(3.25rem,8vw,5.75rem) 0}.land-section__inner{box-sizing:border-box;width:100%;max-width:44rem;padding-inline:max(1.15rem, env(safe-area-inset-left,0px)) max(1.15rem, env(safe-area-inset-right,0px));margin-inline:auto}.land-section__title{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.035em;color:var(--enamel);margin:0 0 .85rem;font-size:clamp(1.55rem,4vw,2.05rem);font-weight:700;line-height:1.15}.land-section__lead,.land-section__body{color:var(--ink-muted);margin:0;font-size:1.05rem;line-height:1.6}.land-section__lead{margin-bottom:2rem}.land-reveal{opacity:0;transition:opacity .38s var(--ease-out), transform .38s var(--ease-out);transition-delay:var(--land-reveal-delay,0s);transform:translateY(.75rem)}.land-reveal--in{opacity:1;transform:none}.land-problem{background:var(--paper-lift);border-block:1px solid var(--line)}.land-problem .land-section__inner{max-width:52rem}.land-problem__grid{gap:1.75rem;display:grid}.land-problem__quote{border-left:3px solid var(--cobalt);background:linear-gradient(135deg, var(--frost), var(--cobalt));margin:0;padding:1.35rem 1.4rem}@supports (color:color-mix(in lab, red, red)){.land-problem__quote{background:linear-gradient(135deg, color-mix(in srgb, var(--frost) 85%, white), color-mix(in srgb, var(--cobalt) 8%, white))}}.land-problem__quote{border-radius:0 var(--radius-md) var(--radius-md) 0}.land-problem__quote p{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.02em;color:var(--enamel);margin:0;font-size:clamp(1.1rem,2.5vw,1.28rem);font-weight:600;line-height:1.35}.land-flow__list{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.land-flow__step{border-top:1px solid var(--line);grid-template-columns:auto 1fr;align-items:start;gap:1rem 1.15rem;padding-block:1.45rem;display:grid}.land-flow__step:last-child{border-bottom:1px solid var(--line)}.land-flow__index{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:.06em;color:var(--cobalt);padding-top:.2rem;font-size:.95rem;font-weight:700}.land-flow__title{color:var(--enamel);margin:0 0 .4rem;font-size:1.12rem;font-weight:700}.land-flow__body{color:var(--ink-muted);margin:0;font-size:1rem;line-height:1.55}.land-proof{background:radial-gradient(ellipse 70% 60% at 85% 40%, var(--cobalt), transparent 70%), var(--frost)}@supports (color:color-mix(in lab, red, red)){.land-proof{background:radial-gradient(ellipse 70% 60% at 85% 40%, color-mix(in srgb, var(--cobalt) 10%, transparent), transparent 70%), var(--frost)}}.land-proof{overflow:hidden}.land-proof .land-section__inner{max-width:64rem}.land-proof__grid{align-items:center;gap:2.5rem;display:grid}.land-proof__eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--cobalt);margin:0 0 .55rem;font-size:.82rem;font-weight:700}.land-proof__cta{min-height:var(--touch);margin-top:1.35rem}.land-mock{justify-content:center;display:flex}.land-mock__phone{width:min(100%,20.5rem);box-shadow:0 24px 48px var(--enamel), inset 0 0 0 1px #ffffff1f;background:linear-gradient(160deg,#2a4558,#152028);border-radius:1.65rem;padding:.65rem}@supports (color:color-mix(in lab, red, red)){.land-mock__phone{box-shadow:0 24px 48px color-mix(in srgb, var(--enamel) 28%, transparent), inset 0 0 0 1px #ffffff1f}}.land-mock__phone{transform:rotate(-1.5deg)}.land-mock__notch{background:#172630;border-radius:999px;width:28%;height:.35rem;margin:.25rem auto .55rem}.land-mock__screen{background:var(--paper);border-radius:1.15rem;min-height:22rem;padding:.85rem .85rem 1rem}.land-mock__bar{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.85rem;display:flex}.land-mock__app{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.03em;color:var(--enamel);font-size:1.05rem;font-weight:700}.land-mock__tag{color:var(--ink-muted);background:var(--frost);border-radius:999px;padding:.25rem .5rem;font-size:.72rem;font-weight:650}.land-mock__section{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .65rem;font-size:.78rem;font-weight:700}.land-mock__list{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.land-mock__row{border-radius:var(--radius-md);background:var(--paper-lift);border:1px solid var(--line);grid-template-columns:auto 1fr;align-items:start;gap:.65rem;padding:.65rem .7rem;display:grid}.land-mock__stamp{letter-spacing:.02em;text-transform:uppercase;color:#fff;background:var(--stamp-critical);border-radius:.25rem;align-items:center;min-height:1.4rem;padding:.1rem .45rem;font-size:.68rem;font-weight:700;display:inline-flex}.land-mock__row--soon .land-mock__stamp{background:var(--stamp-soon)}.land-mock__stamp--ok{background:var(--ok)}.land-mock__name{color:var(--ink);margin:0;font-size:.95rem;font-weight:700}.land-mock__meta{color:var(--ink-muted);margin:.15rem 0 0;font-size:.8rem}.land-mock__cta{border-radius:var(--radius-md);background:var(--cobalt);color:#fff;justify-content:center;align-items:center;min-height:2.65rem;margin-top:.85rem;font-size:.92rem;font-weight:650;display:flex}.land-caps{background:radial-gradient(ellipse 55% 50% at 15% 0%, var(--cobalt), transparent 65%), var(--enamel)}@supports (color:color-mix(in lab, red, red)){.land-caps{background:radial-gradient(ellipse 55% 50% at 15% 0%, color-mix(in srgb, var(--cobalt) 22%, transparent), transparent 65%), var(--enamel)}}.land-caps{color:#e8eef3}.land-caps .land-section__inner{max-width:64rem}.land-caps__label{letter-spacing:.06em;text-transform:uppercase;color:#ffffffc7;margin:0 0 1.5rem;font-size:.85rem;font-weight:650}.land-caps__grid{gap:1.75rem 2rem;display:grid}.land-caps__item{border-top:1px solid #ffffff29;padding-top:.35rem}.land-caps__title{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.03em;color:#f4f8fb;margin:.85rem 0 .45rem;font-size:1.35rem;font-weight:700}.land-caps__body{color:#ffffffd1;margin:0;font-size:1rem;line-height:1.55}.land-purpose{background:var(--paper)}.land-purpose__inner{padding-left:1.15rem;position:relative}.land-purpose__inner:before{content:"";background:var(--cobalt);border-radius:999px;width:3px;position:absolute;top:.2rem;bottom:.2rem;left:0}.land-close{background:var(--paper-lift);border-top:1px solid var(--line)}.land-close__inner{text-align:center;flex-direction:column;align-items:center;display:flex}.land-close__brand{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.02em;color:var(--cobalt);margin:0 0 .65rem;font-size:1rem;font-weight:700}.land-close__title{max-width:22ch;font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.035em;color:var(--enamel);margin:0 0 .75rem;font-size:clamp(1.55rem,4vw,2.1rem);font-weight:700;line-height:1.15}.land-close__body{max-width:34rem;color:var(--ink-muted);margin:0 0 1.35rem;font-size:1.05rem;line-height:1.55}.land-close__cta{min-height:var(--touch)}.land-footer{border-top:1px solid var(--line);background:var(--paper);padding:1.35rem max(1.15rem, env(safe-area-inset-right,0px)) max(1.35rem, env(safe-area-inset-bottom,0px)) max(1.15rem, env(safe-area-inset-left,0px))}.land-footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;max-width:72rem;margin-inline:auto;display:flex}.land-footer__name{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.03em;color:var(--enamel);margin:0;font-weight:700}.land-footer__links{flex-wrap:wrap;gap:.35rem;display:flex}.land-footer__link{min-height:var(--touch);color:var(--cobalt);text-underline-offset:.18em;align-items:center;padding:0 .45rem;font-size:.9rem;font-weight:600;text-decoration:underline;display:inline-flex}.land-footer__link:hover{color:var(--enamel)}.land-dock{display:none}@media (max-width:899px){.land-nav__link--login{display:none}.land-nav{padding-inline:max(.75rem, env(safe-area-inset-left,0px)) max(.75rem, env(safe-area-inset-right,0px));gap:.5rem}.land-nav__brand{flex:auto;min-width:0}.land-nav__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.land-nav__actions{gap:.35rem}.land-nav-chrome .locale-switch__btn{min-width:2.5rem;padding-inline:.35rem}.land-nav__cta{padding-inline:.7rem;font-size:.85rem}.land-dock{z-index:45;padding:.65rem max(1rem, env(safe-area-inset-right,0px)) max(.65rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));background:linear-gradient(180deg, transparent, var(--paper) 28%, var(--paper-lift));display:block;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.land-dock{background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--paper) 92%, transparent) 28%, var(--paper-lift))}}.land-dock{transition:transform .28s var(--ease-out);pointer-events:none;transform:translateY(110%)}.land-dock--in{pointer-events:auto;transform:none}.land-dock__cta{width:100%;min-height:var(--touch);box-shadow:0 10px 28px var(--enamel)}@supports (color:color-mix(in lab, red, red)){.land-dock__cta{box-shadow:0 10px 28px color-mix(in srgb, var(--enamel) 18%, transparent)}}.land-footer{padding-bottom:calc(1.35rem + env(safe-area-inset-bottom,0px))}.land-close{padding-bottom:calc(clamp(3.25rem,8vw,5.75rem) + 4.5rem)}}@media (max-width:420px){.land-nav__name{display:none}.land-nav__brand{flex:none}}@media (min-width:900px){.land-hero{grid-template-columns:minmax(24rem,34rem) minmax(0,1fr)}.land-hero__media{grid-area:1/2;min-height:100dvh;position:relative}.land-hero__panel{max-width:none;padding-block:calc(var(--land-nav-h) + 2rem) 3rem;background:var(--enamel);grid-area:1/1;justify-content:center;margin-top:0;padding-inline:clamp(1.5rem,4vw,3.25rem)}.land-hero__img{object-position:center center}.land-problem__grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:2.5rem}.land-proof__grid{grid-template-columns:1fr minmax(18rem,22rem);gap:3rem}.land-caps__grid{grid-template-columns:repeat(3,1fr)}.land-flow__step{padding-block:1.75rem}}@media (min-width:1100px){.land-hero__actions{flex-flow:row;align-items:stretch;max-width:none}.land-hero__btn{flex:1 1 0;width:auto;min-width:0}}@media (prefers-reduced-motion:reduce){.land-hero__img,.land-hero__panel,.land-reveal,.land-dock{transition:none;animation:none}.land-hero__img,.land-mock__phone{transform:none}.land-reveal{opacity:1;transform:none}}.legal-screen{box-sizing:border-box;min-height:100dvh;padding:max(1.25rem, env(safe-area-inset-top,0px)) max(1.25rem, env(safe-area-inset-right,0px)) max(1.5rem, env(safe-area-inset-bottom,0px)) max(1.25rem, env(safe-area-inset-left,0px));background:radial-gradient(ellipse 80% 45% at 50% -8%, var(--cobalt), transparent 70%), linear-gradient(180deg, var(--frost) 0%, var(--paper) 100%);position:relative}@supports (color:color-mix(in lab, red, red)){.legal-screen{background:radial-gradient(ellipse 80% 45% at 50% -8%, color-mix(in srgb, var(--cobalt) 16%, transparent), transparent 70%), linear-gradient(180deg, var(--frost) 0%, var(--paper) 100%)}}.legal-screen__glow{background:radial-gradient(ellipse at center, var(--cobalt-soft), transparent 65%);height:35%;position:absolute;inset:auto -15% 10%}@supports (color:color-mix(in lab, red, red)){.legal-screen__glow{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--cobalt-soft) 10%, transparent), transparent 65%)}}.legal-screen__glow{pointer-events:none}.legal-doc{z-index:1;box-sizing:border-box;width:100%;max-width:40rem;margin-inline:auto;padding:.25rem 0 2rem;position:relative}.legal-doc__brand{margin:0 0 1.5rem}.legal-doc__brand-link{min-width:0;color:inherit;align-items:center;gap:.85rem;text-decoration:none;display:flex}.legal-doc__title{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.03em;color:var(--enamel);margin:0 0 .35rem;font-size:clamp(1.55rem,5vw,2rem);font-weight:700;line-height:1.15}.legal-doc__meta{color:var(--ink-muted);margin:0 0 1rem;font-size:.88rem}.legal-doc__intro,.legal-doc__p{color:var(--ink);margin:0 0 .85rem;font-size:.98rem;line-height:1.55}.legal-doc__section{margin:0 0 1.35rem}.legal-doc__heading{color:var(--enamel);margin:0 0 .55rem;font-size:1.05rem;font-weight:700}.legal-doc__list{color:var(--ink);margin:0 0 .85rem;padding-left:1.2rem;font-size:.98rem;line-height:1.55}.legal-doc__list li{margin-bottom:.4rem}.legal-doc__footer{border-top:1px solid var(--line);flex-wrap:wrap;gap:.85rem 1.25rem;margin-top:1.75rem;padding-top:1.25rem;font-size:.92rem;display:flex}.about{background:radial-gradient(ellipse 80% 40% at 50% -10%, var(--cobalt), transparent 70%), linear-gradient(180deg, #e8eef3 0%, var(--frost) 50%, #d2dce4 100%);flex-direction:column;min-height:100dvh;display:flex}@supports (color:color-mix(in lab, red, red)){.about{background:radial-gradient(ellipse 80% 40% at 50% -10%, color-mix(in srgb, var(--cobalt) 12%, transparent), transparent 70%), linear-gradient(180deg, #e8eef3 0%, var(--frost) 50%, #d2dce4 100%)}}.about{animation:page-enter .28s var(--ease-out)}.about-main{padding:calc(var(--header-height) + 1.75rem) max(1.15rem, env(safe-area-inset-right,0px)) 2.5rem max(1.15rem, env(safe-area-inset-left,0px));outline:none;flex:1}.about-doc{max-width:36rem;margin-inline:auto}.about-doc__kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--cobalt);margin:0 0 .55rem;font-size:.8rem;font-weight:650}.about-doc__brand{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.04em;color:var(--enamel);margin:0 0 .75rem;font-size:clamp(2rem,6.5vw,2.6rem);font-weight:700;line-height:1.05}.about-doc__lead{color:var(--ink);margin:0 0 2rem;font-size:1.12rem;line-height:1.5}.about-doc__section{margin:0 0 1.65rem}.about-doc__heading{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.02em;color:var(--enamel);margin:0 0 .55rem;font-size:1.15rem;font-weight:700}.about-doc__p{color:var(--ink-muted);margin:0;font-size:1rem;line-height:1.55}.about-doc__list{color:var(--ink-muted);margin:0;padding-left:1.15rem;font-size:1rem;line-height:1.55}.about-doc__list li{margin-bottom:.4rem}.about-doc__list li:last-child{margin-bottom:0}.about-doc__legal{border-top:1px solid var(--line);margin:2rem 0 0;padding-top:1.25rem;font-size:.92rem;line-height:1.5}.about-doc__legal a{color:var(--cobalt);font-weight:650;text-decoration:none}.about-doc__legal a:hover{color:var(--enamel);text-underline-offset:.15em;text-decoration:underline}@media (min-height:720px){.auth-screen{align-items:center}}@media (min-width:640px){.auth-panel{box-shadow:0 1px 2px var(--enamel), 0 16px 40px var(--enamel);padding:1.85rem 1.6rem 1.6rem}@supports (color:color-mix(in lab, red, red)){.auth-panel{box-shadow:0 1px 2px color-mix(in srgb, var(--enamel) 4%, transparent), 0 16px 40px color-mix(in srgb, var(--enamel) 9%, transparent)}}}.bottom-nav{z-index:40;width:100%;max-width:var(--shell-max);padding:.3rem .4rem calc(.35rem + env(safe-area-inset-bottom,0px));background:var(--paper-lift);margin-inline:auto;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.bottom-nav{background:color-mix(in srgb, var(--paper-lift) 94%, white)}}.bottom-nav{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);box-shadow:0 -1px 0 var(--enamel)}@supports (color:color-mix(in lab, red, red)){.bottom-nav{box-shadow:0 -1px 0 color-mix(in srgb, var(--enamel) 4%, transparent)}}.bottom-nav__list{grid-template-columns:repeat(3,1fr);gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.bottom-nav__link{border-radius:var(--radius-md);min-height:3.15rem;color:var(--ink-muted);letter-spacing:.01em;-webkit-tap-highlight-color:transparent;transition:color .18s var(--ease-out), background-color .18s var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.35rem .2rem;font-size:.74rem;font-weight:600;text-decoration:none;display:flex;position:relative}.bottom-nav__link:hover{color:var(--enamel);background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.bottom-nav__link:hover{background:color-mix(in srgb, var(--frost) 55%, transparent)}}.bottom-nav__link:active{background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.bottom-nav__link:active{background:color-mix(in srgb, var(--frost) 80%, transparent)}}.bottom-nav__icon-wrap{width:2.35rem;height:2.35rem;transition:background-color .18s var(--ease-out);border-radius:.65rem;justify-content:center;align-items:center;display:flex}.bottom-nav__icon{width:1.55rem;height:1.55rem;display:block}.bottom-nav__link--active{color:var(--enamel);background:0 0;font-weight:700}.bottom-nav__link--active .bottom-nav__icon-wrap{background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.bottom-nav__link--active .bottom-nav__icon-wrap{background:color-mix(in srgb, var(--cobalt) 14%, transparent)}}.bottom-nav__link--active .bottom-nav__icon-wrap{color:var(--enamel-mid)}.bottom-nav__label{text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;line-height:1.1;overflow:hidden}.side-nav{flex:1;min-height:0;padding:.5rem .75rem}.side-nav__list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.side-nav__link{min-height:var(--touch);border-radius:var(--radius-md);color:#ffffffb8;align-items:center;gap:.75rem;padding:.55rem .85rem;font-size:.95rem;font-weight:650;text-decoration:none;transition:background-color .18s,color .18s;display:flex}.side-nav__link:hover{color:#fff;background:#ffffff14}.side-nav__link--active{color:#fff;background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.side-nav__link--active{background:color-mix(in srgb, var(--cobalt) 55%, transparent)}}.side-nav__icon{flex-shrink:0;justify-content:center;align-items:center;width:1.65rem;height:1.65rem;display:flex}.side-nav__icon svg{width:1.45rem;height:1.45rem}.app-sidebar__footer{border-top:1px solid #ffffff1f;padding:.75rem}.app-sidebar__footer .btn{color:#ffffffc7;width:100%}.app-sidebar__footer .btn:hover:not(:disabled){color:#fff;background:#ffffff1a}@media (min-width:640px) and (max-width:899px){.auth-screen{min-height:calc(100dvh - .5rem)}}@media (min-width:900px){body{background-image:linear-gradient(135deg, #d1fae5 0%, var(--frost) 40%, #a7f3d0 100%)}.app-shell{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);flex-direction:row;align-items:stretch;max-width:72rem;height:calc(100dvh - 2rem);min-height:0;max-height:calc(100dvh - 2rem);margin-block:1rem;overflow:clip}.app-sidebar{width:var(--sidebar-width);background:var(--enamel);color:#fff;padding-top:max(1rem, env(safe-area-inset-top,0px));flex-direction:column;flex-shrink:0;display:flex}.app-sidebar__brand{padding:.35rem 1rem 1.15rem}.app-sidebar .app-brand{color:#f4f8fb;font-size:1.35rem}.app-sidebar .app-tagline{color:#ffffff9e}.app-frame{min-height:0;padding-bottom:0;overflow:hidden}.app-header,.bottom-nav{display:none}.app-main{min-height:0;overflow:auto}.screen{max-width:var(--content-max-wide);width:100%;margin-inline:auto;padding-inline:1.75rem}.screen--list .product-list,.screen--list .shelf-bins,.recipes,.shopping-add,.product-form{max-width:none}.auth-screen{min-height:calc(100dvh - .5rem)}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shopping-add{z-index:1;border-bottom:1px solid var(--line);background:0 0;flex-direction:column;gap:.85rem;margin:0 0 .5rem;padding:0 0 1.1rem;display:flex;position:relative}.shopping-add__title{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.02em;color:var(--ink);margin:0;font-size:1rem;font-weight:700}.shopping-add .btn{width:100%}.shopping-empty{padding-top:.5rem}.shopping-all-done{color:var(--ink-muted);margin:0 0 .5rem;font-size:.9rem}.shopping-list{z-index:1;position:relative}.shopping-list__rows{margin:0;padding:0;list-style:none}.shopping-row{border-bottom:1px solid var(--line);touch-action:pan-y;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.shopping-row--pending{opacity:.65}.shopping-row__rail{z-index:0;color:#fff;align-items:center;gap:.35rem;width:5.5rem;padding:0 .75rem;font-size:.78rem;font-weight:700;display:flex;position:absolute;inset:0 auto 0 0}.shopping-row__rail--left{background:var(--ok);justify-content:flex-start}.shopping-row__rail--right{background:var(--danger);justify-content:flex-end;inset:0 0 0 auto}.shopping-row__surface{z-index:1;background:var(--paper);cursor:pointer;min-height:3rem;transition:transform .12s var(--ease-out);will-change:transform;align-items:center;gap:.65rem;padding:.55rem .15rem .55rem .1rem;display:flex;position:relative}.shopping-row__surface:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}.shopping-row--checked .shopping-row__name{color:var(--ink-muted);text-decoration:line-through}.shopping-check{box-sizing:border-box;border:2px solid var(--enamel);flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.shopping-check{border:2px solid color-mix(in srgb, var(--enamel) 40%, var(--line))}}.shopping-check{color:#fff;pointer-events:none;background:#fff;border-radius:.35rem}.shopping-check svg{width:.95rem;height:.95rem}.shopping-check--on{border-color:var(--enamel);background:var(--enamel)}.shopping-row__body{flex-wrap:wrap;flex:1;align-items:baseline;gap:.2rem .55rem;min-width:0;display:flex}.shopping-row__name{color:var(--ink);word-break:break-word;font-size:1rem;font-weight:650;line-height:1.25}.shopping-row__meta{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.82rem;line-height:1.25;display:inline-flex}.shopping-source{letter-spacing:.03em;text-transform:uppercase;background:var(--cobalt);border-radius:.2rem;align-items:center;padding:.05rem .3rem;font-size:.65rem;font-weight:700;line-height:1.2;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.shopping-source{background:color-mix(in srgb, var(--cobalt) 12%, white)}}.shopping-source{color:var(--cobalt)}.shopping-checked{margin-top:1rem;padding-top:.15rem}.shopping-checked__head{justify-content:space-between;align-items:center;gap:.75rem;margin:0 0 .35rem;display:flex}.shopping-checked__title{color:var(--ink-muted);margin:0;font-size:.88rem;font-weight:700}.recipes{z-index:1;flex-direction:column;gap:1rem;padding:0 0 1.25rem;display:flex;position:relative}.recipes__intro{flex-direction:column;align-items:stretch;gap:.75rem;display:flex}.recipes__lead,.recipes__banner,.recipes__ok{margin:0}.recipes__ok{border-radius:var(--radius-md);background:var(--ok);padding:.75rem .9rem}@supports (color:color-mix(in lab, red, red)){.recipes__ok{background:color-mix(in srgb, var(--ok) 12%, white)}}.recipes__ok{color:var(--ok);font-size:.92rem;font-weight:600}.recipes__link{color:inherit;text-underline-offset:2px;text-decoration:underline}.recipe-list{border-top:1px solid var(--line);flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.recipe-card{border:none;border-bottom:1px solid var(--line);animation:page-enter .28s var(--ease-out);background:0 0;border-radius:0;overflow:hidden}.recipe-card__toggle{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:.35rem;margin:0;padding:1rem .15rem 1rem 0;display:flex}.recipe-card__toggle:hover{background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.recipe-card__toggle:hover{background:color-mix(in srgb, var(--frost) 45%, transparent)}}.recipe-card__title{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.02em;color:var(--ink);font-size:1.2rem;font-weight:700;line-height:1.25}.recipe-card__meta{color:var(--cobalt);font-size:.85rem;font-weight:650}.recipe-card__summary{color:var(--ink-muted);font-size:.9rem;line-height:1.4}.recipe-card__urgent{letter-spacing:.02em;color:var(--stamp-critical);margin-top:.15rem;font-size:.78rem;font-weight:700;display:inline-flex}.recipe-card__leftover{color:var(--cobalt);margin:.75rem 0 0;font-size:.9rem;font-weight:650;line-height:1.35}.recipe-card__body{border-top:1px dashed var(--line);animation:page-enter .22s var(--ease-out);padding:0 0 1.1rem}.recipe-card__section{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin:.9rem 0 .45rem;font-size:.75rem;font-weight:800}.recipe-ingredients,.recipe-steps{margin:0 0 .75rem;padding:0}.recipe-ingredients{flex-direction:column;gap:.35rem;list-style:none;display:flex}.recipe-ingredients__item{color:var(--ink);justify-content:space-between;gap:.75rem;font-size:.92rem;display:flex}.recipe-ingredients__item--miss{color:var(--stamp-critical);font-weight:600}.recipe-ingredients__qty{color:var(--ink-muted);flex-shrink:0;font-weight:500}.recipe-ingredients__item--miss .recipe-ingredients__qty{color:var(--stamp-critical)}.recipe-steps{color:var(--ink);flex-direction:column;gap:.45rem;padding-left:1.2rem;font-size:.92rem;line-height:1.45;display:flex}.recipe-card__body .btn{margin-top:.25rem}.add-modes{z-index:1;flex-direction:column;gap:.55rem;margin:0 0 .35rem;display:flex;position:relative}.add-modes--compact{border-bottom:1px solid var(--line);margin-bottom:.65rem;padding-bottom:.65rem}.add-modes__lead{color:var(--ink-muted);margin:0;font-size:.9rem;font-weight:650}.add-modes__manual{min-height:var(--touch);border-radius:var(--radius-md);background:var(--frost);justify-content:center;align-self:start;align-items:center;gap:.4rem;padding:.45rem .95rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.add-modes__manual{background:color-mix(in srgb, var(--frost) 70%, white)}}.add-modes__manual{border:1.5px solid var(--line);color:var(--enamel);font:inherit;font-size:.92rem;font-weight:700;text-decoration:none;transition:border-color .18s,background-color .18s}.add-modes__manual svg{width:1.15rem;height:1.15rem}.add-modes__manual:hover{border-color:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.add-modes__manual:hover{border-color:color-mix(in srgb, var(--cobalt) 40%, var(--line))}}.add-modes__manual:hover{background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.add-modes__manual:hover{background:color-mix(in srgb, var(--cobalt) 8%, white)}}.skel{border-radius:var(--radius-sm);background:var(--frost);display:block}@supports (color:color-mix(in lab, red, red)){.skel{background:color-mix(in srgb, var(--frost) 70%, var(--line))}}.skel{animation:.8s ease-in-out infinite alternate page-enter}.skel--title{width:10rem;height:1.6rem}.skel--btn{width:5.5rem;height:var(--touch)}.skel--line{height:1rem}.skel--line-sm{opacity:.75;height:.75rem}.skel-list .product-row{pointer-events:none}.cook-segments{border-radius:var(--radius-lg);background:var(--frost);grid-template-columns:repeat(3,1fr);gap:.4rem;padding:.2rem;display:grid}@supports (color:color-mix(in lab, red, red)){.cook-segments{background:color-mix(in srgb, var(--frost) 70%, white)}}.cook-segments{border:1px solid var(--line)}.cook-segments__tab{border-radius:var(--radius-md);min-height:2.75rem;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;padding:.45rem .35rem;font-family:inherit;font-size:.8rem;font-weight:650;transition:background-color .18s,color .18s;display:flex;position:relative}.cook-segments__tab:hover:not(:disabled){color:var(--enamel)}.cook-segments__tab--active{background:var(--paper);color:var(--enamel);box-shadow:var(--shadow-sm)}.cook-segments__tab:disabled{cursor:not-allowed;opacity:.72}.cook-segments__soon{color:var(--accent);letter-spacing:.02em;text-transform:uppercase;font-size:.65rem;font-weight:600}.store-smart{gap:.5rem;margin-top:.65rem;margin-bottom:.25rem;display:grid}@keyframes store-variety-in{0%{opacity:0;transform:translateY(.35rem)}to{opacity:1;transform:translateY(0)}}@keyframes store-variety-out{to{opacity:0;transform:translateY(-.4rem)scale(.98)}}@keyframes store-variety-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.store-variety{border-radius:var(--radius-md);border:1px solid var(--cobalt);gap:0;padding:.55rem .7rem;display:grid}@supports (color:color-mix(in lab, red, red)){.store-variety{border:1px solid color-mix(in srgb, var(--cobalt) 18%, transparent)}}.store-variety{background:linear-gradient(145deg, var(--frost) 0%, var(--accent) 100%)}@supports (color:color-mix(in lab, red, red)){.store-variety{background:linear-gradient(145deg, color-mix(in srgb, var(--frost) 55%, white) 0%, color-mix(in srgb, var(--accent) 8%, white) 100%)}}.store-variety{transition:border-color .2s var(--ease-out)}.store-variety--open{border-color:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.store-variety--open{border-color:color-mix(in srgb, var(--cobalt) 28%, transparent)}}.store-variety__intro{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;display:grid}.store-variety__title{letter-spacing:-.01em;min-width:0;color:var(--ink);-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;font-family:inherit;font-size:.9rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.store-variety__cta{min-height:var(--touch);border-radius:var(--radius-md);background:linear-gradient(160deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff;letter-spacing:-.01em;text-align:center;cursor:pointer;min-width:5rem;max-width:100%;box-shadow:0 1px 4px var(--accent);border:0;flex-shrink:0;justify-content:center;align-items:center;padding:.4rem .85rem;font-family:inherit;font-size:.9rem;font-weight:700;line-height:1.15;text-decoration:none;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.store-variety__cta{box-shadow:0 1px 4px color-mix(in srgb, var(--accent) 28%, transparent)}}.store-variety__cta{transition:transform .16s var(--ease-out), opacity .16s var(--ease-out), background .16s var(--ease-out);-webkit-tap-highlight-color:transparent}.store-variety__cta:hover:not(:disabled){background:linear-gradient(160deg, #e8900a 0%, var(--accent) 100%);transform:translateY(-1px)}.store-variety__cta:active:not(:disabled){transform:scale(.98)}.store-variety__cta:focus-visible{box-shadow:var(--focus-ring);outline:none}.store-variety__cta:disabled{opacity:.65;cursor:wait}.store-variety__cta--ghost{color:var(--enamel);border:1.5px solid var(--enamel);background:#ffffffb3}@supports (color:color-mix(in lab, red, red)){.store-variety__cta--ghost{border:1.5px solid color-mix(in srgb, var(--enamel) 16%, transparent)}}.store-variety__cta--ghost{box-shadow:none}.store-variety__cta--ghost:hover:not(:disabled){background:#fff;transform:none}.store-variety__panel{border-top:1px solid var(--cobalt);gap:.55rem;margin-top:.55rem;padding-top:.55rem;display:grid}@supports (color:color-mix(in lab, red, red)){.store-variety__panel{border-top:1px solid color-mix(in srgb, var(--cobalt) 14%, transparent)}}.store-variety__status{color:var(--ink-muted);margin:0;font-family:inherit;font-size:.9rem;line-height:1.4}.store-variety__status--aside{margin-top:.4rem;font-size:.82rem;line-height:1.35}.store-variety__status--live{color:var(--enamel-mid);font-weight:600}.store-variety__banner{margin:0}.store-variety__retry{min-height:var(--touch);color:var(--cobalt);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;padding:.25rem .15rem;font-weight:700;text-decoration:underline;display:inline-flex}.store-variety__retry:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}.store-variety__retry:disabled{opacity:.6;cursor:not-allowed}.store-variety__skeleton{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.store-variety__skeleton li{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--frost) 0%, var(--cobalt) 45%, var(--frost) 100%);height:3.35rem}@supports (color:color-mix(in lab, red, red)){.store-variety__skeleton li{background:linear-gradient(90deg, color-mix(in srgb, var(--frost) 80%, white) 0%, color-mix(in srgb, var(--cobalt) 10%, white) 45%, color-mix(in srgb, var(--frost) 80%, white) 100%)}}.store-variety__skeleton li{animation:store-variety-shimmer 1.1s var(--ease-out) infinite;background-size:200% 100%}.store-variety__list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.store-variety__item{border-radius:var(--radius-md);border:1px solid var(--enamel);background:#ffffffd1;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;padding:.65rem .7rem;display:grid}@supports (color:color-mix(in lab, red, red)){.store-variety__item{border:1px solid color-mix(in srgb, var(--enamel) 8%, transparent)}}.store-variety__item{transform-origin:top}@media (prefers-reduced-motion:no-preference){.store-variety__panel{animation:store-variety-in .22s var(--ease-out) both}.store-variety__item{animation:store-variety-in .22s var(--ease-out) both;animation-delay:calc(var(--store-variety-i,0) * 35ms)}.store-variety__item--out{pointer-events:none;animation:store-variety-out .22s var(--ease-out) forwards;animation-delay:0s}}.store-variety__item-main{gap:.2rem;min-width:0;padding-top:.15rem;display:grid}.store-variety__buy{color:var(--ink);word-break:break-word;margin:0;font-family:inherit;font-size:1rem;font-weight:650;line-height:1.25}.store-variety__why{color:var(--ink-muted);margin:0;font-size:.82rem;line-height:1.3}.store-variety__unlocks{color:var(--enamel-mid);margin:0;font-size:.78rem;font-weight:600;line-height:1.3}.store-variety__add{min-height:var(--touch);border:1.5px solid var(--cobalt);justify-content:center;align-self:center;align-items:center;gap:.3rem;min-width:5.5rem;padding:.4rem .75rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.store-variety__add{border:1.5px solid color-mix(in srgb, var(--cobalt) 28%, transparent)}}.store-variety__add{border-radius:var(--radius-md);color:var(--enamel);letter-spacing:-.01em;white-space:nowrap;cursor:pointer;transition:background-color .16s var(--ease-out), border-color .16s var(--ease-out), color .16s var(--ease-out);-webkit-tap-highlight-color:transparent;background:#fff;font-family:inherit;font-size:.9rem;font-weight:700;line-height:1.15}.store-variety__add svg{flex-shrink:0;width:1.05rem;height:1.05rem}.store-variety__add:hover:not(:disabled){background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.store-variety__add:hover:not(:disabled){background:color-mix(in srgb, var(--frost) 80%, white)}}.store-variety__add:hover:not(:disabled){border-color:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.store-variety__add:hover:not(:disabled){border-color:color-mix(in srgb, var(--cobalt) 45%, transparent)}}.store-variety__add:active:not(:disabled){transform:scale(.98)}.store-variety__add:focus-visible{box-shadow:var(--focus-ring);outline:none}.store-variety__add:disabled{cursor:default;opacity:.7}.store-variety__cleared{justify-items:start;gap:.25rem;display:grid}.store-variety__refresh{min-height:var(--touch);color:var(--cobalt);letter-spacing:-.01em;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;padding:.35rem .1rem;font-family:inherit;font-size:.9rem;font-weight:700;line-height:1.15;display:inline-flex}.store-variety__refresh:hover:not(:disabled){text-decoration:underline}.store-variety__refresh:disabled{opacity:.65;cursor:wait}@media (max-width:340px){.store-variety{padding:.5rem .55rem}.store-variety__intro{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:.45rem}.store-variety__cta{width:100%;min-width:0}.store-variety__item{grid-template-columns:minmax(0,1fr);gap:.5rem;padding:.6rem .65rem}.store-variety__item-main{padding-top:0}.store-variety__add{align-self:stretch;width:100%;min-width:0}}@media (min-width:341px) and (max-width:480px){.store-variety__item{grid-template-columns:minmax(0,1fr);gap:.5rem;padding:.6rem .65rem}.store-variety__item-main{padding-top:0}.store-variety__add{align-self:stretch;width:100%;min-width:0}}@media (min-width:341px){.store-variety__title{-webkit-line-clamp:unset;line-clamp:unset;white-space:nowrap;text-overflow:ellipsis;display:block}}.voice-action{min-height:var(--touch);min-width:var(--touch);border-radius:var(--radius-md);background:linear-gradient(160deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff;max-width:100%;font:inherit;letter-spacing:-.01em;text-align:center;box-shadow:0 2px 8px var(--accent);border:none;flex-shrink:0;justify-content:center;align-items:center;gap:.4rem;padding:.45rem .85rem .45rem .7rem;font-size:.9rem;font-weight:700;line-height:1.15;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.voice-action{box-shadow:0 2px 8px color-mix(in srgb, var(--accent) 28%, transparent)}}.voice-action{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform .18s var(--ease-out), box-shadow .18s ease, opacity .15s ease}.voice-action svg{flex-shrink:0;width:1.2rem;height:1.2rem}.voice-action__label{min-width:0}.voice-action:hover{box-shadow:0 4px 12px var(--accent)}@supports (color:color-mix(in lab, red, red)){.voice-action:hover{box-shadow:0 4px 12px color-mix(in srgb, var(--accent) 36%, transparent)}}.voice-action:active{opacity:.92}.voice-action:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (max-width:420px){.screen__actions-row .voice-action,.screen__actions-row .screen__action-secondary{padding-inline:.65rem;font-size:.88rem}}.voice-chat{z-index:60;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.voice-chat__backdrop{background:var(--enamel);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.voice-chat__backdrop{background:color-mix(in srgb, var(--enamel) 45%, transparent)}}.voice-chat__panel{z-index:1;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--paper);width:min(100%,32rem);max-height:min(92dvh,44rem);box-shadow:0 -8px 40px var(--enamel);flex-direction:column;gap:.75rem;margin:0;padding:1rem 1.1rem 0;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.voice-chat__panel{box-shadow:0 -8px 40px color-mix(in srgb, var(--enamel) 20%, transparent)}}.voice-chat__panel{animation:voice-sheet-in .22s var(--ease-out);overflow:hidden}.voice-chat__panel--compact{max-height:none;padding:.9rem 1.1rem calc(.9rem + env(safe-area-inset-bottom,0px));gap:.55rem}@media (min-width:640px){.voice-chat{align-items:center;padding:1.5rem}.voice-chat__panel{border-radius:var(--radius-lg);max-height:min(88dvh,42rem)}.voice-chat__panel--compact{max-height:none}}@keyframes voice-sheet-in{0%{opacity:.6;transform:translateY(.75rem)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.voice-chat__panel{animation:none}}.voice-chat__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.voice-chat__title{font-family:var(--font-display), system-ui, sans-serif;color:var(--ink);margin:0;font-size:1.25rem;font-weight:700}.voice-chat__close{flex-shrink:0;min-height:2.5rem}.voice-chat__hint{color:var(--ink-muted);flex-shrink:0;margin:0;font-size:.92rem;line-height:1.45}.voice-chat__body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;min-height:0;padding-bottom:.15rem;display:flex;overflow-y:auto}.voice-chat__draft{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--frost);flex:none;padding:.35rem .55rem}@supports (color:color-mix(in lab, red, red)){.voice-chat__draft{background:color-mix(in srgb, var(--frost) 55%, white)}}.voice-chat__draft-empty{color:var(--ink-muted);margin:.5rem 0;font-size:.9rem}.voice-chat__draft-list{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.voice-draft-row{border-bottom:1px solid var(--line);flex-direction:column;gap:.45rem;padding:.35rem .15rem;display:flex}.voice-draft-row:last-child{border-bottom:none}.voice-draft-row--editing{padding-bottom:.55rem}.voice-draft-row__line{align-items:center;gap:.45rem;min-height:2.35rem;display:flex}.voice-draft-row__badge{border-radius:var(--radius-sm);letter-spacing:.02em;text-transform:uppercase;flex-shrink:0;padding:.12rem .4rem;font-size:.65rem;font-weight:700}.voice-draft-row__badge--add{background:var(--ok)}@supports (color:color-mix(in lab, red, red)){.voice-draft-row__badge--add{background:color-mix(in srgb, var(--ok) 18%, white)}}.voice-draft-row__badge--add{color:var(--ok)}.voice-draft-row__badge--update{background:var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.voice-draft-row__badge--update{background:color-mix(in srgb, var(--cobalt) 16%, white)}}.voice-draft-row__badge--update{color:var(--enamel)}.voice-draft-row__badge--remove{background:var(--stamp-expired)}@supports (color:color-mix(in lab, red, red)){.voice-draft-row__badge--remove{background:color-mix(in srgb, var(--stamp-expired) 14%, white)}}.voice-draft-row__badge--remove{color:var(--stamp-expired)}.voice-draft-row__text{flex-wrap:wrap;flex:auto;align-items:baseline;gap:.25rem .55rem;min-width:0;display:flex}.voice-draft-row__label{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.95rem;font-weight:650;overflow:hidden}.voice-draft-row__meta{color:var(--ink-muted);white-space:nowrap;font-size:.8rem;font-weight:550}.voice-draft-row__missing{color:var(--accent-hover);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin:0;font-size:.75rem;font-weight:600;overflow:hidden}.voice-draft-row__edit{border-radius:var(--radius-sm);width:2.35rem;height:2.35rem;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.voice-draft-row__edit:hover:not(:disabled){background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.voice-draft-row__edit:hover:not(:disabled){background:color-mix(in srgb, var(--frost) 70%, white)}}.voice-draft-row__edit:hover:not(:disabled){color:var(--enamel)}.voice-draft-row__edit:disabled{opacity:.45;cursor:not-allowed}.voice-draft-row--editing .voice-draft-row__edit{color:var(--enamel);background:var(--frost)}@supports (color:color-mix(in lab, red, red)){.voice-draft-row--editing .voice-draft-row__edit{background:color-mix(in srgb, var(--frost) 70%, white)}}.voice-draft-row__fields{grid-template-columns:1fr 1fr;gap:.45rem;padding:.15rem 0 .1rem;display:grid}.voice-draft-field{color:var(--ink-muted);flex-direction:column;gap:.2rem;font-size:.75rem;font-weight:650;display:flex}.voice-draft-field input,.voice-draft-field select{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:2.4rem;font:inherit;color:var(--ink);background:#fff;padding:.35rem .5rem}.voice-draft-field:last-child{grid-column:1/-1}.voice-chat__status{background:linear-gradient(to bottom, var(--paper) 0%, var(--paper) 28%, var(--paper) 100%);flex-direction:column;flex-shrink:0;gap:.4rem;padding:.55rem 0 .35rem;display:flex}@supports (color:color-mix(in lab, red, red)){.voice-chat__status{background:linear-gradient(to bottom, color-mix(in srgb, var(--paper) 0%, transparent) 0%, var(--paper) 28%, var(--paper) 100%)}}.voice-chat__reply{border-radius:var(--radius-md);background:var(--cobalt);flex-direction:column;gap:.35rem;margin:0;padding:.85rem .95rem;display:flex}@supports (color:color-mix(in lab, red, red)){.voice-chat__reply{background:color-mix(in srgb, var(--cobalt) 10%, white)}}.voice-chat__reply{border:1px solid var(--cobalt)}@supports (color:color-mix(in lab, red, red)){.voice-chat__reply{border:1px solid color-mix(in srgb, var(--cobalt) 22%, transparent)}}.voice-chat__reply{color:var(--ink)}.voice-chat__reply--ask{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.voice-chat__reply--ask{background:color-mix(in srgb, var(--accent) 12%, white)}}.voice-chat__reply--ask{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.voice-chat__reply--ask{border-color:color-mix(in srgb, var(--accent) 45%, transparent)}}.voice-chat__reply--ask{box-shadow:0 0 0 1px var(--accent)}@supports (color:color-mix(in lab, red, red)){.voice-chat__reply--ask{box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent)}}.voice-chat__reply-label{letter-spacing:.04em;text-transform:uppercase;color:var(--accent-hover);font-size:.72rem;font-weight:750}.voice-chat__reply-text{color:var(--ink);margin:0;font-size:1rem;font-weight:600;line-height:1.4}.voice-chat__error{border-radius:var(--radius-md);color:var(--stamp-expired);background:var(--stamp-expired);margin:0;padding:.55rem .7rem;font-size:.9rem;font-weight:600}@supports (color:color-mix(in lab, red, red)){.voice-chat__error{background:color-mix(in srgb, var(--stamp-expired) 8%, white)}}.voice-chat__ok{border-radius:var(--radius-md);color:var(--ok);background:var(--ok);margin:0;padding:.55rem .7rem;font-size:.92rem;font-weight:600}@supports (color:color-mix(in lab, red, red)){.voice-chat__ok{background:color-mix(in srgb, var(--ok) 10%, white)}}.voice-chat__link{color:var(--cobalt);font-weight:700}.voice-chat__controls{padding:.65rem 0 calc(1rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--paper);flex-direction:column;flex-shrink:0;gap:.5rem;margin-top:0;display:flex}.voice-chat__controls--solo{border-top:none;padding-top:.25rem;padding-bottom:0}.voice-chat__panel--compact .voice-chat__controls--solo{padding-bottom:0}.voice-rec{flex-direction:column;gap:.45rem;padding:.15rem 0 .1rem;display:flex}.voice-rec__bars{justify-content:center;align-items:flex-end;gap:.28rem;height:1.35rem;display:flex}.voice-rec__bars span{background:var(--accent);transform-origin:bottom;border-radius:999px;width:.28rem;animation:.9s ease-in-out infinite voice-rec-bar;display:block}.voice-rec__bars span:first-child{height:.45rem;animation-delay:0s}.voice-rec__bars span:nth-child(2){height:.85rem;animation-delay:.12s}.voice-rec__bars span:nth-child(3){height:1.2rem;animation-delay:.24s}.voice-rec__bars span:nth-child(4){height:.7rem;animation-delay:.36s}.voice-rec__bars span:nth-child(5){height:.95rem;animation-delay:.48s}.voice-rec--urgent .voice-rec__bars span{background:var(--accent-hover);animation-duration:.55s}.voice-rec__track{background:var(--line);border-radius:999px;height:.28rem;position:relative}@supports (color:color-mix(in lab, red, red)){.voice-rec__track{background:color-mix(in srgb, var(--line) 70%, white)}}.voice-rec__track{overflow:hidden}.voice-rec__fill{transform-origin:0;border-radius:inherit;background:linear-gradient(90deg, var(--enamel) 0%, var(--accent) 70%, var(--accent-hover) 100%);width:100%;height:100%;transition:transform .85s linear;display:block;transform:scaleX(0)}.voice-rec--urgent .voice-rec__fill{background:linear-gradient(90deg, var(--accent) 0%, var(--accent-hover) 55%, var(--stamp-expired) 100%)}@keyframes voice-rec-bar{0%,to{opacity:.55;transform:scaleY(.45)}50%{opacity:1;transform:scaleY(1)}}.voice-mic{border-radius:var(--radius-md);background:var(--enamel);color:#fff;width:100%;min-height:3.15rem;font:inherit;cursor:pointer;transition:background .18s ease, transform .15s var(--ease-out);border:none;justify-content:center;align-items:center;gap:.55rem;font-weight:650;display:inline-flex;position:relative;overflow:hidden}.voice-mic:active:not(:disabled){transform:scale(.98)}.voice-mic:disabled{opacity:.7;cursor:not-allowed}.voice-mic--on{background:linear-gradient(160deg, var(--accent) 0%, var(--accent-hover) 100%)}.voice-mic--urgent{background:linear-gradient(160deg, var(--accent-hover) 0%, var(--stamp-expired) 100%)}@supports (color:color-mix(in lab, red, red)){.voice-mic--urgent{background:linear-gradient(160deg, var(--accent-hover) 0%, color-mix(in srgb, var(--stamp-expired) 70%, var(--accent-hover)) 100%)}}.voice-mic--busy{background:var(--enamel)}@supports (color:color-mix(in lab, red, red)){.voice-mic--busy{background:color-mix(in srgb, var(--enamel) 75%, var(--ink-muted))}}.voice-mic--follow{background:linear-gradient(160deg, var(--accent) 0%, var(--accent-hover) 100%)}.voice-mic__rec-dot{background:#fff;border-radius:50%;width:.55rem;height:.55rem;animation:1.1s ease-out infinite voice-rec-dot;box-shadow:0 0 #ffffff8c}@keyframes voice-rec-dot{0%{opacity:1;box-shadow:0 0 #ffffff8c}70%{opacity:.85;box-shadow:0 0 0 .55rem #0000}to{opacity:1;box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.voice-rec__bars span,.voice-mic__rec-dot{animation:none}.voice-rec__bars span{opacity:.85;transform:none}.voice-rec__fill{transition:none}}.voice-chat__warn{color:var(--accent-hover);margin:0;font-size:.82rem;font-weight:600}.screen--cook .recipes__intro{border-radius:var(--radius-lg);background:radial-gradient(ellipse 80% 120% at 100% 0%, var(--accent), transparent 60%), linear-gradient(160deg, var(--paper) 0%, var(--paper-lift) 100%);flex-direction:column;gap:1rem;padding:1.15rem 1.1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.screen--cook .recipes__intro{background:radial-gradient(ellipse 80% 120% at 100% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 60%), linear-gradient(160deg, var(--paper) 0%, var(--paper-lift) 100%)}}.screen--cook .recipes__intro{border:1px solid var(--line);box-shadow:var(--shadow-sm)}.screen--cook .recipes__intro .btn--primary{min-height:3.15rem;font-size:1.05rem}.dish-picker{z-index:60;overscroll-behavior:none;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.dish-picker__backdrop{background:var(--enamel);border:none;margin:0;padding:0;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.dish-picker__backdrop{background:color-mix(in srgb, var(--enamel) 45%, transparent)}}.dish-picker__backdrop{cursor:pointer}.dish-picker__panel{z-index:1;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--paper);width:min(100%,26rem);max-height:min(90svh,36rem);box-shadow:0 -8px 40px var(--enamel);flex-direction:column;gap:.75rem;margin:0;padding:1rem 1.1rem 0;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.dish-picker__panel{box-shadow:0 -8px 40px color-mix(in srgb, var(--enamel) 20%, transparent)}}.dish-picker__panel{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;animation:voice-sheet-in .22s var(--ease-out);overflow:hidden auto}.dish-picker__header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.dish-picker__title{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.02em;color:var(--ink);margin:0;font-size:1.25rem;font-weight:700;line-height:1.25}.dish-picker__close{flex-shrink:0;min-height:2.25rem;padding-inline:.65rem}.dish-picker__hint{color:var(--ink-muted);flex-shrink:0;margin:0;font-size:.92rem;line-height:1.4}.dish-picker__portions{flex-direction:column;flex-shrink:0;gap:.45rem;display:flex}.dish-picker__portions-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin:0;font-size:.75rem;font-weight:800}.dish-picker__portions-fast{grid-template-columns:repeat(3,1fr);gap:.45rem;display:grid}.dish-picker__portions-choice{border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--paper-lift);cursor:pointer;min-height:2.75rem;color:var(--ink);transition:border-color .15s var(--ease-out), background .15s var(--ease-out);justify-content:center;align-items:center;gap:.4rem;padding:.55rem .5rem;font-size:1rem;font-weight:650;display:flex}.dish-picker__portions-choice:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dish-picker__portions-choice:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}}.dish-picker__portions-choice--checked{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dish-picker__portions-choice--checked{background:color-mix(in srgb, var(--accent) 10%, var(--paper))}}.dish-picker__portions-choice input{width:1.1rem;height:1.1rem;accent-color:var(--enamel);flex-shrink:0}.dish-picker__portions-more{min-height:2.25rem;color:var(--cobalt);font:inherit;cursor:pointer;text-underline-offset:.18em;background:0 0;border:none;align-self:flex-start;padding:.35rem .15rem;font-size:.92rem;font-weight:650;text-decoration:underline}.dish-picker__portions-more:hover{color:var(--enamel)}.dish-picker__portions-input{border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--paper-lift);width:100%;min-height:2.75rem;color:var(--ink);font:inherit;padding:.55rem .85rem;font-size:1rem;font-weight:650}.dish-picker__portions-input:focus{outline:2px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.dish-picker__portions-input:focus{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent)}}.dish-picker__portions-input:focus{outline-offset:1px}.dish-picker__list{flex-direction:column;flex:none;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.dish-picker__option{border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--paper-lift);cursor:pointer;color:var(--ink);transition:border-color .15s var(--ease-out), background .15s var(--ease-out);align-items:center;gap:.7rem;padding:.85rem .95rem;font-size:1rem;font-weight:650;display:flex}.dish-picker__option:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dish-picker__option:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}}.dish-picker__option--checked{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dish-picker__option--checked{background:color-mix(in srgb, var(--accent) 10%, var(--paper))}}.dish-picker__option input{width:1.1rem;height:1.1rem;accent-color:var(--enamel);flex-shrink:0}.dish-picker__actions{z-index:1;padding:.65rem 1.1rem calc(.9rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--paper);flex-direction:column;flex-shrink:0;gap:.5rem;margin-inline:-1.1rem;display:flex;position:sticky;bottom:0}.dish-picker__actions .btn--primary{min-height:3rem}@media (min-width:640px){.dish-picker{align-items:center;padding:1.5rem}.dish-picker__panel{border-radius:var(--radius-lg);max-height:min(88svh,36rem);box-shadow:var(--shadow-md,0 12px 40px var(--enamel))}@supports (color:color-mix(in lab, red, red)){.dish-picker__panel{box-shadow:var(--shadow-md,0 12px 40px color-mix(in srgb, var(--enamel) 18%, transparent))}}.dish-picker__actions{border-top:none;margin-inline:0;padding:.25rem 0 1rem;position:static}}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
