/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-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-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-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-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--text-xs:12px;--text-xs--line-height:calc(1 / .75);--text-sm:14px;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:8px;--radius-2xl:16px;--shadow-xs:0 1px 2px #1118270a;--shadow-sm:0 2px 4px #1118270d;--shadow-md:0 4px 12px #1118270f;--shadow-lg:0 8px 24px #11182714;--ease-out:cubic-bezier(.2, .8, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--color-canvas:#fafafa;--color-surface:#fff;--color-surface-raised:#f1f1f1;--color-surface-sunken:#f5f5f5;--color-border:#1118270f;--color-border-strong:#1118271a;--color-border-focus:#1118272e;--color-ink:#111827;--color-ink-soft:#4b5563;--color-ink-muted:#7b8794;--color-ink-faint:#9ca3af;--color-accent:#2563eb;--color-accent-hover:#1d4ed8;--color-accent-soft:#eff6ff;--color-accent-strong:#1e40af;--color-on-accent:#fff;--color-warn:#dc2626;--color-warn-soft:#fef2f2;--color-good:#16a34a;--color-good-soft:#f0fdf4;--color-calendar:#2563eb;--color-calendar-soft:#eff6ff;--color-meals:#f59e0b;--color-meals-soft:#fffbeb;--color-tasks:#2563eb;--color-tasks-soft:#eff6ff;--color-shopping:#14b8a6;--color-shopping-soft:#f0fdfa;--color-chat:#8b5cf6;--color-chat-soft:#f5f3ff;--color-finance:#10b981;--color-finance-soft:#ecfdf5;--color-family:#2563eb;--color-family-soft:#eff6ff;--text-body:15px;--text-body-lg:16px;--text-section:18px;--text-page:24px;--text-display:32px;--text-display-lg:40px;--radius-section:20px;--radius-pill:9999px;--radius-tag:20px;--radius-control:6px;--radius-card:20px;--shadow-floating:0 12px 32px #1118271a;--motion-fast:.14s;--motion-normal:.2s;--motion-base:.28s;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{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,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-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{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}::-webkit-file-upload-button{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:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option{padding-inline-start:20px}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::-webkit-file-upload-button{margin-inline-end:4px}::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-start:0;padding-block-end:0}::-webkit-datetime-edit-year-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-month-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-day-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-hour-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-minute-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-second-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-millisecond-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-meridiem-field{padding-block-start:0;padding-block-end:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{top:0;bottom:0;left:0;right:0}.top-0\.5{top:calc(var(--spacing) * .5)}.right-0\.5{right:calc(var(--spacing) * .5)}.right-5{right:calc(var(--spacing) * 5)}.bottom-24{bottom:calc(var(--spacing) * 24)}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-5{margin-inline:calc(var(--spacing) * 5)}.mx-auto{margin-inline-start:auto;margin-inline-end:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.-mt-0\.5{margin-top:calc(var(--spacing) * -.5)}.-mt-1{margin-top:calc(var(--spacing) * -1)}.-mt-2{margin-top:calc(var(--spacing) * -2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.-mr-1{margin-right:calc(var(--spacing) * -1)}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-20{height:calc(var(--spacing) * 20)}.h-\[18px\]{height:18px}.h-\[52px\]{height:52px}.h-full{height:100%}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-\[18px\]{max-height:18px}.max-h-\[85vh\]{max-height:85vh}.min-h-24{min-height:calc(var(--spacing) * 24)}.min-h-40{min-height:calc(var(--spacing) * 40)}.min-h-\[28px\]{min-height:28px}.min-h-\[36px\]{min-height:36px}.min-h-\[44px\]{min-height:44px}.min-h-\[48px\]{min-height:48px}.min-h-\[52px\]{min-height:52px}.min-h-\[170px\]{min-height:170px}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-20{width:calc(var(--spacing) * 20)}.w-\[18px\]{width:18px}.w-\[52px\]{width:52px}.w-full{width:100%}.max-w-\[26ch\]{max-width:26ch}.max-w-\[78\%\]{max-width:78%}.max-w-\[92px\]{max-width:92px}.min-w-0{min-width:0}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-1) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-2) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-3) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-4) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-5) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-6) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-6) * calc(1 - var(--tw-space-y-reverse)))}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-y{border-block-style:var(--tw-border-style);border-block-start-width:1px;border-block-end-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[var\(--color-accent\)\]{border-color:var(--color-accent)}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.border-\[var\(--color-border\)\]\/60{border-color:#11182709}@supports (color:color-mix(in lab, red, red)){.border-\[var\(--color-border\)\]\/60{border-color:color-mix(in oklab, var(--color-border) 60%, transparent)}}.border-\[var\(--color-border-focus\)\]{border-color:var(--color-border-focus)}.border-\[var\(--color-border-strong\)\]{border-color:var(--color-border-strong)}.border-\[var\(--color-calendar\)\]{border-color:var(--color-calendar)}.border-\[var\(--color-chat\)\]{border-color:var(--color-chat)}.border-\[var\(--color-family\)\]{border-color:var(--color-family)}.border-\[var\(--color-finance\)\]{border-color:var(--color-finance)}.border-\[var\(--color-good\)\]{border-color:var(--color-good)}.border-\[var\(--color-meals\)\]{border-color:var(--color-meals)}.border-\[var\(--color-shopping\)\]{border-color:var(--color-shopping)}.border-\[var\(--color-tasks\)\]{border-color:var(--color-tasks)}.border-\[var\(--color-warn\)\]{border-color:var(--color-warn)}.border-\[var\(--color-warn\)\]\/30{border-color:#dc26264d}@supports (color:color-mix(in lab, red, red)){.border-\[var\(--color-warn\)\]\/30{border-color:color-mix(in oklab, var(--color-warn) 30%, transparent)}}.border-black\/5{border-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.border-black\/5{border-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.border-chat{border-color:var(--color-chat)}.border-finance{border-color:var(--color-finance)}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.border-white\/10{border-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.bg-\[color-mix\(in_srgb\,var\(--color-surface\)_95\%\,transparent\)\]{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--color-surface\)_95\%\,transparent\)\]{background-color:color-mix(in srgb,var(--color-surface) 95%,transparent)}}.bg-\[var\(--color-accent\)\]{background-color:var(--color-accent)}.bg-\[var\(--color-accent-soft\)\]{background-color:var(--color-accent-soft)}.bg-\[var\(--color-border-strong\)\]{background-color:var(--color-border-strong)}.bg-\[var\(--color-calendar-soft\)\]{background-color:var(--color-calendar-soft)}.bg-\[var\(--color-canvas\)\]{background-color:var(--color-canvas)}.bg-\[var\(--color-chat-soft\)\]{background-color:var(--color-chat-soft)}.bg-\[var\(--color-family-soft\)\]{background-color:var(--color-family-soft)}.bg-\[var\(--color-field\)\]{background-color:var(--color-field)}.bg-\[var\(--color-finance-soft\)\]{background-color:var(--color-finance-soft)}.bg-\[var\(--color-good-soft\)\]{background-color:var(--color-good-soft)}.bg-\[var\(--color-meals-soft\)\]{background-color:var(--color-meals-soft)}.bg-\[var\(--color-shopping-soft\)\]{background-color:var(--color-shopping-soft)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.bg-\[var\(--color-surface-raised\)\]{background-color:var(--color-surface-raised)}.bg-\[var\(--color-surface-sunken\)\]{background-color:var(--color-surface-sunken)}.bg-\[var\(--color-tasks-soft\)\]{background-color:var(--color-tasks-soft)}.bg-\[var\(--color-warn\)\]{background-color:var(--color-warn)}.bg-\[var\(--color-warn-soft\)\]{background-color:var(--color-warn-soft)}.bg-\[var\(--color-warn-soft\,\#fde7d6\)\]{background-color:var(--color-warn-soft,#fde7d6)}.bg-\[var\(--pastel-mint\)\]{background-color:var(--pastel-mint)}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\/40{background-color:color-mix(in oklab, var(--color-black) 40%, transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-chat-soft{background-color:var(--color-chat-soft)}.bg-family-soft{background-color:var(--color-family-soft)}.bg-finance-soft{background-color:var(--color-finance-soft)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-3\.5{padding:calc(var(--spacing) * 3.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.px-1{padding-inline:var(--spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-7{padding-inline:calc(var(--spacing) * 7)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-7{padding-top:calc(var(--spacing) * 7)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-1{padding-bottom:var(--spacing)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pb-28{padding-bottom:calc(var(--spacing) * 28)}.pl-1\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13\.5px\]{font-size:13.5px}.text-\[13px\]{font-size:13px}.text-\[14\.5px\]{font-size:14.5px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[19px\]{font-size:19px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.text-\[30px\]{font-size:30px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-\[var\(--font-display\)\]{--tw-font-weight:var(--font-display);font-weight:var(--font-display)}.font-\[var\(--font-sans\)\]{--tw-font-weight:var(--font-sans);font-weight:var(--font-sans)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.025em\]{--tw-tracking:-.025em;letter-spacing:-.025em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-all{word-break:break-all}.text-\[\#D94F4F\]{color:#d94f4f}.text-\[\#f5a623\]{color:#f5a623}.text-\[var\(--color-accent\)\]{color:var(--color-accent)}.text-\[var\(--color-accent-strong\)\]{color:var(--color-accent-strong)}.text-\[var\(--color-calendar\)\]{color:var(--color-calendar)}.text-\[var\(--color-calendar-strong\)\]{color:var(--color-calendar-strong)}.text-\[var\(--color-chat\)\]{color:var(--color-chat)}.text-\[var\(--color-chat-strong\)\]{color:var(--color-chat-strong)}.text-\[var\(--color-family\)\]{color:var(--color-family)}.text-\[var\(--color-family-strong\)\]{color:var(--color-family-strong)}.text-\[var\(--color-finance\)\]{color:var(--color-finance)}.text-\[var\(--color-finance-strong\)\]{color:var(--color-finance-strong)}.text-\[var\(--color-good\)\]{color:var(--color-good)}.text-\[var\(--color-ink\)\]{color:var(--color-ink)}.text-\[var\(--color-ink-faint\)\]{color:var(--color-ink-faint)}.text-\[var\(--color-ink-muted\)\]{color:var(--color-ink-muted)}.text-\[var\(--color-ink-soft\)\]{color:var(--color-ink-soft)}.text-\[var\(--color-meals\)\]{color:var(--color-meals)}.text-\[var\(--color-meals-strong\)\]{color:var(--color-meals-strong)}.text-\[var\(--color-on-accent\)\]{color:var(--color-on-accent)}.text-\[var\(--color-shopping\)\]{color:var(--color-shopping)}.text-\[var\(--color-shopping-strong\)\]{color:var(--color-shopping-strong)}.text-\[var\(--color-tasks\)\]{color:var(--color-tasks)}.text-\[var\(--color-tasks-strong\)\]{color:var(--color-tasks-strong)}.text-\[var\(--color-warn\)\]{color:var(--color-warn)}.text-\[var\(--text-body\)\]{color:var(--text-body)}.text-\[var\(--text-body-lg\)\]{color:var(--text-body-lg)}.text-\[var\(--text-display\)\]{color:var(--text-display)}.text-\[var\(--text-display-lg\)\]{color:var(--text-display-lg)}.text-\[var\(--text-page\)\]{color:var(--text-page)}.text-\[var\(--text-section\)\]{color:var(--text-section)}.text-\[var\(--text-sm\)\]{color:var(--text-sm)}.text-\[var\(--text-xs\)\]{color:var(--text-xs)}.text-white{color:var(--color-white)}.text-white\/75{color:#ffffffbf}@supports (color:color-mix(in lab, red, red)){.text-white\/75{color:color-mix(in oklab, var(--color-white) 75%, transparent)}}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.accent-\[var\(--color-accent\)\]{accent-color:var(--color-accent)}.opacity-50{opacity:.5}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_8px_20px_rgba\(0\,0\,0\,0\.16\)\]{--tw-shadow:0 8px 20px var(--tw-shadow-color,#00000029);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_10px_24px_rgba\(0\,0\,0\,0\.18\)\]{--tw-shadow:0 10px 24px var(--tw-shadow-color,#0000002e);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_22px_55px_rgba\(18\,16\,43\,0\.24\)\]{--tw-shadow:0 22px 55px var(--tw-shadow-color,#12102b3d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 8px 24px var(--tw-shadow-color,#11182714);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 12px var(--tw-shadow-color,#1118270f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 2px 4px var(--tw-shadow-color,#1118270d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px var(--tw-shadow-color,#1118270a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-\[var\(--color-accent\)\]{--tw-ring-color:var(--color-accent)}.ring-\[var\(--color-border-strong\)\]\/60{--tw-ring-color:#11182710}@supports (color:color-mix(in lab, red, red)){.ring-\[var\(--color-border-strong\)\]\/60{--tw-ring-color:color-mix(in oklab, var(--color-border-strong) 60%, transparent)}}.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,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.placeholder\:text-\[var\(--color-ink-faint\)\]::placeholder{color:var(--color-ink-faint)}.last\:mb-0:last-child{margin-bottom:0}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-\[var\(--color-accent\)\]:hover{border-color:var(--color-accent)}.hover\:border-\[var\(--color-border-strong\)\]:hover{border-color:var(--color-border-strong)}.hover\:bg-\[var\(--color-accent-hover\)\]:hover{background-color:var(--color-accent-hover)}.hover\:bg-\[var\(--color-surface-raised\)\]:hover{background-color:var(--color-surface-raised)}.hover\:bg-\[var\(--color-surface-sunken\)\]:hover{background-color:var(--color-surface-sunken)}.hover\:bg-\[var\(--color-warn-hover\)\]:hover{background-color:var(--color-warn-hover)}.hover\:text-\[var\(--color-ink\)\]:hover{color:var(--color-ink)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-sm:hover{--tw-shadow:0 2px 4px var(--tw-shadow-color,#1118270d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:border-\[var\(--color-accent\)\]:focus{border-color:var(--color-accent)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-\[var\(--color-accent\)\]:focus{--tw-ring-color:var(--color-accent)}.focus\:ring-\[var\(--color-accent-soft\)\]:focus{--tw-ring-color:var(--color-accent-soft)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-\[var\(--color-accent\)\]:focus-visible{border-color:var(--color-accent)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[var\(--color-accent\)\]\/20:focus-visible{--tw-ring-color:#2563eb33}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-\[var\(--color-accent\)\]\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-accent) 20%, transparent)}}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-\[var\(--color-accent\)\]:focus-visible{outline-color:var(--color-accent)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\[\.99\]:active{scale:.99}.active\:scale-\[0\.98\]:active{scale:.98}.active\:scale-\[0\.99\]:active{scale:.99}.active\:scale-\[0\.995\]:active{scale:.995}.active\:cursor-grabbing:active{cursor:grabbing}.active\:bg-\[var\(--color-accent-soft\)\]:active{background-color:var(--color-accent-soft)}.active\:shadow-xs:active{--tw-shadow:0 1px 2px var(--tw-shadow-color,#1118270a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-35:disabled{opacity:.35}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-45:disabled{opacity:.45}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:hidden{display:none}.sm\:max-h-\[20px\]{max-height:20px}.sm\:max-w-\[112px\]{max-width:112px}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:items-center{align-items:center}.sm\:p-8{padding:calc(var(--spacing) * 8)}}@media (min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html,body,#root{min-height:100%}html{scroll-padding-top:72px;overflow-x:hidden;overflow-y:auto}body{color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;overscroll-behavior-y:auto;background:#fafafa;min-width:0;min-height:100dvh;overflow-x:hidden;overflow-y:auto}body[data-scroll-locked=true]{overflow:hidden}body:not(:has(.m3-dialog-layer,.marketing-drawer.is-open,.cook-focus-screen)){overflow-y:auto!important}.form-field{text-align:left;margin-bottom:16px;display:block;position:relative}.form-label{color:var(--color-ink);letter-spacing:.01em;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.form-control{border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);width:100%;min-height:40px;color:var(--color-ink);font:500 14px/1.35 var(--font-sans);transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,background var(--motion-fast) ease;outline:0;padding:9px 14px}.form-control::placeholder{color:var(--color-ink-faint)}.form-control:hover:not(:disabled){border-color:var(--color-border-focus)}@supports (color:color-mix(in lab, red, red)){.form-control:focus,.form-control.is-open{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}.form-control:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.form-control:disabled{cursor:not-allowed;opacity:.55}.ui-select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-ink-faint) 50%),linear-gradient(135deg,var(--color-ink-faint) 50%,transparent);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:42px}.ui-textarea{resize:vertical;min-height:112px;line-height:1.55}.form-hint{color:var(--color-ink-faint);margin-top:6px;font-size:12px;line-height:1.5;display:block}input.form-control[type=time]{-webkit-appearance:none;appearance:none;min-width:0}.date-field{z-index:8}.date-trigger{text-align:left;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:9px;display:grid}.date-trigger>svg:first-child{color:var(--color-accent)}.date-trigger>svg:last-child{color:var(--color-ink-faint);transition:transform var(--motion-fast) ease;justify-self:end;transform:rotate(90deg)}.date-trigger.is-open>svg:last-child{transform:rotate(-90deg)}.date-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.date-field-compact{min-width:112px;margin:0}.date-field-compact .form-label{margin-bottom:3px;font-size:9px}.date-field-compact .date-trigger{background:var(--color-surface);grid-template-columns:14px minmax(0,1fr) 12px;gap:5px;min-height:36px;padding:7px 8px;font-size:10.5px}.date-field-compact .date-trigger svg{width:13px;height:13px}.date-field-compact .date-popover{left:auto;right:0}.date-popover{z-index:80;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);width:min(330px,100vw - 48px);padding:18px;position:absolute;top:calc(100% - 5px);left:0;box-shadow:0 24px 55px #10182826}.date-popover-head{justify-content:space-between;align-items:center;gap:6px;margin-bottom:14px;display:flex}.date-popover-head strong{text-align:center;font:650 15px/1.2 var(--font-display);letter-spacing:-.01em}.date-popover-selects{flex:1;justify-content:center;gap:6px;display:flex}.date-select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-ink);cursor:pointer;outline:0;min-height:34px;padding:6px 8px;font-size:13px;font-weight:600}.date-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #2563eb29}@supports (color:color-mix(in lab, red, red)){.date-select:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 16%, transparent)}}.date-popover-head button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-sunken);width:32px;height:32px;color:var(--color-ink-soft);flex:none;place-items:center;display:grid}.date-weekdays,.date-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.date-weekdays{margin-bottom:6px}.date-weekdays span{height:26px;color:var(--color-ink-faint);text-transform:uppercase;place-items:center;font-size:10px;font-weight:800;display:grid}.date-grid button{aspect-ratio:1;border-radius:var(--radius-sm);color:var(--color-ink);transition:background var(--motion-fast) ease,transform var(--motion-fast) ease;border:1px solid #0000;place-items:center;font-size:12px;font-weight:600;display:grid;position:relative}.date-grid button:hover:not(:disabled):not(.selected){border-color:var(--color-border);background:var(--color-accent-soft)}.date-grid button:active:not(:disabled){transform:scale(.92)}.date-grid button.outside{color:var(--color-ink-faint);opacity:.55}.date-grid button.today{border-color:var(--color-accent);color:var(--color-accent-strong)}.date-grid button.selected{background:var(--color-accent);color:#fff;box-shadow:0 4px 12px #5b4bf040}.date-grid button.selected svg{position:absolute;bottom:3px;right:3px}.date-grid button:disabled{opacity:.22}.date-popover-foot{border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:8px;margin-top:14px;padding-top:12px;display:flex}.date-popover-foot button{border-radius:var(--radius-pill);background:var(--color-accent-soft);min-height:36px;color:var(--color-accent-strong);padding:0 14px;font-size:11.5px;font-weight:650}@media (max-width:520px){.form-control{min-height:50px;font-size:16px}.date-popover{top:auto;left:14px;right:14px;bottom:max(14px,env(safe-area-inset-bottom));border-radius:var(--radius-card);width:auto;padding:18px;position:fixed}.date-grid button{aspect-ratio:auto;min-height:38px}}.landing-page{color:#17171f;background:#fffdf9;min-height:100vh;overflow-x:hidden;overflow-y:auto}.landing-page button,.landing-page a{transition:transform .2s,background .2s,color .2s}.landing-nav{z-index:20;justify-content:space-between;align-items:center;max-width:1240px;height:88px;margin:auto;padding:0 28px;display:flex;position:relative}.landing-brand{align-items:center;gap:9px;display:flex}.landing-brand img{object-fit:contain;border-radius:var(--radius-md);background:#fff5e9;width:58px;height:58px;padding:6px}.landing-brand strong{font:800 24px/1 var(--font-display);letter-spacing:-.06em}.landing-brand strong span{color:#7952e8}.landing-links{gap:30px;font-size:14px;font-weight:600;display:flex}.landing-links a:hover{color:#7952e8}.landing-actions{align-items:center;gap:10px;display:flex}.landing-signin{padding:11px 17px;font-weight:700}.landing-join,.landing-hero-ctas>button:first-child,.landing-final button{border-radius:var(--radius-pill);color:#fff;background:#17171f;justify-content:center;align-items:center;gap:9px;padding:13px 20px;font-weight:750;display:inline-flex}.landing-join svg,.landing-hero-ctas svg,.landing-final svg{width:17px}.landing-join:hover,.landing-hero-ctas>button:first-child:hover,.landing-final button:hover{background:#7952e8;transform:translateY(-2px)}.landing-hero{grid-template-columns:.9fr 1.1fr;align-items:center;gap:70px;max-width:1240px;margin:16px auto 0;padding:42px 28px 114px;display:grid}.landing-hero-copy{padding-left:2vw}.landing-kicker{color:#6b49d1;text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:7px;padding:6px 14px;font-size:12px;font-weight:800;display:inline-flex}.landing-kicker svg{width:17px}.landing-hero h1{font:750 clamp(62px,7vw,108px)/.84 var(--font-display);letter-spacing:-.075em;margin:20px 0 24px}.landing-hero h1 span{color:#f45d9a}.landing-hero-copy>p:not(.landing-kicker){color:#55525d;max-width:540px;font-size:19px;line-height:1.55}.landing-hero-ctas{align-items:center;gap:16px;margin-top:30px;display:flex}.landing-hero-ctas>button:first-child{background:#7952e8;padding:16px 24px}.landing-hero-ctas>button:last-child{text-underline-offset:5px;font-size:14px;font-weight:700;text-decoration:underline}.landing-trust{color:#66626c;gap:18px;margin-top:24px;font-size:12px;font-weight:650;display:flex}.landing-trust span{align-items:center;gap:5px;display:flex}.landing-trust svg{color:#228766;width:14px}.landing-hero-media{height:600px;position:relative}.landing-hero-media>img:first-child{object-fit:cover;border-radius:24px;width:100%;height:100%;box-shadow:0 26px 70px #2a221d29}.landing-hero-doodle{filter:drop-shadow(0 15px 25px #2c26461f);width:310px;position:absolute;bottom:-60px;left:-70px}.landing-float-note{border-radius:var(--radius-control);color:#17171f;background:#fff;align-items:center;gap:9px;padding:13px 17px;font-size:13px;font-weight:750;display:flex;position:absolute;top:52px;right:-20px;transform:rotate(2deg);box-shadow:0 14px 35px #19143021}.landing-float-note svg{color:#7952e8;width:19px}.landing-intro{text-align:center;background:#f4f0ff;padding:110px 24px}.landing-intro>p,.landing-section-head>p{color:#7952e8;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:850}.landing-intro h2,.landing-section-head h2{font:720 clamp(42px,5vw,72px)/.98 var(--font-display);letter-spacing:-.06em;margin:18px auto 36px}.landing-family-pills{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.landing-family-pills span{border-radius:var(--radius-pill);background:#fff;border:1px solid #ded5ff;padding:11px 17px;font-size:13px;font-weight:650}.landing-features{max-width:1240px;margin:auto;padding:110px 28px}.landing-section-head{text-align:center;max-width:720px;margin:0 auto 52px;padding:10px}.landing-section-head>span{color:#625f68;max-width:540px;margin:-16px auto 0;font-size:17px;line-height:1.5;display:block}.landing-feature-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.landing-feature{border-radius:30px;flex-direction:column;min-height:370px;padding:24px;display:flex}.landing-feature.lilac{background:#eee8ff}.landing-feature.yellow{background:#fff0a8}.landing-feature.pink{background:#ffddea}.landing-feature.mint{background:#dff5e9}.landing-feature.blue{background:#dfeeff}.landing-feature.peach{background:#ffe4d2}.landing-feature-top{justify-content:space-between;align-items:flex-start;height:215px;display:flex;overflow:hidden}.landing-feature-top>span{border-radius:var(--radius-pill-sm);background:#ffffffb8;place-items:center;width:42px;height:42px;display:grid}.landing-feature-top svg{width:20px}.landing-feature-top img{object-fit:contain;object-position:right bottom;mix-blend-mode:multiply;width:72%;height:100%}.landing-feature h3{font:700 23px/1.1 var(--font-display);letter-spacing:-.035em}.landing-feature p{color:#58545f;margin-top:10px;font-size:14px;line-height:1.5}.landing-ai{color:#fff;background:#17171f;grid-template-columns:1fr 1fr;align-items:center;gap:90px;padding:100px max(28px,50vw - 580px);display:grid}.landing-ai>div:last-child{max-width:520px}.landing-ai h2{font:720 clamp(45px,5vw,72px)/.96 var(--font-display);letter-spacing:-.06em;margin:18px 0 24px}.landing-ai>div:last-child>p:not(.landing-kicker){color:#cac7d0;font-size:17px;line-height:1.6}.landing-ai ul{gap:12px;margin-top:27px;display:grid}.landing-ai li{align-items:center;gap:9px;font-size:14px;display:flex}.landing-ai li svg{color:#ffb11b;width:18px}.landing-ai-art{background:#f45d9a;border-radius:24px;height:480px;position:relative;overflow:hidden}.landing-ai-art img{object-fit:contain;width:94%;height:92%;position:absolute;top:auto;bottom:0;left:3%;right:3%}.ai-bubble{z-index:2;color:#17171f;border-radius:var(--radius-control);background:#fff;max-width:210px;padding:12px 15px;font-size:13px;font-weight:650;position:absolute;box-shadow:0 12px 30px #00000029}.ai-bubble.one{top:26px;left:24px}.ai-bubble.two{color:#6041c1;bottom:32px;right:22px}.landing-steps{background:#fff8e8;padding:110px 28px}.landing-step-grid{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1050px;margin:auto;display:grid}.landing-step-grid article{border-top:2px solid #17171f;padding:28px;position:relative}.landing-step-grid b{background:#ffb11b;border-radius:50%;place-items:center;width:38px;height:38px;font-size:14px;display:grid}.landing-step-grid article:nth-child(2) b{background:#f45d9a}.landing-step-grid article:nth-child(3) b{color:#fff;background:#7952e8}.landing-step-grid h3{font:700 22px var(--font-display);margin:20px 0 8px}.landing-step-grid p{color:#66626c;font-size:14px;line-height:1.5}.landing-privacy{text-align:center;background:#dff5e9;padding:100px 24px}.landing-privacy>div{color:#24785c;text-transform:uppercase;letter-spacing:.12em;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:850;display:flex}.landing-privacy>div svg{width:17px}.landing-privacy h2{font:720 clamp(42px,5vw,70px)/.98 var(--font-display);letter-spacing:-.06em;margin:20px 0 24px}.landing-privacy>p{color:#4d625a;max-width:700px;margin:auto;font-size:17px;line-height:1.6}.landing-final{color:#fff;text-align:center;background:#7952e8;border-radius:38px;max-width:1160px;min-height:340px;margin:110px auto;padding:70px 40px;overflow:hidden}.landing-final>div{width:100%}.landing-final p{text-transform:uppercase;letter-spacing:.1em;color:#e4dfff;font-size:13px;font-weight:800}.landing-final h2{font:720 clamp(44px,5vw,72px)/.95 var(--font-display);letter-spacing:-.06em;margin:16px 0 28px}.landing-final button{color:#17171f;background:#fff}@media (max-width:900px){.landing-links{display:none}.landing-hero{grid-template-columns:1fr;padding-top:20px}.landing-hero-copy{text-align:center;padding:0}.landing-kicker,.landing-trust,.landing-hero-ctas{justify-content:center}.landing-hero-copy>p:not(.landing-kicker){margin:auto}.landing-hero-media{height:500px}.landing-feature-grid{grid-template-columns:repeat(2,1fr)}.landing-ai{grid-template-columns:1fr;gap:50px}.landing-ai-art{order:2}.landing-final{min-height:360px;margin:70px 20px;padding:35px}}@media (max-width:600px){.landing-nav{height:72px;padding:0 18px}.landing-brand img{width:48px;height:48px}.landing-brand strong{font-size:20px}.landing-signin{display:none}.landing-join{padding:11px 14px;font-size:13px}.landing-hero{gap:36px;padding:28px 18px 98px}.landing-hero h1{font-size:58px}.landing-hero-copy>p:not(.landing-kicker){font-size:16px}.landing-hero-ctas{flex-direction:column}.landing-trust{flex-direction:column;align-items:center;gap:7px}.landing-hero-media{height:390px}.landing-hero-media>img:first-child{border-radius:38% 38% 18px 18px}.landing-hero-doodle{width:190px;bottom:-30px;left:-28px}.landing-float-note{max-width:180px;font-size:11px;top:24px;right:6px}.landing-intro,.landing-features,.landing-steps,.landing-privacy{padding:76px 18px}.landing-intro h2,.landing-section-head h2{font-size:42px}.landing-feature-grid{grid-template-columns:1fr}.landing-feature{min-height:330px}.landing-ai{padding:76px 18px}.landing-ai-art{height:360px}.landing-ai h2{font-size:45px}.landing-step-grid{grid-template-columns:1fr}.landing-final{text-align:center;margin:50px 14px;padding:30px 24px;display:block}.landing-final img,.landing-final>div{width:100%}.landing-final img{height:230px}.landing-final h2{font-size:44px}}.founder-welcome-layer{z-index:120;-webkit-backdrop-filter:blur(8px);background:#17172f57;place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.founder-welcome-card{border:1px solid var(--color-border);border-radius:var(--radius-card);width:min(100%,430px);animation:founderWelcomeIn .28s var(--ease-out);background:#fff;padding:32px;position:relative;box-shadow:0 24px 70px #17172f33}@keyframes founderWelcomeIn{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:none}}.founder-welcome-close{background:var(--color-surface-sunken);width:34px;height:34px;color:var(--color-ink-soft);border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.founder-welcome-mark{background:var(--color-accent-soft);width:46px;height:46px;color:var(--color-accent);border-radius:50%;place-items:center;margin-bottom:18px;display:grid}.founder-welcome-eyebrow{color:var(--color-accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:800}.founder-welcome-card h2{color:var(--color-ink);font:700 30px/1.1 var(--font-display);letter-spacing:-.03em;margin:0}.founder-welcome-copy{color:var(--color-ink-soft);margin:16px 0;font-size:14px;line-height:1.65}.founder-welcome-signoff{color:var(--color-ink);margin:0;font-size:13px;font-weight:700;line-height:1.5}.founder-welcome-signoff span{color:var(--color-ink-faint);font-size:11px;font-weight:500}.founder-welcome-actions{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.founder-welcome-actions a{border-radius:var(--radius-pill);background:var(--color-accent-soft);min-height:36px;color:var(--color-accent-strong);align-items:center;padding:0 12px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.founder-welcome-actions a:hover{background:var(--color-accent);color:#fff}@media (max-width:520px){.founder-welcome-layer{align-items:end;padding:12px}.founder-welcome-card{padding:26px 22px calc(22px + env(safe-area-inset-bottom));border-radius:var(--radius-card) var(--radius-card) 16px 16px}.founder-welcome-card h2{font-size:26px}.founder-welcome-actions{grid-template-columns:1fr 1fr;display:grid}.founder-welcome-actions a{justify-content:center}}button,input,select,textarea{font:inherit}button{touch-action:manipulation}button:not(:disabled){cursor:pointer}button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}select:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.sunrise-gradient{background:var(--sunrise-gradient)}.sunrise-text{background:var(--sunrise-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.notion-shadow{box-shadow:0 2px 4px #1b19350f}.bg-accent-soft{background:var(--color-accent-soft)!important}.bg-accent-strong{background:var(--color-accent)!important;color:var(--color-on-accent)!important}.bg-calendar-soft{background:var(--color-calendar-soft)!important}.bg-calendar-strong{background:var(--color-calendar)!important;color:#fff!important}.bg-meals-soft{background:var(--color-meals-soft)!important}.bg-meals-strong{background:var(--color-meals)!important;color:#fff!important}.bg-tasks-soft{background:var(--color-tasks-soft)!important}.bg-tasks-strong{background:var(--color-tasks)!important;color:#fff!important}.bg-shopping-soft{background:var(--color-shopping-soft)!important}.bg-shopping-strong{background:var(--color-shopping)!important;color:#fff!important}.bg-chat-soft{background:var(--color-chat-soft)!important}.bg-chat-strong{background:var(--color-chat)!important;color:#fff!important}.bg-finance-soft{background:var(--color-finance-soft)!important}.bg-finance-strong{background:var(--color-finance)!important;color:#fff!important}.bg-family-soft{background:var(--color-family-soft)!important}.bg-family-strong{background:var(--color-family)!important;color:#fff!important}.bg-surface{background:var(--color-surface)!important}.bg-surface-raised{background:var(--color-surface-raised)!important}.bg-surface-sunken{background:var(--color-surface-sunken)!important}.bg-canvas{background:var(--color-canvas)!important}.bg-sunrise{background:var(--sunrise-gradient)!important}.bg-accent-gradient{background:linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-hover) 100%)!important;color:var(--color-on-accent)!important}.border-accent{border-color:var(--color-accent)!important}.border-calendar{border-color:var(--color-calendar)!important}.border-meals{border-color:var(--color-meals)!important}.border-tasks{border-color:var(--color-tasks)!important}.border-shopping{border-color:var(--color-shopping)!important}.border-chat{border-color:var(--color-chat)!important}.border-finance{border-color:var(--color-finance)!important}.border-family{border-color:var(--color-family)!important}.text-accent{color:var(--color-accent)!important}.text-accent-strong{color:var(--color-accent-strong)!important}.text-calendar{color:var(--color-calendar)!important}.text-meals{color:var(--color-meals)!important}.text-tasks{color:var(--color-tasks)!important}.text-shopping{color:var(--color-shopping)!important}.text-chat{color:var(--color-chat)!important}.text-finance{color:var(--color-finance)!important}.text-family{color:var(--color-family)!important}.text-ink{color:var(--color-ink)!important}.text-ink-soft{color:var(--color-ink-soft)!important}.text-ink-muted{color:var(--color-ink-muted)!important}.text-on-accent{color:var(--color-on-accent)!important}.app-shell{width:100%;min-width:0;min-height:100dvh}.app-content{background:#fafafa;width:100%;min-width:0;max-width:none;min-height:100dvh;margin:0}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.kinship-card{border:1px solid var(--color-border);border-radius:var(--radius-card);transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-normal) var(--ease-out),transform var(--motion-fast) var(--ease-out);background:#fff;box-shadow:0 1px 2px #1018280a}.kinship-card:hover{border-color:var(--color-border-strong);box-shadow:0 1px 3px #10182814,0 1px 2px #1018280f}.kinship-card:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.kinship-card--elevated{box-shadow:var(--shadow-sm)}.kinship-card--floating{box-shadow:var(--shadow-lg)}.kinship-card--sunken{box-shadow:none;background:#fff}.kinship-card--interactive{cursor:pointer}.kinship-card--interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.kinship-card--interactive:active{transform:scale(.995)}.kinship-card--radius-sm{border-radius:var(--radius-xl)}.kinship-card--radius-md,.kinship-card--radius-lg{border-radius:var(--radius-card)}.kinship-card--border-strong{border-color:var(--color-border-strong)}.kinship-card--border-accent{border-color:var(--color-accent)}.page-header{padding-top:var(--space-6)}.page-eyebrow{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-2);font-weight:500}.page-title{font:600 var(--text-display)/1.1 var(--font-display);letter-spacing:-.03em;color:var(--color-ink)}.page-subtitle{font-size:var(--text-body);color:var(--color-ink-soft);margin-top:var(--space-2);line-height:1.5}.ui-section-title{font:600 var(--text-section)/1.25 var(--font-display);letter-spacing:-.02em;color:var(--color-ink)}.family-roster-card{padding:4px 14px}.family-roster>li{min-height:76px}.family-roster-pending{border-top:1px solid var(--color-border);align-items:center;gap:12px;padding:12px 0;display:flex}.family-invite-avatar{background:var(--color-accent-soft);width:44px;height:44px;color:var(--color-accent);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.family-roster-pending p{text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.family-roster-pending span:not(.pending-pill):not(.invite-action-label){color:var(--color-ink-soft);font-size:12px}.family-invite-details{gap:3px;display:grid}.family-invite-meta{flex-wrap:wrap;align-items:center;gap:2px 8px;min-width:0;display:flex}.family-invite-meta span{overflow-wrap:anywhere}.family-invite-meta span+span:before{content:"·";color:var(--color-ink-faint);margin-right:8px}.family-invite-status{line-height:1.35;display:block}.pending-pill{border-radius:var(--radius-tag);background:var(--color-warn-soft);color:var(--color-warn);text-transform:uppercase;letter-spacing:.04em;padding:5px 8px;font-size:10px;font-weight:700}.pending-invite-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.pending-invite-actions button{border-radius:var(--radius-tag);border:1px solid var(--color-border);color:var(--color-ink-soft);background:#fff;align-items:center;gap:4px;padding:7px 9px;font-size:11px;font-weight:700;display:inline-flex}.pending-invite-actions button:hover{border-color:var(--color-border-strong);color:var(--color-ink)}.pending-invite-actions button.danger{color:var(--color-warn);background:var(--color-warn-soft);border-color:#0000}@media (max-width:680px){.family-roster-pending{grid-template-columns:44px minmax(0,1fr);align-items:start;display:grid}.family-invite-avatar{grid-row:1}.family-invite-details{grid-column:2}.family-invite-meta{gap:2px;display:grid}.family-invite-meta span+span:before{content:none}.pending-invite-actions{grid-column:2;justify-content:flex-start;margin-top:5px}.pending-invite-actions button{min-height:34px}.family-invite-status{margin-top:2px}}.invite-phone-field{min-width:0}.invite-phone-field>small{color:var(--color-warn);margin:-8px 2px 10px;font-size:11px;line-height:1.35;display:block}.invite-phone-field input[aria-invalid=true]{border-color:var(--color-warn);box-shadow:0 0 0 2px var(--color-warn-soft)}.avatar-editor{align-items:center;gap:16px;margin-bottom:16px;display:flex}.avatar-editor-preview{color:#fff;background:var(--color-accent-soft);border:4px solid #fff;border-radius:50%;flex:none;place-items:center;width:84px;height:84px;font-weight:800;display:grid;overflow:hidden;box-shadow:0 12px 30px #1018281a}.avatar-editor-preview img{object-fit:cover;object-position:center;width:100%;height:100%}.avatar-editor-actions{flex-direction:column;gap:10px;display:flex}.avatar-editor-actions label,.avatar-editor-actions button{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);width:max-content;color:var(--color-ink);justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:12.5px;font-weight:600;display:inline-flex}.avatar-editor-actions label{cursor:pointer;color:var(--color-accent-strong);background:var(--color-accent-soft);border-color:#0000}.avatar-editor-actions input{display:none}.avatar-status{color:var(--color-ink-soft);margin:8px 0 0;font-size:12px}.avatar-preset-note{color:var(--color-ink-soft);margin:8px 0 0;font-size:12px;line-height:1.5}.avatar-editor-actions button svg{flex:none}.settings-color-scheme-grid{gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-2) 0;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.settings-color-scheme-option{align-items:flex-start;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);cursor:pointer;transition:all var(--motion-fast) var(--ease-out);flex-direction:column;display:flex}.settings-color-scheme-option:hover{border-color:var(--color-border-strong);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.settings-color-scheme-option.selected{border-color:var(--color-accent);background:var(--color-accent-soft);box-shadow:var(--shadow-md)}.settings-color-scheme-option:active{transform:scale(.98)}.scheme-emoji{font-size:24px;line-height:1}.scheme-swatches{gap:4px;width:100%;display:flex}.scheme-swatches i{border-radius:var(--radius-md);flex:1;height:24px;box-shadow:inset 0 0 0 1px #0000000a}.scheme-info{flex-direction:column;gap:2px;width:100%;display:flex}.scheme-info strong{font-size:var(--text-sm);color:var(--color-ink);font-weight:600;line-height:1.3}.scheme-info small{font-size:var(--text-xs);color:var(--color-ink-muted);line-height:1.3}.scheme-check{color:var(--color-accent);flex-shrink:0;margin-left:auto}.onboarding-color-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.onboarding-color-option{align-items:center;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);cursor:pointer;transition:all var(--motion-fast) var(--ease-out);flex-direction:column;display:flex}.onboarding-color-option:hover{border-color:var(--color-border-strong);background:var(--color-surface-raised)}.onboarding-color-option.selected{border-color:var(--color-accent);background:var(--color-accent-soft);box-shadow:var(--shadow-sm)}.onboarding-color-option .scheme-emoji{font-size:28px}.onboarding-color-option .scheme-swatches{width:100%}.onboarding-color-option .scheme-swatches i{height:28px}.onboarding-color-option .scheme-info{text-align:center}.onboarding-color-option .scheme-info strong{font-size:var(--text-sm)}.onboarding-color-option .scheme-info small{font-size:var(--text-xs)}.m3-button,.primary-button-row{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);min-height:40px;font:600 13px/1.3 var(--font-sans);transition:background var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out);cursor:pointer;white-space:nowrap;border:none;padding:0 14px;display:inline-flex;box-shadow:0 1px 2px #1018280d}.m3-button:active,.primary-button-row:active{transform:scale(.98)}.m3-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.primary-button-row:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.m3-button-filled,.primary-button-row{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent);box-shadow:0 1px 2px #1018280d}.m3-button-filled:hover,.primary-button-row:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong);box-shadow:0 1px 2px #1018280d}.m3-button-filled:disabled,.primary-button-row:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.m3-button-outlined{background:var(--color-surface);color:var(--color-ink-soft);border:1px solid var(--color-border-strong)}.m3-button-outlined:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.m3-button-outlined:disabled{opacity:.4;cursor:not-allowed;background:var(--color-surface)}.m3-button-ghost{color:var(--color-accent);padding:0 var(--space-3);background:0 0;border:none}.m3-button-ghost:hover{background:var(--color-accent-soft);color:var(--color-accent-strong)}.m3-button-soft{background:var(--color-accent-soft);color:var(--color-accent-strong);border:1px solid #0000}.m3-button-soft:hover{background:#c7d9fb}@supports (color:color-mix(in lab, red, red)){.m3-button-soft:hover{background:color-mix(in srgb, var(--color-accent-soft) 80%, var(--color-accent))}}.m3-button-soft:disabled{opacity:.4;cursor:not-allowed}.m3-button-soft-accent{background:var(--color-accent-soft);color:var(--color-accent-strong)}.m3-button-soft-warn{background:var(--color-warn-soft);color:var(--color-warn)}.m3-button-soft-good{background:var(--color-good-soft);color:var(--color-good)}.m3-button-soft-calendar{background:var(--color-calendar-soft);color:var(--color-calendar)}.m3-button-soft-meals{background:var(--color-meals-soft);color:var(--color-meals)}.m3-button-soft-shopping{background:var(--color-shopping-soft);color:var(--color-shopping)}.m3-button-soft-chat{background:var(--color-chat-soft);color:var(--color-chat)}.m3-button-soft-family{background:var(--color-family-soft);color:var(--color-family)}.m3-button-link{color:var(--color-accent);text-underline-offset:3px;background:0 0;border:none;padding:0;text-decoration:underline}.m3-button-link:hover{color:var(--color-accent-strong);text-decoration-thickness:2px}.m3-button-white{color:var(--color-ink);border:1px solid var(--color-border);background:#fff}.m3-button-white:hover{background:var(--color-surface-raised);border-color:var(--color-border-strong)}.m3-button-sm{min-height:32px;padding:0 10px;font-size:12px}.m3-button-lg{min-height:48px;padding:0 18px;font-size:14px}.ui-icon-button{color:var(--color-ink-muted);border-radius:var(--radius-md);transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.ui-icon-button:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.ui-icon-button:active{transform:scale(.94)}.ui-icon-button svg{width:22px;height:22px}.ui-menu-dropdown{display:inline-block;position:relative}.ui-menu-dropdown summary{cursor:pointer;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-body);transition:border-color var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out);font-weight:500;list-style:none;display:inline-flex}.ui-menu-dropdown summary::-webkit-details-marker{display:none}.ui-menu-dropdown summary:hover{border-color:var(--color-border-strong);background:var(--color-surface-raised)}.ui-menu-dropdown summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ui-menu-dropdown[open] summary{border-color:var(--color-accent);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.ui-menu-options{top:calc(100% + var(--space-1));z-index:30;padding:var(--space-2);border:1px solid var(--color-border);border-radius:0 0 var(--radius-xl) var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg);max-height:320px;margin:0;position:absolute;left:0;right:0;overflow-y:auto}.ui-menu-options button{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);color:var(--color-ink);font-size:var(--text-body);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--ease-out);background:0 0;border:none;font-weight:500;display:flex}.ui-menu-options button:hover,.ui-menu-options button.selected{background:var(--color-accent-soft);color:var(--color-accent)}.ui-menu-options button:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.m3-dialog-layer{z-index:50;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.m3-scrim{-webkit-backdrop-filter:blur(4px);animation:scrimIn var(--motion-fast) var(--ease-out);background:#11182780;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes scrimIn{0%{opacity:0}to{opacity:1}}.modal-card{z-index:1;border-radius:var(--radius-card);background:var(--color-surface);width:100%;max-width:440px;box-shadow:var(--shadow-floating);animation:modalIn var(--motion-base) var(--ease-out);border:none;position:relative}@keyframes modalIn{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-close-button{top:var(--space-3);right:var(--space-3);z-index:1;border-radius:var(--radius-xl);background:var(--color-surface-sunken);width:36px;height:36px;color:var(--color-ink-muted);transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out);border:none;place-items:center;display:grid;position:absolute}.modal-close-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ui-alert{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);display:flex}.ui-alert-info{border-color:var(--color-calendar);background:var(--color-calendar-soft)}.ui-alert-success{border-color:var(--color-good);background:var(--color-good-soft)}.ui-alert-warning,.ui-alert-error{border-color:var(--color-warn);background:var(--color-warn-soft)}.ui-alert svg{color:var(--color-accent);flex-shrink:0}.ui-alert-info svg{color:var(--color-calendar)}.ui-alert-success svg{color:var(--color-good)}.ui-alert-warning svg,.ui-alert-error svg{color:var(--color-warn)}.ui-alert-body strong{font-size:var(--text-sm);color:var(--color-ink);margin-bottom:var(--space-1);font-weight:600;display:block}.ui-alert-body div{font-size:var(--text-body);color:var(--color-ink-soft);line-height:1.5}.ui-alert-actions{gap:var(--space-2);margin-top:var(--space-3);display:flex}.ui-progress{gap:var(--space-2);flex-direction:column;display:flex}.ui-progress-copy{font-size:var(--text-xs);color:var(--color-ink-muted);justify-content:space-between;align-items:center;font-weight:500;display:flex}.ui-progress-track{border-radius:var(--radius-pill);background:var(--color-surface-sunken);height:8px;overflow:hidden}.ui-circular-progress{justify-content:center;align-items:center;display:inline-flex;position:relative}.ui-circular-track{fill:none;stroke:var(--color-surface-sunken)}.ui-circular-value{fill:none;stroke:var(--ring-color);stroke-linecap:round;transform-origin:50%;transition:stroke-dashoffset var(--motion-base) var(--ease-out);transform:rotate(-90deg)}.ui-circular-label{font:600 var(--text-body-lg)/1 var(--font-display);color:var(--color-ink);place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.ui-segmented{border-radius:var(--radius-lg);background:var(--color-surface-sunken);border:1px solid var(--color-border);gap:2px;padding:4px;display:inline-flex}.ui-segmented button{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);color:var(--color-ink-muted);font-size:var(--text-sm);border-radius:var(--radius-tag);cursor:pointer;transition:all var(--motion-fast) var(--ease-out);background:0 0;border:none;font-weight:500;display:inline-flex}.ui-segmented button.selected{background:var(--color-surface);color:var(--color-accent);box-shadow:var(--shadow-xs)}.m3-stepper{align-items:center;gap:var(--space-2);display:inline-flex}.m3-stepper-button{border-radius:var(--radius-md);background:var(--color-surface-sunken);width:40px;height:40px;color:var(--color-ink);cursor:pointer;transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out);border:none;place-items:center;font-size:20px;font-weight:600;display:grid}.m3-stepper-button:hover{background:var(--color-accent-soft);color:var(--color-accent)}.m3-stepper-button:disabled{opacity:.4;cursor:not-allowed}.m3-stepper-value{text-align:center;min-width:40px;font:700 var(--text-body-lg)/1 var(--font-display);color:var(--color-ink)}.flex.flex-col.items-center.justify-center.text-center.py-12.px-6{padding:var(--space-10) var(--space-6)}.flex.flex-col.items-center.justify-center.text-center.py-12.px-6>div:first-child{background:var(--color-accent-soft);width:80px;height:80px;color:var(--color-accent);margin-bottom:var(--space-4);border-radius:50%;place-items:center;font-size:32px;display:grid}.flex.flex-col.items-center.justify-center.text-center.py-12.px-6 p:first-of-type{font-size:var(--text-section);color:var(--color-ink);margin-bottom:var(--space-2);font-weight:600}.flex.flex-col.items-center.justify-center.text-center.py-12.px-6 p:last-of-type{font-size:var(--text-body);color:var(--color-ink-soft);max-width:32ch;line-height:1.5}.ui-switch-row.is-disabled{opacity:.5;cursor:not-allowed}.ui-switch-copy{text-align:right;flex-direction:column;flex:1;gap:2px;display:flex}.ui-switch-copy strong{color:var(--color-ink);font-size:12px;font-weight:600}.ui-switch-copy small{color:var(--color-ink-soft);font-size:10px;line-height:1.4}.ui-switch{border:1px solid var(--color-border-strong);background:var(--color-surface-sunken);cursor:pointer;border-radius:999px;flex:0 0 38px;width:38px;height:22px;transition:border-color .16s,background-color .16s;position:relative}.m3-checkbox{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);width:24px;height:24px;transition:all var(--motion-fast) var(--ease-out)}.m3-checkbox[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent)}.m3-checkbox .check-pop{animation:checkPop var(--motion-fast) var(--ease-out)}@keyframes checkPop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.avatar-circles{align-items:center;display:flex}.avatar-circles .family-avatar{border:3px solid var(--color-canvas);box-shadow:var(--shadow-xs);transition:transform var(--motion-fast) var(--ease-out)}.avatar-circles .family-avatar:not(:first-child){margin-left:-10px}.avatar-circles .family-avatar:hover{z-index:1;transform:scale(1.1)}.avatar-circles-overflow{border:3px solid var(--color-canvas);background:var(--color-surface-sunken);width:32px;height:32px;color:var(--color-ink-muted);font-size:var(--text-xs);box-shadow:var(--shadow-xs);border-radius:50%;place-items:center;font-weight:600;display:grid}.m3-chip{padding:var(--space-1) var(--space-3);border-radius:var(--radius-tag);font-size:var(--text-xs);font-weight:600;line-height:1.3}.date-popover{animation:popoverIn var(--motion-normal) var(--ease-out)}@keyframes popoverIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.family-hero{border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-topbar{align-items:center;gap:var(--space-4);height:64px;padding:0 var(--space-5);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(24px);background:#ffffffeb;grid-template-columns:44px 1fr auto;display:grid}.topbar-avatar{background:var(--color-surface);width:38px;height:38px;color:var(--color-accent);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-radius:50%;place-items:center;font-size:14px;font-weight:600;display:grid;overflow:hidden}.topbar-avatar:not(:has(img)){background:var(--color-accent-soft);color:var(--color-accent)}.topbar-avatar img{object-fit:cover;width:100%;height:100%}.topbar-brand-group{align-items:center;gap:14px;min-width:0;display:flex}.topbar-wordmark{align-items:center;gap:var(--space-3);min-width:0;display:flex}.topbar-wordmark img{flex:none;width:30px;height:30px}.topbar-wordmark strong{color:var(--color-accent);letter-spacing:-.02em;white-space:nowrap;font-size:14px;font-weight:600}.topbar-actions{align-items:center;gap:var(--space-3);display:flex}.topbar-download{border:1px solid #2257cc49;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 13px;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.topbar-download{border:1px solid color-mix(in srgb,var(--color-accent) 24%,var(--color-border))}}.topbar-download{background:#f3f8ff;border-radius:999px}@supports (color:color-mix(in lab, red, red)){.topbar-download{background:color-mix(in srgb,var(--color-accent-soft) 78%,var(--color-surface))}}.topbar-download{color:var(--color-accent-strong);white-space:nowrap;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out);font-size:11px;font-weight:750;text-decoration:none;box-shadow:0 4px 12px #5446be14}.topbar-download:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#ffffffa6,#0000);width:32%;transition:transform .55s cubic-bezier(.22,1,.36,1);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-170%)skew(-18deg)}.topbar-download:hover{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent);transform:translateY(-2px);box-shadow:0 9px 20px #2563eb3d}@supports (color:color-mix(in lab, red, red)){.topbar-download:hover{box-shadow:0 9px 20px color-mix(in srgb,var(--color-accent) 24%,transparent)}}.topbar-download:hover:after{transform:translate(430%)skew(-18deg)}.topbar-download:active{transform:translateY(0)scale(.97)}.topbar-download svg{z-index:1;flex:none;width:16px;height:16px;transition:transform .3s cubic-bezier(.22,1,.36,1);position:relative}.topbar-download:hover svg{transform:translateY(2px)}.topbar-download span{z-index:1;position:relative}.topbar-actions button{color:var(--color-ink-muted);padding:var(--space-2);border-radius:var(--radius-md);transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out);position:relative}.topbar-actions button:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.topbar-actions svg{width:22px;height:22px}.topbar-actions i{background:var(--color-accent);width:16px;height:16px;color:var(--color-on-accent);border-radius:50%;place-items:center;font-size:8px;font-style:normal;font-weight:700;display:grid;position:absolute;top:-2px;right:-2px}.primary-nav{z-index:40;width:min(100%,512px);padding:var(--space-3) var(--space-2) max(var(--space-3),env(safe-area-inset-bottom));border-top:1px solid var(--color-border);-webkit-backdrop-filter:blur(24px);background:#fffffffa;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -4px 24px #1118270a}.nav-brand,.nav-foot{display:none}.nav-items{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.nav-item{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2) 0;color:var(--color-ink-muted);flex-direction:column;display:flex}.nav-icon{border-radius:var(--radius-md);width:40px;height:32px;transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out);justify-content:center;align-items:center;display:flex;position:relative}.nav-label{text-overflow:ellipsis;max-width:100%;font-size:var(--text-xs);text-align:center;color:var(--color-ink-muted);font-weight:500;line-height:1.2;overflow:hidden}.nav-item.is-active{color:var(--color-accent)}.nav-item.is-active .nav-icon{background:var(--color-accent-soft);color:var(--color-accent)}.nav-item.is-active .nav-label{color:var(--color-accent);font-weight:600}.auth-shell{background:#fafafa;min-height:100vh;display:flex}.auth-story{padding:var(--space-12) var(--space-8);background:linear-gradient(135deg,var(--color-accent-soft) 0%,var(--color-surface-raised) 100%);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.auth-story:before{content:"";background:var(--color-accent-soft);opacity:.5;filter:blur(60px);border-radius:50%;width:500px;height:500px;position:absolute;top:-180px;right:-180px}.auth-story:after{content:"";background:var(--color-accent);opacity:.1;filter:blur(40px);border-radius:50%;width:350px;height:350px;position:absolute;bottom:-120px;left:-120px}.auth-brand{align-items:center;gap:var(--space-3);letter-spacing:-.02em;z-index:1;font-size:16px;font-weight:600;display:flex;position:relative}.auth-brand img{border-radius:var(--radius-lg);width:44px;height:44px;box-shadow:var(--shadow-md)}.auth-story-copy{z-index:1;margin:auto 0 var(--space-6);max-width:520px;position:relative}.auth-kicker{align-items:center;gap:var(--space-2);color:var(--color-accent);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-3);font-weight:600;display:flex}.auth-story-copy h2{max-width:12ch;font:600 var(--text-display-lg)/1.02 var(--font-display);letter-spacing:-.04em;color:var(--color-ink)}.auth-story-copy>p:last-child{max-width:42ch;margin-top:var(--space-4);color:var(--color-ink-soft);font-size:var(--text-body-lg);line-height:1.6}.auth-preview{z-index:1;border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface);width:min(100%,440px);box-shadow:var(--shadow-lg);padding:var(--space-4);position:relative}.preview-date{padding:var(--space-1) var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;display:flex}.preview-date span{color:var(--color-accent);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em}.preview-date strong{font-size:var(--text-sm);color:var(--color-ink);font-weight:500}.preview-row{gap:var(--space-3);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--color-border);grid-template-columns:44px 8px 1fr auto;align-items:center;display:grid}.preview-time{font-size:var(--text-xs);color:var(--color-ink-muted);font-weight:600}.preview-dot{background:var(--color-accent);border-radius:50%;width:8px;height:8px}.preview-dot.coral{background:var(--color-meals)}.preview-dot.violet{background:var(--color-calendar)}.preview-row strong,.preview-row small,.preview-task strong,.preview-task small{display:block}.preview-row strong,.preview-task strong{font-size:var(--text-sm);color:var(--color-ink);font-weight:500}.preview-row small,.preview-task small{font-size:var(--text-xs);color:var(--color-ink-muted);margin-top:var(--space-1)}.preview-avatar{width:28px;height:28px;color:var(--color-on-accent);background:var(--color-accent);border-radius:50%;place-items:center;font-size:9px;font-style:normal;font-weight:600;display:grid}.preview-avatar.violet{background:var(--color-calendar)}.preview-task{gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--color-accent-soft);align-items:center;display:flex}.preview-task>span{background:var(--color-accent);width:26px;height:26px;color:var(--color-on-accent);border-radius:50%;place-items:center;display:grid}.auth-private{z-index:1;align-items:center;gap:var(--space-2);color:var(--color-ink-muted);font-size:var(--text-xs);margin-top:var(--space-4);display:flex;position:relative}.auth-panel{padding:var(--space-10) var(--space-6);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-form-wrap{width:100%;max-width:420px}.auth-mobile-brand{margin-bottom:var(--space-6);display:none}@media (max-width:820px){.auth-shell{display:block}.auth-story{padding:var(--space-8) var(--space-5);border-radius:0 0 var(--radius-2xl) var(--radius-2xl);min-height:auto}.auth-story-copy{margin:var(--space-8) 0 var(--space-6)}.auth-story-copy h2{font-size:var(--text-display);max-width:11ch}.auth-story-copy>p:last-child{font-size:var(--text-body);margin-top:var(--space-3)}.auth-preview{padding:var(--space-3);border-radius:var(--radius-xl)}.preview-row{padding:var(--space-2) var(--space-2)}.preview-task{display:none}.auth-private{margin-top:var(--space-3)}.auth-panel{padding:var(--space-6) var(--space-4);min-height:auto}.auth-mobile-brand{display:flex}}.page-header{border-bottom:1px solid var(--color-border);margin-bottom:var(--space-5)}.minimal-page-brand{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);color:var(--color-ink);font-size:var(--text-sm);letter-spacing:.1em;display:flex}.minimal-page-brand img{border-radius:var(--radius-md);object-fit:cover;width:38px;height:38px}.page-header .page-title{font-weight:600}.page-header-content>div>p:first-child{color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;font-weight:600;font-size:var(--text-xs)}.minimal-auth{min-height:100vh;padding:var(--space-12) var(--space-5);background:#fafafa;justify-content:center;align-items:center;display:flex}.minimal-auth-inner{text-align:center;width:100%;max-width:440px}.minimal-auth-logo{object-fit:contain;border-radius:var(--radius-xl);width:100px;height:100px;margin:0 auto 20px}.minimal-auth-title{font:700 clamp(32px,5vw,44px)/1.08 var(--font-display);letter-spacing:-.04em;color:var(--color-ink);margin-bottom:10px}.minimal-auth-card{text-align:left;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.minimal-auth-card label>span{text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-muted);margin-bottom:8px;font-size:11px;font-weight:600;display:block}.minimal-auth-card input{border-radius:var(--radius-xl);width:100%;min-height:54px;font-size:var(--text-body-lg);color:var(--color-ink);transition:background var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out);background:#e8edf6;border:none;padding:0 18px}.minimal-auth-card input::placeholder{color:var(--color-ink-faint)}.minimal-auth-card input:hover{background:#e0e5f2}.minimal-auth-card input:focus{background:#e0e5f2;outline:none;box-shadow:0 0 0 3px #e85d3d1f}.minimal-auth-card button[type=submit]{border-radius:var(--radius-xl);width:100%;min-height:54px;font-size:var(--text-body-lg);background:var(--color-accent);color:var(--color-on-accent);transition:background var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out),opacity var(--motion-fast) var(--ease-out);margin-top:24px;font-weight:600}.minimal-auth-card button[type=submit]:active{transform:scale(.99)}.minimal-or{align-items:center;gap:var(--space-4);color:var(--color-ink-muted);margin:var(--space-8) 0;font-size:var(--text-xs);letter-spacing:.1em;justify-content:center;display:flex}.minimal-google{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);justify-content:center;align-items:center;gap:var(--space-3);width:100%;min-height:56px;font-size:var(--text-body-lg);color:var(--color-ink);transition:border-color var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out);font-weight:500;display:flex}.minimal-google svg{width:22px;height:22px}.minimal-auth-card button[type=submit]:hover{background:var(--color-accent-strong)}.minimal-auth-card button[type=submit].btn-create{color:#fff;background:#ffab9e}.minimal-auth-card button[type=submit].btn-create:hover{background:var(--color-accent)}.minimal-or{color:var(--color-ink-faint);letter-spacing:.08em;justify-content:center;align-items:center;gap:18px;margin:42px 0;font-size:12.5px;display:flex}.minimal-or span{background:var(--color-border);flex:1;height:1px}.minimal-google{border:1px solid var(--color-border);border-radius:var(--radius-control);background:#fff;justify-content:center;align-items:center;gap:14px;width:100%;min-height:58px;font-size:17px;display:flex}.minimal-google span{color:#4285f4;font-size:20px;font-weight:800}.minimal-google:hover{border-color:var(--color-border-strong);background:var(--color-surface-sunken)}.google-mark{flex:none;width:24px;height:24px}.onboarding-hint{color:var(--color-ink-faint);margin:-4px 0 20px;font-size:12.5px;line-height:1.5}.onboarding-recovery{border-radius:var(--radius-sm);background:var(--color-warn-soft);text-align:center;margin-top:14px;padding:12px}.onboarding-recovery p{color:var(--color-warn);font-size:12.5px}.onboarding-recovery button{color:var(--color-accent);text-underline-offset:3px;margin-top:9px;font-size:12px;font-weight:750;text-decoration:underline}.onboarding-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.onboarding-grid label{gap:6px;display:grid}.onboarding-grid span,.onboarding-choice-group>span{text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-soft);font-size:11px;font-weight:800}.onboarding-grid input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken);text-align:center;width:100%;min-height:50px;color:var(--color-ink);padding:0 12px;font-size:18px;font-weight:750}.onboarding-choice-group{gap:8px;display:grid}.onboarding-choice-group>div{flex-wrap:wrap;gap:8px;display:flex}.onboarding-choice-group button{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:40px;color:var(--color-ink-soft);justify-content:center;align-items:center;gap:7px;padding:9px 13px;font-size:12px;font-weight:750;transition:transform .16s,border-color .16s,background .16s;display:inline-flex;box-shadow:0 3px 10px #312a5b09}.onboarding-choice-group button svg{color:var(--color-ink-faint);flex:none}.onboarding-choice-group button.selected{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong);box-shadow:0 5px 14px #5148c817}.onboarding-choice-group button.selected svg{color:var(--color-accent)}.onboarding-choice-group button:active{transform:scale(.97)}.onboarding-colors button{width:34px;height:34px;box-shadow:0 0 0 1px var(--color-border);border:3px solid #fff;border-radius:50%;padding:0}.onboarding-colors button.selected{box-shadow:0 0 0 2px var(--color-accent),0 8px 18px #5e4fd72e}.onboarding-channel-picker>div{flex-direction:column;gap:8px}.onboarding-channel-picker .onboarding-channel-card{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:64px;color:var(--color-ink);text-align:left;text-transform:none;letter-spacing:0;grid-template-columns:38px minmax(0,1fr) auto;justify-content:flex-start;align-items:center;gap:12px;padding:12px 16px;font-weight:600;display:grid}.onboarding-channel-picker .onboarding-channel-card:hover{border-color:var(--color-border-strong);transform:none}.onboarding-channel-picker .onboarding-channel-card.selected{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-ink);box-shadow:0 6px 18px #5148c81a}.onboarding-channel-picker .onboarding-channel-icon{border-radius:var(--radius-pill);background:var(--color-surface-sunken);width:38px;height:38px;color:var(--color-accent-strong);flex:none;place-items:center;display:grid}.onboarding-channel-picker .onboarding-channel-card.selected .onboarding-channel-icon{color:var(--color-accent);background:#fff}.onboarding-channel-picker .onboarding-channel-copy{min-width:0}.onboarding-channel-picker .onboarding-channel-copy strong{color:var(--color-ink);font-size:13.5px;font-weight:750;display:block}.onboarding-channel-picker .onboarding-channel-copy small{color:var(--color-ink-soft);text-transform:none;letter-spacing:0;margin-top:3px;font-size:11.5px;font-weight:500;display:block}.onboarding-channel-picker .onboarding-channel-check{color:var(--color-accent);flex:none}.onboarding-hint-channel{border-radius:var(--radius-control);background:var(--color-accent-soft);color:var(--color-accent-strong);margin:0 0 16px;padding:10px 12px;font-size:12px;font-weight:500}.partner-consent{border:1px solid var(--color-border);border-radius:var(--radius-control);text-align:left;background:#fff;grid-template-columns:22px 1fr;gap:10px;margin:2px 0 4px;padding:12px;display:grid!important}.partner-consent input{width:18px;height:18px;accent-color:var(--color-accent);margin-top:2px}.partner-consent strong{color:var(--color-ink);font-size:12.5px;display:block}.partner-consent small{color:var(--color-ink-soft);margin-top:4px;font-size:11.5px;line-height:1.45;display:block}@media (max-width:420px){.onboarding-grid{grid-template-columns:1fr 1fr}.onboarding-grid label:first-child{grid-column:1/-1}}.password-actions{justify-content:space-between;align-items:center;margin:-2px 0 14px;display:flex}.password-actions button{color:var(--color-ink-soft);align-items:center;gap:7px;font-size:14px;font-weight:500;display:flex}.password-actions button:last-child{color:var(--color-accent);font-weight:600}.password-strength{gap:6px;margin:8px 0 14px;font-size:12px;display:grid}.password-strength-head{color:var(--color-ink-soft);justify-content:space-between;align-items:center;display:flex}.password-strength-label{align-items:center;gap:6px;font-weight:600;display:inline-flex}.password-strength-label svg{color:var(--color-good)}.password-strength-rule{font-variant-numeric:tabular-nums;font-size:11px}.password-strength-rule.met{color:var(--color-good);font-weight:600}.password-strength-bar{border-radius:var(--radius-pill);background:var(--color-surface-sunken);grid-template-columns:1fr 1fr 1fr;gap:4px;height:6px;display:grid;overflow:hidden}.password-strength-segment{background:0 0;transition:background .18s}.password-strength-segment.filled.amber{background:#c08a2a}.password-strength-segment.filled.warn{background:var(--color-warn)}.password-strength-segment.filled.accent{background:var(--color-accent)}.password-strength-segment.filled.good{background:var(--color-good)}.password-strength-segment.filled.faint{background:var(--color-ink-faint)}.password-strength-hint{color:var(--color-ink-faint);margin:0;font-size:11.5px;line-height:1.45}.password-strength-hint.is-error{color:var(--color-warn);font-weight:600}.password-strength-compact{margin-top:4px;margin-bottom:10px}.recovery-intro{max-width:38ch;color:var(--color-ink-soft);text-align:center;margin:-24px auto 34px;font-size:15px;line-height:1.5}.recovery-back{color:var(--color-accent);margin:22px auto 0;font-size:14px;font-weight:600;display:block}.recovery-sent{text-align:center;flex-direction:column;align-items:center;padding:10px 0 34px;display:flex}.recovery-mail{background:var(--color-accent-soft);width:58px;height:58px;color:var(--color-accent);border-radius:50%;place-items:center;margin-bottom:18px;font-size:25px;font-weight:700;display:grid}.recovery-sent strong{font-size:20px}.recovery-sent span{color:var(--color-ink-soft);margin-top:8px;font-size:14px}.calendar-page{padding-top:8px}.calendar-hero{justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding:0 20px 18px;display:flex}.calendar-hero-date{flex-direction:column;gap:1px;display:flex}.calendar-hero-dayname{color:var(--color-accent-strong);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:700}.calendar-hero-daynum{letter-spacing:-.05em;color:var(--color-ink);font-size:44px;font-weight:650;line-height:1}.calendar-hero-month{color:var(--color-ink-soft);margin-top:3px;font-size:13px;font-weight:600}.calendar-hero-actions{align-items:center;gap:6px;display:flex}.calendar-hero-action{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-ink-soft);transition:background var(--motion-fast) ease,color var(--motion-fast) ease,transform var(--motion-fast) ease;border-radius:50%;place-items:center;display:grid}.calendar-hero-action:hover{background:var(--color-accent-soft);color:var(--color-accent-strong)}.calendar-hero-action:active{transform:scale(.9)}.calendar-hero-action-primary{background:var(--color-accent);color:#fff;border:0;width:36px;height:36px;box-shadow:0 4px 10px #5148c82e}.calendar-hero-action-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #5148c840;background:var(--color-accent)!important;color:#fff!important}.calendar-hero-action-settings{color:var(--color-ink-faint);background:0 0;border:0;width:32px;height:32px}.calendar-hero-action-settings:hover{background:var(--color-accent-soft);color:var(--color-accent-strong)}.calendar-daystrip{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:14px;padding:0 20px;display:grid}.calendar-daystrip-item{border-radius:var(--radius-card);color:var(--color-ink-soft);transition:all var(--motion-fast) ease;background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;display:flex}.calendar-daystrip-item:hover{background:var(--color-accent-soft);border-color:var(--color-border)}.calendar-daystrip-item:active{transform:scale(.94)}.calendar-daystrip-item.selected{background:var(--color-accent);border-color:var(--color-accent);color:#fff;box-shadow:0 4px 12px #5148c82e}.calendar-daystrip-item.today:not(.selected){border-color:var(--color-accent);background:#2563eb14}@supports (color:color-mix(in lab, red, red)){.calendar-daystrip-item.today:not(.selected){background:color-mix(in srgb,var(--color-accent) 8%,transparent)}}.calendar-daystrip-dow{text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:800}.calendar-daystrip-num{font-size:18px;font-weight:650;line-height:1}.calendar-daystrip-item.selected .calendar-daystrip-num{font-weight:700}.calendar-daystrip-dot{opacity:.6;background:currentColor;border-radius:50%;width:4px;height:4px}.calendar-daystrip-item.selected .calendar-daystrip-dot{opacity:.8;background:#fff}.calendar-view-toggle{gap:3px;padding:0 20px 14px;display:flex}.calendar-view-btn{border-radius:var(--radius-pill);background:#11182706;border:0;align-items:center;gap:5px;padding:6px 14px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.calendar-view-btn{background:color-mix(in srgb,var(--color-border) 40%,transparent)}}.calendar-view-btn{color:var(--color-ink-soft);transition:all var(--motion-fast) ease;font-size:12px;font-weight:650}.calendar-view-btn:hover{background:#2563eb29}@supports (color:color-mix(in lab, red, red)){.calendar-view-btn:hover{background:color-mix(in srgb,var(--color-accent) 16%,transparent)}}.calendar-view-btn:hover{color:var(--color-accent-strong)}.calendar-view-btn.active{background:var(--color-accent);color:#fff}.calendar-month{padding:0 20px 10px}.calendar-month-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:14px 2px 12px;display:flex}.calendar-month-header strong{color:var(--color-ink);font-size:15px;font-weight:650}.calendar-month-header button{border-radius:var(--radius-xs);border:1px solid var(--color-border);width:32px;height:32px;color:var(--color-ink-soft);transition:background var(--motion-fast) ease;place-items:center;display:grid}.calendar-month-header button:hover{background:var(--color-accent-soft)}.calendar-month-weekdays{grid-template-columns:repeat(7,1fr);gap:3px;padding:8px 0 4px;display:grid}.calendar-month-weekdays span{text-align:center;color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.02em;font-size:10px;font-weight:700}.calendar-month-grid-area{align-items:stretch;gap:6px;display:flex}.calendar-weeknums{flex-direction:column;gap:3px;padding-top:0;display:flex}.calendar-weeknums span{color:var(--color-ink-faint);letter-spacing:.01em;text-align:center;flex:1;justify-content:center;align-items:center;min-width:22px;padding-bottom:1px;font-size:10px;font-weight:700;display:flex}.calendar-month-grid{flex:1;grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.calendar-month-grid button{aspect-ratio:1;border-radius:var(--radius-sm);color:var(--color-ink);transition:background var(--motion-fast) ease,transform var(--motion-fast) ease;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:13px;font-weight:500;display:flex}.calendar-month-grid button:hover{background:var(--color-accent-soft)}.calendar-month-grid button:active{transform:scale(.9)}.calendar-month-grid button.outside{color:var(--color-ink-faint);opacity:.5}.calendar-month-grid button.selected{background:var(--color-accent);color:#fff;box-shadow:0 3px 8px #5148c833}.calendar-month-grid button.today:not(.selected){background:#2563eb1a}@supports (color:color-mix(in lab, red, red)){.calendar-month-grid button.today:not(.selected){background:color-mix(in srgb,var(--color-accent) 10%,transparent)}}.calendar-month-grid button.today:not(.selected){color:var(--color-accent-strong);font-weight:700}.calendar-month-grid b{font-size:13px;font-weight:500;line-height:1.2}.calendar-month-grid button.selected b{font-weight:600}.calendar-month-dots{justify-content:center;gap:2px;display:flex}.calendar-month-dots i{border-radius:50%;width:3.5px;height:3.5px;display:block}.calendar-sources{padding:0 20px 10px}.calendar-sources-tabs{scrollbar-width:none;-ms-overflow-style:none;gap:4px;display:flex;overflow-x:auto}.calendar-sources-tab{white-space:nowrap;border-radius:var(--radius-tag);background:#11182707;border:0;align-items:center;gap:4px;padding:5px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.calendar-sources-tab{background:color-mix(in srgb,var(--color-border) 45%,transparent)}}.calendar-sources-tab{color:var(--color-ink-soft);transition:all var(--motion-fast) ease;flex-shrink:0;font-size:10.5px;font-weight:650}.calendar-sources-tab:hover{background:#2563eb33}@supports (color:color-mix(in lab, red, red)){.calendar-sources-tab:hover{background:color-mix(in srgb,var(--color-accent) 20%,transparent)}}.calendar-sources-tab:hover{color:var(--color-accent-strong)}.calendar-sources-tab.selected{background:var(--color-accent);color:#fff}.calendar-sources-tab i{border-radius:50%;flex:none;width:6px;height:6px}.calendar-sources-more{background:#11182707;border:0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.calendar-sources-more{background:color-mix(in srgb,var(--color-border) 45%,transparent)}}.calendar-sources-more{color:var(--color-ink-soft);transition:background var(--motion-fast) ease;flex-shrink:0;font-size:10px;font-weight:700}.calendar-sources-more:hover{background:#2563eb33}@supports (color:color-mix(in lab, red, red)){.calendar-sources-more:hover{background:color-mix(in srgb,var(--color-accent) 20%,transparent)}}.calendar-sources-more:hover{color:var(--color-accent-strong)}.calendar-agenda-section{padding:0 20px}.calendar-agenda-label{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px;font-size:11px;font-weight:800}.calendar-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 20px;display:flex}.calendar-empty-icon{background:var(--color-accent-soft);width:52px;height:52px;color:var(--color-accent);border-radius:50%;place-items:center;margin-bottom:14px;display:grid}.calendar-empty strong{color:var(--color-ink);margin-bottom:5px;font-size:16px}.calendar-empty p{color:var(--color-ink-soft);font-size:13px;line-height:1.45}.calendar-agenda{gap:10px;display:grid}.calendar-event{border-radius:var(--radius-card);background:var(--color-surface);transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-normal) var(--ease-out),transform var(--motion-fast) var(--ease-out);cursor:pointer;border:1px solid #0000;grid-template-columns:56px 3px 1fr;gap:14px;padding:14px 16px 14px 14px;display:grid}.calendar-event:hover{border-color:var(--color-border-strong);transform:translateY(-1px);box-shadow:0 4px 12px #1018280f,0 2px 4px #1018280a}.calendar-event:active{transform:scale(.995)}.calendar-event-time{flex-direction:column;align-items:flex-end;gap:1px;padding-top:1px;display:flex}.calendar-event-start{color:var(--color-ink);font-size:13px;font-weight:650;line-height:1.2}.calendar-event-end{color:var(--color-ink-faint);font-size:10px;font-weight:600;line-height:1.2}.calendar-event-duration{color:var(--color-ink-faint);background:#9ca3af1a;border-radius:6px;margin-top:3px;padding:1px 5px;font-size:10px;font-weight:500;line-height:1.2}@supports (color:color-mix(in lab, red, red)){.calendar-event-duration{background:color-mix(in srgb,var(--color-ink-faint) 10%,transparent)}}.calendar-event-line{opacity:.6;border-radius:99px;flex:none;align-self:stretch;width:3px}.calendar-event-body{min-width:0;position:relative}.calendar-event-body strong{color:var(--color-ink);padding-right:28px;font-size:14px;font-weight:650;line-height:1.3;display:block}.calendar-event-meta{flex-wrap:wrap;align-items:center;gap:3px 10px;margin-top:5px;display:flex}.calendar-event-type{text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:800}.calendar-event-location{color:var(--color-ink-soft);align-items:center;gap:3px;font-size:11px;display:inline-flex}.calendar-event-location svg{flex:none;width:12px}.calendar-event-people{color:var(--color-ink-faint);font-size:11px}.calendar-event-avatars{align-self:center;align-items:center;display:flex}.calendar-event-delete{border-radius:var(--radius-xs);width:24px;height:24px;color:var(--color-ink-faint);opacity:0;transition:opacity var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out);place-items:center;display:grid;position:absolute;top:0;right:0}.calendar-event:hover .calendar-event-delete{opacity:1}.calendar-event-delete:hover{background:var(--color-warn-soft);color:var(--color-warn)}.calendar-form-row{grid-template-columns:1.4fr 1fr 1fr;gap:8px;display:grid}.calendar-select-label{margin-bottom:14px;display:block}.calendar-select-label>span{color:var(--color-ink-soft);margin-bottom:6px;font-size:12.5px;font-weight:500;display:block}.calendar-select-label select{border:1px solid var(--color-border);background:var(--color-surface-sunken);border-radius:var(--radius-control);width:100%;min-height:46px;color:var(--color-ink);transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,background var(--motion-fast) ease;outline:0;padding:0 12px;font-size:15px}.calendar-select-label select:hover{border-color:var(--color-border-strong)}.calendar-select-label select:focus{border-color:var(--color-accent);background:var(--color-surface);box-shadow:0 0 0 3px #2563eb29}@supports (color:color-mix(in lab, red, red)){.calendar-select-label select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 16%,transparent)}}.calendar-readonly-note{color:var(--color-ink-faint);margin:-2px 0 16px;font-size:11.5px;line-height:1.45}.calendar-save-error{color:var(--color-warn);margin-bottom:12px;font-size:12px}.calendar-conflict-warning{border:1px solid var(--color-warn);background:#fceeee}@supports (color:color-mix(in lab, red, red)){.calendar-conflict-warning{background:color-mix(in srgb,var(--color-warn) 8%,var(--color-surface))}}.calendar-conflict-warning{border-radius:var(--radius-lg);margin-bottom:14px;padding:12px 14px}.calendar-conflict-warning>strong{color:var(--color-warn);margin-bottom:8px;font-size:13.5px;font-weight:600;display:block}.calendar-conflict-warning ul{gap:6px;margin:0 0 8px;padding:0;list-style:none;display:grid}.calendar-conflict-warning li{flex-direction:column;gap:1px;font-size:12.5px;line-height:1.4;display:flex}.calendar-conflict-warning li span{color:var(--color-ink);font-weight:500}.calendar-conflict-warning li small{color:var(--color-ink-soft);font-size:11px}.calendar-conflict-warning>p{color:var(--color-ink-soft);margin:0 0 12px;font-size:11.5px;line-height:1.5}.calendar-conflict-actions{gap:8px;display:flex}.calendar-conflict-actions>button{flex:1}.settings-tab-bar{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;padding:0 16px 2px;display:flex;overflow-x:auto}.settings-tab-bar::-webkit-scrollbar{display:none}.settings-tab-bar button{white-space:nowrap;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);border-radius:var(--radius-tag);transition:background var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease;flex:none;padding:8px 14px;font-size:12.5px;font-weight:600}.settings-tab-bar button:active{transform:scale(.97)}.settings-tab-bar button.selected{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}[data-settings-tab]>section[data-tab]{display:block}[data-settings-tab=appearance]>section[data-tab]:not([data-tab=appearance]),[data-settings-tab=family]>section[data-tab]:not([data-tab=family]),[data-settings-tab=billing]>section[data-tab]:not([data-tab=billing]),[data-settings-tab=account]>section[data-tab]:not([data-tab=account]),[data-settings-tab=integrations]>section[data-tab]:not([data-tab=integrations]),[data-settings-tab=support]>section[data-tab]:not([data-tab=support]){display:none}.meal-card-new{background:var(--color-surface);border-radius:var(--radius-card);border:1px solid #0000;overflow:hidden;box-shadow:0 1px 3px #1018280a,0 6px 18px #10182808}.meal-card-header{justify-content:space-between;align-items:center;padding:16px 18px 0;display:flex}.meal-card-date{color:var(--color-ink);font-size:15px;font-weight:650}.meal-card-avatars{align-items:center;display:flex}.meal-card-avatar{color:#fff;border:2px solid var(--color-surface);border-radius:50%;place-items:center;width:26px;height:26px;margin-left:-6px;font-size:11px;font-weight:700;display:grid}.meal-card-avatar:first-child{margin-left:0}.meal-card-header-avatars{position:relative}.meal-card-tooltip{z-index:1000;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:8px;min-width:210px;padding:10px 12px;display:grid;position:fixed;box-shadow:0 12px 32px #10182829}.meal-card-tooltip-row{align-items:center;gap:9px;min-width:0;display:flex}.meal-card-tooltip-row strong,.meal-card-tooltip-row small{display:block}.meal-card-tooltip-row strong{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.meal-card-tooltip-row small{color:var(--color-ink-soft);margin-top:1px;font-size:10.5px}.meal-card-empty{text-align:center;padding:16px 18px 20px}.meal-card-empty-text{color:var(--color-ink-soft);margin-bottom:10px;font-size:13px}.meal-card-add-btn{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);align-items:center;gap:5px;padding:7px 14px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.meal-card-add-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.meal-card-slots{padding:12px 18px 16px}.meal-card-slot+.meal-card-slot{border-top:1px solid var(--color-border);margin-top:14px;padding-top:14px}.meal-card-slot-top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.meal-card-slot-info{flex:1;min-width:0}.meal-card-slot-name{margin:0;font-size:18px;font-weight:750;line-height:1.2}.meal-card-slot-dish{color:var(--color-ink-soft);align-items:center;gap:5px;margin-top:4px;font-size:13px;display:flex}.meal-card-slot-dish span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meal-card-slot-thumb{object-fit:cover;border-radius:8px;flex-shrink:0;width:36px;height:36px;margin-left:auto}.meal-card-slot-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.meal-card-icon-btn{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);width:32px;height:32px;color:var(--color-ink-soft);cursor:pointer;place-items:center;transition:all .15s;display:grid}.meal-card-icon-btn:hover{background:var(--color-accent-soft);color:var(--color-accent);border-color:var(--color-accent)}.meal-card-slot-buttons{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.meal-card-slot-actions-right{margin-left:auto}.meal-card-btn{border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:5px;padding:8px 16px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.meal-card-btn-dark{background:var(--color-ink);color:#fff}.meal-card-btn-dark:hover{opacity:.88}.meal-card-btn-outline{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-border)}.meal-card-btn-outline:hover{border-color:var(--color-accent);color:var(--color-accent)}.kw-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:14px 16px;box-shadow:0 1px 3px #10182808}.kw-card-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.kw-card-category{border-radius:var(--radius-pill);color:#9f1239;background:#fee2e280;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.kw-card-date{color:var(--color-ink);font-size:15px;font-weight:700}.kw-card-name{color:var(--color-ink);margin:0 0 10px;font-size:17px;font-weight:750}.kw-card-bottom{justify-content:space-between;align-items:center;gap:8px;display:flex}.kw-card-actions{align-items:center;gap:6px;display:flex}.kw-card-action{border-radius:var(--radius-pill);cursor:pointer;border:none;align-items:center;gap:4px;padding:7px 14px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.kw-card-action-date{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-border)}.kw-card-action-date:hover{border-color:var(--color-accent);color:var(--color-accent)}.kw-card-action-replace{background:var(--color-warn);color:#fff}.kw-card-action-replace:hover{opacity:.88}.kw-card-delete{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);width:30px;height:30px;color:var(--color-ink-soft);cursor:pointer;place-items:center;transition:all .15s;display:grid}.kw-card-delete:hover{background:var(--color-warn-soft);color:var(--color-warn);border-color:var(--color-warn)}.kw-card-status{text-align:right;flex-shrink:0}.kw-status-text{font-size:12px;font-weight:600;display:block}.kw-status-ok{color:var(--color-good)}.kw-status-expired{color:var(--color-warn)}.kw-card-location{color:var(--color-ink-soft);margin-top:1px;font-size:11px;display:block}.reference-tasks .page-header{background:var(--color-surface)}.reference-tasks .page-header-aside{display:none!important}.task-board-group{background:var(--color-surface);padding:var(--space-5);border-radius:var(--radius-xl);border:1px solid #0000}.task-group-title{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.task-group-title h2{align-items:center;gap:var(--space-2);font-size:var(--text-section);color:var(--color-ink);font-weight:600;display:flex}.task-group-title h2 svg{width:20px}.task-group-title>span{border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent-strong);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:700}.task-list-share{width:30px;height:30px;color:var(--color-ink-soft);transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out);background:0 0;border:1px solid #0000;border-radius:6px;flex:none;place-items:center;display:grid}.task-list-share:hover{border-color:var(--color-border);background:var(--color-surface-sunken);color:var(--color-ink)}.task-board-group.green .task-group-title h2{color:var(--color-good)}.task-board-group.green .task-group-title>span{background:var(--color-good-soft);color:var(--color-good)}.task-board-group.slate .task-group-title h2{color:var(--color-ink-soft)}.task-board-group.slate .task-group-title>span{background:var(--color-surface-sunken);color:var(--color-ink-soft)}.task-board-list{gap:var(--space-3);display:grid}.task-board-row{align-items:center;gap:var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4);transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-normal) var(--ease-out);border:1px solid #0000;display:flex}.task-board-row>div:nth-child(2){flex:1}.task-board-row strong,.task-board-row small{display:block}.task-board-row strong{font-size:var(--text-body);font-weight:500}.task-board-row small{font-size:var(--text-sm);color:var(--color-ink-soft);margin-top:var(--space-1)}.task-row-delete{border:1px solid var(--color-border);border-radius:var(--radius-pill);width:38px;height:38px;color:var(--color-ink-muted);background:var(--color-surface);transition:transform var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out);place-items:center;display:grid}.task-row-delete svg{width:17px;height:17px}.task-row-delete:hover{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-1px)}.weekly-progress{background:var(--color-accent);color:var(--color-on-accent);padding:var(--space-6);border-radius:var(--radius-xl)}.weekly-progress h2{font-size:var(--text-section)}.weekly-progress p{font-size:var(--text-body);margin:var(--space-2) 0 var(--space-5);color:var(--color-on-accent)/80;line-height:1.5}.weekly-progress>div{background:var(--color-on-accent)/20;border-radius:10px;height:10px;overflow:hidden}.weekly-progress>div span{background:var(--color-on-accent);height:100%;display:block}.weekly-progress small{margin-top:var(--space-3);justify-content:space-between;display:flex}.weekly-progress small b{font-weight:500}.reference-meals{background:#fafafa}.reference-meals .meal-day-card{background:#fdfeff}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card{background:color-mix(in srgb,var(--color-accent-soft) 12%,var(--color-surface))}}.reference-meals .meal-day-card{box-shadow:var(--shadow-xs);border-color:#0000}.reference-meals .meal-day-card:nth-child(3n+1){background:#fffefc}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card:nth-child(3n+1){background:color-mix(in srgb,var(--color-meals-soft) 14%,var(--color-surface))}}.reference-meals .meal-day-card:nth-child(3n){background:#fdfffe}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card:nth-child(3n){background:color-mix(in srgb,var(--color-shopping-soft) 12%,var(--color-surface))}}.reference-meals .meal-day-card .meal-slot-button{min-height:58px;padding:var(--space-2) var(--space-1);padding-left:var(--space-5);border-bottom:1px solid #1118270a;position:relative}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-button{border-bottom:1px solid color-mix(in srgb,var(--color-border) 68%,transparent)}}.reference-meals .meal-day-card .meal-slot-button{background:0 0;border-radius:0}.reference-meals .meal-day-card .meal-slot-button.is-dinner{background:#fffefc}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-button.is-dinner{background:color-mix(in srgb,var(--color-meals-soft) 14%,var(--color-surface))}}.reference-meals .meal-day-card .meal-day-clear{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);color:var(--color-ink-soft);transition:background .16s var(--m3-motion-standard),border-color .16s var(--m3-motion-standard),color .16s var(--m3-motion-standard);background:0 0;border:1px solid #0000;border-radius:8px;font-size:11px;font-weight:600;display:inline-flex}.reference-meals .meal-day-card .meal-day-clear:hover{background:var(--color-warn-soft);color:var(--color-warn);border-color:var(--color-warn)}.reference-meals .meal-day-card .meal-day-clear:active{transform:scale(.97)}.reference-meals .meal-day-card .meal-slot-button>svg{opacity:.75;color:var(--color-ink-soft)!important;display:block!important}.reference-meals .meal-day-card .meal-slot-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent)!important;font-size:12px!important;font-weight:750!important}.reference-meals .meal-day-card .meal-slot-button .meal-slot-clear{width:22px;height:22px;color:var(--color-ink-faint);background:var(--color-surface);border:1px solid var(--color-border);z-index:2;cursor:pointer;border-radius:50%;place-items:center;transition:background .18s,color .18s,border-color .18s;display:grid;position:absolute;top:50%;left:-6px;transform:translateY(-50%)}.reference-meals .meal-day-card .meal-slot-button .meal-slot-clear:hover{background:var(--color-warn-soft);color:var(--color-warn);border-color:#dc26264d}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-button .meal-slot-clear:hover{border-color:color-mix(in srgb,var(--color-warn) 30%,transparent)}}.reference-meals .meal-day-card .meal-slot-button .meal-slot-clear:active{transform:translateY(-50%)scale(.88)}.reference-meals .meal-day-card .meal-slot-value.is-empty{color:#6b747f!important}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-value.is-empty{color:color-mix(in srgb,var(--color-ink-soft) 82%,var(--color-surface))!important}}.reference-meals .meal-slot-meta{align-items:center;gap:10px;min-height:24px;margin-top:5px;display:flex}.reference-meals .meal-slot-adder{color:var(--color-ink-soft);align-items:center;gap:6px;display:inline-flex}.reference-meals .meal-slot-adder small{font-size:10px;line-height:1}.reference-meals .meal-slot-meta .meal-cook-hint{color:var(--color-meals-strong);align-items:center;gap:4px;font-size:10px;font-weight:750;display:inline-flex}.reference-meals .meal-slot-row{border-bottom:1px solid #1118270a;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-slot-row{border-bottom:1px solid color-mix(in srgb,var(--color-border) 68%,transparent)}}.reference-meals .meal-slot-row:last-child{border-bottom:0}.reference-meals .meal-day-card .meal-slot-row .meal-slot-button{width:100%;min-width:0;border:0!important}.reference-meals .meal-slot-actions{align-items:center;gap:4px;display:flex}.reference-meals .meal-day-card .meal-slot-actions button{place-items:center;width:34px;min-width:34px;height:34px;display:grid;border:1px solid #1118270b!important;padding:0!important}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-actions button{border:1px solid color-mix(in srgb,var(--color-border) 76%,transparent)!important}}.reference-meals .meal-day-card .meal-slot-actions button{border-radius:var(--radius-pill)!important;background:#ffffffe6!important}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-actions button{background:color-mix(in srgb,var(--color-surface) 90%,transparent)!important}}.reference-meals .meal-day-card .meal-slot-actions button{color:var(--color-ink-soft)}.reference-meals .meal-day-card .meal-slot-actions button:hover{color:var(--color-accent-strong);background:var(--color-accent-soft)!important}.reference-meals .meal-day-card .meal-slot-actions button svg{stroke-width:2.25px;flex:none;display:block;color:currentColor!important;stroke:currentColor!important;opacity:1!important}.reference-meals .meal-day-card .meal-slot-actions .meal-slot-tool{width:auto;min-width:auto;color:var(--color-ink-soft);white-space:nowrap;gap:5px;font-size:10.5px;font-weight:800;display:flex;padding:0 10px!important}.reference-meals .meal-day-card .meal-slot-actions .meal-start-cooking{gap:5px;width:auto;min-width:auto;display:flex;border-color:#235ddc74!important;padding:0 11px!important}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-actions .meal-start-cooking{border-color:color-mix(in srgb,var(--color-accent) 42%,var(--color-border))!important}}.reference-meals .meal-day-card .meal-slot-actions .meal-start-cooking{color:var(--color-accent-strong);font-size:11px;font-weight:850;background:var(--color-accent-soft)!important}.meal-editor-tools{grid-template-columns:1fr 1fr;gap:8px;margin:2px 0 16px;display:grid}.meal-search-ingredient{margin:-2px 0 14px;position:relative}.meal-search-ingredient-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-ink);background:#f7fbff;padding:9px 12px;font-size:13px}@supports (color:color-mix(in lab, red, red)){.meal-search-ingredient-input{background:color-mix(in srgb,var(--color-accent-soft) 50%,var(--color-surface))}}.meal-search-ingredient-input{outline:none;transition:border-color .16s}.meal-search-ingredient-input:focus{border-color:var(--color-accent)}.meal-search-ingredient-input::placeholder{color:var(--color-ink-faint);font-size:12.5px}.meal-search-ingredient-spinner{color:var(--color-ink-faint);position:absolute;top:50%;right:10px;transform:translateY(-50%)}.meal-search-ingredient-results{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:6px;display:grid;position:absolute;top:calc(100% - 6px);left:0;right:0;box-shadow:0 8px 24px #1b193514}.meal-search-ingredient-result{text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;font-size:12.5px;transition:background .12s;display:flex}.meal-search-ingredient-result:hover{background:var(--color-accent-soft)}.meal-search-result-title{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.3;display:block;overflow:hidden}.meal-search-result-meta{color:var(--color-ink-faint);white-space:nowrap;flex-shrink:0;font-size:10.5px;font-weight:600;display:block}.meal-search-ingredient-error{color:var(--color-warn);margin-top:4px;font-size:11.5px}.meal-editor-tools button{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:44px;color:var(--color-accent-strong);justify-content:center;align-items:center;gap:7px;padding:10px 12px;font-size:12px;font-weight:750;display:flex}.saved-recipe-picker{border:1px solid var(--color-border);border-radius:var(--radius-section);background:#fcfdff;margin:0 0 18px;padding:14px}@supports (color:color-mix(in lab, red, red)){.saved-recipe-picker{background:color-mix(in srgb,var(--color-accent-soft) 18%,var(--color-surface))}}.saved-recipe-picker>div strong,.saved-recipe-picker>div span{display:block}.saved-recipe-picker>div strong{font-size:13px}.saved-recipe-picker>div span{color:var(--color-ink-soft);margin-top:3px;font-size:11.5px}.saved-recipe-picker ul{gap:6px;max-height:240px;margin-top:12px;display:grid;overflow:auto}.saved-recipe-picker li button{border:1px solid var(--color-border);border-radius:var(--radius-pill-sm);background:var(--color-surface);text-align:left;width:100%;padding:10px 11px}.saved-recipe-picker li span,.saved-recipe-picker li small{display:block}.saved-recipe-picker li span{font-size:13px;font-weight:700}.saved-recipe-picker li small{color:var(--color-ink-soft);margin-top:3px;font-size:11px}@media (max-width:600px){html,body{height:auto;min-height:100vh;overflow-x:hidden;overflow-y:auto}#root{min-height:100vh;overflow:visible}.app-shell{height:auto;min-height:100vh;overflow:visible}.app-content,.app-shell .app-content{height:auto!important;min-height:0!important;padding-bottom:0!important;overflow:visible!important}.pull-to-refresh-host,.app-content .pull-to-refresh-host{height:auto!important;min-height:0!important;overflow:visible!important}.reference-tasks,.app-content .reference-tasks{height:auto!important;min-height:0!important;padding-bottom:calc(140px + env(safe-area-inset-bottom,0px))!important;overflow:visible!important;transform:none!important}.reference-tasks .task-list-switcher{touch-action:pan-x;max-width:100%}.reference-tasks .task-board-row{min-width:0}.reference-tasks .task-row-copy{flex:auto;min-width:0}.reference-tasks .task-row-copy strong,.reference-tasks .task-row-copy small{overflow-wrap:anywhere}.reference-meals .meal-slot-row{grid-template-columns:minmax(0,1fr);gap:0;padding:10px 0 12px}.reference-meals .meal-day-card .meal-cook-hint{opacity:.6;font-size:10px;display:inline!important}.meal-slot-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.reference-meals .meal-day-card .meal-slot-row .meal-slot-button{align-items:flex-start;min-height:0;padding:4px 2px 10px!important}.reference-meals .meal-day-card .meal-slot-value{text-overflow:clip;white-space:normal;line-height:1.3;overflow:visible}.reference-meals .meal-day-card .meal-slot-button .meal-slot-clear{display:none}.reference-meals .meal-slot-actions{gap:6px;width:100%;padding-left:28px;display:flex}.reference-meals .meal-day-card .meal-slot-actions button,.reference-meals .meal-day-card .meal-slot-actions .meal-slot-tool,.reference-meals .meal-day-card .meal-slot-actions .meal-start-cooking{flex:1 1 0;justify-content:center;width:auto;min-width:0;height:38px;padding:0 8px!important}.meal-editor-tools{grid-template-columns:1fr}}@media (max-width:380px){.reference-meals .meal-day-card .meal-slot-actions button,.reference-meals .meal-day-card .meal-slot-actions .meal-slot-tool,.reference-meals .meal-day-card .meal-slot-actions .meal-start-cooking{gap:4px;font-size:9.5px;padding:0 6px!important}}.reference-groceries .kinship-card{box-shadow:none;border-color:var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6)}.reference-groceries .kinship-card li{padding:var(--space-3) var(--space-2);border:0}.reference-groceries .kinship-card li>span:nth-child(2){display:none}.reference-groceries .px-5>div>section>p{z-index:1;background:var(--color-surface);width:max-content;padding:0 var(--space-1);position:relative;font-size:var(--text-section)!important;text-transform:none!important;color:var(--color-ink)!important;letter-spacing:0!important;margin:0 0 var(--space-1) var(--space-4)!important}.reference-groceries .fixed.bottom-24{background:var(--color-accent)!important}.reference-settings .kinship-card{box-shadow:none;border-color:var(--color-border);padding:var(--space-5)!important}.reference-settings{overscroll-behavior-y:contain}.reference-settings section>h2{text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-soft);font-size:var(--text-xs)!important;margin-bottom:var(--space-4)!important}.reference-dashboard .kinship-card{box-shadow:var(--shadow-xs);border-color:var(--color-border);border-radius:var(--radius-lg)!important}.reference-dashboard section{margin-top:var(--space-8)}.reference-dashboard section h2{font-size:var(--text-section)}.reference-dashboard .page-header{border:0}.reference-dashboard .today-metric-card,.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card,.reference-dashboard .today-flow-card,.reference-dashboard .today-load-card,.reference-dashboard .today-meals-card,.reference-dashboard .today-groceries-card,.reference-dashboard .today-tasks-card{border-color:#1118270c!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-metric-card,.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card,.reference-dashboard .today-flow-card,.reference-dashboard .today-load-card,.reference-dashboard .today-meals-card,.reference-dashboard .today-groceries-card,.reference-dashboard .today-tasks-card{border-color:color-mix(in srgb,var(--color-border) 78%,transparent)!important}}.reference-dashboard .today-metric-card,.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card,.reference-dashboard .today-flow-card,.reference-dashboard .today-load-card,.reference-dashboard .today-meals-card,.reference-dashboard .today-groceries-card,.reference-dashboard .today-tasks-card{box-shadow:none!important}.reference-dashboard .today-bento-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;align-items:stretch;gap:14px;display:grid}.today-customize-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:40px;color:var(--color-ink-soft);border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:650;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.today-customize-trigger:hover,.today-customize-trigger.active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.today-customize-trigger:focus-visible{outline:3px solid #2563eb47}.today-customize-hint button:focus-visible{outline:3px solid #2563eb47}.today-card-move-handle button:focus-visible{outline:3px solid #2563eb47}@supports (color:color-mix(in lab, red, red)){.today-customize-trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent) 28%,transparent)}.today-customize-hint button:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent) 28%,transparent)}.today-card-move-handle button:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent) 28%,transparent)}}.today-customize-trigger:focus-visible{outline-offset:2px}.today-customize-hint button:focus-visible{outline-offset:2px}.today-card-move-handle button:focus-visible{outline-offset:2px}.today-customize-hint{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-accent-soft);color:var(--color-accent-strong);justify-content:space-between;align-items:center;gap:12px;margin-top:8px;margin-bottom:14px;padding:10px 12px;font-size:12px;font-weight:600;display:flex}.today-customize-hint span,.today-customize-hint button{align-items:center;gap:6px;display:inline-flex}.today-customize-hint button{background:var(--color-surface);color:var(--color-ink-soft);border-radius:8px;flex:none;padding:6px 8px}.reference-dashboard .today-bento-grid .is-customizing{cursor:grab;outline:2px dashed #2563eb7a;position:relative}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-bento-grid .is-customizing{outline:2px dashed color-mix(in srgb,var(--color-accent) 48%,transparent)}}.reference-dashboard .today-bento-grid .is-customizing{outline-offset:-2px;transition:opacity .14s,transform .14s,box-shadow .14s}.reference-dashboard .today-bento-grid .is-customizing:active{cursor:grabbing}.reference-dashboard .today-bento-grid .is-customizing.is-dragging{opacity:.46;transform:scale(.985)}.today-card-move-handle{z-index:8;border:1px solid var(--color-border-strong);background:#fffffff0;border-radius:10px;align-items:center;gap:5px;min-height:34px;padding:3px 4px 3px 8px;display:flex;position:absolute;top:8px;right:8px}@supports (color:color-mix(in lab, red, red)){.today-card-move-handle{background:color-mix(in srgb,var(--color-surface) 94%,transparent)}}.today-card-move-handle{box-shadow:var(--shadow-sm);color:var(--color-accent-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:11px;font-weight:700}.today-card-move-handle>span{text-overflow:ellipsis;white-space:nowrap;max-width:88px;overflow:hidden}.today-card-move-handle button{width:28px;height:28px;color:var(--color-ink-soft);border-radius:7px;place-items:center;display:grid}.today-card-move-handle button:hover:not(:disabled){background:var(--color-accent-soft);color:var(--color-accent-strong)}.today-card-move-handle button:disabled{opacity:.28;cursor:not-allowed}.today-card-resize-handle{z-index:8;border:1px solid var(--color-border-strong);background:#fffffff0;border-radius:8px;place-items:center;width:28px;height:28px;display:grid;position:absolute;bottom:8px;right:8px}@supports (color:color-mix(in lab, red, red)){.today-card-resize-handle{background:color-mix(in srgb,var(--color-surface) 94%,transparent)}}.today-card-resize-handle{box-shadow:var(--shadow-sm);color:var(--color-ink-soft);cursor:se-resize;touch-action:none;transition:background .15s,border-color .15s,transform .1s}.today-card-resize-handle:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong);color:var(--color-on-accent)}.today-card-resize-handle.resizing{background:var(--color-accent-strong);border-color:var(--color-accent-strong);color:var(--color-on-accent);transform:scale(1.1)}.resize-handle-inner{flex-direction:column;gap:3px;padding:2px;display:flex}.resize-dot{opacity:.7;background:currentColor;border-radius:50%;width:3px;height:3px}.reference-dashboard .today-bento-grid>.broadcast-home{grid-column:1/-1;margin:0}.reference-dashboard .today-bento-grid>.weather-now-card{order:1;grid-column:span 4;height:100%;margin:0}.reference-dashboard .today-bento-grid>.today-bento-kitchen{order:5;grid-column:span 5;margin:0}.reference-dashboard .today-bento-grid>.today-bento-kitchen>.kinship-card{height:100%}.reference-dashboard .today-bento-grid>.today-bento-schedule{order:2;grid-column:span 8;min-width:0;margin:0}.reference-dashboard .today-bento-grid>.today-bento-schedule>.kinship-card{height:100%}.reference-dashboard .today-bento-grid>.today-bento-meal-grid{display:contents}.reference-dashboard .today-bento-grid .today-meals-card{order:3;grid-column:span 6;height:100%;margin:0}.reference-dashboard .today-bento-grid .today-groceries-card{order:4;grid-column:span 6;height:100%;margin:0}.reference-dashboard .today-bento-grid>.today-bento-messages{order:6;grid-column:span 7;min-width:0;margin:0}.reference-dashboard .today-bento-grid>.today-bento-messages>.kinship-card{height:100%}.reference-dashboard .today-bento-grid>.today-bento-tasks{order:7;grid-column:1/-1;min-width:0;margin:0}.reference-dashboard .today-bento-grid>.today-bento-tasks>.kinship-card{height:100%}.reference-dashboard .today-bento-grid>:-webkit-any(.weather-now-card,.today-bento-kitchen,.today-bento-schedule,.today-meals-card,.today-groceries-card,.today-bento-messages,.today-bento-tasks){min-width:0}.reference-dashboard .today-bento-grid>:is(.weather-now-card,.today-bento-kitchen,.today-bento-schedule,.today-meals-card,.today-groceries-card,.today-bento-messages,.today-bento-tasks){min-width:0}.reference-dashboard .today-weather-outlook{margin-top:18px;padding-top:14px}.reference-dashboard .today-weather-outlook .weather-day{min-height:38px;padding:6px 2px}.reference-dashboard .today-inventory-preview{gap:8px;display:grid}.reference-dashboard .today-inventory-preview article{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);align-items:center;gap:10px;padding:10px;display:flex}.reference-dashboard .today-inventory-preview article>span{background:var(--color-shopping-soft);width:30px;height:30px;color:var(--color-shopping-strong);border-radius:9px;flex:none;place-items:center;display:grid}.reference-dashboard .today-inventory-preview article>div{min-width:0}.reference-dashboard .today-inventory-preview strong,.reference-dashboard .today-inventory-preview small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.reference-dashboard .today-inventory-preview strong{color:var(--color-ink);font-size:12.5px}.reference-dashboard .today-inventory-preview small{color:var(--color-ink-soft);text-transform:capitalize;margin-top:2px;font-size:10.5px}.reference-dashboard .today-kitchen-empty,.reference-dashboard .today-message-empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);width:100%;color:var(--color-shopping-strong);text-align:left;align-items:center;gap:11px;padding:14px;display:flex}.reference-dashboard :-webkit-any(.today-kitchen-empty,.today-message-empty)>span{flex:1;min-width:0;display:grid}.reference-dashboard :is(.today-kitchen-empty,.today-message-empty)>span{flex:1;min-width:0;display:grid}.reference-dashboard :-webkit-any(.today-kitchen-empty,.today-message-empty) strong{color:var(--color-ink);font-size:12.5px}.reference-dashboard :is(.today-kitchen-empty,.today-message-empty) strong{color:var(--color-ink);font-size:12.5px}.reference-dashboard :-webkit-any(.today-kitchen-empty,.today-message-empty) small{color:var(--color-ink-soft);margin-top:2px;font-size:11px;line-height:1.4}.reference-dashboard :is(.today-kitchen-empty,.today-message-empty) small{color:var(--color-ink-soft);margin-top:2px;font-size:11px;line-height:1.4}.reference-dashboard .today-messages-card{background:var(--pastel-blue)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-messages-card{background:color-mix(in srgb,var(--pastel-blue) 20%,var(--color-surface))!important}}.reference-dashboard .today-message-list{gap:7px;display:grid}.reference-dashboard .today-message-list>button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);text-align:left;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px;display:grid}.reference-dashboard .today-message-list>button>span{min-width:0;display:grid}.reference-dashboard .today-message-list strong{color:var(--color-ink);font-size:11.5px}.reference-dashboard .today-message-list small{text-overflow:ellipsis;white-space:nowrap;color:var(--color-ink-soft);margin-top:2px;font-size:12px;overflow:hidden}.reference-dashboard .today-message-list time{color:var(--color-ink-faint);white-space:nowrap;font-size:10px}@media (prefers-reduced-motion:no-preference){.reference-dashboard .today-bento-grid>:not(.broadcast-home){animation:.42s cubic-bezier(.22,1,.36,1) both today-bento-arrive}.reference-dashboard .today-bento-grid>:nth-child(3){animation-delay:45ms}.reference-dashboard .today-bento-grid>:nth-child(4){animation-delay:90ms}.reference-dashboard .today-bento-grid>:nth-child(5){animation-delay:.135s}.reference-dashboard .today-bento-grid>:nth-child(6){animation-delay:.18s}.reference-dashboard .today-bento-grid .kinship-card{transition:border-color .18s}.reference-dashboard .today-bento-grid .kinship-card:hover{border-color:var(--color-border-strong)!important}}@keyframes today-bento-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (min-width:701px) and (max-width:1050px){.reference-dashboard .today-bento-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.reference-dashboard .today-bento-grid>.weather-now-card{grid-column:span 2}.reference-dashboard .today-bento-grid>.today-bento-schedule{grid-column:span 4}.reference-dashboard .today-bento-grid .today-meals-card,.reference-dashboard .today-bento-grid .today-groceries-card,.reference-dashboard .today-bento-grid>.today-bento-kitchen,.reference-dashboard .today-bento-grid>.today-bento-messages{grid-column:span 3}.reference-dashboard .today-bento-grid>.today-bento-tasks{grid-column:1/-1}}@media (max-width:700px){.today-customize-hint{align-items:flex-start}.today-card-move-handle>span{display:none}.reference-dashboard .today-bento-grid{grid-template-columns:minmax(0,1fr);gap:14px}.reference-dashboard .today-bento-grid>:not(.today-bento-meal-grid),.reference-dashboard .today-bento-grid .today-meals-card,.reference-dashboard .today-bento-grid .today-groceries-card{grid-column:1!important}.reference-dashboard .today-bento-grid>.today-bento-meal-grid{display:contents}.reference-dashboard .today-bento-grid .kinship-card:hover{transform:none}.reference-dashboard .today-bento-grid>.today-bento-kitchen{order:3}.reference-dashboard .today-bento-grid .today-meals-card{order:4}.reference-dashboard .today-bento-grid .today-groceries-card{order:5}.reference-dashboard .today-bento-grid>.today-bento-messages{order:6}.reference-dashboard .today-bento-grid>.today-bento-tasks{order:7}}.reference-dashboard .today-metric-accent,.reference-dashboard .today-flow-card{background:var(--pastel-lilac)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-metric-accent,.reference-dashboard .today-flow-card{background:color-mix(in srgb,var(--pastel-lilac) 18%,var(--color-surface))!important}}.reference-dashboard .today-metric-rose,.reference-dashboard .today-tasks-card{background:var(--pastel-pink)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-metric-rose,.reference-dashboard .today-tasks-card{background:color-mix(in srgb,var(--pastel-pink) 15%,var(--color-surface))!important}}.reference-dashboard .today-metric-warn,.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card{background:var(--pastel-yellow)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-metric-warn,.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card{background:color-mix(in srgb,var(--pastel-yellow) 16%,var(--color-surface))!important}}.reference-dashboard .today-metric-good,.reference-dashboard .today-groceries-card{background:var(--pastel-mint)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-metric-good,.reference-dashboard .today-groceries-card{background:color-mix(in srgb,var(--pastel-mint) 15%,var(--color-surface))!important}}.reference-dashboard .today-meals-card{background:var(--pastel-peach)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-meals-card{background:color-mix(in srgb,var(--pastel-peach) 14%,var(--color-surface))!important}}.reference-dashboard .today-load-card{background:var(--pastel-blue)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-load-card{background:color-mix(in srgb,var(--pastel-blue) 14%,var(--color-surface))!important}}.famos-noscroll *{min-width:0}.famos-noscroll{overflow-x:clip}.reference-dashboard .today-metric-card .rounded-2xl.bg-white,.reference-dashboard .today-command-card .bg-white,.reference-dashboard .today-pulse-card .bg-white,.reference-dashboard .today-flow-card .bg-white,.reference-dashboard .today-load-card .bg-white,.reference-dashboard .today-meals-card .bg-white,.reference-dashboard .today-groceries-card .bg-white,.reference-dashboard .today-tasks-card .bg-white{background:#ffffffe6!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-metric-card .rounded-2xl.bg-white,.reference-dashboard .today-command-card .bg-white,.reference-dashboard .today-pulse-card .bg-white,.reference-dashboard .today-flow-card .bg-white,.reference-dashboard .today-load-card .bg-white,.reference-dashboard .today-meals-card .bg-white,.reference-dashboard .today-groceries-card .bg-white,.reference-dashboard .today-tasks-card .bg-white{background:color-mix(in srgb,var(--color-surface) 90%,transparent)!important}}.reference-dashboard .today-metric-card .rounded-2xl.bg-white,.reference-dashboard .today-command-card .bg-white,.reference-dashboard .today-pulse-card .bg-white,.reference-dashboard .today-flow-card .bg-white,.reference-dashboard .today-load-card .bg-white,.reference-dashboard .today-meals-card .bg-white,.reference-dashboard .today-groceries-card .bg-white,.reference-dashboard .today-tasks-card .bg-white{border-color:#1118270a!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-metric-card .rounded-2xl.bg-white,.reference-dashboard .today-command-card .bg-white,.reference-dashboard .today-pulse-card .bg-white,.reference-dashboard .today-flow-card .bg-white,.reference-dashboard .today-load-card .bg-white,.reference-dashboard .today-meals-card .bg-white,.reference-dashboard .today-groceries-card .bg-white,.reference-dashboard .today-tasks-card .bg-white{border-color:color-mix(in srgb,var(--color-border) 68%,transparent)!important}}.reference-dashboard .today-metric-card .rounded-2xl.bg-white,.reference-dashboard .today-command-card .bg-white,.reference-dashboard .today-pulse-card .bg-white,.reference-dashboard .today-flow-card .bg-white,.reference-dashboard .today-load-card .bg-white,.reference-dashboard .today-meals-card .bg-white,.reference-dashboard .today-groceries-card .bg-white,.reference-dashboard .today-tasks-card .bg-white{box-shadow:none!important}.reference-dashboard .today-groceries-card{background:var(--pastel-mint)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-groceries-card{background:color-mix(in srgb,var(--pastel-mint) 15%,var(--color-surface))!important}}.reference-dashboard .today-groceries-card{border-color:#1118270c!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-groceries-card{border-color:color-mix(in srgb,var(--color-border) 78%,transparent)!important}}.reference-dashboard .today-groceries-card{box-shadow:none!important}.reference-dashboard .today-tasks-card{background:var(--pastel-pink)!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-tasks-card{background:color-mix(in srgb,var(--pastel-pink) 15%,var(--color-surface))!important}}.reference-dashboard .today-tasks-card{border-color:#1118270c!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-tasks-card{border-color:color-mix(in srgb,var(--color-border) 78%,transparent)!important}}.reference-dashboard .today-tasks-card{box-shadow:none!important}.reference-dashboard .today-groceries-card .today-list-item,.reference-dashboard .today-tasks-card .today-list-item{background:#ffffffe0!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-groceries-card .today-list-item,.reference-dashboard .today-tasks-card .today-list-item{background:color-mix(in srgb,var(--color-surface) 88%,transparent)!important}}.reference-dashboard .today-groceries-card .today-list-item,.reference-dashboard .today-tasks-card .today-list-item{border-color:#1118270b!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-groceries-card .today-list-item,.reference-dashboard .today-tasks-card .today-list-item{border-color:color-mix(in srgb,var(--color-border) 72%,transparent)!important}}.reference-dashboard .today-groceries-card .today-list-item,.reference-dashboard .today-tasks-card .today-list-item{border-radius:var(--radius-md)!important;box-shadow:none!important}.today-task-lists{scrollbar-width:none;gap:7px;margin:-2px 0 12px;padding-bottom:2px;display:flex;overflow-x:auto}.today-task-lists button{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);min-height:32px;color:var(--color-ink-soft);flex:none;align-items:center;gap:7px;padding:5px 8px 5px 7px;font-size:11.5px;font-weight:650;display:inline-flex}.today-task-lists button i{background:var(--task-list-color);border-radius:50%;width:8px;height:8px}.today-task-lists button em{border-radius:var(--radius-pill);background:var(--task-list-color);place-items:center;min-width:19px;height:19px;padding:0 5px;display:grid}@supports (color:color-mix(in lab, red, red)){.today-task-lists button em{background:color-mix(in srgb,var(--task-list-color) 12%,var(--color-surface-sunken))}}.today-task-lists button em{color:var(--task-list-color)}@supports (color:color-mix(in lab, red, red)){.today-task-lists button em{color:color-mix(in srgb,var(--task-list-color) 70%,var(--color-ink))}}.today-task-lists button em{font-size:10px;font-style:normal}.today-task-meta{text-overflow:ellipsis;white-space:nowrap;color:var(--color-ink-faint);margin-top:2px;font-size:10.5px;display:block;overflow:hidden}.reference-dashboard .today-groceries-card .today-category-chip{background:#ffffffc7!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-groceries-card .today-category-chip{background:color-mix(in srgb,var(--color-surface) 78%,transparent)!important}}.reference-dashboard .today-groceries-card .today-category-chip{border-color:#1118270a!important}@supports (color:color-mix(in lab, red, red)){.reference-dashboard .today-groceries-card .today-category-chip{border-color:color-mix(in srgb,var(--color-border) 65%,transparent)!important}}.reference-dashboard .today-groceries-card .today-category-chip{color:var(--color-ink-soft)!important}.today-meal-badge{border-radius:var(--radius-pill);white-space:nowrap;border:1px solid #0000;flex:none;align-items:center;gap:3px;padding:2px 7px;font-size:9.5px;font-weight:800;line-height:1;display:inline-flex}.today-meal-badge.needs{background:var(--color-warn-soft);color:var(--color-warn);border-color:#dc262647}@supports (color:color-mix(in lab, red, red)){.today-meal-badge.needs{border-color:color-mix(in srgb,var(--color-warn) 28%,transparent)}}.today-meal-badge.covered{background:#16a34a29}@supports (color:color-mix(in lab, red, red)){.today-meal-badge.covered{background:color-mix(in srgb,var(--color-good) 16%,transparent)}}.today-meal-badge.covered{color:var(--color-good-strong);border-color:#16a34a47}@supports (color:color-mix(in lab, red, red)){.today-meal-badge.covered{border-color:color-mix(in srgb,var(--color-good) 28%,transparent)}}.reference-dashboard .today-compact-empty>div{padding:28px 16px}.today-ideas-card{background:var(--pastel-peach)!important}@supports (color:color-mix(in lab, red, red)){.today-ideas-card{background:color-mix(in srgb,var(--pastel-peach) 14%,var(--color-surface))!important}}.today-ideas-card{border-color:#1118270b!important}@supports (color:color-mix(in lab, red, red)){.today-ideas-card{border-color:color-mix(in srgb,var(--color-border) 76%,transparent)!important}}.today-ideas-card{box-shadow:none!important}.today-ideas-grid{gap:8px;display:grid}.today-idea-card{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);text-align:left;align-items:center;gap:10px;width:100%;padding:11px 12px;transition:border-color .18s,transform .14s,box-shadow .18s;display:flex}.today-idea-card:hover{border-color:var(--color-accent);box-shadow:0 4px 14px #5148c81a}.today-idea-card:active{transform:scale(.98)}.today-idea-index{background:#2563eb24;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid}@supports (color:color-mix(in lab, red, red)){.today-idea-index{background:color-mix(in srgb,var(--color-accent) 14%,transparent)}}.today-idea-index{color:var(--color-accent-strong);font-size:11px;font-weight:800}.today-idea-copy{flex:1;min-width:0}.today-idea-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.today-idea-copy small{color:var(--color-ink-soft);margin-top:2px;font-size:10.5px;display:block}.today-idea-arrow{color:var(--color-ink-faint);flex:none}.rewards-screen{background:#fbf8ff;min-height:100vh}.rewards-header{border-bottom:1px solid var(--color-border);grid-template-columns:42px 1fr 42px;align-items:center;height:86px;padding:0 22px;display:grid}.rewards-header img{width:34px;height:34px}.rewards-header h1{text-align:center;color:#5148c8;font-size:24px;font-weight:600}.rewards-header button{color:#5148c8;place-items:center;display:grid}.balance-card{border-radius:var(--radius-section);text-align:center;background:#fff;margin-top:20px;padding:46px 20px;box-shadow:0 8px 28px #3d30820f}.reward-star{color:#5148c8;background:#e1dcff;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 20px;display:grid}.reward-star svg{width:39px;height:39px}.balance-card p{letter-spacing:.12em;color:var(--color-ink-soft);font-size:13px}.balance-card h2{color:#17172f;margin:16px 0;font-size:48px;line-height:1}.balance-card h2 span{color:#5148c8;font-size:28px;font-weight:500}.balance-card small{color:#386a59;background:#c9f0e1;border-radius:20px;padding:6px 20px;font-size:13px;display:inline-block}.rewards-section-title{justify-content:space-between;align-items:end;margin:38px 0 18px;display:flex}.rewards-section-title h2{letter-spacing:-.03em;font-size:26px}.rewards-section-title span{color:#5148c8;font-size:14px}.reward-chores{gap:12px;display:grid}.reward-chores article{border-radius:var(--radius-control);background:#fff;grid-template-columns:58px 1fr 48px;align-items:center;gap:14px;padding:16px 18px;display:grid;box-shadow:0 5px 18px #3d308212}.chore-icon{border-radius:var(--radius-sm);color:#56536d;background:#f1eeff;place-items:center;width:52px;height:52px;display:grid}.chore-icon svg{width:27px}.reward-chores strong,.reward-chores article div span{display:block}.reward-chores strong{font-size:18px}.reward-chores article div span{color:var(--color-ink-soft);margin-top:3px;font-size:14px}.reward-chores article>button{border:2px solid #d4ceff;border-radius:50%;width:42px;height:42px;padding:5px}.reward-empty{text-align:center;color:var(--color-ink-soft);background:#fff;border-radius:15px;padding:28px}.reward-shop{grid-auto-columns:72%;grid-auto-flow:column;gap:16px;padding-bottom:8px;display:grid;overflow-x:auto}.reward-shop article{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 5px 18px #3d308212}.reward-art{color:#fff;background:linear-gradient(135deg,#c9d9ff,#f2c6ae);place-items:center;height:150px;display:grid;position:relative}.reward-art.icecream{background:linear-gradient(135deg,#f3d0da,#f7b978)}.reward-art.movie{background:linear-gradient(135deg,#7169d9,#20203c)}.reward-art>span{border-radius:var(--radius-section);background:#5c54ce;padding:6px 11px;font-size:12px;position:absolute;top:10px;right:10px}.reward-art svg{opacity:.9;width:52px;height:52px}.reward-shop h3{min-height:72px;padding:18px;font-size:18px}.reward-shop button{color:#5148c8;background:#dfdbff;border-radius:10px;width:calc(100% - 36px);height:45px;margin:0 18px 18px;font-weight:600}.reward-shop button:disabled{opacity:.45}.reward-history{border-radius:var(--radius-md);color:var(--color-ink-soft);background:#f1eeff;border:1px solid #e3dfff;align-items:center;gap:16px;margin:40px 0 20px;padding:22px;display:flex}.reward-history>span{color:#5148c8;font-size:28px}.reward-history p{font-size:14px}.reward-history small{margin-top:3px;display:block}.parent-banner{color:#fff;border-radius:var(--radius-md);background:#17172f;grid-template-columns:1fr auto auto;align-items:center;gap:8px;margin-top:18px;padding:16px;display:grid}.parent-banner strong,.parent-banner span{display:block}.parent-banner span{color:#c8c5d8;margin-top:2px;font-size:11px}.parent-banner button{background:#675fe1;border-radius:8px;align-items:center;gap:4px;padding:9px;font-size:11px;display:flex}.parent-banner svg{width:13px}@media (min-width:700px){body{background:radial-gradient(circle at 0 0,#7952e81a,#0000 32rem),#fafafa}.app-shell{grid-template-columns:max(184px,min(17vw,240px)) minmax(0,1fr);align-items:start;gap:max(12px,min(1.5vw,24px));width:100%;min-height:100dvh;margin:0;padding:max(12px,min(1.5vw,24px));display:grid}.app-content{border:1px solid var(--color-border);border-radius:max(22px,min(2vw,32px));max-width:none;min-height:calc(100dvh - max(24px,min(3vw,48px)));margin:0;overflow:visible;box-shadow:0 22px 70px #1f1d3614;background:#fafafa!important}.primary-nav{border:1px solid var(--color-border);background:#ffffffd6;border-radius:28px;flex-direction:column;width:220px;height:calc(100vh - 48px);min-height:620px;padding:18px;display:flex;position:sticky;top:24px;bottom:auto;left:auto;transform:none;box-shadow:0 22px 60px #1f1d3612}.nav-brand{border-bottom:1px solid var(--color-border);align-items:center;gap:11px;margin-bottom:12px;padding:4px 4px 18px;display:flex}.nav-brand img{object-fit:contain;border-radius:var(--radius-sm);width:40px;height:40px}.nav-brand strong,.nav-brand span{display:block}.nav-brand strong{letter-spacing:-.04em;color:var(--color-ink);font-size:17px}.nav-brand span{color:var(--color-ink-faint);margin-top:1px;font-size:11px}.nav-items{flex-direction:column;gap:6px;display:flex}.nav-item{border-radius:var(--radius-md);flex-direction:row;justify-content:flex-start;gap:10px;padding:10px 11px}.nav-icon{border-radius:var(--radius-xs);width:32px;height:32px;position:relative}.nav-label{font-size:13px;font-weight:750}.nav-item.is-active{background:var(--color-accent-soft);color:var(--color-accent-strong)}.nav-item.is-active .nav-icon{border-radius:var(--radius-xs);background:#fff;border-top:0;box-shadow:0 3px 10px #5148c81a}.nav-foot{color:var(--color-ink-faint);margin-top:auto;padding:12px 8px 4px;font-size:11px;line-height:1.4;display:block}.safe-top{padding-top:2rem}.page-title{font-size:30px}.notification-feed{right:32px}.modal-card{width:min(720px,100vw - 64px);max-width:min(720px,100vw - 64px)!important}}@media (min-width:1200px){.app-shell{grid-template-columns:max(220px,min(15vw,280px)) minmax(0,1fr)}.primary-nav{width:240px}}.reference-groceries>div.px-5>section:first-child{display:block}.task-assignee-label{color:var(--color-ink-soft);margin:4px 0 10px;font-size:13px;font-weight:600}.task-assignee-picker{gap:8px;margin-bottom:20px;display:flex;overflow-x:auto}.task-assignee-picker button{border:1px solid var(--color-border);border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:7px;padding:7px 11px;display:flex}.task-assignee-picker button.selected{color:#5148c8;background:#eeebff;border-color:#5148c8}.task-assignee-picker span{font-size:13px}.meal-ideas-launcher{grid-template-columns:1fr 1fr;gap:10px;margin:-4px 0 18px;display:grid}.meal-ideas-launcher button{color:#5148c8;border-radius:var(--radius-sm);background:#fff;border:1px solid #d8d3fa;justify-content:center;align-items:center;gap:7px;padding:12px;font-size:13px;font-weight:600;display:flex}.meal-ideas-launcher svg{width:17px}.reward-shop article{padding-top:52px;position:relative}.reward-cost{border-radius:var(--radius-section);color:#fff;background:#5c54ce;padding:6px 11px;font-size:12px;position:absolute;top:16px;right:16px}.reward-shop article>p{color:var(--color-ink-faint);margin-top:-48px;padding:0 18px 18px;font-size:13px}.reward-art{display:none}.notification-feed{z-index:60;border:1px solid var(--color-border);border-radius:var(--radius-section);background:#fff;width:min(360px,100vw - 28px);position:absolute;top:58px;right:14px;overflow:hidden;box-shadow:0 18px 50px #1816322e}.notification-title{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:16px;display:flex}.notification-title>div:last-child{align-items:center;gap:9px;display:flex}.notification-title strong,.notification-title span{display:block}.notification-title strong{font-size:16px}.notification-title span{color:var(--color-ink-faint);margin-top:2px;font-size:11px}.notification-title svg{width:18px}.mark-read{color:var(--color-accent);font-size:10px;font-weight:700}.notification-row{text-align:left;border-bottom:1px solid var(--color-border);width:100%;transition:background var(--motion-fast) ease;align-items:center;gap:12px;padding:14px 16px;display:flex}.notification-row:last-child{border-bottom:0}.notification-row.is-read{opacity:.62}.notification-row.is-unread{background:#fffcf3}.notification-row>span{border-radius:var(--radius-sm);background:var(--pastel-lilac);color:#5148c8;place-items:center;width:38px;height:38px;display:grid}.notification-row.peach>span{background:var(--pastel-peach);color:#b85e42}.notification-row.blue>span{background:var(--pastel-blue);color:#3e75ac}.notification-row.mint>span{background:var(--pastel-mint);color:#397b66}.notification-row svg{width:18px}.notification-row strong,.notification-row small{display:block}.notification-row strong{font-size:13px}.notification-row small{color:var(--color-ink-faint);margin-top:3px;font-size:11px}.notification-empty{text-align:center;color:var(--color-ink-faint);padding:28px;font-size:13px}.app-topbar{z-index:80;isolation:isolate;position:relative;overflow:visible}.notification-feed{z-index:100}.grocery-category-title{justify-content:space-between;align-items:center;margin:0 4px 10px;display:flex}.grocery-category-title h2{font-size:18px;font-weight:650}.grocery-category-title span{color:var(--color-ink-faint);font-size:12px}.reference-groceries .grocery-category-title+div{margin-bottom:24px}.reference-groceries .px-5>div>section>.grocery-category-title{background:0 0;width:auto;padding:0;position:static}.modal-ideas-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-accent);background:var(--color-surface-sunken);justify-content:center;align-items:center;gap:8px;margin:4px 0 22px;padding:12px 14px;font-size:13px;font-weight:650;display:flex}.event-type-label{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;margin-bottom:3px;font-size:10px;font-weight:700;display:flex}.event-type-label i{border-radius:50%;width:7px;height:7px}.event-discovery-intro{background:linear-gradient(135deg,#eee8ff,#e9f8f1);border-radius:17px;align-items:center;gap:12px;margin:-2px 0 16px;padding:13px;display:flex}.event-discovery-intro>span{border-radius:var(--radius-md);color:#674bdd;background:#fff;place-items:center;width:42px;height:42px;display:grid}.event-discovery-intro svg{width:21px}.event-discovery-intro strong{font-size:14px;display:block}.event-discovery-intro p{color:var(--color-ink-soft);margin-top:3px;font-size:11px;line-height:1.4}.event-city-picker{margin:0 0 14px}.event-city-picker>span{color:var(--color-ink-soft);margin:0 0 6px;font-size:11px;font-weight:700;display:block}.event-city-chips{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.event-city-chip{border:1px solid var(--color-accent);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent-strong);align-items:center;gap:5px;padding:7px 11px;font-size:11.5px;font-weight:750;display:inline-flex}.event-city-chip svg{width:13px;height:13px}.event-city-chips input{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-sunken);min-width:120px;min-height:38px;color:var(--color-ink);flex:130px;padding:8px 12px;font-size:12px}.event-city-add{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:38px;color:var(--color-accent-strong);flex:none;align-items:center;gap:4px;padding:8px 13px;font-size:11.5px;font-weight:800;display:inline-flex}.event-city-add:disabled{opacity:.45}.event-city-add svg{width:14px}.event-city-picker>small{color:var(--color-ink-faint);margin-top:7px;font-size:10px;line-height:1.4;display:block}.event-discovery-controls{gap:14px;margin-bottom:14px;display:grid}.event-discovery-search{background:var(--color-ink);color:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:44px;padding:0 22px;font-size:13px;font-weight:800;transition:opacity .15s,transform .12s;display:inline-flex}.event-discovery-search:hover{opacity:.85}.event-discovery-search:active{transform:scale(.97)}.event-discovery-search:disabled{opacity:.4;pointer-events:none}.event-coverage-strip{border-radius:var(--radius-md);background:#fef7f7;align-items:center;gap:11px;margin-top:14px;padding:11px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.event-coverage-strip{background:color-mix(in srgb,var(--color-warn-soft) 60%,var(--color-surface))}}.event-coverage-strip{border:1px solid #a6222631}@supports (color:color-mix(in lab, red, red)){.event-coverage-strip{border:1px solid color-mix(in srgb,var(--color-warn) 14%,var(--color-border))}}.event-coverage-strip{color:var(--color-ink-soft)}.event-coverage-strip>span:first-child{width:30px;height:30px;color:var(--color-warn);background:#fff;border:1px solid #dc262638;border-radius:11px;flex:none;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.event-coverage-strip>span:first-child{border:1px solid color-mix(in srgb,var(--color-warn) 22%,transparent)}}.event-coverage-strip>div{flex:1;gap:1px;min-width:0;display:grid}.event-coverage-strip strong{text-transform:uppercase;letter-spacing:.07em;color:var(--color-ink-faint);margin-bottom:1px;font-size:11px;font-weight:700}.event-coverage-strip small{color:var(--color-ink);font-size:12.5px;font-weight:500;line-height:1.4}.event-coverage-toggle{border:1px solid var(--color-border);min-height:30px;color:var(--color-ink-soft);cursor:pointer;transition:all var(--motion-fast) cubic-bezier(.2,.8,.2,1);background:#fff;border-radius:11px;flex:none;align-items:center;gap:5px;padding:5px 11px;font-size:11px;font-weight:700;display:inline-flex}.event-coverage-toggle:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.event-coverage-toggle:disabled{opacity:.45;cursor:not-allowed}.event-coverage-toggle svg{width:13px;height:13px}.event-coverage-city-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;padding:0 4px;display:flex}.coverage-city-chip{border:1px solid #2257cc49;border-radius:11px;align-items:center;gap:7px;padding:5px 11px 5px 12px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.coverage-city-chip{border:1px solid color-mix(in srgb,var(--color-accent) 24%,var(--color-border))}}.coverage-city-chip{background:#e9effd}@supports (color:color-mix(in lab, red, red)){.coverage-city-chip{background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface))}}.coverage-city-chip{color:var(--color-ink);cursor:pointer;transition:all var(--motion-fast) cubic-bezier(.2,.8,.2,1);font-size:11.5px;font-weight:600}.coverage-city-chip:hover{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong);transform:translateY(-1px)}.coverage-city-chip:active{transform:translateY(0)scale(.96)}.coverage-city-chip.excluded{border-color:var(--color-border);background:var(--color-surface);color:var(--color-ink-faint);text-decoration:line-through;text-decoration-thickness:1px}.coverage-city-chip.excluded:hover{border-color:var(--color-warn);color:var(--color-warn);background:var(--color-warn-soft);text-decoration:none;transform:translateY(-1px)}.event-muted-ghost-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding:0 4px;display:flex}.event-muted-ghost-label{letter-spacing:.05em;text-transform:uppercase;color:var(--color-ink-faint);margin-right:2px;font-size:10px;font-weight:700}.coverage-city-chip-ghost{border-style:dashed;border-color:var(--color-border);color:var(--color-ink-faint);background:0 0;font-style:italic}.coverage-city-chip-ghost:hover{border-style:solid;border-color:var(--color-accent);color:var(--color-accent-strong);font-style:normal}.coverage-city-chip-ghost .coverage-city-count{color:inherit;background:0 0}.event-carousel-muted .event-carousel-card{opacity:.85}.event-discovery-muted-tier{border:1px dashed #2259d152;margin-top:14px;padding:11px 14px}@supports (color:color-mix(in lab, red, red)){.event-discovery-muted-tier{border:1px dashed color-mix(in srgb,var(--color-accent) 28%,var(--color-border))}}.event-discovery-muted-tier{border-radius:var(--radius-md);background:#f6f9fe}@supports (color:color-mix(in lab, red, red)){.event-discovery-muted-tier{background:color-mix(in srgb,var(--color-accent) 4%,var(--color-surface))}.meal-soft-tier{--soft-border:color-mix(in srgb,var(--color-good) 32%,var(--color-border));--soft-bg:color-mix(in srgb,var(--color-good) 5%,var(--color-surface))}}.famos-soft-tier{border:1px dashed var(--soft-border,var(--color-border));border-radius:var(--radius-md);background:var(--soft-bg,transparent);transition:border-color var(--motion-fast) cubic-bezier(.2,.8,.2,1);margin-top:11px;padding:10px 13px}.famos-soft-tier>summary{cursor:pointer;color:var(--soft-summary,var(--color-ink));transition:color var(--motion-fast) cubic-bezier(.2,.8,.2,1);align-items:center;gap:8px;list-style:none;display:flex}.famos-soft-tier>summary::-webkit-details-marker{display:none}.famos-soft-tier>summary:hover{color:var(--color-accent-strong)}.famos-soft-tier>summary>svg{transition:transform var(--motion-fast) cubic-bezier(.2,.8,.2,1);color:var(--soft-icon,var(--color-ink));flex:none}.famos-soft-tier[open]>summary>svg{transform:rotate(180deg)}.famos-soft-tier>summary>div{flex:1;gap:1px;min-width:0;display:grid}.famos-soft-tier>summary strong{align-items:center;gap:5px;font-size:12.5px;font-weight:600;display:inline-flex}.famos-soft-tier>summary small{color:var(--color-ink-faint);font-size:11px;line-height:1.35}.grocery-cookable-card{margin-bottom:6px}.grocery-cookable-tier{--soft-bg:#f2f6fe}@supports (color:color-mix(in lab, red, red)){.grocery-cookable-tier{--soft-bg:color-mix(in srgb,var(--color-accent) 6%,var(--color-surface))}}.grocery-cookable-list{gap:8px;max-height:min(46vh,360px);margin:10px 0 0;padding:6px 6px 4px;list-style:none;display:grid;overflow-y:auto}.grocery-cookable-list::-webkit-scrollbar{width:6px}.grocery-cookable-list::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:3px}.grocery-cookable-row{background:#f6fbf8;border-radius:10px;padding:8px 10px}@supports (color:color-mix(in lab, red, red)){.grocery-cookable-row{background:color-mix(in srgb,var(--color-good) 4%,var(--color-surface))}}.grocery-cookable-row{gap:3px;display:grid}.grocery-cookable-row strong{color:var(--color-ink);letter-spacing:-.005em;font-size:13px;font-weight:600}.grocery-cookable-cuisine{color:var(--color-ink-faint);text-transform:lowercase;letter-spacing:.02em;margin-left:6px;font-size:10.5px;font-weight:500}.grocery-cookable-ingredients{gap:2px;margin:4px 0 0;padding:0;list-style:none;display:grid}.grocery-cookable-ingredients li{color:var(--color-ink-soft);align-items:center;gap:5px;font-size:11.5px;line-height:1.4;display:flex}.grocery-cookable-ingredients li svg{color:var(--color-good);opacity:.85;flex:none}.grocery-cookable-extra-note{color:var(--color-ink-soft);margin:8px 4px 2px;font-size:11.5px;line-height:1.4}.grocery-cookable-extra-note strong{color:var(--color-accent-strong)}.event-discovery-muted-tier{--soft-border:#2259d152}@supports (color:color-mix(in lab, red, red)){.event-discovery-muted-tier{--soft-border:color-mix(in srgb,var(--color-accent) 28%,var(--color-border))}}.event-discovery-muted-tier{--soft-bg:#f6f9fe}@supports (color:color-mix(in lab, red, red)){.event-discovery-muted-tier{--soft-bg:color-mix(in srgb,var(--color-accent) 4%,var(--color-surface))}}.event-discovery-muted-tier{--soft-summary:var(--color-ink);--soft-icon:var(--color-accent);margin-top:14px;padding:11px 14px}.event-discovery-muted-tier>summary{gap:10px}.event-discovery-muted-tier>summary strong{font-size:13px;font-weight:600;display:flex}.event-discovery-muted-tier>summary small{font-size:11.5px}.meal-soft-tier{--soft-border:#1594465c}@supports (color:color-mix(in lab, red, red)){.meal-soft-tier{--soft-border:color-mix(in srgb,var(--color-good) 32%,var(--color-border))}}.meal-soft-tier{--soft-bg:#f3faf6}@supports (color:color-mix(in lab, red, red)){.meal-soft-tier{--soft-bg:color-mix(in srgb,var(--color-good) 5%,var(--color-surface))}}.meal-soft-tier{--soft-summary:var(--color-good);--soft-icon:var(--color-good)}.fam-ai-meal-list{max-height:min(40vh,320px);padding-right:4px;overflow-y:auto}.meal-soft-tier>summary>div{flex:1;gap:1px;min-width:0;display:grid}.meal-soft-tier>summary strong{align-items:center;gap:5px;font-size:12.5px;font-weight:600;display:inline-flex}.meal-soft-tier>summary small{color:var(--color-ink-faint);font-size:11px;line-height:1.35}.event-discovery-muted-tier>summary{cursor:pointer;color:var(--color-ink);transition:color var(--motion-fast) cubic-bezier(.2,.8,.2,1);align-items:center;gap:10px;list-style:none;display:flex}.event-discovery-muted-tier>summary::-webkit-details-marker{display:none}.event-discovery-muted-tier>summary:hover{color:var(--color-accent-strong)}.event-discovery-muted-tier>summary>svg{transition:transform var(--motion-fast) cubic-bezier(.2,.8,.2,1);color:var(--color-accent);flex:none}.event-discovery-muted-tier[open]>summary>svg{transform:rotate(180deg)}.discovered-event-list-muted{opacity:.82;max-height:min(40vh,440px);margin-top:11px}.discovered-event-list-muted:hover,.discovered-event-list-muted:focus-within{opacity:1}.discovered-event-list-muted article{background:#f8fafe;border-style:dashed}@supports (color:color-mix(in lab, red, red)){.discovered-event-list-muted article{background:color-mix(in srgb,var(--color-accent) 3%,#fff)}}.discovered-event-from-muted{background:#dc262624}@supports (color:color-mix(in lab, red, red)){.discovered-event-from-muted{background:color-mix(in srgb,var(--color-warn) 14%,transparent)}}.discovered-event-from-muted{color:var(--color-warn)}.coverage-city-name{font-weight:600}.coverage-city-count{background:#2563eb2e;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 6px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.coverage-city-count{background:color-mix(in srgb,var(--color-accent) 18%,transparent)}}.coverage-city-count{color:var(--color-accent-strong);font-size:10.5px;font-weight:700}.coverage-city-chip.excluded .coverage-city-count{background:#9ca3af38}@supports (color:color-mix(in lab, red, red)){.coverage-city-chip.excluded .coverage-city-count{background:color-mix(in srgb,var(--color-ink-faint) 22%,transparent)}}.coverage-city-chip.excluded .coverage-city-count{color:var(--color-ink-faint);text-decoration:none}.coverage-city-chip-action{color:var(--color-ink-soft);border-color:var(--color-border);background:0 0;font-weight:500}.coverage-city-chip-action:hover{border-color:var(--color-warn);color:var(--color-warn);background:var(--color-warn-soft);transform:translateY(-1px)}@media (max-width:480px){.event-coverage-city-chips{gap:5px}.coverage-city-chip{padding:5px 9px 5px 10px;font-size:11px}}.event-discovery-loading{color:var(--color-ink-soft);justify-content:center;align-items:center;gap:9px;padding:35px 12px;font-size:12px;display:flex}.event-discovery-loading svg{width:20px;animation:1s linear infinite spin}.event-discovery-error{border-radius:var(--radius-pill-sm);background:var(--color-warn-soft);color:var(--color-warn);padding:13px;font-size:12px;line-height:1.45}.event-discovery-error button{color:var(--color-accent);margin-top:8px;font-weight:800;display:block}.event-type-chips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.event-type-chip{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);border-radius:999px;align-items:center;gap:5px;padding:6px 11px;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex}.event-type-chip:hover{border-color:var(--color-border-strong);color:var(--color-ink)}.event-type-chip:active{transform:scale(.94)}.event-type-chip.active{background:var(--chip-color,#2563eb)}@supports (color:color-mix(in lab, red, red)){.event-type-chip.active{background:color-mix(in srgb,var(--chip-color,var(--color-accent)) 14%,transparent)}}.event-type-chip.active{border-color:var(--chip-color,var(--color-accent));color:var(--chip-color,var(--color-accent))}.event-type-chip i{border-radius:50%;flex:none;width:7px;height:7px}.event-carousel-wrapper{position:relative}.event-carousel-wrapper:after{content:"";background:linear-gradient(to right,transparent,var(--color-surface));pointer-events:none;z-index:1;width:60px;position:absolute;top:0;bottom:0;right:0}.event-carousel{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:14px;margin:-4px 0 -8px;padding:4px 0 8px;display:flex;overflow-x:auto}.event-carousel::-webkit-scrollbar{display:none}.event-carousel-card{scroll-snap-align:start;border:1px solid var(--color-border);background:var(--color-surface);border-radius:18px;flex-direction:column;flex:0 0 280px;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.event-carousel-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #10182814}.event-carousel-card:active{transform:scale(.98)}.event-carousel-media{background:linear-gradient(150deg,#efe9ff,#e7f7f0);flex:none;place-items:center;height:130px;display:grid;position:relative;overflow:hidden}.event-carousel-media img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.event-carousel-media>svg{color:#8a7ad6;opacity:.6;width:32px;height:32px}.event-carousel-badge{color:#fff;letter-spacing:.03em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:800;position:absolute;top:10px;left:10px;box-shadow:0 1px 4px #0000001f}.event-carousel-body{flex-direction:column;flex:1;gap:6px;min-width:0;padding:13px 14px 12px;display:flex}.event-carousel-date{color:var(--color-accent-strong);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;font-size:10px;font-weight:700;display:flex}.event-carousel-date small{color:var(--color-ink-faint);align-items:center;gap:3px;font-size:9px;font-weight:600;display:flex}.event-carousel-date small svg{width:11px}.event-carousel-body h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:650;line-height:1.25;display:-webkit-box;overflow:hidden}.event-carousel-body p{color:var(--color-ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:10.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.event-carousel-location{color:var(--color-ink-faint);align-items:center;gap:4px;margin-top:auto;font-size:10px;font-weight:600;display:flex}.event-carousel-location svg{flex:none;width:12px}.event-carousel-footer{align-items:center;gap:6px;margin-top:8px;display:flex}.event-carousel-footer button,.event-carousel-footer a{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:5px;min-height:30px;padding:6px 10px;font-size:10px;font-weight:800;display:flex}.event-carousel-footer button{background:var(--color-accent);color:#fff;flex:1}.event-carousel-footer a{border:1px solid var(--color-border);color:var(--color-accent);flex:1}.event-carousel-footer svg{width:13px}.event-discovery-source{color:var(--color-ink-faint);margin-top:13px;font-size:9px;line-height:1.45;display:block}.event-discovery-partial-warning{border:1px solid #dc262638;align-items:flex-start;gap:11px;margin-bottom:12px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.event-discovery-partial-warning{border:1px solid color-mix(in srgb,var(--color-warn) 22%,transparent)}}.event-discovery-partial-warning{border-radius:var(--radius-md);background:#fcebeb}@supports (color:color-mix(in lab, red, red)){.event-discovery-partial-warning{background:color-mix(in srgb,var(--color-warn) 9%,var(--color-surface))}}.event-discovery-partial-warning{color:var(--color-ink)}.event-discovery-partial-warning>span{border-radius:var(--radius-xs);background:#dc262629;flex:none;place-items:center;width:30px;height:30px;display:grid}@supports (color:color-mix(in lab, red, red)){.event-discovery-partial-warning>span{background:color-mix(in srgb,var(--color-warn) 16%,transparent)}}.event-discovery-partial-warning>span{color:var(--color-warn)}.event-discovery-partial-warning>span svg{width:16px;height:16px}.event-discovery-partial-warning>div{flex:1;gap:2px;min-width:0;display:grid}.event-discovery-partial-warning strong{color:var(--color-ink);font-size:13px}.event-discovery-partial-warning small{color:var(--color-ink-soft);font-size:11.5px;line-height:1.4}.event-discovery-retry-city{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface);min-height:36px;color:var(--color-accent-strong);transition:border-color var(--motion-fast) ease,background var(--motion-fast) ease,transform var(--motion-fast) ease;flex:none;justify-content:center;align-items:center;gap:5px;padding:8px 13px;font-size:11.5px;font-weight:750;display:inline-flex}.event-discovery-retry-city:hover{border-color:var(--color-accent);background:var(--color-accent-soft);transform:translateY(-1px)}.event-discovery-retry-city svg{width:14px;height:14px}.today-event-past{opacity:.5}.today-event-card{background:var(--color-surface);border-color:#1118270a;flex:0 0 230px;gap:4px;padding:14px 16px}@supports (color:color-mix(in lab, red, red)){.today-event-card{border-color:color-mix(in srgb,var(--color-border) 65%,transparent)}}.today-event-card:hover{border-color:var(--color-accent)}.today-event-date{text-transform:none;letter-spacing:0;color:var(--color-ink);align-items:center;font-size:12px}.today-event-date small{color:var(--color-ink-soft);font-size:11.5px;font-weight:500}.today-event-type-pill{color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;align-items:center;padding:3px 9px;font-size:9.5px;font-weight:800;display:inline-flex}.discovered-event-from{border-radius:var(--radius-pill);background:#2563eb24;align-items:center;gap:3px;padding:2px 7px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.discovered-event-from{background:color-mix(in srgb,var(--color-accent) 14%,transparent)}}.discovered-event-from{color:var(--color-accent-strong);letter-spacing:.02em;text-transform:none;font-size:9px;font-weight:700}.discovered-event-from svg{width:11px;height:11px}.event-discovery-source-breakdown{border:1px solid #2153c23a;margin-top:10px;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.event-discovery-source-breakdown{border:1px solid color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.event-discovery-source-breakdown{border-radius:var(--radius-md);background:#f4f7fe}@supports (color:color-mix(in lab, red, red)){.event-discovery-source-breakdown{background:color-mix(in srgb,var(--color-accent) 5%,var(--color-surface))}}.event-discovery-source-breakdown{color:var(--color-ink-soft);font-size:11px;line-height:1.5}.event-discovery-source-breakdown strong{color:var(--color-ink);margin-bottom:4px;font-size:11.5px;font-weight:700;display:block}.event-discovery-source-breakdown span{display:inline}.event-discovery-nearby{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);text-align:left;margin-top:10px;padding:11px 12px}.event-discovery-nearby>span{color:var(--color-ink-soft);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:11px;font-weight:750;display:block}.event-discovery-nearby-pills{flex-wrap:wrap;gap:6px;display:flex}.event-discovery-nearby-pill{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-sunken);min-height:30px;color:var(--color-accent-strong);transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease,transform var(--motion-fast) ease;align-items:center;gap:4px;padding:6px 11px;font-size:11.5px;font-weight:650;display:inline-flex}.event-discovery-nearby-pill:hover{border-color:var(--color-accent);background:var(--color-accent-soft);transform:translateY(-1px)}.event-discovery-nearby-pill:active{transform:scale(.96)}.event-discovery-nearby-empty{margin-top:6px;padding:9px 11px}.event-discovery-nearby-empty>span{color:var(--color-ink-faint);text-transform:none;letter-spacing:0;margin-bottom:4px;font-size:11.5px;font-weight:650}.event-discovery-already-checked{color:var(--color-ink-faint);letter-spacing:0;text-transform:none;margin-top:2px;font-size:11px;font-weight:500;display:block}.event-discovery-coverage{border-top:1px solid #dc262640;margin-top:8px;padding-top:8px;display:block}@supports (color:color-mix(in lab, red, red)){.event-discovery-coverage{border-top:1px solid color-mix(in srgb,var(--color-warn) 25%,transparent)}}.event-discovery-coverage{color:var(--color-ink-faint);letter-spacing:0;text-transform:none;font-size:11.5px;line-height:1.5}.reward-shop article{flex-direction:column;min-height:210px;padding:22px 18px 18px;display:flex}.reward-shop h3{min-height:auto;padding:48px 0 0;font-size:18px;line-height:1.25}.reward-shop article>p{line-height:1.3;margin:8px 0 22px!important;padding:0!important}.reward-shop article>button{width:100%;margin:auto 0 0}.reward-cost{top:18px;right:18px}.claimed-title{margin-top:34px}.claimed-rewards{gap:10px;display:grid}.claimed-rewards>p{border-radius:var(--radius-md);color:var(--color-ink-faint);text-align:center;background:#fff;padding:24px}.claimed-rewards article{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;justify-content:space-between;align-items:center;gap:14px;padding:16px;display:flex}.claimed-rewards strong,.claimed-rewards span{display:block}.claimed-rewards strong{font-size:14px}.claimed-rewards span{color:var(--color-ink-faint);margin-top:4px;font-size:11px}.claimed-rewards button{color:#5148c8;white-space:nowrap;background:#eeeaff;border-radius:20px;padding:7px 11px;font-size:11px}.claimed-rewards button.fulfilled{color:#386a59;background:#d9f2e7}.claimed-rewards button:disabled{opacity:1}.calendar-file-import{text-align:center;border-radius:var(--radius-md);cursor:pointer;color:#5148c8;background:#f5f2ff;border:1.5px dashed #bdb7e7;flex-direction:column;align-items:center;margin:4px 0 14px;padding:24px 16px;display:flex}.calendar-file-import input{display:none}.calendar-file-import svg{width:25px;height:25px;margin-bottom:10px}.calendar-file-import strong{font-size:14px}.calendar-file-import span{max-width:34ch;color:var(--color-ink-soft);margin-top:6px;font-size:11.5px;line-height:1.4}.advanced-calendar-toggle{text-align:center;color:#5148c8;width:100%;padding:8px 0 16px;font-size:12px;display:block}.advanced-calendar-fields{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;margin-bottom:12px;padding:14px}.advanced-calendar-fields>p{color:var(--color-ink-faint);margin:-4px 0 12px;font-size:11px;line-height:1.4}.page-header{position:relative}.page-header-content{z-index:1;position:relative}.safe-top{padding-top:calc(env(safe-area-inset-top) + 1.75rem)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}::-webkit-scrollbar{display:none}*{-ms-overflow-style:none;scrollbar-width:none}.topbar-wordmark img{object-fit:contain;background:#fff8ef;border-radius:10px;width:34px;height:34px;padding:5px}.topbar-wordmark strong{letter-spacing:-.05em;color:#17171f;font-size:17px;font-weight:800;display:block}.topbar-wordmark strong span{color:#7952e8}.family-hero img{object-fit:contain;object-position:right center;width:54%;transition:transform .5s cubic-bezier(.2,.8,.2,1);left:auto}.family-hero:hover img{transform:translate(-4px)scale(1.015)}.nav-icon{transition:transform var(--motion-fast) cubic-bezier(.2,.8,.2,1),background-color var(--motion-fast) ease,color var(--motion-fast) ease}.nav-item:hover .nav-icon{transform:translateY(-2px)}.nav-item:active .nav-icon{transform:translateY(0)scale(.86)}.topbar-actions button{transition:transform var(--motion-fast) ease,color var(--motion-fast) ease}.topbar-actions button:hover{color:var(--color-accent);transform:rotate(-5deg)}.topbar-actions button:active{transform:rotate(0)scale(.84)}.topbar-actions i{animation:.38s cubic-bezier(.34,1.56,.64,1) badge-pop}.notification-feed{transform-origin:calc(100% - 24px) 0;animation:.22s cubic-bezier(.2,.8,.2,1) popover-in}.notification-row{animation:.28s cubic-bezier(.2,.8,.2,1) both notice-in}.notification-row:nth-child(2){animation-delay:25ms}.notification-row:nth-child(3){animation-delay:50ms}.notification-row:nth-child(4){animation-delay:75ms}.notification-row:hover{background:var(--color-accent-soft);transform:translate(2px)}.kinship-card button svg,.meal-ideas-launcher svg{transition:transform var(--motion-fast) cubic-bezier(.34,1.56,.64,1)}.kinship-card button:hover svg,.meal-ideas-launcher button:hover svg{transform:scale(1.12)rotate(-4deg)}@keyframes badge-pop{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes popover-in{0%{opacity:0;transform:translateY(-6px)scale(.96)}to{opacity:1;transform:none}}@keyframes notice-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:none}}.rewards-header>div:nth-child(2){text-align:center}.rewards-header>div:nth-child(2) h1{line-height:1.1}.rewards-header>div:nth-child(2) span{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.08em;margin-top:3px;font-size:10px;font-weight:700;display:block}.role-preview{background:var(--pastel-yellow);border-radius:50%;width:38px;height:38px}.unassigned{color:var(--color-ink-faint);font-size:11px}.reward-assignee{margin-bottom:18px;display:block}.reward-assignee>span{color:var(--color-ink-soft);margin-bottom:6px;font-size:12.5px;font-weight:600;display:block}.reward-assignee select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-sunken);width:100%;padding:11px 12px}.claimed-rewards .approval-actions{gap:7px;display:flex}.claimed-rewards .approval-actions button{background:var(--pastel-mint);color:#397b66;border-radius:10px;justify-content:center;align-items:center;gap:4px;min-width:36px;height:34px;padding:0 10px;font-size:10px;font-weight:700;display:flex}.claimed-rewards .approval-actions button:first-child{background:var(--pastel-pink);color:#a44e68;padding:0}.claimed-rewards .approval-actions svg{width:14px}.claimed-rewards .approval-actions button:disabled{opacity:.4}.redemption-status{border-radius:var(--radius-pill);background:var(--pastel-yellow);color:#7e6821;text-transform:capitalize;padding:6px 9px;font-size:10px;font-weight:800}.redemption-status.fulfilled{background:var(--pastel-mint);color:#397b66}.redemption-status.declined{background:var(--pastel-pink);color:#a44e68}.redemption-status.approved{background:var(--pastel-blue);color:#3e75ac}.milestone-overlay{z-index:90;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1816305c;place-items:center;padding:24px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.milestone-card{z-index:2;border-radius:var(--radius-card);text-align:center;background:#fffdf5;border:1px solid #e8dbb9;width:min(100%,340px);padding:34px 26px 26px;position:relative;box-shadow:0 26px 70px #1816303d}.milestone-card>button{color:var(--color-ink-faint);position:absolute;top:16px;right:16px}.milestone-card>button svg{width:18px}.milestone-star{background:var(--pastel-yellow);color:#c48b12;border-radius:50%;place-items:center;width:76px;height:76px;margin:0 auto 18px;display:grid}.milestone-star svg{width:38px;height:38px}.milestone-card small{color:var(--color-accent);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:800}.milestone-card h2{font:700 27px/1.08 var(--font-display);letter-spacing:-.04em;margin:7px 0 8px}.milestone-card p{max-width:28ch;color:var(--color-ink-soft);margin:0 auto 22px;font-size:13px;line-height:1.45}.milestone-rays{pointer-events:none;width:360px;height:360px;position:absolute}.milestone-ray{border-radius:var(--radius-pill);background:var(--pastel-yellow);transform-origin:5px 180px;width:10px;height:34px;position:absolute;top:50%;left:50%}.milestone-ray:first-child{transform:translate(-50%,-180px)rotate(0)}.milestone-ray:nth-child(2){transform:translate(-50%,-180px)rotate(36deg)}.milestone-ray:nth-child(3){transform:translate(-50%,-180px)rotate(72deg)}.milestone-ray:nth-child(4){transform:translate(-50%,-180px)rotate(108deg)}.milestone-ray:nth-child(5){transform:translate(-50%,-180px)rotate(144deg)}.milestone-ray:nth-child(6){transform:translate(-50%,-180px)rotate(180deg)}.milestone-ray:nth-child(7){transform:translate(-50%,-180px)rotate(216deg)}.milestone-ray:nth-child(8){transform:translate(-50%,-180px)rotate(252deg)}.milestone-ray:nth-child(9){transform:translate(-50%,-180px)rotate(288deg)}.milestone-ray:nth-child(10){transform:translate(-50%,-180px)rotate(324deg)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes check-pop{0%{transform:scale(.7)}60%{transform:scale(1.12)}to{transform:scale(1)}}.check-pop{animation:.22s cubic-bezier(.34,1.56,.64,1) check-pop}@keyframes fade-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.26s ease-out both fade-up}.landing-hero h1{letter-spacing:-.035em;line-height:.9}.landing-intro h2,.landing-section-head h2,.landing-ai h2,.landing-final h2{letter-spacing:-.025em;line-height:1.02}.landing-feature h3{letter-spacing:-.015em;line-height:1.15}.landing-feature-top img{object-position:right center;filter:saturate(1.12)hue-rotate(8deg);width:80%}.landing-hero-fullbleed{border-radius:0;grid-template-columns:1fr;align-items:center;gap:0;width:100vw;max-width:100%;min-height:88vh;margin-top:0;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:0;display:flex;position:relative;overflow:hidden}.hero-lifestyle-bg{z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.hero-lifestyle-bg img{object-fit:cover;object-position:center 30%;width:100%;height:100%}.hero-lifestyle-overlay{background:linear-gradient(135deg,#0f0c1ee0 0%,#0f0c1ec7 45%,#0f0c1e73 100%);position:absolute;top:0;bottom:0;left:0;right:0}.landing-hero-fullbleed .landing-hero-copy{z-index:2;max-width:640px;padding:100px 48px 140px max(48px,50vw - 580px);position:relative}.landing-hero-fullbleed .landing-hero-copy h1{color:#fff;max-width:560px;font-size:max(48px,min(6vw,82px))}.landing-hero-fullbleed .landing-hero-copy p:not(.landing-kicker){color:#ffffffd9;max-width:480px;font-size:18px}.landing-hero-fullbleed .landing-kicker{color:#ffffffb3}.landing-hero-fullbleed .landing-kicker svg{color:#ffffff80}.landing-hero-fullbleed .landing-hero-ctas>button:last-child{color:#fffc;text-decoration-color:#fff6}.landing-hero-fullbleed .landing-trust{color:#ffffffa6}.landing-hero-fullbleed .landing-trust svg{color:#ffffff80}.hero-animated-elements{z-index:3;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.hero-float-card{border-radius:var(--radius-pill);white-space:nowrap;will-change:transform,opacity;width:max(128px,min(10vw,176px));max-width:none;height:auto;position:absolute;box-shadow:0 14px 35px #0000002e}.hero-float-card img{border-radius:inherit;width:100%;height:auto;display:block}.hero-float-1{top:11%;right:25%}.hero-float-2{top:28%;right:4%}.hero-float-3{top:46%;right:26%}.hero-float-4{top:64%;right:5%}.hero-float-5{top:10%;right:47%}.hero-float-6{bottom:24%;right:43%}.hero-float-7{bottom:7%;right:23%}.hero-squiggle{z-index:2;fill:none;stroke:#ffffff4d;stroke-width:5px;stroke-linecap:round;pointer-events:none;position:absolute}.hero-squiggle-one{width:120px;bottom:12%;left:48%;transform:rotate(-8deg)}.hero-squiggle-two{stroke:#fff3;width:90px;top:16%;right:8%;transform:rotate(12deg)}.hero-spark{z-index:2;pointer-events:none;color:#ffc832b3;font-size:28px;position:absolute}.hero-spark-one{bottom:28%;left:52%}.hero-spark-two{color:#fff6;font-size:20px;top:32%;right:20%}@media (max-width:900px){.landing-hero-fullbleed{min-height:72vh}.landing-hero-fullbleed .landing-hero-copy{text-align:center;align-items:center;max-width:100%;padding:70px 28px 110px}.landing-hero-fullbleed .landing-hero-copy h1{max-width:100%}.landing-hero-fullbleed .landing-hero-copy p:not(.landing-kicker){margin:auto}.landing-hero-fullbleed .landing-hero-ctas,.landing-hero-fullbleed .landing-trust{justify-content:center}.hero-lifestyle-overlay{background:linear-gradient(#0f0c1eeb 0%,#0f0c1ed9 50%,#0f0c1ea6 100%)}.hero-float-card,.hero-squiggle,.hero-spark{display:none}}@media (max-width:600px){.landing-hero-fullbleed{min-height:62vh}.landing-hero-fullbleed .landing-hero-copy{padding:52px 18px 92px}.landing-hero-fullbleed .landing-hero-copy h1{font-size:44px}.landing-hero-fullbleed .landing-hero-copy p:not(.landing-kicker){font-size:15px}}.landing-devices{padding:var(--landing-section-pad-y) var(--landing-section-pad-x);background:#fafafa}.landing-devices-inner{grid-template-columns:1fr 1.1fr;align-items:center;gap:56px;max-width:1160px;margin:0 auto;display:grid}.landing-devices-copy .landing-kicker{margin-bottom:16px}.landing-devices-copy h2{font:720 clamp(36px,4.5vw,56px)/.98 var(--font-display);letter-spacing:-.04em;margin:14px 0 18px}.landing-devices-copy>p{color:var(--color-ink-soft);max-width:460px;font-size:16px;line-height:1.6}.landing-devices-list{gap:12px;margin-top:28px;padding:0;list-style:none;display:grid}.landing-devices-list li{color:var(--color-ink);align-items:center;gap:10px;font-size:14px;font-weight:500;display:flex}.landing-devices-list svg{color:var(--color-success);flex:none;width:18px}.landing-devices-image{position:relative}.landing-devices-image img{border-radius:var(--radius-card);width:100%;height:auto;box-shadow:0 24px 60px #1018281a}@media (max-width:900px){.landing-devices-inner{text-align:center;grid-template-columns:1fr;gap:36px}.landing-devices-copy>p{margin:auto}.landing-devices-list{justify-items:center}.landing-devices-image{order:-1}}@media (max-width:600px){.landing-devices{padding:var(--landing-section-pad-y-mobile) var(--landing-section-pad-x-mobile)}.landing-devices-copy h2{font-size:34px}.landing-hero-media{min-height:380px}.hero-family-image{opacity:.1;width:95%;max-height:320px}.landing-hero-media .landing-product-screen{border-radius:16px;max-width:260px}.landing-devices-image img,.landing-feature-top img,.stage-panel>img.stage-family-art,.landing-ai-art>img,.landing-final>img{border-radius:20px}}@media (min-width:700px) and (max-width:1100px){.app-content{max-width:none}.landing-page{overflow-x:hidden}.landing-nav{max-width:860px;height:72px;padding:0 22px}.landing-brand{border-radius:var(--radius-pill);background:#ffffffe6;border:1px solid #eadfcf;padding:6px 12px;box-shadow:0 10px 30px #2a221d0f}.landing-brand img{background:0 0;border-radius:9px;width:30px;height:30px;padding:2px}.landing-brand strong{letter-spacing:-.035em;font-size:16px}.landing-links{display:none}.landing-actions{gap:8px}.landing-signin{border-radius:var(--radius-pill);border:1px solid #d9cbb8;padding:9px 14px;font-size:13px;display:inline-flex}.landing-join{padding:10px 15px;font-size:13px}.landing-hero{flex-direction:column;gap:26px;max-width:760px;margin:0 auto;padding:40px 24px 56px;display:flex}.landing-hero-copy{text-align:center;max-width:620px;margin:0 auto;padding:0}.landing-kicker,.landing-hero-ctas,.landing-trust{justify-content:center}.landing-hero h1{letter-spacing:-.035em;margin:14px 0 16px;font-size:max(42px,min(7.6vw,62px));line-height:.98}.landing-hero-copy>p:not(.landing-kicker){max-width:560px;margin:0 auto;font-size:17px;line-height:1.45}.landing-hero-ctas{gap:12px;margin-top:22px}.landing-hero-ctas>button:first-child{padding:13px 20px}.landing-trust{flex-wrap:wrap;gap:10px 16px;margin-top:16px}.landing-hero-media{width:100%;max-width:720px;height:auto;min-height:440px;margin:8px auto 0}.landing-hero-media .landing-product-screen{max-width:320px}.landing-hero-media .hero-squiggle{transform:scale(.72)}.landing-hero-media .hero-spark{transform:scale(.85)}.landing-intro,.landing-features,.landing-steps,.landing-privacy,.landing-stages,.landing-product,.landing-pricing,.landing-community,.landing-capabilities,.landing-bento{padding-left:24px;padding-right:24px}.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.landing-feature{min-height:330px;padding:22px}.landing-feature-top{height:180px}.landing-ai{grid-template-columns:1fr;gap:40px;padding:76px 24px}.landing-ai-art{aspect-ratio:4/3;order:2;width:min(100%,620px);height:auto;margin:0 auto}.stage-tabs,.product-tabs{-webkit-overflow-scrolling:touch;justify-content:flex-start;padding-bottom:8px;overflow-x:auto}.stage-panel,.product-stage,.landing-purpose,.bento-dashboard{grid-template-columns:1fr}}@media (min-width:700px) and (max-width:899px){:root{--m3-page-gutter:24px;--m3-grid-gap:16px}.app-shell{grid-template-columns:172px minmax(0,1fr);gap:12px;width:100%;margin:0;padding:12px}.app-content{border-radius:22px;min-height:calc(100dvh - 24px)}.primary-nav{border-radius:22px;width:172px;height:calc(100dvh - 24px);min-height:0;padding:12px;top:12px}.nav-brand{gap:8px;margin-bottom:8px;padding:3px 3px 13px}.nav-brand img{width:34px;height:34px}.nav-brand strong{font-size:15px}.nav-brand span{font-size:9.5px}.nav-items{gap:3px}.nav-item{border-radius:var(--radius-pill-sm);gap:7px;min-height:48px;padding:7px 8px}.nav-icon{width:30px;height:30px;position:relative}.nav-label{font-size:12px}.nav-foot{padding:8px 5px 2px;font-size:9px}.app-topbar{height:60px;padding-inline-start:16px;padding-inline-end:16px}.page-header{padding-left:24px;padding-right:24px}.reference-tasks .page-header{margin-bottom:16px}.app-content>[class*=reference-]>.px-5{padding-left:24px;padding-right:24px}.reference-dashboard .today-metric-card{min-height:150px}.reference-dashboard .today-metric-card p.mt-4{font-size:30px}.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card{min-height:260px}.reference-dashboard button,.reference-dashboard .kinship-card{touch-action:manipulation}.reference-dashboard section{margin-top:22px}.page-title{font-size:max(28px,min(3.4vw,36px))}.page-subtitle{font-size:14px}.page-spot-frame{width:180px;height:140px}}@media (min-width:900px){:root{--m3-page-gutter:clamp(24px,2.2vw,40px);--m3-grid-gap:clamp(16px,1.35vw,24px)}.primary-nav{width:max(184px,min(17vw,240px));height:calc(100dvh - max(24px,min(3vw,48px)));top:max(12px,min(1.5vw,24px))}.app-content>[class*=reference-]>.px-5,.page-header{padding-left:max(24px,min(2.2vw,44px));padding-right:max(24px,min(2.2vw,44px))}.reference-dashboard .today-metric-card{min-height:max(150px,min(10vw,190px))}.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card{min-height:max(260px,min(18vw,340px))}}@media (min-width:1600px){:root{--m3-page-gutter:40px;--m3-grid-gap:24px;--hs-section-gap:40px}.app-shell{grid-template-columns:280px minmax(0,1fr);gap:28px;padding:28px}.primary-nav{width:280px;height:calc(100dvh - 56px);padding:22px;top:28px}.nav-item{min-height:52px}.nav-label{font-size:14px}.app-content{min-height:calc(100dvh - 56px)}.app-topbar{height:76px;padding-inline-start:32px;padding-inline-end:32px}.page-title{font-size:max(34px,min(2.2vw,44px))}.page-subtitle{font-size:16px}.reference-dashboard .today-metric-card{min-height:190px}.reference-dashboard .today-metric-card p.mt-4{font-size:34px}.reference-dashboard section{margin-top:34px}.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card{min-height:340px}.page-header,.app-content>[class*=reference-]>.px-5{padding-left:40px;padding-right:40px}}.legal-page{min-height:100vh;color:var(--color-ink);background:#fffdf9}.legal-nav{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;max-width:1080px;height:88px;margin:auto;padding:0 28px;display:flex}.legal-back{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:#fff;align-items:center;gap:7px;padding:10px 14px;font-size:13px;font-weight:700;display:flex}.legal-back svg{width:16px}.legal-content{max-width:820px;margin:auto;padding:78px 28px 90px}.legal-heading{margin-bottom:54px}.legal-heading>span{color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:7px;font-size:12px;font-weight:800;display:flex}.legal-heading>span svg{width:17px}.legal-heading h1{max-width:680px;font:750 clamp(48px,7vw,78px)/.96 var(--font-display);letter-spacing:-.03em;margin:17px 0 15px}.legal-heading>p{color:var(--color-ink-faint);font-size:13px}.legal-content section{border-top:1px solid var(--color-border);padding:28px 0}.legal-content section h2,.legal-disclaimer h2{font:700 22px/1.2 var(--font-display);letter-spacing:-.015em;margin-bottom:10px}.legal-content section p,.legal-content section li,.legal-disclaimer p{color:var(--color-ink-soft);font-size:14px;line-height:1.7}.legal-content section ul{gap:6px;padding-left:20px;list-style:outside;display:grid}.legal-content a{color:var(--color-accent);align-items:center;gap:4px;font-weight:700;display:inline-flex}.legal-content a svg{width:13px}.legal-disclaimer{background:var(--pastel-yellow);border:1px solid #e9ddbb;border-radius:22px;margin-top:32px;padding:28px}.legal-disclaimer p+p{margin-top:12px}@media (max-width:600px){.legal-nav{height:72px;padding:0 18px}.legal-back{padding:9px 11px;font-size:11px}.legal-content{padding:52px 20px 70px}.legal-heading{margin-bottom:40px}.legal-heading h1{font-size:48px}.legal-disclaimer{padding:22px}}.contact-channels{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-channel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff;gap:16px;padding:24px;display:flex}.contact-channel-icon{background:var(--color-accent-soft);width:44px;height:44px;color:var(--color-accent-strong);border-radius:12px;flex:none;place-items:center;display:grid}.contact-channel h3{font:700 16px/1.2 var(--font-display);color:var(--color-ink);margin:0 0 6px}.contact-channel p{color:var(--color-ink-soft);margin:0 0 12px;font-size:13px;line-height:1.55}.contact-channel-link{color:var(--color-accent);font:700 13px/1 var(--font-sans);border:1px solid var(--color-accent);border-radius:var(--radius-pill);align-items:center;gap:5px;padding:8px 14px;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.contact-channel-link:hover{background:var(--color-accent);color:#fff}.contact-form-section h2{margin-bottom:6px}.contact-form-intro{color:var(--color-ink-soft);margin-bottom:20px;font-size:13px}.contact-form{gap:16px;display:grid}.contact-form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.contact-field{gap:6px;display:grid}.contact-field span{color:var(--color-ink);font-size:12px;font-weight:700}.contact-field input,.contact-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;min-height:44px;color:var(--color-ink);font:500 14px/1.4 var(--font-sans);background:#fff;outline:0;padding:10px 14px;transition:border-color .15s,box-shadow .15s}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #2563eb1f}@supports (color:color-mix(in lab, red, red)){.contact-field input:focus,.contact-field textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 12%,transparent)}}.contact-field textarea{resize:vertical;min-height:120px}.contact-submit{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;min-height:48px;font:700 14px/1 var(--font-sans);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;padding:0 24px;transition:opacity .15s,transform .15s;display:inline-flex}.contact-submit:hover{opacity:.9}.contact-submit:active{transform:scale(.97)}.contact-submit:disabled{opacity:.5;cursor:not-allowed}.contact-success{text-align:center;border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff;justify-items:center;gap:12px;padding:40px 20px;display:grid}.contact-success svg{color:var(--color-good)}.contact-success h3{font:700 20px/1.2 var(--font-display);color:var(--color-ink);margin:0}.contact-success p{color:var(--color-ink-soft);max-width:420px;margin:0;font-size:13px;line-height:1.6}.contact-reset-btn{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-accent);font:700 13px/1 var(--font-sans);cursor:pointer;background:#fff;margin-top:8px;padding:10px 20px}.contact-faq-item{border-top:1px solid var(--color-border);padding:20px 0}.contact-faq-item:first-child{border-top:0}.contact-faq-item h3{font:700 15px/1.3 var(--font-sans);color:var(--color-ink);margin:0 0 8px}.contact-faq-item p{color:var(--color-ink-soft);margin:0;font-size:13px;line-height:1.6}@media (max-width:600px){.contact-channels,.contact-form-row{grid-template-columns:1fr}}.page-action-stack{flex-direction:column;align-items:flex-end;gap:5px;display:flex}.page-action-stack>button{color:var(--color-ink-soft);font-size:11px}.page-reset-button{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-soft);background:#fff;align-items:center;gap:5px;padding:6px 9px;font-size:11px;font-weight:650;display:inline-flex!important}.page-reset-button svg{width:13px;height:13px}.reset-confirm-copy{color:var(--color-ink-soft);margin:-2px 0 24px;font-size:13px;line-height:1.55}.reset-confirm-actions{grid-template-columns:1fr 1.5fr;align-items:center;gap:10px;display:grid}.reset-confirm-actions>button:first-child{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;height:44px;font-size:14px;font-weight:600}.confirm-action-copy{color:var(--color-ink-soft);margin:2px 0 16px;font-size:13.5px;line-height:1.55}.confirm-action-typed-block{margin:6px 0 8px}.confirm-action-typed-token{letter-spacing:.05em;text-transform:uppercase;color:var(--color-warn);font-weight:700}.confirm-action-typed-hint{color:var(--color-ink-faint);margin-top:4px;font-size:11.5px;display:block}.confirm-action-actions{grid-template-columns:1fr 1.4fr;align-items:center;gap:10px;margin-top:6px;display:grid}.confirm-action-actions>button:first-child{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;height:44px;font-size:14px;font-weight:600}.confirm-destructive-action{background:var(--color-warn)!important;color:#fff!important;border-color:#0000!important;box-shadow:0 6px 16px #dc262647!important}@supports (color:color-mix(in lab, red, red)){.confirm-destructive-action{box-shadow:0 6px 16px color-mix(in srgb,var(--color-warn) 28%,transparent)!important}}.confirm-destructive-action:hover:not(:disabled){background:#c62222!important}@supports (color:color-mix(in lab, red, red)){.confirm-destructive-action:hover:not(:disabled){background:color-mix(in srgb,var(--color-warn) 90%,#000)!important}}.confirm-destructive-action:hover:not(:disabled){box-shadow:0 10px 22px #dc26265c!important}@supports (color:color-mix(in lab, red, red)){.confirm-destructive-action:hover:not(:disabled){box-shadow:0 10px 22px color-mix(in srgb,var(--color-warn) 36%,transparent)!important}}.confirm-destructive-action:disabled{background:#b9242644!important}@supports (color:color-mix(in lab, red, red)){.confirm-destructive-action:disabled{background:color-mix(in srgb,var(--color-warn) 22%,var(--color-border))!important}}.confirm-destructive-action:disabled{cursor:not-allowed;opacity:.65;color:#fff!important;box-shadow:none!important}@media (max-width:480px){.confirm-action-actions{grid-template-columns:1fr}}.meal-range-toggle{gap:4px;margin-bottom:12px;display:flex}.meal-range-toggle button{border:1px solid var(--color-border);color:var(--color-ink-soft);border-radius:var(--radius-tag);background:#fff;flex:1;padding:9px;font-size:12px;font-weight:700}.meal-range-toggle button.selected{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent)}.task-category-picker{flex-wrap:wrap;gap:7px;margin:0 0 18px;display:flex}.task-category-picker button{border:1px solid var(--color-border);border-radius:var(--radius-tag);color:var(--color-ink-soft);background:#fff;align-items:center;gap:6px;padding:8px 10px;font-size:11.5px;font-weight:650;display:flex}.task-category-picker i{background:var(--task-color);border-radius:50%;width:8px;height:8px}.task-category-picker button.selected{border-color:var(--task-color);background:var(--task-color)}@supports (color:color-mix(in lab, red, red)){.task-category-picker button.selected{background:color-mix(in srgb,var(--task-color) 12%,white)}}.task-category-picker button.selected{color:var(--task-color)}.task-board-group.rose{background:#fff0f4;border-color:#f3d4dd}.task-board-group.rose .task-group-title h2{color:#b94f6b}.task-board-group.rose .task-group-title>span{color:#8e3f57;background:#f6c7d4}.task-board-group.amber{background:#fff8e8;border-color:#f3dfbd}.task-board-group.amber .task-group-title h2{color:#a76521}.task-board-group.amber .task-group-title>span{color:#81501c;background:#f6dfb7}@media (max-width:520px){.nav-label{font-size:10px;line-height:1.15}}.page-header-aside{flex-direction:column;flex:none;align-items:flex-end;gap:5px;display:flex}.page-spot{filter:drop-shadow(0 5px 7px #17172f0f);width:88px;height:66px;transition:transform .32s cubic-bezier(.2,.8,.2,1);display:block;overflow:visible}.page-header:hover .page-spot{transform:translateY(-2px)rotate(1deg)}.page-header-aside>button{font-size:11px}.reward-balance-spot{background:0 0;place-items:center;width:190px;height:170px;margin:0 auto 14px;display:grid;overflow:visible}.reward-balance-spot .page-spot{object-fit:contain;mix-blend-mode:normal;filter:none;border-radius:0;width:180px;height:160px}@media (max-width:380px){.page-spot{width:72px;height:56px}.page-header-content{gap:8px}.page-title{font-size:22px}}.google-calendar-picker{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#faf9ff;margin:4px 0 14px;padding:13px}.google-calendar-picker>div{justify-content:space-between;align-items:baseline;margin-bottom:3px;display:flex}.google-calendar-picker>div strong{font-size:12.5px}.google-calendar-picker>div span{color:var(--color-ink-faint);font-size:10.5px}.google-calendar-help{color:var(--color-ink-soft);margin-bottom:10px;font-size:11px;line-height:1.45}.google-calendar-picker ul{gap:7px;max-height:340px;display:grid;overflow:auto}.google-calendar-picker li{border-radius:var(--radius-sm);border:1px solid #0000;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:4px;display:grid}.google-calendar-picker li.is-connected{border-color:var(--color-border);background:#fff}.google-calendar-main{text-align:left;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;min-width:0;padding:7px;display:grid}.google-calendar-main i{border-radius:50%;width:10px;height:10px}.google-calendar-main span{min-width:0}.google-calendar-main b,.google-calendar-main small{display:block}.google-calendar-main b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.google-calendar-main small{color:var(--color-ink-faint);margin-top:2px;font-size:9.5px}.google-calendar-main em{color:var(--color-accent);font-size:10px;font-style:normal;font-weight:700}.google-calendar-main svg{width:17px;height:17px}.google-calendar-visibility,.google-calendar-rename{border:1px solid var(--color-border);border-radius:var(--radius-pill);min-height:34px;color:var(--color-ink-soft);white-space:nowrap;align-items:center;gap:5px;padding:7px 9px;font-size:10px;font-weight:700;display:flex}.google-calendar-visibility.is-shared{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.google-calendar-visibility:disabled,.google-calendar-rename:disabled{opacity:.42}.google-calendar-rename-form{grid-column:1/-1;padding:8px}.google-calendar-rename-form>label{color:var(--color-ink-soft);margin-bottom:5px;font-size:10.5px;font-weight:700;display:block}.google-calendar-rename-form>div{grid-template-columns:minmax(0,1fr) auto auto;gap:6px;display:grid}.google-calendar-rename-form input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);min-width:0;padding:8px 10px;font-size:12px}.google-calendar-rename-form button{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:7px 9px;font-size:10.5px;font-weight:700}.google-calendar-rename-form button[type=submit]{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.google-calendar-rename-form>small{color:var(--color-danger);margin-top:5px;font-size:10.5px;display:block}.google-calendar-colors{flex-wrap:wrap;grid-column:1/-1;gap:7px;padding:2px 8px 6px;display:flex}.google-calendar-color-swatch{width:22px;height:22px;box-shadow:0 0 0 1px var(--color-border-strong);cursor:pointer;border:2px solid #fff;border-radius:50%;padding:0;transition:transform .14s,box-shadow .14s}.google-calendar-color-swatch:hover{transform:scale(1.12)}.google-calendar-color-swatch.selected{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--color-accent)}@media (max-width:520px){.google-calendar-picker li{grid-template-columns:minmax(0,1fr) auto}.google-calendar-visibility{grid-column:1}.google-calendar-rename{grid-column:2}.google-calendar-rename-form>div{grid-template-columns:1fr 1fr}.google-calendar-rename-form input{grid-column:1/-1}}.calendar-limit-note{border:1px solid var(--color-good);border-radius:var(--radius-control);background:var(--color-good-soft);color:var(--color-good-strong);align-items:center;gap:7px;margin:0 0 10px;padding:9px 11px;font-size:11px;font-weight:700;display:flex}@media (max-width:560px){.google-calendar-picker li{grid-template-columns:1fr}.google-calendar-visibility{justify-content:center;margin:0 6px 6px}}.apple-import-card{margin-top:12px!important;padding:16px!important}.apple-import-head{align-items:center;gap:12px;display:flex}.apple-import-head>span{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-sunken);width:40px;height:40px;color:var(--color-ink);place-items:center;display:grid}.apple-import-head strong,.apple-import-head small{display:block}.apple-import-head strong{color:var(--color-ink);font-size:14.5px}.apple-import-head small{color:var(--color-ink-soft);margin-top:2px;font-size:11.5px;line-height:1.4}.apple-import-steps{color:var(--color-ink-soft);gap:4px;margin:13px 0;padding-left:22px;font-size:11.5px;line-height:1.45;list-style:decimal;display:grid}.apple-import-card textarea{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-height:112px;color:var(--color-ink);resize:vertical;outline:none;padding:12px;font-size:13px;line-height:1.5}.apple-import-card textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #2563eb29}@supports (color:color-mix(in lab, red, red)){.apple-import-card textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 16%,transparent)}}.apple-import-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.apple-import-actions>label{border:1px solid var(--color-border);border-radius:var(--radius-control);min-height:44px;color:var(--color-ink-soft);cursor:pointer;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.apple-import-actions input{opacity:0;block-size:1px;inline-size:1px;position:absolute}.apple-import-review{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-sunken);margin-top:12px;padding:12px}.apple-import-review>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.apple-import-review>div strong{font-size:12px}.apple-import-review select{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);max-width:58%;min-height:36px;color:var(--color-ink);padding:0 9px;font-size:11px}.apple-import-review ul{gap:5px;max-height:220px;margin:10px 0;display:grid;overflow:auto}.apple-import-review li label{background:var(--color-surface);color:var(--color-ink);border-radius:9px;align-items:flex-start;gap:8px;padding:8px;font-size:12px;line-height:1.35;display:flex}.apple-import-review input{accent-color:var(--color-accent);margin-top:2px}.apple-import-status{color:var(--color-accent-strong);margin-top:10px;font-size:11.5px;font-weight:700}.apple-import-privacy{color:var(--color-ink-faint);align-items:flex-start;gap:6px;margin-top:11px;font-size:10.5px;line-height:1.45;display:flex}.apple-import-privacy svg{flex:none;margin-top:1px}@media (max-width:560px){.apple-import-actions{grid-template-columns:1fr}.apple-import-review>div{flex-direction:column;align-items:stretch}.apple-import-review select{width:100%;max-width:none}}@media (min-width:601px){.reference-meals .meal-slot-row{grid-template-columns:minmax(260px,1fr) minmax(300px,auto);gap:16px;padding:8px 0}.reference-meals .meal-day-card .meal-slot-button{min-height:72px;padding-block-start:12px!important;padding-block-end:12px!important}.reference-meals .meal-day-card .meal-slot-value{text-overflow:clip;white-space:normal;line-height:1.35;overflow:visible}.reference-meals .meal-slot-actions{flex-wrap:wrap;justify-content:flex-end;row-gap:6px}.reference-meals .meal-day-card{padding:20px!important}}.whatsapp-import-trigger{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-accent-strong);cursor:pointer;flex-shrink:0;align-items:center;gap:5px;padding:7px 10px;font-size:10.5px;font-weight:750;display:flex}.whatsapp-import-trigger input{display:none}.whatsapp-message-source{opacity:.74;align-items:center;gap:4px;margin-bottom:4px;font-size:9.5px;font-weight:750;display:flex}.whatsapp-import-panel{gap:14px;display:grid}.whatsapp-import-note{border-radius:var(--radius-md);background:var(--pastel-mint);color:var(--color-ink);gap:11px;padding:13px;display:flex}.whatsapp-import-note>svg{flex-shrink:0;margin-top:2px}.whatsapp-import-note strong,.whatsapp-import-note span{display:block}.whatsapp-import-note strong{font-size:13px}.whatsapp-import-note span{color:var(--color-ink-soft);margin-top:3px;font-size:11.5px;line-height:1.5}.whatsapp-import-summary{border:1px solid var(--color-border);border-radius:var(--radius-pill-sm);gap:3px;padding:12px;display:grid}.whatsapp-import-summary strong{font-size:13px}.whatsapp-import-summary span{color:var(--color-ink-soft);font-size:11px}.whatsapp-consent{border:1px solid var(--color-border);border-radius:var(--radius-pill-sm);cursor:pointer;grid-template-columns:auto 22px 1fr;align-items:start;gap:8px;padding:12px;display:grid}.whatsapp-consent>input{opacity:0;position:absolute}.whatsapp-consent>span{border:1px solid var(--color-border);border-radius:7px;grid-column:1;place-items:center;width:22px;height:22px;display:grid}.whatsapp-consent>span.is-checked{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.whatsapp-consent>p{color:var(--color-ink-soft);grid-column:2/4;font-size:11.5px;line-height:1.45}.whatsapp-import-error{color:var(--color-warn);font-size:12px}.chat-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.chat-clear-trigger{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;flex-shrink:0;align-items:center;gap:5px;padding:7px 10px;font-size:10.5px;font-weight:750;display:flex}.chat-clear-trigger:hover{border-color:var(--color-warn);color:var(--color-warn)}.chat-clear-panel{gap:12px;display:grid}.chat-clear-intro{color:var(--color-ink-soft);font-size:12.5px;line-height:1.5}.chat-clear-option{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:14px;transition:border-color .18s,background .18s;display:flex}.chat-clear-option:hover{border-color:var(--color-warn);background:var(--color-warn-soft)}.chat-clear-option>span{border-radius:var(--radius-xs);background:var(--color-surface-sunken);width:38px;height:38px;color:var(--color-ink);flex-shrink:0;place-items:center;display:grid}.chat-clear-option strong{font-size:13.5px;display:block}.chat-clear-option small{color:var(--color-ink-soft);margin-top:2px;font-size:11.5px;line-height:1.45;display:block}.chat-intent-chip{border:1px solid #2256c944;align-items:center;gap:9px;margin-top:8px;padding:7px 7px 7px 11px;display:flex}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip{border:1px solid color-mix(in srgb,var(--color-accent) 22%,var(--color-border))}}.chat-intent-chip{border-radius:var(--radius-pill);background:#eef3fd}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip{background:color-mix(in srgb,var(--color-accent) 8%,var(--color-surface))}}.chat-intent-chip{color:var(--color-ink-soft);max-width:100%;min-height:34px;transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease;font-size:11.5px}.chat-intent-chip:hover{background:#e0e9fc}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip:hover{background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface))}}.chat-intent-chip:hover{border-color:#235cda6a}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip:hover{border-color:color-mix(in srgb,var(--color-accent) 38%,var(--color-border))}}.chat-intent-chip.added{background:#e8f3ef}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip.added{background:color-mix(in srgb,#1d8a5d 10%,var(--color-surface))}}.chat-intent-chip.added{border-color:#1d8a5d4d}.chat-intent-icon{background:var(--color-accent-soft);width:18px;height:18px;color:var(--color-accent-strong);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.chat-intent-chip-grocery .chat-intent-icon{background:#d6eae2}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip-grocery .chat-intent-icon{background:color-mix(in srgb,#1d8a5d 18%,var(--color-surface))}}.chat-intent-chip-grocery .chat-intent-icon{color:#1d8a5d}.chat-intent-chip-task .chat-intent-icon{background:#e7e0fb}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip-task .chat-intent-icon{background:color-mix(in srgb,#7952e8 18%,var(--color-surface))}}.chat-intent-chip-task .chat-intent-icon{color:#7952e8}.chat-intent-chip-meal .chat-intent-icon{background:#fde5ef}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip-meal .chat-intent-icon{background:color-mix(in srgb,#f45d9a 16%,var(--color-surface))}}.chat-intent-chip-meal .chat-intent-icon{color:#c4386a}.chat-intent-chip-event .chat-intent-icon{background:#fce9e6}@supports (color:color-mix(in lab, red, red)){.chat-intent-chip-event .chat-intent-icon{background:color-mix(in srgb,#f18472 18%,var(--color-surface))}}.chat-intent-chip-event .chat-intent-icon{color:#c25a3f}.chat-intent-copy{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;line-height:1.25;display:flex}.chat-intent-label{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11.5px;font-weight:700;display:block;overflow:hidden}.chat-intent-detail{color:var(--color-ink-faint);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10.5px;font-weight:500;display:block;overflow:hidden}.chat-intent-add{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;cursor:pointer;transition:background var(--motion-fast) ease,transform var(--motion-fast) ease;padding:4px 10px;font-size:11px;font-weight:700}.chat-intent-add:hover{background:var(--color-accent-strong)}.chat-intent-add:active{transform:scale(.95)}.chat-intent-chip-grocery .chat-intent-add{background:#1d8a5d}.chat-intent-chip-grocery .chat-intent-add:hover{background:#16734b}.chat-intent-chip-meal .chat-intent-add{background:#c4386a}.chat-intent-chip-meal .chat-intent-add:hover{background:#a12959}.chat-intent-dismiss{width:22px;height:22px;color:var(--color-ink-faint);cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.chat-intent-dismiss:hover{background:var(--color-surface-sunken);color:var(--color-ink-soft)}.chat-intent-added{border-radius:var(--radius-pill);color:#16734b;background:#1d8a5d29;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.chat-clear-error{color:var(--color-warn);font-size:12px}.page-header-aside{min-width:144px;overflow:visible}.page-spot-frame{background:0 0;border-radius:0;place-items:center;width:136px;height:116px;display:grid;overflow:visible}.page-spot{display:block;object-fit:contain!important;object-position:center!important;mix-blend-mode:normal!important;filter:drop-shadow(0 10px 18px #17172f14)!important;border-radius:0!important;width:136px!important;height:116px!important}.reward-balance-spot{background:0 0!important;width:260px!important;height:250px!important;margin:0 auto 14px!important;overflow:visible!important}.reward-balance-spot .page-spot-frame{background:0 0;width:238px;height:238px}.reward-balance-spot .page-spot{border-radius:var(--radius-card)!important;width:218px!important;height:238px!important}@media (max-width:380px){.page-header-aside{min-width:104px}.page-spot-frame{width:100px;height:92px}.page-spot{border-radius:0!important;width:100px!important;height:92px!important}.reward-balance-spot{width:220px!important;height:218px!important}.reward-balance-spot .page-spot-frame{width:206px;height:206px}.reward-balance-spot .page-spot{width:190px!important;height:206px!important}}.fam-ai-page{background:var(--color-surface);flex-direction:column;min-height:100vh;display:flex}.fam-ai-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none}.fam-ai-header-inner{text-align:center;max-width:640px;margin:0 auto;padding:18px 20px 14px}.fam-ai-brand{justify-content:center;align-items:center;gap:7px;display:flex}.fam-ai-brand-icon{background:var(--color-accent);color:#fff;border-radius:9px;place-items:center;width:28px;height:28px;display:grid}.fam-ai-brand strong{font:700 18px/1 var(--font-display);letter-spacing:-.03em;color:var(--color-ink)}.fam-ai-brand em{background:var(--color-accent-soft);color:var(--color-accent-strong);text-transform:uppercase;letter-spacing:.07em;border-radius:6px;padding:2px 7px;font-size:9px;font-style:normal;font-weight:850}.fam-ai-header-tagline{color:var(--color-ink-soft);margin-top:6px;font-size:12.5px}.fam-ai-chat{flex-direction:column;flex:1 1 0;gap:24px;padding:20px 24px 16px;display:flex;overflow-y:auto}.fam-ai-msg{animation:.3s ease-out both msgIn}.fam-ai-msg-row{align-items:flex-start;gap:14px;width:100%;max-width:580px;margin:0 auto;display:flex}.fam-ai-msg.user .fam-ai-msg-row{flex-direction:row-reverse}.fam-ai-msg-avatar{background:var(--color-accent-soft);width:34px;height:34px;color:var(--color-accent-strong);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:750;display:grid}.fam-ai-msg-avatar.user{background:var(--color-ink);color:#fff;font-size:12px}.fam-ai-msg-body{flex:1;min-width:0}.fam-ai-msg-bubble{border-radius:var(--radius-2xl);color:var(--color-ink);white-space:pre-wrap;word-break:break-word;max-width:480px;padding:14px 18px;font-size:15px;line-height:1.6}.fam-ai-msg.user .fam-ai-msg-bubble{border-radius:var(--radius-2xl) var(--radius-2xl) var(--radius-md) var(--radius-2xl);background:var(--color-accent-soft);color:var(--color-ink);box-shadow:var(--shadow-xs);margin-left:auto}.fam-ai-msg:not(.user) .fam-ai-msg-bubble{border-radius:var(--radius-2xl) var(--radius-2xl) var(--radius-2xl) var(--radius-md);background:var(--color-surface-sunken);border:1px solid var(--color-border);box-shadow:var(--shadow-xs)}.fam-ai-thinking{align-items:center;gap:6px;padding:14px 18px;display:flex}.fam-ai-thinking i{background:var(--color-accent);border-radius:50%;width:8px;height:8px;animation:.9s infinite alternate famAiBounce}.fam-ai-thinking i:nth-child(2){animation-delay:.15s}.fam-ai-thinking i:nth-child(3){animation-delay:.3s}.fam-ai-suggestions{flex:none;padding:0 20px 14px}.fam-ai-suggestions-label{max-width:580px;color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.09em;margin:0 auto 10px;font-size:11px;font-weight:700}.fam-ai-suggestion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:580px;margin:0 auto;display:grid}.fam-ai-suggestion{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);width:100%;min-height:52px;color:var(--color-ink);text-align:left;transition:border-color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out);align-items:center;gap:12px;padding:12px 14px;font-size:13.5px;font-weight:600;line-height:1.3;display:flex}.fam-ai-suggestion:hover{border-color:var(--color-accent);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.fam-ai-suggestion:active{transform:scale(.98)}.fam-ai-suggestion-icon{border-radius:var(--radius-lg);width:34px;height:34px;color:var(--color-on-accent);flex:none;place-items:center;display:grid}.fam-ai-suggestion.tasks .fam-ai-suggestion-icon{background:var(--color-tasks)}.fam-ai-suggestion.meals .fam-ai-suggestion-icon{background:var(--color-meals)}.fam-ai-suggestion.calendar .fam-ai-suggestion-icon{background:var(--color-calendar)}.fam-ai-suggestion.groceries .fam-ai-suggestion-icon{background:var(--color-shopping)}.fam-ai-suggestion-text{text-overflow:ellipsis;min-width:0;overflow:hidden}.fam-ai-review{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg);flex:none;margin:0 20px 12px}.fam-ai-review-head{justify-content:space-between;align-items:center;display:flex}.fam-ai-review-head-label{align-items:center;gap:var(--space-2);color:var(--color-accent);display:flex}.fam-ai-review-head-label strong{font-size:13px}.fam-ai-review-close{width:28px;height:28px;color:var(--color-ink-faint);border-radius:50%;place-items:center;display:grid}.fam-ai-review-close:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.fam-ai-review-note{color:var(--color-ink-faint);margin:5px 0 0;font-size:11px}.fam-ai-review-list{gap:6px;margin-top:10px;display:grid}.fam-ai-review-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:9px 11px;display:flex}.fam-ai-review-item-icon{background:var(--color-accent-soft);width:30px;height:30px;color:var(--color-accent-strong);border-radius:8px;flex:none;place-items:center;display:grid}.fam-ai-review-item-text strong,.fam-ai-review-item-text small{display:block}.fam-ai-review-item-text strong{font-size:12px}.fam-ai-review-item-text small{color:var(--color-ink-soft);margin-top:1px;font-size:10.5px}.fam-ai-review-actions{gap:8px;margin-top:12px;display:flex}.fam-ai-review-cancel{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-soft);flex:1;padding:10px;font-size:12px;font-weight:700}.fam-ai-review-approve{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;border:0;flex:1;padding:10px;font-size:12px;font-weight:700}.fam-ai-review-approve:disabled{opacity:.4}.fam-ai-preview-card{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface-raised);margin-top:8px;padding:12px}.fam-ai-preview-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.fam-ai-preview-badge{color:var(--color-accent);align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.fam-ai-preview-head em{letter-spacing:.05em;text-transform:uppercase;color:var(--color-ink-faint);font-size:10px;font-style:normal;font-weight:600}.fam-ai-preview-actions{gap:8px;display:flex}.fam-ai-preview-approve{background:var(--color-accent);color:#fff;border:0;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:5px;padding:9px 12px;font-size:12px;font-weight:700;display:inline-flex}.fam-ai-preview-approve:disabled{opacity:.45}.fam-ai-preview-cancel{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);border-radius:6px;padding:9px 14px;font-size:12px;font-weight:600}.fam-ai-undo-chip{border-radius:var(--radius-tag);background:#e8f6ed;align-items:center;gap:8px;margin-top:8px;padding:6px 8px 6px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.fam-ai-undo-chip{background:color-mix(in srgb,var(--color-good) 10%,var(--color-surface))}}.fam-ai-undo-chip{border:1px solid #15924657}@supports (color:color-mix(in lab, red, red)){.fam-ai-undo-chip{border:1px solid color-mix(in srgb,var(--color-good) 30%,var(--color-border))}}.fam-ai-undo-chip{color:var(--color-good);font-size:11.5px;font-weight:600}.fam-ai-undo-chip button{background:var(--color-good);color:#fff;border:0;border-radius:6px;align-items:center;gap:4px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.fam-ai-undo-chip.undone{color:var(--color-ink-faint);background:var(--color-surface-raised);border-color:var(--color-border)}.fam-ai-clarify-hint{color:var(--color-ink-faint);margin:8px 0 0;font-size:11px}.fam-ai-action-chips{flex-wrap:wrap;gap:8px;max-width:580px;margin:10px auto 0;display:flex}.fam-ai-action-chips button{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);color:var(--color-ink-soft);padding:8px 14px;font-size:12px;font-weight:600}.fam-ai-action-chips button:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-surface-raised)}.fam-ai-error{border-radius:var(--radius-sm);background:var(--color-warn-soft);color:var(--color-warn);flex:none;margin:0 20px 8px;padding:10px 14px;font-size:11.5px}.fam-ai-composer{padding:0 20px max(16px,env(safe-area-inset-bottom));background:var(--color-surface);border-top:1px solid var(--color-border);flex:none;position:sticky;bottom:0}.fam-ai-composer-inner{border:1.5px solid var(--color-border);border-radius:var(--radius-section);background:var(--color-surface-sunken);align-items:flex-end;gap:8px;max-width:580px;margin:0 auto;padding:10px 10px 10px 16px;transition:border-color .18s,box-shadow .18s;display:flex;box-shadow:0 2px 8px #1816300a}.fam-ai-composer-inner:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #2563eb29}@supports (color:color-mix(in lab, red, red)){.fam-ai-composer-inner:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 16%,transparent)}}.fam-ai-composer-inner textarea{resize:none;color:var(--color-ink);background:0 0;border:0;outline:none;flex:1;max-height:120px;padding:4px 0;font-size:14px;line-height:1.45}.fam-ai-composer-inner textarea::placeholder{color:var(--color-ink-faint)}.fam-ai-composer-inner button{border-radius:var(--radius-xs);background:var(--color-accent);color:#fff;flex:none;place-items:center;width:36px;height:36px;transition:opacity .18s,transform .12s;display:grid}.fam-ai-composer-inner button:active:not(:disabled){transform:scale(.9)}.fam-ai-composer-inner button:disabled{opacity:.35;background:var(--color-border-strong)}.fam-ai-composer-legal{text-align:center;max-width:580px;color:var(--color-ink-faint);margin:8px auto 0;font-size:9.5px}@keyframes msgIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes famAiBounce{to{opacity:.45;transform:translateY(-4px)}}@media (max-width:600px){.fam-ai-chat{padding:12px 14px 8px}.fam-ai-suggestion-grid{grid-template-columns:1fr}.fam-ai-composer{padding-left:14px;padding-right:14px}}@media (max-width:380px){.fam-ai-page .fam-ai-chips{grid-template-columns:1fr!important}.fam-ai-page .fam-ai-thread{max-height:240px!important}}.recipe-detail-card{border:1px solid var(--color-border);border-radius:var(--radius-section);background:linear-gradient(135deg,#fffdf5,#f8f4ff);margin:4px 0 20px;padding:16px;box-shadow:0 10px 26px #241e480f}.recipe-detail-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.recipe-detail-head p{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);font-size:10.5px;font-weight:850}.recipe-detail-head h4{font:760 18px/1.08 var(--font-display);letter-spacing:-.015em;color:var(--color-ink);margin:2px 0 4px}.recipe-detail-head span{color:var(--color-ink-soft);font-size:12px}.recipe-detail-head svg{color:var(--color-accent)}.recipe-detail-grid{grid-template-columns:1fr 1.2fr;gap:14px;display:grid}.recipe-detail-grid strong{color:var(--color-ink);margin-bottom:8px;font-size:12px;display:block}.recipe-detail-grid ul,.recipe-detail-grid ol{color:var(--color-ink-soft);margin:0;padding-left:18px;font-size:12px;line-height:1.55}.recipe-grocery-button{border-radius:var(--radius-pill-sm);background:var(--color-accent);color:#fff;width:100%;margin-top:14px;padding:11px 12px;font-size:12.5px;font-weight:800}.recipe-grocery-button:disabled{background:var(--color-accent-soft);color:var(--color-accent-strong);opacity:.75}@media (max-width:520px){.recipe-detail-grid{grid-template-columns:1fr}}.event-detail-card{gap:13px;display:grid}.event-detail-time{font:760 18px/1 var(--font-display);color:var(--color-ink)}.event-detail-type{color:var(--color-ink-soft);align-items:center;gap:8px;font-size:13px;display:flex}.event-detail-type i{border-radius:50%;width:10px;height:10px}.event-map-link{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--color-accent);align-items:center;gap:8px;padding:13px;font-size:13px;font-weight:750;display:flex}.event-muted{color:var(--color-ink-faint);font-size:12px}.event-danger-button{border-radius:var(--radius-md);background:var(--color-warn);color:#fff;justify-content:center;align-items:center;gap:7px;padding:12px 14px;font-size:13px;font-weight:800;display:flex}.location-autocomplete-field{margin-bottom:13px;display:block}.location-autocomplete-field>span{color:var(--color-ink-soft);margin-bottom:6px;font-size:12.5px;font-weight:650;display:block}.location-autocomplete-wrap{position:relative}.location-autocomplete-input{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-sunken);width:100%;min-height:46px;transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease;grid-template-columns:18px 1fr;align-items:center;gap:8px;padding:0 14px;display:grid}.location-autocomplete-input:focus-within{border-color:var(--color-accent);background:var(--color-surface);box-shadow:0 0 0 3px #2563eb29}@supports (color:color-mix(in lab, red, red)){.location-autocomplete-input:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 16%,transparent)}}.location-autocomplete-input svg{color:var(--color-ink-faint)}.location-autocomplete-input input{width:100%;min-height:43px;color:var(--color-ink);background:0 0;border:0;outline:0;font-size:15px}.location-autocomplete-input input::placeholder{color:var(--color-ink-faint)}.location-autocomplete-field>small{color:var(--color-ink-faint);margin-top:6px;font-size:11.5px;display:block}.location-autocomplete-field>small.warn{color:var(--color-warn)}.location-suggestions{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);max-height:250px;position:absolute;top:calc(100% + 7px);left:0;right:0;overflow:auto;box-shadow:0 20px 48px #1b19352e}.location-suggestions button{border:0;border-top:1px solid var(--color-border);width:100%;color:var(--color-ink);text-align:left;cursor:pointer;background:0 0;border-radius:0;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;padding:11px 13px;display:grid}.location-suggestions button:first-child{border-top:0}.location-suggestions button:hover,.location-suggestions button.active{background:var(--color-surface-sunken)}.location-suggestions button>svg{color:var(--color-accent)}.location-suggestions button>span{min-width:0;display:block}.location-suggestions strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.location-suggestions button small{color:var(--color-ink-soft);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11.5px;display:block;overflow:hidden}.notification-test-status{border-radius:var(--radius-xs);background:var(--pastel-mint);color:#397b66;align-items:flex-start;gap:7px;margin-top:10px;padding:9px 10px;display:flex}.notification-test-status svg{flex:none;margin-top:1px}.notification-test-status p{font-size:11.5px;line-height:1.4}.notification-help{border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-ink-soft);background:#fff;margin-top:10px;padding:11px;font-size:11.5px;line-height:1.45}.modal-card{padding-bottom:max(2.5rem,calc(env(safe-area-inset-bottom) + 2rem))!important}.modal-close-button{background:var(--color-surface-sunken);width:34px;height:34px;color:var(--color-ink-soft);border:1px solid var(--color-border);border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.modal-close-button:hover{color:var(--color-ink);background:#fff}.modal-card .primary-button-row,.modal-card .reset-confirm-actions{padding-bottom:4px}.grocery-mode-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.grocery-mode-actions button{border-radius:var(--radius-pill);border:1px solid var(--color-border);color:var(--color-accent);background:#fff;align-items:center;gap:6px;padding:8px 11px;font-size:11px;font-weight:750;display:inline-flex}.focus-shopping-overlay{z-index:120;color:var(--color-ink);isolation:isolate;background:#fffdfb;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.focus-shopping-header{z-index:2;min-height:68px;padding:calc(env(safe-area-inset-top) + 12px) 20px 10px;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.focus-shopping-header h2{font:750 20px/1 var(--font-display);letter-spacing:-.03em}.focus-shopping-header p{color:var(--color-ink-soft);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-size:11px;font-weight:700}.focus-shopping-header button{background:var(--color-surface-sunken);width:36px;height:36px;color:var(--color-ink);border-radius:50%;flex:none;place-items:center;display:grid}.focus-shopping-list{z-index:1;min-height:0;padding:16px 18px calc(110px + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;align-content:start;gap:10px;display:grid;position:relative;overflow:auto}.focus-shopping-item{border:1px solid var(--color-border);border-radius:var(--radius-section);text-align:left;background:#fff;grid-template-columns:36px 1fr auto;align-items:center;gap:13px;padding:16px;display:grid;box-shadow:0 8px 24px #1b19350d}.focus-shopping-item.is-checked{opacity:.52;background:var(--color-surface-sunken)}.focus-shopping-item strong{letter-spacing:-.02em;font-size:20px;display:block}.focus-shopping-item span{color:var(--color-ink-soft);margin-top:3px;font-size:12px;display:block}.focus-shopping-item em{color:var(--color-accent);font-size:12px;font-style:normal;font-weight:800}.focus-shopping-done{left:18px;right:18px;bottom:max(18px,env(safe-area-inset-bottom));z-index:121;position:fixed}.barcode-note{border-radius:var(--radius-pill-sm);background:var(--pastel-blue);color:#315f8e;align-items:flex-start;gap:8px;margin:-2px 0 14px;padding:10px 11px;font-size:12px;line-height:1.45;display:flex}.barcode-note svg{flex:none;margin-top:1px}.barcode-actions{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px;display:grid}.barcode-actions label,.barcode-actions button{border-radius:var(--radius-md);border:1px solid var(--color-border-strong);min-height:46px;color:var(--color-ink);background:#fff;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:750;display:flex}.barcode-actions input{opacity:0;pointer-events:none;position:absolute}.barcode-result{border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-accent-strong);margin-bottom:12px;padding:10px 11px;font-size:12px;font-weight:700}.groceries-missing-modal-summary{border-radius:var(--radius-md);background:var(--color-accent-soft);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;display:flex}.groceries-missing-modal-summary p{color:var(--color-accent-strong);font-size:13px;line-height:1.4}.groceries-missing-modal-summary p strong{font-weight:800}.groceries-missing-modal-summary button{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;cursor:pointer;border:none;align-items:center;gap:6px;padding:8px 13px;font-size:11.5px;font-weight:800;display:inline-flex}.groceries-missing-modal-summary button:disabled{opacity:.4;cursor:default}.groceries-missing-modal-list{gap:14px;display:grid}.groceries-missing-meal-block{border-radius:var(--radius-md);background:var(--color-surface-sunken);border:1px solid var(--color-border);padding:12px 14px}.groceries-missing-meal-block header{flex-direction:column;gap:2px;margin-bottom:10px;display:flex}.groceries-missing-meal-block .groceries-missing-meal-day{color:var(--color-ink-soft);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px;font-weight:700}.groceries-missing-meal-block strong{color:var(--color-ink);font-size:14.5px;font-weight:700}.groceries-missing-ingredient-list{flex-wrap:wrap;gap:6px;display:flex}.groceries-missing-ingredient-list li{border-radius:var(--radius-pill);background:var(--color-surface);border:1px solid var(--color-border);align-items:center;gap:2px;padding:5px 4px 5px 10px;display:inline-flex}.groceries-missing-ingredient-list li span{color:var(--color-ink);font-size:12px}.groceries-missing-ingredient-list li button{background:var(--color-accent-soft);width:22px;height:22px;color:var(--color-accent-strong);cursor:pointer;transition:background .16s var(--m3-motion-standard),color .16s var(--m3-motion-standard),transform .12s var(--m3-motion-standard);border:none;border-radius:50%;place-items:center;display:grid}.groceries-missing-ingredient-list li button:hover{background:var(--color-accent);color:#fff}.groceries-missing-ingredient-list li button:active{transform:scale(.92)}.groceries-missing-empty{background:var(--color-good-soft);color:var(--color-good);border-radius:var(--radius-md);padding:18px;font-size:13px;font-weight:600;line-height:1.45}.focus-shopping-item{grid-template-columns:28px 36px 1fr}.focus-shopping-check{border:1.5px solid var(--color-border-strong);border-radius:50%;place-items:center;width:26px;height:26px;color:#fff!important;background:0 0!important;font-size:14px!important;font-weight:850!important;display:grid!important}.focus-shopping-item.is-checked .focus-shopping-check{border-color:var(--color-good);background:var(--color-good)!important}.focus-shopping-item small{color:var(--color-ink-soft);margin-top:3px;font-size:12px;display:block}.focus-shopping-item>span:not(.focus-shopping-check):not(.focus-shopping-copy){width:36px!important;height:36px!important;color:inherit!important;font-size:inherit!important;justify-content:center!important;align-items:center!important;margin-top:0!important;display:flex!important}.focus-shopping-copy{min-width:0;color:inherit!important;font-size:inherit!important;margin-top:0!important;display:block!important}.focus-shopping-copy strong{color:var(--color-ink);letter-spacing:-.02em;font-size:20px;display:block}.focus-shopping-copy small{color:var(--color-ink-soft);margin-top:3px;font-size:12px;display:block}.focus-shopping-header-actions{align-items:center;gap:8px;display:flex}.focus-shopping-header .focus-shopping-scan{border-radius:var(--radius-pill);background:var(--color-accent-soft);width:auto;height:40px;color:var(--color-accent);align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.reference-groceries .page-header-aside{min-width:126px}.reference-groceries .grocery-mode-actions{justify-content:flex-end;gap:7px}.reference-groceries .grocery-mode-actions button{padding:8px 10px;font-size:10.5px}.focus-shopping-done{border-radius:var(--radius-section);background:var(--color-accent);color:#fff;padding:16px max(16px,env(safe-area-inset-bottom));font-size:16px;font-weight:800;box-shadow:0 18px 42px #5e4fd73d}.barcode-note{display:block}.barcode-actions{justify-content:center;align-items:center;gap:10px;width:100%;display:flex;position:relative}.barcode-actions label,.barcode-actions button{border-radius:var(--radius-pill);white-space:nowrap;flex:1 1 0;min-width:0;min-height:44px;padding:0 16px;line-height:1;position:relative}.barcode-actions label svg,.barcode-actions button svg{flex:none}.barcode-actions input{opacity:0;cursor:pointer;pointer-events:auto;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.barcode-lookup-row{grid-template-columns:minmax(0,1fr) 112px;align-items:end;gap:10px;margin-bottom:2px;display:grid}.barcode-lookup-row label{margin-bottom:0}.barcode-lookup-row button{white-space:nowrap;min-height:43px;font-size:13px}.barcode-lookup-row button:disabled{opacity:.45;cursor:not-allowed}.delivery-banner-card{isolation:isolate;background:#17192f;min-height:190px}.delivery-banner-art{z-index:-2;object-fit:cover;object-position:center bottom;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.delivery-banner-shade{z-index:-1;background:linear-gradient(90deg,#0c0e22e6 0%,#0f1128b8 48%,#0f112840 100%);position:absolute;top:0;bottom:0;left:0;right:0}@media (max-width:620px){.delivery-banner-card{min-height:226px}.delivery-banner-art{object-position:59% bottom}.delivery-banner-shade{background:linear-gradient(90deg,#0c0e22f0 0%,#0f1128d1 66%,#0f112880 100%)}}.barcode-camera{aspect-ratio:4/3;border-radius:var(--radius-section);background:#111;margin-bottom:14px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff26}.barcode-camera video{object-fit:cover;width:100%;height:100%;display:block}.barcode-camera-guide{background:linear-gradient(#00000047,#0000000f 30% 70%,#0006);place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.barcode-camera-guide span{border-radius:var(--radius-control);border:2px solid #fff;width:min(82%,420px);height:38%;position:relative;box-shadow:0 0 0 999px #0000002e}.barcode-camera-guide span:after{content:"";background:#ff5c72;height:2px;position:absolute;top:50%;left:8%;right:8%;box-shadow:0 0 10px #ff5c72cc}.barcode-camera-footer{color:#fff;justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:750;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.barcode-camera-footer button{border-radius:var(--radius-pill);color:#27233f;background:#ffffffeb;padding:8px 11px;font-weight:800}.barcode-error{border-radius:var(--radius-sm);background:var(--color-warn-soft);color:var(--color-warn);margin-bottom:12px;padding:10px 11px;font-size:12px;font-weight:700}.barcode-product-fields{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.barcode-product-fields>div{min-width:0}.barcode-product-image{object-fit:contain;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;width:74px;height:92px}.barcode-detail-grid{grid-template-columns:auto minmax(120px,1fr) minmax(120px,1fr);align-items:end;gap:11px;margin-bottom:4px;display:grid}.barcode-price-note{color:var(--color-ink-faint);margin:4px 0 14px;font-size:11px;line-height:1.4}.barcode-save-actions{grid-template-columns:1.2fr 1fr 1.2fr;gap:8px;display:grid}.barcode-save-actions button{justify-content:center;align-items:center;gap:6px;min-width:0;padding-left:10px;padding-right:10px;font-size:12px;display:inline-flex}@media (max-width:620px){.barcode-detail-grid{grid-template-columns:auto 1fr}.barcode-detail-grid label:last-child{grid-column:1/-1}.barcode-save-actions,.barcode-product-fields{grid-template-columns:1fr}.barcode-product-image{width:64px;height:76px}.barcode-camera{aspect-ratio:3/4;max-height:54vh}}.google-calendar-note{border-radius:var(--radius-sm);color:var(--color-ink-soft);border:1px solid var(--color-border);background:#fff;margin:10px 0 3px;padding:9px 10px;font-size:11.5px;line-height:1.45}.install-prompt{left:18px;right:18px;bottom:max(86px,calc(env(safe-area-inset-bottom) + 78px));z-index:60;border:1px solid var(--color-border);border-radius:var(--radius-section);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;grid-template-columns:38px 1fr auto auto;align-items:center;gap:10px;max-width:560px;margin:auto;padding:12px;display:grid;position:fixed;box-shadow:0 18px 45px #1b193529}.install-prompt-icon{border-radius:var(--radius-md);background:var(--color-accent-soft);width:38px;height:38px;color:var(--color-accent);place-items:center;display:grid}.install-prompt p{color:var(--color-ink);font-size:13.5px;font-weight:800}.install-prompt span{color:var(--color-ink-soft);margin-top:2px;font-size:11.5px;line-height:1.35;display:block}.install-prompt-action{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;padding:9px 12px;font-size:12px;font-weight:800}.install-prompt-close{width:32px;height:32px;color:var(--color-ink-faint);background:var(--color-surface-sunken);border-radius:50%;place-items:center;display:grid}@media (max-width:520px){.install-prompt{grid-template-columns:34px 1fr auto}.install-prompt-action{grid-column:2/3;width:max-content}.install-prompt-close{grid-area:1/3}}.meal-cook-hint{color:var(--color-accent);letter-spacing:.01em;align-items:center;gap:4px;margin-top:3px;font-size:10.5px;font-weight:850;display:flex}.today-meal-cook-hint{color:var(--color-accent);opacity:.85;flex:none;margin-left:auto;transition:opacity .15s}.task-row-share{width:30px;height:30px;color:var(--color-accent);background:0 0;border-radius:10px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.task-row-share:hover{background:var(--color-accent-soft);color:var(--color-accent-strong)}.event-share-button{border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent-strong);white-space:nowrap;align-items:center;gap:6px;padding:9px 14px;font-size:12.5px;font-weight:700;transition:transform .12s,background .15s;display:inline-flex}.event-share-button:hover{background:#c3d6fb}@supports (color:color-mix(in lab, red, red)){.event-share-button:hover{background:color-mix(in srgb,var(--color-accent) 22%,var(--color-accent-soft))}}.event-share-button:active{transform:scale(.97)}.theme-dark,.theme-dark .app-shell{color:var(--color-ink);background:var(--color-canvas)}.theme-dark .app-content{color:var(--color-ink);background:var(--color-canvas)!important}.theme-dark .app-topbar,.theme-dark .primary-nav{background:#ffffffeb}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-topbar,.theme-dark .primary-nav{background:color-mix(in srgb,var(--color-surface) 92%,transparent)}}.theme-dark .app-topbar,.theme-dark .primary-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--color-ink)}.theme-dark .topbar-wordmark strong,.theme-dark .nav-brand strong{color:#fff}.theme-dark .topbar-wordmark img,.theme-dark .nav-brand img{background:#25213a}.theme-dark .topbar-avatar:not(:has(img)){color:#ddd6ff;background:#302b58}.theme-toggle-button{border-radius:var(--radius-pill);background:var(--color-surface-sunken);width:32px;height:32px;color:var(--color-ink-soft);place-items:center;display:grid}.theme-toggle-button svg{width:17px!important;height:17px!important}.theme-toggle-button[aria-pressed=true]{color:#7c5a00;background:#fff2b8}.theme-dark .theme-toggle-button[aria-pressed=true]{color:#ffe59a;background:#2d2955}.theme-dark .family-hero:after{background:linear-gradient(90deg,#181a2bfa 0%,#181a2bdb 38%,#181a2b14 70%)}.theme-dark .notification-row.is-unread{background:#242037}.theme-dark .notification-row:hover{background:#2d2955}.theme-dark .focus-shopping-overlay,.theme-dark .cook-focus-screen{background:linear-gradient(#10111f,#151628)}.theme-dark .focus-shopping-header,.theme-dark .cook-focus-topbar{background:#121322e6}.theme-dark .focus-shopping-item{background:#1c1d31;border-color:#363954;box-shadow:0 10px 28px #0003}.theme-dark .focus-shopping-item:hover{background:#22243a;border-color:#484b69}.theme-dark .focus-shopping-item.is-checked{opacity:.62;background:#171827}.theme-dark .focus-shopping-copy strong{color:#f7f7ff!important}.theme-dark .focus-shopping-copy small{color:#b9bdd0!important}.theme-dark .focus-shopping-check{border-color:#858bad}.theme-dark .focus-shopping-header>div:first-child h2{color:#fff}.theme-dark .focus-shopping-header>div:first-child p{color:#b9bdd0}.theme-dark .focus-shopping-header-actions>button:last-child{color:#fff;background:#2b2d45;border:1px solid #41445f}.theme-dark .cook-guide-actions button.primary,.theme-dark .cook-primary-action,.theme-dark .primary-button{color:#fff!important}.theme-dark .text-\[var\(--color-ink\)\]{color:var(--color-ink)!important}.theme-dark .text-\[var\(--color-ink-soft\)\]{color:var(--color-ink-soft)!important}.theme-dark .text-\[var\(--color-ink-faint\)\]{color:var(--color-ink-faint)!important}.theme-dark .bg-\[var\(--color-surface-sunken\)\]{background-color:var(--color-surface-sunken)!important}.theme-dark .bg-\[var\(--color-accent-soft\)\]{background-color:var(--color-accent-soft)!important}.theme-dark .calendar-month-grid button.outside{color:var(--color-ink-faint)!important}.theme-dark .calendar-month-grid button.selected{background:var(--color-accent)!important;color:#fff!important}.theme-dark .avatar-editor-preview{color:#fff;border-color:#2b2d4b}.theme-dark .avatar-preset-grid img,.theme-dark .topbar-avatar{background:#fff}@media (max-width:600px){.focus-shopping-header{min-height:calc(66px + env(safe-area-inset-top));padding:calc(env(safe-area-inset-top) + 10px) 12px 10px}.focus-shopping-header-actions{gap:6px}.focus-shopping-header .focus-shopping-scan{height:44px;padding:0 10px;font-size:11px}.focus-shopping-header-actions>button:last-child{width:44px;height:44px}.focus-shopping-list{padding:12px 12px calc(104px + env(safe-area-inset-bottom))}.focus-shopping-item{border-radius:18px;padding:14px 12px}.focus-shopping-copy strong{font-size:17px}.focus-shopping-done{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom))}}.theme-dark .app-content .text-white:not(.primary-button):not(.rounded-full),.theme-dark .app-content [class*=text-white]:not(.primary-button){color:var(--color-ink)!important}.theme-dark .weekly-progress{color:#fff!important;background:#5f55d8!important}.theme-dark .weekly-progress p,.theme-dark .weekly-progress small,.theme-dark .weekly-progress b{color:#f2efff!important}.theme-dark .task-row-delete{color:var(--color-ink-soft)!important;border-color:var(--color-border)!important;background:#20223a!important}.theme-dark .reference-groceries .px-5>div>section>p{color:var(--color-ink)!important;background:#0f1020!important}.theme-dark .fam-ai-page .fam-ai-header,.theme-dark .fam-ai-page .fam-ai-composer{border-color:var(--color-border)!important;background:#111225!important}.theme-dark .fam-ai-page .fam-ai-chat{background:0 0!important}.theme-dark .fam-ai-msg.user .fam-ai-msg-body p{background:#1a274e!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .fam-ai-msg.user .fam-ai-msg-body p{background:color-mix(in srgb,var(--color-accent) 18%,#181a2b)!important}}.theme-dark .fam-ai-suggestion{border-color:var(--color-border-strong)!important;color:var(--color-ink)!important;background:#181a2b!important}.theme-dark .fam-ai-suggestion:hover{border-color:var(--color-accent)!important}.theme-dark .fam-ai-review{border-color:var(--color-border-strong)!important;background:#181a2b!important}.theme-dark .fam-ai-review-item{border-color:var(--color-border)!important;background:#20223a!important}.theme-dark .fam-ai-composer-inner{border-color:var(--color-border-strong)!important;background:#20223a!important}.theme-dark .fam-ai-composer-inner textarea{color:var(--color-ink)!important;background:0 0!important}.theme-dark .fam-ai-composer-inner textarea::placeholder{color:var(--color-ink-faint)!important}.theme-dark .fam-ai-composer-inner button{color:#fff!important}.theme-dark .reference-meals>.px-5>.kinship-card button{color:var(--color-ink)!important;border-color:var(--color-border)!important}.theme-dark .reference-meals>.px-5>.kinship-card button p:first-child{color:var(--color-ink-soft)!important}.theme-dark .today-metric-card,.theme-dark .today-command-card,.theme-dark .today-pulse-card,.theme-dark .today-flow-card,.theme-dark .today-load-card{background:var(--color-surface)!important}.theme-dark .weather-now-card{background:linear-gradient(135deg,#1e2040,#1e2032)!important}.theme-dark .broadcast-compose{border-color:var(--color-border)!important;background:var(--color-surface)!important}.theme-dark .broadcast-banner{background:#1b1d38!important}.theme-dark .reference-settings section:first-of-type>.kinship-card,.theme-dark .reference-settings section:nth-of-type(2)>.kinship-card:first-of-type,.theme-dark .settings-household-card{background:var(--color-surface)!important}.theme-dark .reference-settings .settings-dietary-picker button{background:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-ink-soft)!important}.theme-dark .reference-settings .settings-dietary-picker button.selected{background:var(--color-accent-soft)!important;border-color:var(--color-accent)!important;color:var(--color-accent-strong)!important}.theme-dark .reference-meals{background:0 0!important}.theme-dark .reference-meals .kinship-card:nth-child(3n+1),.theme-dark .reference-meals .kinship-card:nth-child(3n+2),.theme-dark .reference-meals .kinship-card:nth-child(3n),.theme-dark .meal-day-card{background:var(--color-surface)!important}.theme-dark .meal-slot-row.is-dinner .meal-slot-button{background:var(--pastel-peach)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .meal-slot-row.is-dinner .meal-slot-button{background:color-mix(in srgb,var(--pastel-peach) 10%,var(--color-surface-sunken))!important}}.theme-dark .meal-slot-label{color:var(--color-ink-faint)!important}.theme-dark .chat-intent-chip{border-color:var(--color-border)!important;background:#1b1d38!important}.theme-dark .chat-intent-chip .chat-intent-add{background:var(--color-accent)!important;color:#fff!important}.theme-dark .chat-clear-option{border-color:var(--color-border)!important;color:var(--color-ink)!important;background:#1b1d38!important}.theme-dark .chat-clear-option span{background:#20223a!important}.theme-dark .m3-dialog-layer{background:#0a0b16d1!important}.theme-dark .modal-card{background:var(--color-surface)!important}.theme-dark .modal-card .modal-close-button{color:var(--color-ink-soft)!important;background:#20223a!important}.theme-dark .page-header{border-color:var(--color-border)!important;background:0 0!important}.theme-dark .reference-tasks .page-header{background:0 0!important}.theme-dark .reference-dashboard .kinship-card,.theme-dark .kinship-card,.theme-dark .family-roster-card{background:var(--color-surface)!important}.theme-dark .kinship-card:hover{box-shadow:0 2px 8px #0003!important}.theme-dark .task-board-group{background:var(--color-surface)!important;border-color:var(--color-border-strong)!important}.theme-dark .task-board-row{background:var(--color-surface)!important}.theme-dark .task-group-title h2{color:var(--color-accent-strong)!important}.theme-dark .task-group-title>span{background:var(--color-accent-soft)!important;color:var(--color-accent-strong)!important}.theme-dark .task-board-group.green .task-group-title h2{color:var(--color-good)!important}.theme-dark .task-board-group.green .task-group-title>span{background:var(--color-good-soft)!important;color:var(--color-good)!important}.theme-dark .task-board-group.slate .task-group-title h2{color:var(--color-ink)!important}.theme-dark .task-board-group.slate .task-group-title>span{background:var(--color-accent-soft)!important;color:var(--color-accent-strong)!important}.theme-dark .onboarding-channel-card{background:var(--color-surface)!important}.theme-dark .partner-consent{border-color:var(--color-border)!important;background:#1b1d38!important}.theme-dark .partner-consent strong{color:var(--color-ink)!important}.theme-dark .partner-consent small{color:var(--color-ink-soft)!important}.theme-dark .pending-invite-actions button{background:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-ink-soft)!important}.theme-dark .pending-invite-actions button:hover{border-color:var(--color-border-strong)!important;color:var(--color-ink)!important}.theme-dark .pending-invite-actions button.danger{color:var(--color-warn)!important;background:var(--color-warn-soft)!important}.theme-dark .barcode-actions label,.theme-dark .barcode-actions button{background:var(--color-surface)!important;border-color:var(--color-border-strong)!important;color:var(--color-ink)!important}.theme-dark .grocery-mode-actions button,.theme-dark .page-reset-button,.theme-dark .meal-ideas-launcher button{border-color:var(--color-border-strong)!important;color:var(--color-accent-strong)!important;background:#1b1d38!important}.theme-dark .avatar-editor-actions label,.theme-dark .avatar-editor-actions button{background:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-ink)!important}.theme-dark .avatar-editor-actions label{color:var(--color-accent-strong)!important;background:var(--color-accent-soft)!important}.theme-dark .calendar-event,.theme-dark .calendar-hero-action{background:var(--color-surface)!important}.theme-dark .calendar-select-label select{background:var(--color-surface-sunken)!important;color:var(--color-ink)!important}.theme-dark .meal-preferences-card{background:var(--color-surface)!important;border-color:#0000!important}.meal-preferences-card{border:1px solid var(--color-border);background:linear-gradient(135deg, var(--color-surface) 0%, #f8fbff 100%);border-radius:24px;margin:0 20px 16px;padding:16px}@supports (color:color-mix(in lab, red, red)){.meal-preferences-card{background:linear-gradient(135deg, var(--color-surface) 0%, color-mix(in srgb, var(--color-accent-soft) 42%, var(--color-surface)) 100%)}}.meal-preferences-card{box-shadow:0 14px 38px #1f1d190e}.meal-preferences-copy p{letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);margin:0 0 4px;font-size:11px;font-weight:850}.meal-preferences-copy h3{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-ink);margin:0;font-size:20px;line-height:1.08}.meal-preferences-copy span{color:var(--color-ink-soft);margin-top:6px;font-size:13px;line-height:1.45;display:block}.dietary-chip-row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.dietary-chip{--chip-accent:var(--color-accent);--chip-soft:var(--color-accent-soft);border:1px solid var(--chip-accent);align-items:center;gap:8px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.dietary-chip{border:1px solid color-mix(in srgb, var(--chip-accent) 28%, white)}}.dietary-chip{background:var(--chip-soft)}@supports (color:color-mix(in lab, red, red)){.dietary-chip{background:color-mix(in srgb, var(--chip-soft) 70%, white)}}.dietary-chip{color:var(--chip-accent)}@supports (color:color-mix(in lab, red, red)){.dietary-chip{color:color-mix(in srgb, var(--chip-accent) 64%, var(--color-ink))}}.dietary-chip{border-radius:var(--radius-pill);box-shadow:0 8px 18px var(--chip-accent);padding:7px 12px 7px 8px;font-size:13px;font-weight:850}@supports (color:color-mix(in lab, red, red)){.dietary-chip{box-shadow:0 8px 18px color-mix(in srgb, var(--chip-accent) 10%, transparent)}}.dietary-chip{transition:transform .16s,border-color .16s,background .16s,color .16s,box-shadow .16s}.dietary-chip-icon{border-radius:var(--radius-pill);width:24px;height:24px;color:var(--chip-accent);box-shadow:inset 0 0 0 1px var(--chip-accent);background:#ffffffd6;flex:none;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.dietary-chip-icon{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--chip-accent) 14%, transparent)}}.dietary-chip--green{--chip-accent:#2f9a6b;--chip-soft:#e8f7ef}.dietary-chip--mint{--chip-accent:#26a985;--chip-soft:#def8ef}.dietary-chip--amber{--chip-accent:#d28a19;--chip-soft:#fff3ce}.dietary-chip--blue{--chip-accent:#3d8fe2;--chip-soft:#e4f1ff}.dietary-chip--rose{--chip-accent:#e65b86;--chip-soft:#ffe4ef}.dietary-chip--aqua{--chip-accent:#2398ad;--chip-soft:#dff6fa}.dietary-chip--grape{--chip-accent:#785ce8;--chip-soft:#ece7ff}.dietary-chip:active{transform:scale(.98)}.dietary-chip:hover{transform:translateY(-1px)}.dietary-chip.active{border-color:var(--chip-accent)}@supports (color:color-mix(in lab, red, red)){.dietary-chip.active{border-color:color-mix(in srgb, var(--chip-accent) 54%, white)}}.dietary-chip.active{color:var(--color-ink);background:var(--chip-soft)}@supports (color:color-mix(in lab, red, red)){.dietary-chip.active{background:color-mix(in srgb, var(--chip-soft) 88%, white)}}.dietary-chip.active{box-shadow:0 10px 22px var(--chip-accent)}@supports (color:color-mix(in lab, red, red)){.dietary-chip.active{box-shadow:0 10px 22px color-mix(in srgb, var(--chip-accent) 16%, transparent)}}.dietary-chip.active .dietary-chip-icon{color:#fff;background:var(--chip-accent)}.meal-preferences-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.meal-preferences-fields input{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-ink);border-radius:16px;padding:12px 14px;font-size:14px;font-weight:650}.meal-preferences-fields input::placeholder{color:var(--color-ink-faint)}.meal-preferences-fields input:focus{outline:2px solid var(--color-accent);outline-offset:2px}.saved-recipes-section{margin:0 20px 16px}.saved-recipes-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.saved-recipes-head p{letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);margin:0 0 2px;font-size:11px;font-weight:850}.saved-recipes-head h3{font-family:var(--font-display);color:var(--color-ink);margin:0;font-size:19px;line-height:1.12}.saved-recipes-head span{color:var(--color-ink-soft);white-space:nowrap;font-size:13px;font-weight:800}.saved-recipe-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.saved-recipe-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:18px;align-items:stretch;display:flex;overflow:hidden;box-shadow:0 10px 25px #1f1d190d}.saved-recipe-main{text-align:left;color:var(--color-ink);background:0 0;flex:1;min-width:0;padding:13px 14px}.saved-recipe-main span{white-space:nowrap;text-overflow:ellipsis;font-weight:850;display:block;overflow:hidden}.saved-recipe-main small{color:var(--color-ink-soft);margin-top:3px;font-weight:650;display:block}.saved-recipe-main strong{color:var(--color-accent-strong);align-items:center;gap:5px;margin-top:9px;font-size:11px;font-weight:850;display:flex}.saved-recipe-plan{border-left:1px solid var(--color-border);background:var(--color-accent-soft);min-width:92px;color:var(--color-accent-strong);justify-content:center;align-items:center;gap:5px;padding:0 11px;font-size:11px;font-weight:850;display:flex}.saved-recipe-plan:hover{background:#bfd3fa}@supports (color:color-mix(in lab, red, red)){.saved-recipe-plan:hover{background:color-mix(in srgb,var(--color-accent-soft) 76%,var(--color-accent))}}.saved-plan-intro{color:var(--color-ink-soft);margin:-3px 0 14px;font-size:12.5px;line-height:1.45}.roulette-cuisine-chips{gap:var(--space-2);margin-bottom:var(--space-4);padding:0 var(--space-1);flex-wrap:wrap;display:flex}.roulette-cuisine-chip{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);font-size:var(--text-xs);color:var(--color-ink-soft);transition:all var(--motion-fast) var(--ease-out);cursor:pointer;white-space:nowrap;font-weight:600;display:inline-flex}.roulette-cuisine-chip:hover{border-color:var(--color-accent);color:var(--color-accent-strong);background:var(--color-accent-soft)}.roulette-cuisine-chip.selected{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--shadow-sm)}.roulette-cuisine-chip:active{transform:scale(.96)}.roulette-picker-intro{color:var(--color-ink-soft);font-size:var(--text-sm);margin-bottom:var(--space-4);line-height:1.5}.roulette-picker-list{gap:var(--space-3);margin-bottom:var(--space-4);display:grid}.roulette-picker-card{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);text-align:left;transition:border-color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out);display:flex}.roulette-picker-card:hover{border-color:var(--color-accent);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.roulette-picker-card:active{transform:scale(.98)}.roulette-picker-index{border-radius:var(--radius-lg);background:var(--color-accent-soft);width:36px;height:36px;color:var(--color-accent-strong);font-size:var(--text-xs);flex:none;place-items:center;font-weight:800;display:grid}.roulette-picker-card:first-child .roulette-picker-index{background:var(--color-calendar);color:var(--color-on-accent)}.roulette-picker-card:nth-child(2) .roulette-picker-index{background:var(--color-meals);color:var(--color-on-accent)}.roulette-picker-card:nth-child(3) .roulette-picker-index{background:var(--color-shopping);color:var(--color-on-accent)}.roulette-picker-arrow{color:var(--color-ink-faint);flex:none}.roulette-picker-card:hover .roulette-picker-arrow{color:var(--color-accent)}.roulette-picker-actions{gap:8px;display:flex}.roulette-picker-spin{border:1.5px solid var(--color-accent);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent-strong);flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:12.5px;font-weight:750;display:flex}.roulette-picker-spin:disabled{opacity:.5}.roulette-picker-close{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-soft);flex:1;padding:10px;font-size:12.5px;font-weight:700}.saved-plan-days{gap:9px;max-height:min(58vh,560px);padding-right:2px;display:grid;overflow:auto}.saved-plan-days section{border:1px solid var(--color-border);background:var(--color-surface-sunken);border-radius:16px;padding:11px}.saved-plan-days section>strong{color:var(--color-ink);margin-bottom:8px;font-size:12px;display:block}.saved-plan-days section>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.saved-plan-days button{border:1px solid var(--color-border);background:var(--color-surface);min-width:0;color:var(--color-ink);text-align:left;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 6px;padding:9px;display:grid}.saved-plan-days button svg{color:var(--color-accent);grid-row:1/3}.saved-plan-days button span{font-size:11.5px;font-weight:850}.saved-plan-days button small{color:var(--color-ink-faint);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.saved-plan-days button:hover{border-color:var(--color-accent);background:var(--color-accent-soft)}.saved-recipe-remove{border-left:1px solid var(--color-border);width:42px;color:var(--color-ink-faint);background:0 0;place-items:center;display:grid}.saved-recipe-remove:hover{color:var(--color-warn)}@media (max-width:560px){.saved-recipe-card{grid-template-columns:minmax(0,1fr) 42px;display:grid}.saved-recipe-main{grid-column:1}.saved-recipe-plan{border-top:1px solid var(--color-border);border-left:0;grid-column:1;min-height:36px}.saved-recipe-remove{grid-area:1/2/3}.saved-plan-days section>div{grid-template-columns:1fr}}.cook-focus-topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.recipe-save-button.saved{color:var(--color-accent-strong);background:var(--color-accent-soft);border-color:var(--color-accent)}.meal-suggestion-diet-note{color:var(--color-ink-soft);margin:-4px 0 10px;font-size:12px;font-weight:750;line-height:1.35}.theme-dark .meal-preferences-card,.theme-dark .saved-recipe-card,.theme-dark .meal-preferences-fields input,.theme-dark .saved-recipe-remove{color:var(--color-ink)!important;border-color:var(--color-border-strong)!important;background:#181a2b!important}.theme-dark .dietary-chip{background:var(--chip-soft)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .dietary-chip{background:color-mix(in srgb, var(--chip-soft) 18%, #17172a)!important}}.theme-dark .dietary-chip{color:var(--chip-accent)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .dietary-chip{color:color-mix(in srgb, var(--chip-accent) 36%, var(--color-ink))!important}}.theme-dark .dietary-chip{border-color:var(--chip-accent)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .dietary-chip{border-color:color-mix(in srgb, var(--chip-accent) 40%, var(--color-border-strong))!important}}.theme-dark .dietary-chip-icon{background:#ffffffeb!important}.theme-dark .dietary-chip.active,.theme-dark .recipe-save-button.saved{background:var(--chip-soft)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .dietary-chip.active,.theme-dark .recipe-save-button.saved{background:color-mix(in srgb, var(--chip-soft) 28%, #17172a)!important}}.theme-dark .dietary-chip.active,.theme-dark .recipe-save-button.saved{color:var(--color-ink)!important;border-color:var(--chip-accent)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .dietary-chip.active,.theme-dark .recipe-save-button.saved{border-color:color-mix(in srgb, var(--chip-accent) 62%, var(--color-border-strong))!important}}.theme-dark .meal-preferences-copy h3,.theme-dark .saved-recipes-head h3,.theme-dark .saved-recipe-main span{color:var(--color-ink)!important}.theme-dark .meal-preferences-copy span,.theme-dark .saved-recipes-head span,.theme-dark .saved-recipe-main small,.theme-dark .meal-suggestion-diet-note{color:var(--color-ink-soft)!important}@media (max-width:640px){.meal-preferences-fields{grid-template-columns:1fr}.cook-focus-topbar-actions{justify-content:flex-start;width:100%}.saved-recipes-head{align-items:flex-start}}.minimal-auth-subtitle{max-width:380px;color:var(--color-ink-soft);text-align:center;margin:0 auto 28px;font-size:14.5px;line-height:1.5}.minimal-auth-inner-wide{max-width:760px}.minimal-auth-inner-wide .minimal-auth-logo{width:88px;height:88px;margin-bottom:18px}.minimal-auth-inner-wide .minimal-auth-title{margin-bottom:14px;font-size:max(32px,min(4vw,44px))}.minimal-auth-inner-wide .recovery-intro{margin:0 auto 22px}.onboarding-card{text-align:left;width:100%;max-width:760px;margin:0 auto;padding:max(20px,min(3vw,32px))!important}.family-profile-onboarding{gap:16px;display:grid}.guided-onboarding{gap:24px;display:grid}.guided-onboarding-panel{align-content:start;gap:20px;min-height:330px;display:grid}.onboarding-progress-copy{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.onboarding-progress-copy span{color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:850}.onboarding-progress-copy strong{color:var(--color-ink);font-size:13px}.onboarding-progress-track{border-radius:var(--radius-pill);background:var(--color-surface-sunken);height:7px;overflow:hidden}.onboarding-progress-track i{border-radius:inherit;background:linear-gradient(90deg,var(--color-accent),#8a7bea);height:100%;transition:width .25s;display:block}.onboarding-progress-labels{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:8px;display:grid}.onboarding-progress-labels span{color:var(--color-ink-faint);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.onboarding-progress-labels span.active{color:var(--color-accent-strong);font-weight:750}.onboarding-inline-note{color:var(--color-warn);margin-top:-10px;font-size:12px}.onboarding-priority-grid>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.onboarding-priority-grid button{border-radius:var(--radius-control);justify-content:center;align-items:center;gap:7px;min-height:54px;display:flex}.onboarding-pill-check{margin-left:auto}.onboarding-grocery-import textarea{min-height:220px}.onboarding-actions{border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr;align-items:center;gap:12px;padding-top:20px;display:grid}.onboarding-actions>button{justify-content:center;width:100%;min-height:48px}.onboarding-actions>button:first-child{align-items:center;gap:5px;display:flex}.onboarding-address-preview{border:1px solid var(--color-border);border-radius:var(--radius-section);background:var(--color-surface-sunken);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;display:grid}.onboarding-address-preview>div{border-radius:var(--radius-sm);background:var(--color-surface);min-width:0;padding:10px 12px}.onboarding-address-preview>div.wide{grid-column:1/-1}.onboarding-address-preview span,.onboarding-address-preview strong{display:block}.onboarding-address-preview span{color:var(--color-ink-faint);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:800}.onboarding-address-preview strong{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:650;overflow:hidden}.onboarding-address-preview strong:only-child{color:var(--color-ink-faint)}.onboarding-location-note{border-radius:var(--radius-md);background:var(--pastel-blue);color:var(--color-ink-soft);padding:12px 14px;font-size:11.5px;line-height:1.5}.onboarding-notification-step{text-align:center;flex-direction:column;align-items:center;gap:20px;padding:20px 0 12px;display:flex}.onboarding-notification-hero{background:var(--color-accent-soft);width:72px;height:72px;color:var(--color-accent);border-radius:50%;place-items:center;display:grid}.onboarding-notification-intro{color:var(--color-ink-soft);max-width:340px;font-size:14px;line-height:1.5}.onboarding-notification-features{text-align:left;gap:12px;width:100%;max-width:320px;display:grid}.onboarding-notification-features>div{border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-ink-soft);align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.onboarding-notification-features svg{color:var(--color-accent);flex:none}.onboarding-notification-blocked{border-radius:var(--radius-sm);background:var(--color-warn-soft);color:var(--color-warn);padding:10px 14px;font-size:12px;line-height:1.45}.onboarding-notification-action{justify-content:center;width:100%;display:flex}.onboarding-notification-enabled{border-radius:var(--radius-pill);background:var(--color-good-soft);color:var(--color-good);align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:700;display:flex}.onboarding-notification-enabled svg{color:var(--color-good)}.settings-address-preview{margin-bottom:14px}@media (max-width:520px){.onboarding-address-preview{grid-template-columns:1fr}.onboarding-address-preview>div.wide{grid-column:auto}.onboarding-address-preview strong{white-space:normal;overflow-wrap:anywhere}}.onboarding-grid.onboarding-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-full{grid-column:1/-1}.onboarding-field{text-align:left;gap:6px;display:grid}.onboarding-field span,.onboarding-choice-group>span{align-items:center;gap:6px;display:flex}.onboarding-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-sunken);width:100%;min-height:92px;color:var(--color-ink);resize:vertical;padding:12px 14px}.onboarding-field small{color:var(--color-ink-soft);font-size:12px}.onboarding-calendar-card{border:1px solid var(--color-border);border-radius:var(--radius-section);background:var(--color-surface);text-align:left;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:13px;display:grid}.onboarding-calendar-icon{border-radius:var(--radius-md);background:var(--color-accent-soft);width:42px;height:42px;color:var(--color-accent);place-items:center;display:grid}.onboarding-calendar-card strong{color:var(--color-ink);font-weight:800;display:block}.onboarding-calendar-card strong svg{vertical-align:-3px;margin-right:5px;display:inline-block}.onboarding-calendar-card small{color:var(--color-ink-soft);margin-top:2px;font-size:12px;line-height:1.4;display:block}.onboarding-calendar-card.is-connected{background:var(--color-good-soft);border-color:#9bd9bd}.onboarding-calendar-card.is-connected .onboarding-calendar-icon{color:var(--color-good);background:#fff}.onboarding-calendar-card.is-connected strong{color:var(--color-good)}.onboarding-calendar-card.is-connected .onboarding-connect-button{color:var(--color-good);opacity:1;background:#fff;border-color:#9bd9bd}@media (max-width:600px){.event-carousel-card{flex:0 0 240px}.event-carousel-media{height:110px}.event-carousel-body{padding:10px 12px}.event-carousel-footer{flex-direction:column;align-items:stretch}.event-carousel-footer button,.event-carousel-footer a{width:100%}}.onboarding-connect-button{white-space:nowrap;width:auto!important;min-width:132px!important;padding-inline-start:18px!important;padding-inline-end:18px!important}.onboarding-avatar-picker{gap:11px;display:grid}.onboarding-avatar-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.onboarding-avatar-heading>span{color:var(--color-ink-soft);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.onboarding-avatar-heading .onboarding-avatar-actions{align-items:center;gap:8px;display:flex}.onboarding-avatar-heading label,.onboarding-avatar-heading button{border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent-strong);cursor:pointer;align-items:center;gap:6px;padding:8px 11px;font-size:11.5px;font-weight:750;display:inline-flex}.onboarding-avatar-heading button{border:1px solid var(--color-border);color:var(--color-ink);background:#fff}.onboarding-avatar-heading input{display:none}.onboarding-avatar-grid{grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;display:grid}.onboarding-avatar-grid button{aspect-ratio:1;border:1px solid var(--color-border);background:#fff;border-radius:50%;min-width:0;padding:2px;transition:transform .16s,box-shadow .16s;overflow:hidden}.onboarding-avatar-grid button.selected{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.onboarding-avatar-grid button:active{transform:scale(.94)}.onboarding-avatar-grid img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.onboarding-skip-button{justify-content:center;width:100%}.onboarding-retry-button{width:100%;color:var(--color-accent);cursor:pointer;text-align:center;border-radius:var(--radius-sm);background:0 0;border:none;margin-top:8px;padding:10px;font-size:12.5px;font-weight:600}.onboarding-retry-button:hover{background:var(--color-accent-soft)}.onboarding-retry-button:disabled{opacity:.4;cursor:default}.onboarding-retry-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.onboarding-trial-step{gap:16px;display:grid}.onboarding-trial-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:20px}.onboarding-trial-card h3{margin-bottom:8px;font-size:18px;font-weight:700}.onboarding-trial-card>p{color:var(--color-ink-soft);margin-bottom:16px;font-size:13px;line-height:1.5}.onboarding-trial-features{gap:8px;margin-bottom:20px;display:grid}.onboarding-trial-features span{color:var(--color-ink-soft);align-items:center;gap:8px;font-size:12.5px;display:flex}.onboarding-trial-features span:before{content:"✓";color:var(--color-success);font-size:13px;font-weight:700}.onboarding-promo-field{gap:6px;display:grid}.onboarding-promo-field label{color:var(--color-ink-soft);font-size:12px;font-weight:600}.onboarding-promo-row{gap:8px;display:flex}.onboarding-promo-row input{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);letter-spacing:.04em;text-transform:uppercase;flex:1;padding:10px 12px;font-size:13px}.onboarding-promo-row input:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}.onboarding-promo-apply{border:1px solid var(--color-accent);border-radius:var(--radius-control);background:var(--color-accent);color:#fff;cursor:pointer;padding:10px 16px;font-size:12px;font-weight:700;transition:background .2s}.onboarding-promo-apply:hover{background:#1f54c8}@supports (color:color-mix(in lab, red, red)){.onboarding-promo-apply:hover{background:color-mix(in srgb,var(--color-accent) 85%,#000)}}.onboarding-promo-apply:disabled{opacity:.5;cursor:progress}.onboarding-promo-result{margin-top:4px;font-size:12px}.onboarding-promo-result.success{color:var(--color-success)}.onboarding-promo-result.error{color:var(--color-danger)}.settings-household-card{align-items:flex-start;gap:14px;display:flex;padding:16px!important}.cached-search-row{border-radius:var(--radius-md);background:var(--color-surface-sunken);border:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.cached-search-row strong{color:var(--color-ink);font-size:13.5px;display:block}.cached-search-row span{color:var(--color-ink-faint);margin-top:2px;font-size:11.5px;line-height:1.35;display:block}@media (max-width:520px){.cached-search-row{flex-direction:column;align-items:stretch}}.cached-search-row button{width:auto}.settings-household-icon{border-radius:var(--radius-control);background:var(--color-accent-soft);width:44px;height:44px;color:var(--color-accent);place-items:center;font-size:22px;font-weight:900;display:grid}.settings-household-card p{text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-faint);margin:0;font-size:11px;font-weight:900}.settings-household-card h3{font-family:var(--font-display);color:var(--color-ink);margin:1px 0;font-size:21px;font-weight:800}.settings-household-card span{color:var(--color-ink-soft);font-size:13px}.settings-household-summary{flex:1;min-width:0}.settings-household-details{flex-wrap:wrap;gap:8px 14px;margin-top:12px;display:flex}.settings-household-details span{align-items:center;gap:6px;font-weight:700;display:inline-flex}.settings-household-details svg{color:var(--color-accent)}.settings-dietary-pills{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.settings-dietary-pills span{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent-strong);padding:6px 9px;font-size:11.5px;font-weight:750}.settings-dietary-pills em{color:var(--color-ink-faint);font-size:12px;font-style:normal}.settings-household-summary>small{color:var(--color-ink-soft);margin-top:8px;font-size:11.5px;display:block}.settings-household-edit{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-accent);background:#fff;align-items:center;gap:5px;padding:8px 10px;font-size:11.5px;font-weight:800;display:inline-flex}.settings-location-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.settings-field-label{color:var(--color-ink-soft);margin-bottom:8px;font-size:12.5px;font-weight:700}.settings-dietary-picker{flex-wrap:wrap;gap:7px;margin-bottom:15px;display:flex}.settings-dietary-picker button{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-ink-soft);background:#fff;padding:8px 11px;font-size:12px;font-weight:700}.settings-dietary-picker button.selected{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.settings-save-status{color:var(--color-warn);margin-bottom:10px;font-size:12px}.invitation-recognized{border:1px solid #158e454b;align-items:center;gap:10px;margin-bottom:18px;padding:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.invitation-recognized{border:1px solid color-mix(in srgb,var(--color-good) 25%,var(--color-border))}}.invitation-recognized{border-radius:var(--radius-md);background:var(--color-good-soft);color:var(--color-good)}.invitation-recognized>svg{flex:none}.invitation-recognized strong,.invitation-recognized span{display:block}.invitation-recognized strong{font-size:13px}.invitation-recognized span{color:var(--color-ink-soft);margin-top:2px;font-size:11.5px}.onboarding-invite-list{gap:12px;max-height:min(48vh,520px);padding:1px;display:grid;overflow:auto}.onboarding-invite-person{border:1px solid var(--color-border);background:#fdfeff;border-radius:20px;padding:14px}@supports (color:color-mix(in lab, red, red)){.onboarding-invite-person{background:color-mix(in srgb,var(--color-accent-soft) 14%,var(--color-surface))}}.onboarding-invite-person-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.onboarding-invite-person-head strong{color:var(--color-ink);font-size:13px}.onboarding-invite-person-head button{width:34px;height:34px;color:var(--color-ink-faint);border-radius:50%;place-items:center;display:grid}.onboarding-invite-person-head button:hover{background:var(--color-warn-soft);color:var(--color-warn)}.onboarding-invite-fields,.settings-invite-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.onboarding-invite-fields>label:last-child{grid-column:1/-1}.onboarding-invite-consent{margin:0}.onboarding-add-invite{border:1px dashed var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-height:44px;color:var(--color-accent-strong);justify-content:center;align-items:center;gap:7px;margin:12px 0;font-size:12.5px;font-weight:750;display:flex}.onboarding-add-invite:hover{background:var(--color-accent-soft)}@media (max-width:600px){.onboarding-invite-fields,.settings-invite-fields{grid-template-columns:1fr}.onboarding-invite-fields>label:last-child{grid-column:auto}.onboarding-invite-person{padding:12px}.onboarding-invite-list{max-height:52vh}}.invite-password-setup{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-accent-soft);gap:10px;margin:-2px 0 13px;padding:12px;display:grid}.invite-password-setup strong,.invite-password-setup span{display:block}.invite-password-setup strong{color:var(--color-accent-strong);font-size:12.5px}.invite-password-setup span{color:var(--color-ink-soft);margin-top:3px;font-size:11.5px;line-height:1.4}.invite-password-setup button{border-radius:var(--radius-xs);background:var(--color-accent);color:#fff;width:100%;padding:9px 11px;font-size:12px;font-weight:800}@media (max-width:520px){.settings-household-card{grid-template-columns:44px 1fr;display:grid}.settings-household-edit{grid-column:1/-1;justify-content:center;justify-self:stretch}.settings-location-fields{grid-template-columns:1fr}}:root{--m3-primary:var(--color-accent);--m3-on-primary:#fff;--m3-primary-container:var(--color-accent-soft);--m3-on-primary-container:var(--color-accent-strong);--m3-surface:var(--color-surface);--m3-surface-container:#fff;--m3-surface-container-high:#f9fafb;--m3-on-surface:var(--color-ink);--m3-on-surface-variant:var(--color-ink-soft);--m3-outline:var(--color-border-strong);--m3-outline-variant:var(--color-border);--m3-error:var(--color-warn);--m3-shape-xs:6px;--m3-shape-sm:8px;--m3-shape-md:10px;--m3-shape-lg:12px;--m3-shape-xl:16px;--m3-elevation-1:0 1px 2px #1f29370d;--m3-elevation-2:0 4px 10px #1f293714;--m3-space-1:4px;--m3-space-2:8px;--m3-space-3:12px;--m3-space-4:16px;--m3-space-5:20px;--m3-space-6:24px;--m3-space-8:32px;--m3-space-10:40px;--m3-page-gutter:20px;--m3-grid-gap:16px;--hs-grid-columns:4;--hs-grid-unit:8px;--hs-section-gap:32px;--m3-state-hover:8%;--m3-state-pressed:12%;--m3-motion-standard:cubic-bezier(.2,0,0,1);--m3-motion-emphasized:cubic-bezier(.2,0,0,1);--m3-motion-decelerate:cubic-bezier(.05,.7,.1,1);--m3-duration-short:.1s;--m3-duration-medium:.25s;--m3-duration-long:.4s}.m3-grid{gap:var(--m3-grid-gap);display:grid}.m3-page-header{padding:22px var(--m3-page-gutter) var(--m3-space-4)}.page-header-content{justify-content:space-between;align-items:center;gap:var(--m3-space-3);display:flex}.m3-icon-button{isolation:isolate;width:40px;min-width:40px;height:40px;color:var(--m3-on-surface-variant);transition:color var(--m3-duration-short) var(--m3-motion-standard),transform var(--m3-duration-short) var(--m3-motion-standard);background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:relative;overflow:hidden}.m3-icon-button:after{content:"";z-index:-1;border-radius:inherit;opacity:0;transition:opacity var(--m3-duration-short) linear;background:currentColor;position:absolute;top:0;bottom:0;left:0;right:0}.m3-icon-button:hover:after{opacity:.08}.m3-icon-button:active:after{opacity:.12}.m3-icon-button:active{transform:scale(.92)}.m3-icon-button svg{stroke-width:2px;width:20px;height:20px}.topbar-actions .m3-icon-button{overflow:visible}.topbar-actions .m3-icon-button:after{top:0;bottom:0;left:0;right:0}.topbar-actions i{z-index:2;border:2px solid var(--color-surface);pointer-events:none;width:auto;min-width:16px;height:16px;padding:0 4px;line-height:12px;top:0;right:0}.m3-navigation{--m3-nav-active:var(--m3-primary-container);--m3-nav-on-active:var(--m3-on-primary-container)}.nav-items{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.m3-navigation-item{gap:var(--m3-space-1);color:var(--m3-on-surface-variant);transition:color var(--m3-duration-short) var(--m3-motion-standard),transform var(--m3-duration-short) var(--m3-motion-standard)}.m3-navigation-item .nav-icon{border-radius:var(--radius-pill);width:40px;height:32px;color:inherit;transition:background-color var(--m3-duration-medium) var(--m3-motion-decelerate),color var(--m3-duration-short) var(--m3-motion-standard),transform var(--m3-duration-short) var(--m3-motion-standard);background:0 0;place-items:center;display:grid}.m3-navigation-item svg{stroke-width:2px;color:currentColor!important}.m3-navigation-item.is-active{color:var(--m3-nav-on-active)}.m3-navigation-item.is-active .nav-icon{background:var(--m3-nav-active)}.m3-navigation-item:hover .nav-icon{background:var(--m3-primary)}@supports (color:color-mix(in lab, red, red)){.m3-navigation-item:hover .nav-icon{background:color-mix(in srgb,var(--m3-primary) 8%,transparent)}}.m3-navigation-item.is-active:hover .nav-icon{background:var(--m3-primary)}@supports (color:color-mix(in lab, red, red)){.m3-navigation-item.is-active:hover .nav-icon{background:color-mix(in srgb,var(--m3-primary) 18%,var(--m3-primary-container))}}.m3-navigation-item:active .nav-icon{transform:scale(.9)}.m3-navigation-item .nav-label{letter-spacing:.01em;font-size:11px;font-weight:600}.app-topbar{gap:var(--m3-space-3);padding-inline:var(--m3-page-gutter)}.topbar-actions{gap:var(--m3-space-1)}.app-shell :where(button,a,[role=button]){-webkit-tap-highlight-color:transparent}.app-shell :where(button,a,[role=button]):focus-visible{outline:3px solid var(--m3-primary)}@supports (color:color-mix(in lab, red, red)){.app-shell :where(button,a,[role=button]):focus-visible{outline:3px solid color-mix(in srgb,var(--m3-primary) 38%,transparent)}}.app-shell :where(button,a,[role=button]):focus-visible{outline-offset:2px}.notification-feed{border-radius:var(--m3-shape-lg);box-shadow:var(--m3-elevation-2)}.notification-row{min-height:64px;transition:background-color var(--m3-duration-short) linear}.notification-row:hover{background:var(--m3-primary)}@supports (color:color-mix(in lab, red, red)){.notification-row:hover{background:color-mix(in srgb,var(--m3-primary) 8%,var(--m3-surface))}}.notification-row:active{background:var(--m3-primary)}@supports (color:color-mix(in lab, red, red)){.notification-row:active{background:color-mix(in srgb,var(--m3-primary) 12%,var(--m3-surface))}}.kinship-card.m3-card{background-color:var(--m3-surface);transition:border-color .18s var(--m3-motion-standard),box-shadow .22s var(--m3-motion-standard),transform .18s var(--m3-motion-standard);border:1px solid var(--m3-outline-variant)!important;border-radius:var(--m3-shape-lg)!important;box-shadow:none!important}.kinship-card.m3-card:hover{border-color:var(--m3-outline)!important;box-shadow:var(--m3-elevation-1)!important}.kinship-card.m3-card:active{transform:none}.kinship-card.m3-card.minimal-auth-card{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.kinship-card.m3-card.minimal-auth-card:hover{box-shadow:none!important;border:0!important}.m3-button{isolation:isolate;border-radius:var(--radius-control);min-height:44px;font:500 14px/20px var(--font-sans);letter-spacing:.005em;transition:box-shadow .18s var(--m3-motion-standard),transform .12s var(--m3-motion-standard),background-color .18s var(--m3-motion-standard);justify-content:center;align-items:center;gap:8px;padding:0 16px;display:inline-flex;position:relative;overflow:hidden}.m3-button:after{content:"";z-index:-1;opacity:0;transition:opacity .16s var(--m3-motion-standard);background:currentColor;position:absolute;top:0;bottom:0;left:0;right:0}.m3-button:hover:not(:disabled):after{opacity:.08}.m3-button:active:not(:disabled):after{opacity:.12}.m3-button:active:not(:disabled){transform:scale(.98)}.m3-button:disabled{cursor:not-allowed;box-shadow:none;opacity:.38}.m3-button-filled{background:var(--m3-primary);color:var(--m3-on-primary);box-shadow:none;border:1px solid #0000}.m3-button-filled:hover:not(:disabled){background:var(--color-accent-strong);box-shadow:none}.m3-button-outlined{border:1px solid var(--m3-outline);color:var(--m3-primary);box-shadow:none;background:0 0}.m3-button-outlined:hover:not(:disabled){background:var(--m3-primary-container)}.form-field{margin-bottom:16px}.form-label{color:var(--m3-on-surface);letter-spacing:0;margin:0 0 6px;font-size:13px;font-weight:500}.form-control{border:1px solid var(--m3-outline-variant);border-radius:var(--m3-shape-sm);background:var(--m3-surface-container);min-height:44px;font:500 14px/20px var(--font-sans);transition:border-color .18s var(--m3-motion-standard),box-shadow .18s var(--m3-motion-standard),background-color .18s var(--m3-motion-standard);padding:11px 16px}.form-control:hover:not(:disabled){border-color:var(--m3-outline);background:var(--m3-surface)}.form-control:focus,.form-control.is-open{border-color:var(--m3-primary);background:var(--m3-surface);box-shadow:0 0 0 3px var(--m3-primary)}.form-control:focus-visible{border-color:var(--m3-primary);background:var(--m3-surface);box-shadow:0 0 0 3px var(--m3-primary)}@supports (color:color-mix(in lab, red, red)){.form-control:focus,.form-control.is-open{box-shadow:0 0 0 3px color-mix(in srgb,var(--m3-primary) 18%,transparent)}.form-control:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--m3-primary) 18%,transparent)}}.m3-chip{border-radius:var(--m3-shape-sm);letter-spacing:0;min-height:28px;padding:0 10px;font-size:12px;font-weight:500}.m3-checkbox{width:48px;height:48px;margin:-13px;background:0 0!important;border:0!important;border-radius:50%!important}.m3-checkbox:before{content:"";border:2px solid var(--m3-outline);width:22px;height:22px;transition:background .16s var(--m3-motion-standard),border-color .16s var(--m3-motion-standard);background:0 0;border-radius:6px;position:absolute}.m3-checkbox[aria-pressed=true]:before{border-color:var(--checkbox-color,var(--m3-primary));background:var(--checkbox-color,var(--m3-primary))}.m3-checkbox:hover{background:var(--m3-primary)!important}@supports (color:color-mix(in lab, red, red)){.m3-checkbox:hover{background:color-mix(in srgb,var(--m3-primary) 8%,transparent)!important}}.m3-checkbox svg{z-index:1;position:relative}.m3-scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1917286b}.modal-card.m3-dialog{background:var(--m3-surface);box-shadow:0 20px 40px #1f293729;border:1px solid var(--m3-outline-variant)!important;border-radius:var(--m3-shape-xl) var(--m3-shape-xl) 0 0!important}.modal-card.m3-dialog h3{letter-spacing:-.01em;font-size:18px;font-weight:600}.m3-stepper{border:1px solid var(--m3-outline-variant);border-radius:var(--radius-pill);background:var(--m3-surface);align-items:center;gap:6px;width:max-content;min-height:48px;padding:4px;display:flex}.m3-stepper-button{background:var(--m3-primary-container);width:40px;height:40px;color:var(--m3-on-primary-container);transition:background .16s var(--m3-motion-standard),transform .12s var(--m3-motion-standard);border-radius:50%;place-items:center;font-size:20px;font-weight:600;display:grid}.m3-stepper-button:hover{background:var(--m3-primary)}@supports (color:color-mix(in lab, red, red)){.m3-stepper-button:hover{background:color-mix(in srgb,var(--m3-primary) 18%,var(--m3-primary-container))}}.m3-stepper-button:active{transform:scale(.92)}.m3-stepper-value{text-align:center;min-width:34px;color:var(--m3-on-surface);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.modal-close-button{background:var(--m3-surface-container-high);width:40px;height:40px;color:var(--m3-on-surface-variant);border:0;border-radius:50%}.modal-close-button:hover{background:var(--m3-primary-container);color:var(--m3-on-primary-container)}.modal-close-button{float:right;z-index:20;margin:0 0 -40px 10px;box-shadow:0 5px 16px #1e18481f;position:sticky!important;top:0!important}.m3-dialog-layer{isolation:isolate;padding-top:env(safe-area-inset-top);z-index:1000!important}.m3-dialog-layer .modal-card{overscroll-behavior:contain;max-height:min(90dvh,calc(100dvh - env(safe-area-inset-top)))!important}.m3-dialog-layer .modal-close-button{z-index:1002;top:8px!important}.app-page-skeleton{padding:0 20px;animation:.4s skeletonFadeIn}@keyframes skeletonFadeIn{0%{opacity:0}to{opacity:1}}.skeleton-header{border-bottom:1px solid var(--color-border);padding:22px 0 18px}.skeleton-eyebrow{border-radius:6px;width:64px;height:12px;margin-bottom:10px}.skeleton-title{border-radius:8px;width:min(220px,55%);height:26px;margin-bottom:8px}.skeleton-subtitle{border-radius:7px;width:min(180px,45%);height:14px}.skeleton-cards{gap:12px;padding:22px 0 80px;display:grid}.skeleton-card{border-radius:var(--radius-card);width:100%;height:82px}.skeleton-card--tall{height:144px}.skeleton-card--short{height:64px}.shimmer{background:#eeeeef;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.shimmer{background:color-mix(in srgb,var(--color-ink-faint) 8%,var(--color-surface-sunken))}}.shimmer{border:none}.shimmer:after{content:"";background:linear-gradient(90deg,#0000 0%,#fbfbfc 50%,#0000 100%);position:absolute;top:0;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.shimmer:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-ink-faint) 4%,var(--color-surface)) 50%,transparent 100%)}}.shimmer:after{animation:1.4s ease-in-out infinite shimmerSlide}@keyframes shimmerSlide{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.shimmer:after{background:0 0;animation:none}}.calendar-manager{gap:18px;display:grid}.calendar-manager-empty{text-align:center;justify-items:center;gap:12px;padding:24px 12px 8px;display:grid}.calendar-manager-empty>span{background:var(--color-accent-soft);width:52px;height:52px;color:var(--color-accent);border-radius:16px;place-items:center;display:grid}.calendar-manager-empty strong{font:700 17px/1.2 var(--font-display);color:var(--color-ink)}.calendar-manager-empty p{max-width:400px;color:var(--color-ink-soft);font-size:13px;line-height:1.5}.calendar-manager-empty .primary-button{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;width:100%;max-width:320px;min-height:46px;margin-top:4px;font-size:14px;font-weight:700}.calendar-manager-content{gap:16px;display:grid}.calendar-manager-status{border-radius:var(--radius-control);background:var(--color-accent-soft);border:1px solid #2256c944;justify-content:space-between;align-items:center;padding:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.calendar-manager-status{border:1px solid color-mix(in srgb,var(--color-accent) 22%,var(--color-border))}}.calendar-manager-status-left{align-items:center;gap:10px;display:flex}.calendar-manager-status-left>svg{color:var(--color-accent)}.calendar-manager-status-left div{display:grid}.calendar-manager-status-left strong{color:var(--color-ink);font-size:14px}.calendar-manager-status-left span{color:var(--color-ink-soft);margin-top:1px;font-size:11.5px}.calendar-manager-sync{width:32px;height:32px;color:var(--color-accent);background:var(--color-surface);border-radius:50%;place-items:center;display:grid}.calendar-manager-sync:hover{background:var(--color-accent-soft)}.calendar-manager-error{border-radius:var(--radius-pill-sm);background:var(--color-warn-soft);color:var(--color-warn);align-items:flex-start;gap:8px;padding:10px 12px;font-size:12px;line-height:1.4;display:flex}.calendar-manager-error svg{flex:none;margin-top:1px}.calendar-manager-reconnect{border-radius:var(--radius-pill);background:var(--color-warn-soft);width:100%;min-height:44px;color:var(--color-warn);border:1px solid #dc26264d;font-size:13px;font-weight:700}@supports (color:color-mix(in lab, red, red)){.calendar-manager-reconnect{border:1px solid color-mix(in srgb,var(--color-warn) 30%,transparent)}}.calendar-manager-reconnect:hover{background:var(--color-warn-soft);border-color:var(--color-warn)}.calendar-manager-list-heading{justify-content:space-between;align-items:baseline;padding:0 4px;display:flex}.calendar-manager-list-heading strong{font:650 14px/1 var(--font-display);color:var(--color-ink)}.calendar-manager-list-heading span{color:var(--color-ink-faint);font-size:11px;font-weight:600}.calendar-manager-help{color:var(--color-ink-soft);margin:-10px 4px 0;padding:0;font-size:11.5px;line-height:1.5}.calendar-manager-list{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);gap:6px;max-height:50vh;padding:6px;display:grid;overflow-y:auto}.calendar-manager-item{border-radius:var(--radius-control);background:var(--color-surface);grid-template-columns:12px 1fr auto;align-items:center;gap:14px;min-height:56px;padding:14px;display:grid;position:relative}.calendar-manager-item.is-connected{background:var(--color-surface-sunken)}.calendar-manager-item>i{border-radius:50%;flex:none;width:12px;height:12px}.calendar-manager-item-info{min-width:0;display:grid}.calendar-manager-item-info b{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-size:13px;overflow:hidden}.calendar-manager-item-info small{color:var(--color-ink-faint);margin-top:1px;font-size:10.5px}.calendar-manager-item-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-manager-toggle{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);align-items:center;gap:6px;padding:6px 8px;font-size:10.5px;font-weight:700;transition:all .18s;display:flex}.calendar-manager-toggle.on{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.calendar-manager-toggle-track{border-radius:var(--radius-pill);background:var(--color-ink-faint);width:22px;height:12px;transition:background .18s;position:relative}.calendar-manager-toggle.on .calendar-manager-toggle-track{background:var(--color-accent)}.calendar-manager-toggle-thumb{background:#fff;border-radius:50%;width:10px;height:10px;transition:transform .18s;position:absolute;top:1px;left:1px;box-shadow:0 1px 3px #00000026}.calendar-manager-toggle.on .calendar-manager-toggle-thumb{transform:translate(10px)}.calendar-manager-share{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);align-items:center;gap:4px;padding:6px 8px;font-size:10px;font-weight:700;transition:all .18s;display:flex}.calendar-manager-share.on{border-color:#16a34a4d}@supports (color:color-mix(in lab, red, red)){.calendar-manager-share.on{border-color:color-mix(in srgb,var(--color-good) 30%,transparent)}}.calendar-manager-share.on{background:#16a34a1f}@supports (color:color-mix(in lab, red, red)){.calendar-manager-share.on{background:color-mix(in srgb,var(--color-good) 12%,transparent)}}.calendar-manager-share.on{color:var(--color-good)}.calendar-manager-share:disabled{opacity:.4;pointer-events:none}.calendar-manager-footer{grid-template-columns:1fr 1fr;gap:10px;padding-top:4px;display:grid}.calendar-manager-disconnect{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);min-height:42px;color:var(--color-ink-faint);font-size:12px;font-weight:700}.calendar-manager-disconnect:hover{color:var(--color-warn);border-color:var(--color-warn-soft);background:var(--color-warn-soft)}.calendar-manager-sync-full{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;justify-content:center;align-items:center;gap:7px;min-height:42px;font-size:12px;font-weight:700;display:inline-flex}.calendar-manager-sync-full.is-busy{opacity:.65}.calendar-manager-sync-full:hover{background:var(--color-accent-strong)}@media (max-width:600px){.calendar-manager{gap:16px}.calendar-manager-item{grid-template-columns:12px 1fr;gap:10px;min-height:auto;padding:14px 12px}.calendar-manager-item-info b{white-space:normal;word-break:break-word;text-overflow:unset;max-width:none;font-size:14px;overflow:visible}.calendar-manager-item-info small{white-space:normal;word-break:break-word}.calendar-manager-item-actions{flex-wrap:wrap;grid-column:1/-1;justify-self:start;margin-top:6px}.calendar-manager-item-actions button{min-height:34px;padding:0 10px;font-size:11px}.calendar-manager-footer{grid-template-columns:1fr}.calendar-manager-sync-full{order:-1}.calendar-manager-list{gap:8px;padding:8px}.calendar-manager-status{padding:14px 12px}.calendar-manager-status-left strong{font-size:15px}.calendar-manager-help{margin-top:0}.calendar-color-swatch{width:22px;height:22px}.calendar-manager-item-colors{padding-left:22px}.calendar-manager-famos .calendar-manager-item{margin-bottom:4px}}.calendar-manager-famos{gap:10px;margin-bottom:14px;display:grid}.calendar-manager-famos .calendar-manager-item{border:1px solid var(--color-border)}.calendar-manager-rename{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);align-items:center;gap:5px;padding:6px 9px;font-size:10.5px;font-weight:700;transition:all .18s;display:inline-flex}.calendar-manager-rename:hover{border-color:var(--color-accent);color:var(--color-accent)}.calendar-manager-rename-form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.calendar-manager-rename-form input{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-width:0;min-height:34px;color:var(--color-ink);outline:none;flex:1;padding:0 10px;font-size:13px}.calendar-manager-rename-form input:focus{border-color:var(--color-accent)}.calendar-manager-rename-form button{border-radius:var(--radius-control);min-height:30px;padding:0 12px;font-size:12px;font-weight:700}.calendar-manager-rename-form button[type=submit]{background:var(--color-accent);color:#fff}.calendar-manager-rename-form button[type=button]{border:1px solid var(--color-border);color:var(--color-ink-soft);background:var(--color-surface)}.calendar-color-picker{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.calendar-color-swatch{width:24px;height:24px;box-shadow:0 0 0 1px var(--color-border-strong);cursor:pointer;border:2px solid #fff;border-radius:50%;padding:0;transition:transform .14s,box-shadow .14s}.calendar-color-swatch:hover{transform:scale(1.12)}.calendar-color-swatch.selected{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-accent)}.calendar-color-custom{cursor:pointer;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:relative;overflow:hidden}.calendar-color-custom-swatch{box-shadow:0 0 0 1px var(--color-border-strong)}.calendar-color-custom input[type=color]{opacity:0;cursor:pointer;width:42px;height:42px;position:absolute;top:-8px;bottom:-8px;left:-8px;right:-8px}.calendar-manager-item-colors{grid-column:1/-1;padding:2px 4px 4px 32px}.calendar-manager-item-colors .calendar-color-picker{gap:4px;padding:4px 6px}.calendar-manager-item-colors .calendar-color-swatch{width:20px;height:20px}.address-autocomplete{position:relative}.address-autocomplete-control{display:block;position:relative}.address-autocomplete-control>svg{z-index:2;color:var(--color-ink-faint);position:absolute;top:50%;left:15px;transform:translateY(-50%)}.address-autocomplete-control .form-control{padding-left:43px}.address-autocomplete-results{z-index:30;border:1px solid var(--color-border);border-radius:var(--radius-control);background:#fff;padding:6px;display:grid;position:absolute;top:calc(100% - 4px);left:0;right:0;box-shadow:0 16px 38px #1f194629}.address-autocomplete-results button{border-radius:var(--radius-xs);text-align:left;align-items:flex-start;gap:9px;padding:10px;font-size:12.5px;display:flex}.address-autocomplete-results button:hover{background:var(--color-accent-soft)}.address-autocomplete-results svg{color:var(--color-accent);flex:none;margin-top:1px}.address-autocomplete-warning{color:var(--color-warn);margin-top:6px;font-size:11px;display:block}.weather-now-card{background:linear-gradient(135deg,#f4f8ff,#fff9e9)}.weather-now-main{align-items:center;gap:12px;display:flex}.weather-now-main>span{border-radius:var(--radius-control);color:#5d6ddf;border:1px solid var(--color-border);background:#fff;place-items:center;width:44px;height:44px;display:grid}.weather-now-main div{display:grid}.weather-now-main strong{font:700 24px/1 var(--font-display)}.weather-now-main small{color:var(--color-ink-soft);margin-top:3px}.weather-now-main>p{color:var(--color-ink-soft);margin-left:auto;font-size:12px}.weather-event-warning,.weather-address-action{border-radius:var(--radius-md);text-align:left;align-items:center;gap:10px;width:100%;margin-top:12px;padding:11px 12px;display:flex}.weather-event-warning{color:#9a5b18;background:#fff1de}.weather-address-action{border:1px solid var(--color-border);color:var(--color-accent-strong);background:#ffffffb8}.weather-event-warning span,.weather-address-action span{flex:1;display:grid}.weather-event-warning small{color:#8a6845;margin-top:2px}.weather-address-action small{color:var(--color-ink-soft);margin-top:2px;font-weight:500}.task-row-copy{text-align:left;flex:1;min-width:0;display:grid}.task-row-copy strong,.task-row-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.task-row-edit{width:30px;height:30px;color:var(--color-accent);background:var(--color-accent-soft);border-radius:50%;place-items:center;display:grid}.task-row-edit svg{width:14px}.weather-now-glyph{color:#5d6ddf}.roulette-picker-thumb{object-fit:cover;background:var(--color-accent-soft);border:1px solid var(--color-border);border-radius:10px;flex:none;width:56px;height:56px}.roulette-picker-thumb-placeholder{color:var(--color-accent);background:var(--color-accent-soft);border:1px solid var(--color-border);place-items:center;display:grid}.roulette-picker-copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.roulette-picker-copy strong{color:var(--color-ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.roulette-picker-copy small{color:var(--color-ink-soft);font-size:12px;line-height:1.4}.roulette-cost-hint{color:var(--color-accent);cursor:pointer;text-underline-offset:2px;font-size:11px;font-style:italic;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;transition:color .15s}.roulette-cost-hint:hover{color:var(--color-accent-strong)}.roulette-cost-hint.loaded{color:var(--color-success);cursor:default;font-style:normal;font-weight:600;text-decoration:none}.roulette-picker-error{border-radius:var(--radius-sm);background:var(--color-warn-soft);color:var(--color-warn);margin:8px 2px 12px;padding:10px 12px;font-size:12.5px;line-height:1.4}.roulette-picker-empty{border-radius:var(--radius-md);border:1px dashed var(--color-border);background:var(--color-surface-sunken);color:var(--color-ink-soft);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.roulette-picker-empty>svg{color:var(--color-accent);flex:none;margin-top:2px}.roulette-picker-empty strong{color:var(--color-ink);font-size:13px;font-weight:700;display:block}.roulette-picker-empty small{margin-top:3px;font-size:11.5px;line-height:1.45;display:block}.weather-now-glyph.risk{color:#c26a1b}.weather-now-main>p{align-items:center;gap:5px;display:inline-flex}.weather-now-main>p svg{opacity:.7}.weather-refresh-dot{background:var(--color-accent);border-radius:50%;width:6px;height:6px;margin-right:2px;animation:1.4s ease-in-out infinite weather-pulse;display:inline-block}@keyframes weather-pulse{0%,to{opacity:.3;transform:scale(.7)}50%{opacity:1;transform:scale(1.1)}}.weather-skeleton .weather-now-glyph .weather-skeleton-icon{background:#2155c63f;border-radius:8px;width:24px;height:24px}@supports (color:color-mix(in lab, red, red)){.weather-skeleton .weather-now-glyph .weather-skeleton-icon{background:color-mix(in srgb,var(--color-accent) 20%,var(--color-border))}}.weather-skeleton .weather-now-glyph .weather-skeleton-icon{animation:1.5s ease-in-out infinite weather-shimmer}.weather-skeleton-line{background:#2153c23a;border-radius:6px;height:12px;display:inline-block}@supports (color:color-mix(in lab, red, red)){.weather-skeleton-line{background:color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.weather-skeleton-line{animation:1.5s ease-in-out infinite weather-shimmer}.weather-skeleton-line-temp{width:68px;margin-top:4px}.weather-skeleton-line-loc{width:140px;margin-top:8px}@keyframes weather-shimmer{0%,to{opacity:.5}50%{opacity:1}}.weather-refreshing{transition:opacity .3s}.weather-refreshing .weather-now-glyph{animation:1.2s ease-in-out infinite weather-shimmer}.weather-alerts{gap:8px;margin-bottom:12px;display:grid}.weather-alert{border-radius:var(--radius-pill-sm);color:#9a5b18;background:#fde7d6;border:1px solid #c26a1b42;align-items:flex-start;gap:9px;padding:10px 12px;display:flex}.weather-alert span{min-width:0;display:grid}.weather-alert strong{font-size:12.5px}.weather-alert small{color:#8a6845;margin-top:1px;font-size:11.5px}.weather-daily{border-top:1px solid var(--color-border);gap:2px;margin-top:12px;padding-top:10px;display:grid}.weather-day{color:#5d6ddf;grid-template-columns:52px 24px 1fr auto;align-items:center;gap:10px;padding:5px 2px;display:grid}.weather-day-label{color:var(--color-ink);font-size:12px;font-weight:700}.weather-day-rain{color:var(--color-ink-faint);align-items:center;gap:3px;font-size:11px;font-weight:600;display:inline-flex}.weather-day-rain.wet{color:#2f76d6}.weather-day-rain svg{opacity:.7}.weather-day-temps{color:var(--color-ink-soft);justify-self:end;font-size:13px}.weather-day-temps strong{color:var(--color-ink);font-weight:700}.weather-day-temps em{color:var(--color-ink-faint);margin-left:4px;font-style:normal}@media (max-width:600px){.weather-now-main{flex-wrap:wrap;align-items:flex-start}.weather-now-main>p{width:100%;margin-left:56px}.modal-card{padding-top:max(18px,env(safe-area-inset-top))!important}}.nav-item{min-height:48px}.topbar-actions button{border-radius:50%;place-items:center;min-width:40px;min-height:40px;display:grid}.topbar-actions button:hover{background:var(--m3-primary-container)}@media (min-width:640px){.modal-card.m3-dialog{border-radius:var(--m3-shape-xl)!important}}@media (max-width:520px){.form-control,.m3-button{min-height:46px}.kinship-card.m3-card{border-radius:var(--m3-shape-lg)!important}.address-autocomplete-results{z-index:100;-webkit-overflow-scrolling:touch;max-height:260px;overflow-y:auto}.address-autocomplete-results button{min-height:48px;padding:12px 14px;font-size:14px}.address-autocomplete{z-index:100}.date-native-input{-webkit-appearance:none;appearance:none;cursor:pointer}.date-native-input::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}}@media (min-width:700px){:root{--m3-page-gutter:28px;--m3-grid-gap:20px}.m3-navigation-item{min-height:52px;padding-inline:var(--m3-space-3);justify-content:flex-start;gap:var(--m3-space-3);border-radius:var(--m3-shape-xl);flex-direction:row}.m3-navigation-item .nav-icon{flex:0 0 40px;width:40px;height:32px}.m3-navigation-item .nav-icon svg{width:22px;height:22px}.m3-navigation-item .nav-label{font-size:14px;font-weight:650;line-height:1.25}.minimal-auth-inner-wide{max-width:min(760px,100vw - 64px)}.minimal-auth-inner-wide .onboarding-choice-group button{min-height:42px;padding:10px 14px;font-size:13px}.minimal-auth-inner-wide .onboarding-grid input{min-height:58px;font-size:21px}.minimal-auth-inner-wide .onboarding-colors button{width:38px;height:38px;min-height:38px;padding:0}}@media (min-width:1200px){:root{--m3-page-gutter:32px;--m3-grid-gap:24px}}@media (max-width:520px){.minimal-auth:has(.minimal-auth-inner-wide){align-items:flex-start;padding:28px 14px 44px}.minimal-auth-inner-wide .minimal-auth-logo{width:70px;height:70px;margin-bottom:12px}.minimal-auth-inner-wide .minimal-auth-title{font-size:30px}.onboarding-card{padding:18px!important}.guided-onboarding{gap:20px}.guided-onboarding-panel{min-height:360px}.onboarding-progress-labels{display:none}.onboarding-priority-grid>div{grid-template-columns:1fr}.onboarding-calendar-card{grid-template-columns:38px 1fr}.onboarding-calendar-card button{grid-column:1/-1;width:100%!important}.onboarding-avatar-heading{flex-direction:column;align-items:flex-start}.onboarding-avatar-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.onboarding-grid.onboarding-grid-two{grid-template-columns:1fr}.onboarding-actions{padding:14px 18px calc(14px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;margin:0 -18px -18px;position:sticky;bottom:0}}@media (max-width:600px){:root{--text-page:26px;--text-section:17px;--text-body:14px;--m3-page-gutter:16px;--m3-grid-gap:12px;--hs-section-gap:24px}.app-topbar{height:60px;padding-inline-start:14px;padding-inline-end:14px}.topbar-brand-group{gap:8px}.topbar-brand-group .topbar-download{display:none}.app-content>[class*=reference-]>.px-5{padding-left:16px!important;padding-right:16px!important}.page-header,.m3-page-header{padding:18px 16px 12px}.page-header-content{gap:10px}.page-header-copy{min-width:0}.page-eyebrow{letter-spacing:.085em;margin-bottom:4px;font-size:10px}.page-title{letter-spacing:-.03em;text-wrap:balance;max-width:18ch;font-size:max(12px,min(4vw,14px));line-height:1.08}.page-subtitle{max-width:42ch;margin-top:4px;font-size:12.5px;line-height:1.4}.ui-section-title{font-size:17px}.reference-dashboard section{margin-top:24px}.reference-dashboard section h2{font-size:21px;line-height:1.12}.reference-dashboard .kinship-card,.kinship-card.m3-card{border-radius:20px!important}.modal-card.m3-dialog{padding:20px 16px max(24px, calc(env(safe-area-inset-bottom) + 18px))!important;border-radius:26px 26px 0 0!important}.modal-card h2,.modal-card h3{font-size:20px;line-height:1.15}.minimal-auth{padding:24px 16px 36px}.minimal-auth-inner{width:min(100%,420px)}.minimal-auth-logo{width:88px;height:88px;margin-bottom:16px}.minimal-auth-title{text-wrap:balance;margin-bottom:16px;max-width:16ch;margin-inline-start:auto;margin-inline-end:auto;font-size:max(28px,min(8vw,34px));line-height:1.04}.minimal-auth-subtitle{max-width:34ch;margin-inline-start:auto;margin-inline-end:auto;font-size:13px;line-height:1.45}.form-field{margin-bottom:14px}.form-control{min-height:52px;padding:12px 14px}.m3-button{min-height:48px;padding-inline-start:20px;padding-inline-end:20px}.onboarding-card{padding:16px!important}.guided-onboarding{gap:16px}.guided-onboarding-panel{min-height:330px}.onboarding-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom));margin:0 -16px -16px}}@media (max-width:700px){body .app-content .page-header,body .app-content .m3-page-header{min-height:0;padding:calc(env(safe-area-inset-top) + 14px) 16px 14px;margin-bottom:12px}body .app-content .page-header-content{align-items:center;gap:8px}body .app-content .page-header-content>div:first-child{flex:auto;min-width:0}body .app-content .page-eyebrow{margin-bottom:5px;line-height:1.2;font-size:9.5px!important}body .app-content .page-title{overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;text-wrap:balance;max-width:none;margin:0;display:flex;letter-spacing:-.025em!important;font-size:13px!important;line-height:1.1!important}body .app-content .page-title>svg,body .app-content .page-title>span{flex:none}body .app-content .page-subtitle{max-width:36ch;margin-top:5px;line-height:1.35;font-size:11.5px!important}body .app-content .page-header-aside{min-width:84px;max-width:96px}body .app-content .page-spot-frame,body .app-content .page-spot{width:92px!important;height:76px!important}body .app-content .reference-groceries .page-header-aside{display:contents}body .app-content .reference-groceries .page-header-content{grid-template-columns:minmax(0,1fr) 78px;align-items:center;display:grid}body .app-content .reference-groceries .page-header-aside .page-spot-frame{grid-area:1/2;width:76px!important;height:64px!important}body .app-content .reference-groceries .page-header-aside .page-spot{width:76px!important;height:64px!important}body .app-content .reference-groceries .grocery-mode-actions{flex-wrap:nowrap;grid-area:2/1/auto/-1;justify-content:flex-start;gap:6px;margin-top:10px;overflow-x:auto}body .app-content .reference-groceries .grocery-mode-actions button{flex:none;min-height:36px;padding:7px 10px;font-size:10px}}@media (max-width:380px){body .app-content .page-title{font-size:12px!important}body .app-content .page-header-aside{min-width:72px;max-width:78px}body .app-content .page-spot-frame,body .app-content .page-spot{width:76px!important;height:64px!important}}@media (hover:none) and (pointer:coarse){body .app-content .page-title{font-size:16px!important;line-height:1.1!important}body .app-content .page-subtitle{font-size:11.5px!important;line-height:1.35!important}body .primary-nav .nav-item.is-active{background:0 0!important}body .primary-nav .nav-item.is-active .nav-icon{border-radius:var(--radius-pill)!important;background:var(--color-accent-soft)!important;width:44px!important;height:28px!important;box-shadow:none!important;color:var(--color-accent-strong)!important;border:0!important}}@media (max-width:699px){body .primary-nav .nav-item.is-active{background:0 0!important}body .primary-nav .nav-item.is-active .nav-icon{border-radius:var(--radius-pill)!important;background:var(--color-accent-soft)!important;width:44px!important;height:28px!important;box-shadow:none!important;color:var(--color-accent-strong)!important;border:0!important}}.topbar-avatar.is-household{background:var(--color-accent-soft);color:var(--color-accent-strong)}.topbar-avatar.is-household svg{width:18px;height:18px}.topbar-wordmark em{border-radius:var(--radius-pill);background:var(--color-accent-soft);max-width:26ch;min-height:24px;color:var(--color-accent-strong);text-overflow:ellipsis;white-space:nowrap;align-items:center;margin-left:6px;padding:4px 9px;font-size:10px;font-style:normal;font-weight:750;line-height:1;display:inline-flex;overflow:hidden}.topbar-actions .tablet-mode-button.is-active{background:var(--color-accent);color:#fff;box-shadow:0 5px 16px #2563eb40}@supports (color:color-mix(in lab, red, red)){.topbar-actions .tablet-mode-button.is-active{box-shadow:0 5px 16px color-mix(in srgb,var(--color-accent) 25%,transparent)}}.topbar-actions .tablet-mode-button.is-active:hover{background:var(--color-accent-strong);color:#fff}.tablet-mode .install-prompt{display:none}@media (min-width:700px){.tablet-mode.app-shell{grid-template-columns:max(210px,min(19vw,290px)) minmax(0,1fr);gap:18px;padding:18px}.tablet-mode .primary-nav{width:max(210px,min(19vw,290px));height:calc(100dvh - 36px);padding:18px;top:18px}.tablet-mode .nav-brand img{width:48px;height:48px}.tablet-mode .nav-brand strong{font-size:20px}.tablet-mode .nav-brand span,.tablet-mode .nav-foot{font-size:12px}.tablet-mode .nav-items{gap:8px}.tablet-mode .nav-item{border-radius:var(--radius-section);min-height:62px;padding:10px 13px}.tablet-mode .nav-icon,.tablet-mode .m3-navigation-item .nav-icon{border-radius:var(--radius-md);width:42px;height:42px}.tablet-mode .nav-icon svg{width:25px;height:25px}.tablet-mode .nav-label,.tablet-mode .m3-navigation-item .nav-label{font-size:16px}.tablet-mode .app-content{border-radius:30px;min-height:calc(100dvh - 36px)}.tablet-mode .app-topbar{grid-template-columns:52px 1fr auto;height:88px;padding-inline-start:30px;padding-inline-end:30px}.tablet-mode .topbar-avatar{width:44px;height:44px}.tablet-mode .topbar-avatar.is-household svg{width:24px;height:24px}.tablet-mode .topbar-wordmark img{width:34px;height:34px}.tablet-mode .topbar-wordmark strong{font-size:18px}.tablet-mode .topbar-wordmark em{min-height:30px;padding-inline-start:12px;padding-inline-end:12px;font-size:12px}.tablet-mode .topbar-actions{gap:7px}.tablet-mode .topbar-actions .m3-icon-button{width:52px;min-width:52px;height:52px}.tablet-mode .topbar-actions .m3-icon-button svg{width:25px;height:25px}.tablet-mode .page-header,.tablet-mode .m3-page-header{padding-top:30px;padding-bottom:24px}.tablet-mode .page-eyebrow{font-size:13px}.tablet-mode .page-title{font-size:max(38px,min(4vw,58px))}.tablet-mode .page-subtitle{max-width:54ch;font-size:18px;line-height:1.5}.tablet-mode .page-header-aside{min-width:190px}.tablet-mode .page-spot-frame,.tablet-mode .page-spot{width:180px!important;height:150px!important}.tablet-mode .kinship-card,.tablet-mode .calendar-month,.tablet-mode .task-board-group{border-radius:var(--radius-card)!important}.tablet-mode .kinship-card{padding:max(20px,min(2vw,30px))}.tablet-mode .ui-section-title,.tablet-mode .kinship-card h2,.tablet-mode .kinship-card h3{font-size:max(20px,min(2vw,28px))}.tablet-mode .calendar-event,.tablet-mode .calendar-sources-tab,.tablet-mode .whatsapp-import-trigger{font-size:max(14px,1em);line-height:1.5}.tablet-mode .kinship-card :where(p,small,span){font-size:max(14px,1em);line-height:1.5}.tablet-mode .task-board-group :where(p,span){font-size:max(14px,1em);line-height:1.5}.tablet-mode .app-content :where(input,select,textarea){min-height:54px;font-size:17px}.tablet-mode .app-content :where(.primary-button,.secondary-button,.m3-button){min-height:54px;font-size:16px}.tablet-mode .reference-dashboard .today-metric-card{min-height:190px}.tablet-mode .reference-dashboard .today-metric-card p.mt-4{font-size:38px}.tablet-mode .notification-feed{width:min(460px,100vw - 48px);top:78px;right:24px}.tablet-mode .notification-row{min-height:78px;padding:18px}.tablet-mode .notification-row strong{font-size:16px}.tablet-mode .notification-row small{font-size:13px}}@media (max-width:699px){.tablet-mode .topbar-wordmark em{display:none}.tablet-mode .app-topbar{height:72px;padding-inline-start:12px;padding-inline-end:12px}.tablet-mode .topbar-actions{gap:1px}.tablet-mode .topbar-actions .m3-icon-button{width:42px;min-width:42px;height:42px}}.nav-item .nav-icon{position:relative}.nav-badge{border-radius:var(--radius-pill);background:var(--color-fam-coral);color:#fff;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--color-surface-sunken);place-items:center;padding:0 4px;font-size:9px;font-style:normal;font-weight:800;line-height:1;display:grid;position:absolute;top:-5px;right:-8px}.broadcast-home{gap:10px;display:grid}.broadcast-confetti-host{isolation:isolate;gap:8px;display:grid;position:relative}.broadcast-compose{border:1px solid #2256c944;border-radius:22px;align-items:center;gap:6px;padding:8px 8px 8px 12px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.broadcast-compose{border:1px solid color-mix(in srgb,var(--color-accent) 22%,var(--color-border))}}.broadcast-compose{background:linear-gradient(120deg,#ebf1fd 0%,var(--color-fam-rose) 35%,var(--color-fam-marigold) 70%,var(--color-fam-plum) 100%)}@supports (color:color-mix(in lab, red, red)){.broadcast-compose{background:linear-gradient(120deg,color-mix(in srgb,var(--color-accent) 9%,var(--color-surface)) 0%,color-mix(in srgb,var(--color-fam-rose) 11%,var(--color-surface)) 35%,color-mix(in srgb,var(--color-fam-marigold) 10%,var(--color-surface)) 70%,color-mix(in srgb,var(--color-fam-plum) 9%,var(--color-surface)) 100%)}}.broadcast-compose{background-size:260% 260%;animation:14s ease-in-out infinite broadcast-compose-shift;box-shadow:0 1px 2px #1018280a,0 6px 18px #2563eb1f}@supports (color:color-mix(in lab, red, red)){.broadcast-compose{box-shadow:0 1px 2px #1018280a,0 6px 18px color-mix(in srgb,var(--color-accent) 12%,transparent)}}.broadcast-compose{transition:border-color var(--motion-base) ease,box-shadow var(--motion-base) ease,transform var(--motion-base) ease;z-index:1}@keyframes broadcast-compose-shift{0%,to{background-position:0%}50%{background-position:100%}}.broadcast-compose:focus-within{border-color:#2563eb}@supports (color:color-mix(in lab, red, red)){.broadcast-compose:focus-within{border-color:color-mix(in srgb,var(--color-accent) 55%,var(--color-fam-rose))}}.broadcast-compose:focus-within{box-shadow:0 0 0 4px #2563eb2e,0 14px 34px #2563eb4d}@supports (color:color-mix(in lab, red, red)){.broadcast-compose:focus-within{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-accent) 18%,transparent),0 14px 34px color-mix(in srgb,var(--color-accent) 30%,transparent)}}.broadcast-compose:focus-within{transform:translateY(-1px)}.broadcast-compose-icon{border-radius:var(--radius-sm);background:var(--color-accent-soft);width:40px;height:40px;color:var(--color-accent);transition:background var(--motion-base) ease,color var(--motion-base) ease;flex:none;place-items:center;display:grid}.broadcast-compose:focus-within .broadcast-compose-icon{background:#bad0fa}@supports (color:color-mix(in lab, red, red)){.broadcast-compose:focus-within .broadcast-compose-icon{background:color-mix(in srgb,var(--color-accent) 26%,var(--color-accent-soft))}}.broadcast-compose:focus-within .broadcast-compose-icon{color:var(--color-accent-strong)}.broadcast-compose-icon.is-idle svg{transform-origin:50% 65%;animation:4.6s ease-in-out infinite broadcast-megaphone-wiggle}@keyframes broadcast-megaphone-wiggle{0%,86%,to{transform:rotate(0)scale(1)}90%{transform:rotate(-12deg)scale(.94)}94%{transform:rotate(8deg)scale(1.06)}97%{transform:rotate(-3deg)scale(1.01)}}.broadcast-compose input{min-width:0;color:var(--color-ink);background:0 0;border:0;outline:none;flex:1;padding:6px 4px;font-size:15px;font-weight:500;line-height:1.4}.broadcast-compose input::placeholder{color:var(--color-ink-faint);opacity:.85;transition:opacity var(--motion-base) ease;font-weight:500}.broadcast-compose:focus-within input::placeholder{opacity:.6}.broadcast-submit{border-radius:var(--radius-pill);background:var(--color-accent-soft);min-height:40px;color:var(--color-accent-strong);letter-spacing:0;box-shadow:none;transition:transform var(--motion-fast) ease,background var(--motion-base) ease,box-shadow var(--motion-base) ease,opacity var(--motion-fast) ease;border:0;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:12.5px;font-weight:750;display:inline-flex}.broadcast-submit:hover:not(:disabled){background:#2157cf;transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.broadcast-submit:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent) 88%,#000)}}.broadcast-submit:active:not(:disabled){transform:translateY(0)scale(.97)}.broadcast-submit:focus-visible{outline:3px solid #2563eb47}@supports (color:color-mix(in lab, red, red)){.broadcast-submit:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent) 28%,transparent)}}.broadcast-submit:focus-visible{outline-offset:2px}.broadcast-submit.is-ready{background:var(--color-accent);color:#fff;box-shadow:0 4px 12px #2563eb38}@supports (color:color-mix(in lab, red, red)){.broadcast-submit.is-ready{box-shadow:0 4px 12px color-mix(in srgb,var(--color-accent) 22%,transparent)}}.broadcast-submit.is-ready:hover:not(:disabled){box-shadow:0 6px 16px #2563eb47}@supports (color:color-mix(in lab, red, red)){.broadcast-submit.is-ready:hover:not(:disabled){box-shadow:0 6px 16px color-mix(in srgb,var(--color-accent) 28%,transparent)}}.broadcast-submit:disabled{opacity:.4;cursor:not-allowed}.broadcast-spin{animation:1s linear infinite spin}.broadcast-compose-error{color:var(--color-warn);padding:0 4px;font-size:12px}.broadcast-confetti{background:var(--c,var(--color-accent));pointer-events:none;opacity:0;transform-origin:50%;border-radius:2px;width:9px;height:9px;animation:1.1s cubic-bezier(.18,.9,.32,1) forwards broadcast-confetti-fly;position:absolute;top:22px;right:18px}@keyframes broadcast-confetti-fly{0%{opacity:1;transform:translate(0)rotate(0)scale(.6)}55%{opacity:1}to{transform:translate(var(--x,0),var(--y,-70px)) rotate(var(--rot,180deg)) scale(.9);opacity:0}}@media (prefers-reduced-motion:reduce){.broadcast-compose-icon.is-idle svg,.broadcast-compose{animation:none!important}.broadcast-compose:focus-within{transform:none}.broadcast-compose-icon,.broadcast-submit{transition:none}}.broadcast-banner-list{gap:10px;display:grid}.broadcast-banner{border-radius:var(--radius-control);border:1px solid #2155c63f;align-items:flex-start;gap:12px;padding:16px 44px 16px 16px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.broadcast-banner{border:1px solid color-mix(in srgb,var(--color-accent) 20%,var(--color-border))}}.broadcast-banner{background:#f2f6fe}@supports (color:color-mix(in lab, red, red)){.broadcast-banner{background:color-mix(in srgb,var(--color-accent) 6%,var(--color-surface))}}.broadcast-banner{box-shadow:0 1px 2px #1018280a,0 6px 18px #2563eb14}@supports (color:color-mix(in lab, red, red)){.broadcast-banner{box-shadow:0 1px 2px #1018280a,0 6px 18px color-mix(in srgb,var(--color-accent) 8%,transparent)}}.broadcast-banner{overflow:hidden}.broadcast-banner-accent{background:linear-gradient(180deg,var(--color-accent),var(--color-fam-rose));width:4px;position:absolute;top:0;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.broadcast-banner-accent{background:linear-gradient(180deg,var(--color-accent),color-mix(in srgb,var(--color-fam-rose) 60%,var(--color-accent)))}}.broadcast-banner-accent{pointer-events:none;border-radius:4px 0 0 4px}.broadcast-banner-icon{border-radius:var(--radius-sm);background:var(--color-accent-soft);width:38px;height:38px;color:var(--color-accent);flex:none;place-items:center;display:grid}.broadcast-banner-body{flex:1;min-width:0}.broadcast-banner-meta{flex-wrap:wrap;align-items:baseline;gap:7px;display:flex}.broadcast-banner-meta strong{color:var(--color-ink);font-size:13px;font-weight:600}.broadcast-banner-time{color:var(--color-ink-faint);font-size:11px}.broadcast-banner-body p{color:var(--color-ink);word-break:break-word;margin-top:4px;font-size:15px;line-height:1.45}.broadcast-banner-clear{width:26px;height:26px;color:var(--color-ink-faint);border-radius:8px;place-items:center;display:grid;position:absolute;top:11px;right:11px}.broadcast-banner-clear:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.broadcast-reactions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.broadcast-reaction{border-radius:var(--radius-pill);border:1px solid #2153c23a;align-items:center;gap:6px;padding:7px 14px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.broadcast-reaction{border:1px solid color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.broadcast-reaction{background:var(--color-surface);cursor:pointer;font-size:16px;line-height:1;transition:transform .15s cubic-bezier(.34,1.56,.64,1),border-color .2s,background .2s,box-shadow .2s}.broadcast-reaction:hover{border-color:#235ddb6f;transform:scale(1.12)}@supports (color:color-mix(in lab, red, red)){.broadcast-reaction:hover{border-color:color-mix(in srgb,var(--color-accent) 40%,var(--color-border))}}.broadcast-reaction:hover{box-shadow:0 3px 10px #2563eb24}@supports (color:color-mix(in lab, red, red)){.broadcast-reaction:hover{box-shadow:0 3px 10px color-mix(in srgb,var(--color-accent) 14%,transparent)}}.broadcast-reaction em{color:var(--color-ink-soft);padding-left:1px;font-size:12px;font-style:normal;font-weight:700}.broadcast-reaction.empty{opacity:.55;filter:grayscale(.4)}.broadcast-reaction:active{transform:scale(.88)}.broadcast-reaction.reacted{border-color:var(--color-accent);background:var(--color-accent-soft);box-shadow:0 2px 8px #2563eb2e}@supports (color:color-mix(in lab, red, red)){.broadcast-reaction.reacted{box-shadow:0 2px 8px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.broadcast-reaction.reacted em{color:var(--color-accent-strong)}.topbar-fam-ai{position:relative}.topbar-fam-ai:before{content:"";pointer-events:none;background:linear-gradient(135deg,var(--color-accent),#7ca1f3);border-radius:50%;position:absolute;top:6px;bottom:6px;left:6px;right:6px}@supports (color:color-mix(in lab, red, red)){.topbar-fam-ai:before{background:linear-gradient(135deg,var(--color-accent),color-mix(in srgb,var(--color-accent) 60%,#fff))}}.topbar-fam-ai:before{opacity:.18}.topbar-fam-ai:after{content:"";pointer-events:none;border-radius:50%;position:absolute;top:0;bottom:0;left:0;right:0;box-shadow:inset 0 0 0 1px #2563eb66}@supports (color:color-mix(in lab, red, red)){.topbar-fam-ai:after{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent) 40%,transparent)}}.topbar-fam-ai:hover:after{box-shadow:inset 0 0 0 2px var(--color-accent)}.topbar-fam-ai:active{transform:scale(.95)}.meal-roulette-cuisine{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.meal-roulette-cuisine-cycle{border:1px dashed var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);border-radius:11px;align-items:center;gap:8px;padding:8px 11px;font-size:11.5px;font-weight:600;transition:border-color .15s,background .15s;display:flex}.meal-roulette-cuisine-cycle:hover{border-color:var(--color-accent);background:var(--color-accent-soft)}.meal-roulette-cuisine-cycle em{color:var(--color-ink-faint);margin-left:auto;font-style:normal}.meal-roulette-cuisine-cycle strong{color:var(--color-accent-strong);letter-spacing:.02em;font-weight:700}.meal-roulette-cuisine-chips{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.meal-roulette-cuisine-chip{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);border-radius:999px;padding:5px 10px;font-size:11px;font-weight:600;transition:all .15s}.meal-roulette-cuisine-chip:hover{border-color:var(--color-accent);color:var(--color-accent-strong)}.meal-roulette-cuisine-chip.pinned{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}@media (max-width:640px){.meal-roulette-cuisine{min-width:0;max-width:100%;overflow:hidden}.meal-roulette-cuisine-cycle{min-width:0;max-width:100%}.meal-roulette-cuisine-cycle strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meal-roulette-cuisine-chips{overscroll-behavior-inline:contain;scrollbar-width:none;flex-wrap:nowrap;max-width:100%;padding-bottom:5px;overflow-x:auto}.meal-roulette-cuisine-chips::-webkit-scrollbar{display:none}.meal-roulette-cuisine-chips li,.meal-roulette-cuisine-chip{flex:none}}.meal-roulette-current{letter-spacing:.02em;color:var(--color-accent-strong);font-weight:600}.settings-household-note{color:var(--color-ink-soft);margin-bottom:6px;font-size:13px;line-height:1.5}.settings-household-note strong{color:var(--color-ink)}.pull-to-refresh-host{touch-action:pan-y;position:relative}.pull-to-refresh-host:not([style*="translate3d(0, 0px, 0)"]){transition:transform .22s cubic-bezier(.18,.86,.32,1)}.pull-to-refresh-indicator{height:28px;color:var(--color-accent);pointer-events:none;place-items:center;display:grid;position:absolute;top:-28px;left:0;right:0}@media (prefers-reduced-motion:reduce){.pull-to-refresh-host{transition-duration:0s}}.calendar-agenda-header{color:var(--color-ink-faint);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-top:10px;padding:14px 4px 10px;display:flex}.calendar-agenda-header .calendar-agenda-label{letter-spacing:.08em;color:var(--color-accent-strong);text-transform:uppercase;font-size:11px;font-weight:800}.calendar-agenda-weather{color:var(--color-ink);border-radius:var(--radius-pill);background:#e9effd;align-items:center;gap:5px;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.calendar-agenda-weather{background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface))}}.calendar-agenda-weather{border:1px solid #2256c944}@supports (color:color-mix(in lab, red, red)){.calendar-agenda-weather{border:1px solid color-mix(in srgb,var(--color-accent) 22%,var(--color-border))}}.calendar-list{flex-direction:column;gap:0;padding-bottom:88px;display:flex}.calendar-list-row{border-bottom:1px solid #1118270b;grid-template-columns:54px 14px 1fr auto;align-items:flex-start;gap:11px;padding:11px 4px;display:grid}@supports (color:color-mix(in lab, red, red)){.calendar-list-row{border-bottom:1px solid color-mix(in srgb,var(--color-border) 70%,transparent)}}.calendar-list-row{cursor:pointer;transition:background var(--motion-fast) ease}.calendar-list-row:hover{background:#2563eb0d}@supports (color:color-mix(in lab, red, red)){.calendar-list-row:hover{background:color-mix(in srgb,var(--color-accent) 5%,transparent)}}.calendar-list-time{flex-direction:column;align-items:flex-end;display:flex}.calendar-list-time>span{font:700 13px/1.1 var(--font-sans);color:var(--color-ink);letter-spacing:-.005em}.calendar-list-time>em{color:var(--color-ink-faint);margin-top:2px;font-size:10.5px;font-style:normal;font-weight:600}.calendar-list-dot{border-radius:50%;width:9px;height:9px;margin-top:5px;box-shadow:0 0 0 2px #fffffff5}@supports (color:color-mix(in lab, red, red)){.calendar-list-dot{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-surface) 96%,transparent)}}.calendar-list-body{flex-direction:column;gap:2px;min-width:0;display:flex}.calendar-list-body>strong{color:var(--color-ink);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.calendar-list-location{color:var(--color-ink-soft);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:11px;display:inline-flex;overflow:hidden}.calendar-list-location svg{opacity:.7;flex:none}.calendar-list-delete{width:24px;height:24px;color:var(--color-ink-faint);cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease;background:0 0;border:0;border-radius:8px;align-self:center;place-items:center;display:grid}.calendar-list-delete:hover{background:var(--color-warn-soft);color:var(--color-warn)}.calendar-fab{z-index:50;cursor:pointer;width:56px;height:56px;transition:transform var(--motion-fast) cubic-bezier(.2,.8,.2,1),box-shadow var(--motion-fast) ease,background var(--motion-fast) ease;border:0;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:100px;right:20px;box-shadow:0 8px 24px #2563eb66,0 2px 8px #00000026;color:#fff!important;background:#2563eb!important}.calendar-fab svg{stroke-width:2.5px;width:26px;height:26px}.calendar-fab:hover{transform:translateY(-3px);box-shadow:0 12px 28px #2563eb80,0 4px 12px #0003;background:#1d4ed8!important}.calendar-fab:active{transform:translateY(0)scale(.95)}@media (min-width:720px){.calendar-fab{width:60px;height:60px;bottom:28px;right:28px}.calendar-fab svg{width:28px;height:28px}}.calendar-quick-capture{z-index:31;background:#f4f9ff;border-radius:28px;align-items:center;gap:4px;width:min(100vw - 36px,440px);max-width:calc(100vw - 36px);padding:6px 6px 6px 10px;display:flex;position:fixed;bottom:150px;right:18px}@supports (color:color-mix(in lab, red, red)){.calendar-quick-capture{background:color-mix(in srgb,var(--color-accent-soft) 70%,var(--color-surface))}}.calendar-quick-capture{border:1px solid #2259d152}@supports (color:color-mix(in lab, red, red)){.calendar-quick-capture{border:1px solid color-mix(in srgb,var(--color-accent) 28%,var(--color-border))}}.calendar-quick-capture{box-shadow:0 14px 36px #2563eb38,0 2px 6px #1018280f}@supports (color:color-mix(in lab, red, red)){.calendar-quick-capture{box-shadow:0 14px 36px color-mix(in srgb,var(--color-accent) 22%,transparent),0 2px 6px #1018280f}}.calendar-quick-capture{transform-origin:100% 100%;animation:.28s cubic-bezier(.32,.72,0,1) quick-capture-spring}.calendar-quick-icon{background:var(--color-accent);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.calendar-quick-input{min-width:0;height:36px;color:var(--color-ink);background:0 0;border:0;outline:none;flex:1;padding:0 4px;font-size:14.5px;font-weight:500}.calendar-quick-input::placeholder{color:var(--color-ink-faint);font-weight:400}.calendar-quick-submit{border-radius:var(--radius-section);background:var(--color-ink);color:#fff;cursor:pointer;height:36px;transition:background var(--motion-fast) ease,transform var(--motion-fast) ease;border:0;flex:none;padding:0 14px;font-size:12.5px;font-weight:700}.calendar-quick-submit:hover:not(:disabled){background:#000}.calendar-quick-submit:disabled{opacity:.35;cursor:not-allowed}.calendar-quick-submit:active{transform:scale(.94)}.task-inline-form{border-radius:var(--radius-card);border:1px solid var(--color-border);background:var(--color-surface);transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease;align-items:center;gap:10px;padding:12px 16px;display:flex}.task-inline-form:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #2563eb1f}@supports (color:color-mix(in lab, red, red)){.task-inline-form:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 12%,transparent)}}.task-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.task-header-actions>button{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:38px;color:var(--color-ink-soft);align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:750;display:inline-flex}.task-header-actions>button:first-child{background:var(--color-accent-soft);color:var(--color-accent);border-color:#0000}.task-header-actions svg{width:15px}.task-board-group.custom{background:var(--custom-list-color);border-color:#0000}@supports (color:color-mix(in lab, red, red)){.task-board-group.custom{background:color-mix(in srgb,var(--custom-list-color) 9%,var(--color-surface))}}.task-board-group.custom .task-group-title h2{color:var(--custom-list-color)}.task-board-group.custom .task-group-title>span{background:var(--custom-list-color)}@supports (color:color-mix(in lab, red, red)){.task-board-group.custom .task-group-title>span{background:color-mix(in srgb,var(--custom-list-color) 18%,white)}}.task-board-group.custom .task-group-title>span{color:var(--custom-list-color)}.task-list-empty{border:1px dashed var(--custom-list-color,#2563eb);width:100%;padding:15px}@supports (color:color-mix(in lab, red, red)){.task-list-empty{border:1px dashed color-mix(in srgb,var(--custom-list-color,var(--color-accent)) 30%,var(--color-border))}}.task-list-empty{border-radius:var(--radius-md);color:var(--color-ink-soft);text-align:left;font-size:13px}.task-list-color{border:1px solid var(--color-border);border-radius:var(--radius-md);gap:10px;margin:4px 0 20px;padding:13px;display:grid}.task-list-color>span{color:var(--color-ink-soft);font-size:12px;font-weight:700}.task-list-swatches{flex-wrap:wrap;gap:10px;display:flex}.task-list-swatch{border:3px solid var(--color-surface);background:var(--swatch-color);color:#fff;width:40px;height:40px;box-shadow:0 0 0 1px var(--swatch-color);border-radius:50%;flex:0 0 40px;place-items:center;padding:0;display:grid}@supports (color:color-mix(in lab, red, red)){.task-list-swatch{box-shadow:0 0 0 1px color-mix(in srgb,var(--swatch-color) 34%,var(--color-border))}}.task-list-swatch{transition:transform .15s,box-shadow .15s}.task-list-swatch:hover{transform:scale(1.06)}.task-list-swatch:focus-visible{outline:3px solid var(--swatch-color)}@supports (color:color-mix(in lab, red, red)){.task-list-swatch:focus-visible{outline:3px solid color-mix(in srgb,var(--swatch-color) 45%,transparent)}}.task-list-swatch:focus-visible{outline-offset:3px}.task-list-swatch.selected{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--swatch-color)}.task-list-swatch svg{stroke-width:3px;opacity:0;filter:drop-shadow(0 1px 1px #0000003d);width:17px;height:17px}.task-list-swatch.selected svg{opacity:1}.task-list-color>strong{font-size:15px}.task-toolbar{flex-wrap:wrap;gap:8px;padding:0 0 4px;display:flex}.task-toolbar-btn{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out);align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.task-toolbar-btn:first-child{background:var(--color-accent-soft);color:var(--color-accent);border-color:#0000}.task-toolbar-btn:hover{background:#e9effd}@supports (color:color-mix(in lab, red, red)){.task-toolbar-btn:hover{background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface))}}.task-toolbar-btn:hover{transform:translateY(-1px)}.task-toolbar-btn:active{transform:scale(.97)}.task-toolbar-reset:hover{background:#fcecec}@supports (color:color-mix(in lab, red, red)){.task-toolbar-reset:hover{background:color-mix(in srgb,#d44 10%,var(--color-surface))}}.task-toolbar-reset:hover{color:#d44;border-color:#d44}.task-inline-icon{border-radius:var(--radius-pill);background:var(--color-accent-soft);width:24px;height:24px;color:var(--color-accent);flex:none;place-items:center;display:grid}.task-inline-input{min-width:0;color:var(--color-ink);background:0 0;border:0;outline:none;flex:1;font-size:15px;font-weight:500}.task-inline-input:focus{box-shadow:none;outline:0}.task-inline-input:focus-visible{box-shadow:none;outline:0}.task-inline-input::placeholder{color:var(--color-ink-faint)}.calendar-quick-expand,.calendar-quick-close{width:30px;height:30px;color:var(--color-ink-soft);cursor:pointer;transition:background var(--motion-fast) ease;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.calendar-quick-expand:hover,.calendar-quick-close:hover{background:#e0e9fc}@supports (color:color-mix(in lab, red, red)){.calendar-quick-expand:hover,.calendar-quick-close:hover{background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface))}}.calendar-quick-close{margin-right:2px}@keyframes quick-capture-spring{0%{opacity:0;transform:translateY(10px)scale(.5)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:480px){.calendar-quick-capture{width:calc(100vw - 28px);padding:5px 5px 5px 10px;bottom:152px;right:14px}.calendar-quick-input{font-size:15px}}@media (min-width:720px){.calendar-quick-capture{bottom:90px;right:24px}}.event-cache-badge{border-radius:var(--radius-pill);background:#f4f9ff;align-items:center;gap:5px;padding:4px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.event-cache-badge{background:color-mix(in srgb,var(--color-accent-soft) 70%,var(--color-surface))}}.event-cache-badge{border:1px solid #2153c23a}@supports (color:color-mix(in lab, red, red)){.event-cache-badge{border:1px solid color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.event-cache-badge{color:var(--color-ink-soft);letter-spacing:.01em;cursor:pointer;transition:all var(--motion-fast) cubic-bezier(.2,.8,.2,1);align-self:flex-start;margin:0 0 10px;font-size:11px;font-weight:600}.event-cache-badge:hover{background:var(--color-accent-soft);color:var(--color-accent-strong);border-color:var(--color-accent);transform:translateY(-1px)}.event-cache-badge:active{transform:translateY(0)scale(.97)}.event-cache-badge svg{opacity:.65;transition:transform .6s var(--motion-fast) ease}.event-cache-badge:hover svg{opacity:1;transform:rotate(45deg)}.theme-dark .topbar-wordmark strong{color:#fff}.theme-dark .nav-brand strong{color:#fff;letter-spacing:-.04em;font-weight:800}.theme-dark .nav-brand span{color:#ffffffb8}.theme-dark .navbar-bg,.theme-dark .primary-nav,.theme-dark .nav-foot{color:#bbc0da}.theme-dark .m3-navigation-item .nav-label{color:#bbc0da;font-weight:700}.theme-dark .m3-navigation-item.is-active .nav-label{color:#fff;font-weight:800}.theme-dark .m3-navigation-item.is-active .nav-icon{color:#9087ff}.theme-dark .nav-icon svg,.theme-dark .nav-icon{color:#c7cce0}.fam-ai-fab{right:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 88px);z-index:40;border:1px solid var(--color-border);background:linear-gradient(135deg, var(--color-accent), var(--color-accent-strong));color:#fff;border-radius:50%;place-items:center;width:56px;height:56px;transition:transform .18s,box-shadow .18s;display:grid;position:fixed;box-shadow:0 12px 30px #5b55d652,0 2px 4px #0000001f}.fam-ai-fab:hover{transform:translateY(-2px)scale(1.04);box-shadow:0 18px 36px #5b55d666,0 4px 6px #00000024}.fam-ai-fab:active{transform:scale(.95)}.fam-ai-fab-dot{background:var(--color-fam-marigold);border:2px solid var(--color-surface);border-radius:50%;width:12px;height:12px;animation:1.4s ease-in-out infinite fam-ai-fab-pulse;position:absolute;top:6px;right:6px}@keyframes fam-ai-fab-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.25)}}.fam-ai-sheet-backdrop{z-index:90;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1018286b;border:0;padding:0;position:fixed;top:0;bottom:0;left:0;right:0}.fam-ai-sheet{z-index:91;background:var(--color-surface);border-top:1px solid var(--color-border);border-radius:22px 22px 0 0;flex-direction:column;animation:.32s cubic-bezier(.34,1.56,.64,1) fam-ai-sheet-in;display:flex;position:fixed;top:8vh;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -8px 32px #1018282e}@keyframes fam-ai-sheet-in{0%{opacity:0;transform:translateY(8vh)}to{opacity:1;transform:translateY(0)}}.fam-ai-sheet-close{z-index:2;border:1px solid var(--color-border);background:var(--color-surface);width:36px;height:36px;color:var(--color-ink-soft);border-radius:50%;place-items:center;transition:background .16s,color .16s;display:grid;position:absolute;top:14px;right:14px}.fam-ai-sheet-close:hover{background:var(--color-surface-sunken);color:var(--color-ink)}@media (min-width:720px){.fam-ai-sheet{border:1px solid var(--color-border);left:50%;right:auto;border-radius:22px;width:min(560px,92vw);animation:.32s cubic-bezier(.34,1.56,.64,1) fam-ai-sheet-in-desktop;top:10vh;bottom:6vh;left:auto;right:auto;transform:translate(-50%)}@keyframes fam-ai-sheet-in-desktop{0%{opacity:0;transform:translate(-50%,8vh)}to{opacity:1;transform:translate(-50%)}}}@media (prefers-reduced-motion:reduce){.fam-ai-fab-dot,.fam-ai-sheet{animation:none}}.cook-listen-toggle{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-accent-strong);border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:700;transition:background .16s,color .16s,transform .12s;display:inline-flex}.cook-listen-toggle:hover{background:var(--color-accent-soft)}.cook-listen-toggle:active{transform:scale(.96)}.cook-listen-toggle.is-listening{background:var(--color-accent);color:#fff;border-color:var(--color-accent);animation:1.4s ease-in-out infinite cook-listen-pulse}@keyframes cook-listen-pulse{0%,to{box-shadow:0 0 #5b55d666}50%{box-shadow:0 0 0 8px #5b55d600}}.cook-voice-transcript{background:var(--color-surface-sunken);color:var(--color-ink-soft);text-align:center;border-radius:12px;margin:12px 0 0;padding:8px 14px;font-size:13px;font-weight:600}.cook-voice-transcript.is-listening{background:var(--color-accent-soft);color:var(--color-accent-strong)}.cook-voice-transcript.is-error{background:#fae1e1}@supports (color:color-mix(in lab, red, red)){.cook-voice-transcript.is-error{background:color-mix(in srgb, var(--color-warn) 14%, var(--color-surface))}}.cook-voice-transcript.is-error{color:var(--color-warn)}.cook-tonight-cta{border:1px solid #2259d152;border-radius:18px;grid-template-columns:1fr auto;align-items:center;gap:14px;padding:16px 18px;display:grid}@supports (color:color-mix(in lab, red, red)){.cook-tonight-cta{border:1px solid color-mix(in srgb, var(--color-accent) 28%, var(--color-border))}}.cook-tonight-cta{background:linear-gradient(135deg, #e0e9fc, var(--color-fam-marigold))}@supports (color:color-mix(in lab, red, red)){.cook-tonight-cta{background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 14%, var(--color-surface)), color-mix(in srgb, var(--color-fam-marigold) 10%, var(--color-surface)))}}.cook-tonight-cta{box-shadow:0 1px 2px #1018280a}.cook-tonight-cta-meta{gap:2px;min-width:0;display:grid}.cook-tonight-cta-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent-strong);font-size:10.5px;font-weight:800}.cook-tonight-cta-title{font-family:var(--font-display);color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:700;line-height:1.2;overflow:hidden}.cook-tonight-cta-sub{color:var(--color-ink-soft);font-size:11.5px}.cook-tonight-cta-button{border:1px solid var(--color-ink);background:var(--color-ink);color:#fff;white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:12px 18px;font-size:13px;font-weight:700;transition:transform .14s,background .16s;display:inline-flex}.cook-tonight-cta-button em{text-underline-offset:2px;font-style:normal;text-decoration:underline;text-decoration-thickness:1.5px}.cook-tonight-cta-button:hover{background:var(--color-accent-strong);transform:translateY(-1px)}.cook-tonight-cta-button:active{transform:scale(.97)}@media (max-width:480px){.cook-tonight-cta{grid-template-columns:1fr}.cook-tonight-cta-button{justify-content:center;width:100%}}.landing-nav{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:12px;display:flex!important}.landing-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;min-width:0;font-size:14px;font-weight:600;display:flex!important}.landing-actions{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:10px;display:flex!important}.landing-brand{flex-shrink:0}.primary-nav .nav-items{grid-template-columns:repeat(var(--nav-columns,7),minmax(0,1fr))!important;flex-direction:row!important;display:grid!important}.primary-nav .nav-item{flex-direction:column!important;justify-content:center!important;align-items:center!important;display:flex!important}@media (max-width:900px){.landing-links{gap:14px;font-size:13px;display:flex!important}.landing-links>a{white-space:nowrap}}@media (max-width:760px){.landing-links{gap:10px;font-size:12px}.landing-brand strong span{font-size:18px}}@media (max-width:560px){.landing-links{justify-content:flex-start;gap:8px;font-size:11px}.landing-nav{height:64px;padding:0 14px}.landing-join{padding:9px 12px;font-size:12px}.landing-signin{display:none}}.grocery-photo-section{border:1px dashed var(--color-border);background:var(--color-surface-sunken);border-radius:18px;flex-direction:column;gap:6px;padding:14px;display:flex}.grocery-photo-thumb{border:1px solid var(--color-border);background:var(--color-surface);width:64px;height:64px;color:var(--color-ink-faint);border-radius:14px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.grocery-photo-thumb img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.grocery-photo-thumb-list{background:var(--color-accent-soft);border-color:#0000;border-radius:9px;width:34px;height:34px}.grocery-photo-thumb-focus{background:var(--color-accent-soft);border-color:#0000;border-radius:11px;width:48px;height:48px}.grocery-photo-spinner{background:#fffc;position:absolute;top:6px;bottom:6px;left:6px;right:6px}@supports (color:color-mix(in lab, red, red)){.grocery-photo-spinner{background:color-mix(in srgb,var(--color-surface) 80%,transparent)}}.grocery-photo-spinner{border-radius:inherit;place-items:center;display:grid}.grocery-photo-spinner:before{content:"";border:2px solid var(--color-accent-soft);border-top-color:var(--color-accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite groceryPhotoSpin}@keyframes groceryPhotoSpin{to{transform:rotate(360deg)}}.primary-action-button.small,.secondary-action-button.small{padding:8px 11px;font-size:12px}@media (prefers-reduced-motion:reduce){.grocery-photo-spinner:before{animation:none}}.grocery-photo-attribution{border:1.5px solid var(--color-surface);width:16px;height:16px;position:absolute;bottom:-2px;right:-2px;box-shadow:0 1px 3px #0000002e}.marketing-nav{z-index:30;isolation:isolate;box-sizing:border-box;width:100%;max-width:1440px;font-family:var(--font-sans);color:var(--landing-color-surface-dark);text-shadow:0 1px 1px #ffffff73;background:0 0;border-bottom:1px solid #0000;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:24px;margin:0 auto;padding:14px max(24px,3vw);transition:background-color .28s,border-color .28s;display:grid;top:0;position:sticky!important}.marketing-nav.is-scrolled{-webkit-backdrop-filter:blur(14px);background:#fffdf9b8;border-bottom:1px solid #7952e814}.marketing-nav-brand{color:var(--landing-color-surface-dark);letter-spacing:-.04em;font:760 18px/1 var(--font-display);text-shadow:none;align-items:center;gap:9px;text-decoration:none;display:inline-flex}.marketing-nav-brand img{border:1px solid var(--color-border);border-radius:11px;width:38px;height:38px}.marketing-nav-brand strong{display:inline-block}.marketing-nav-brand span{color:var(--landing-color-primary)}.marketing-nav-links{justify-content:center;align-items:center;gap:max(2px,min(.55vw,8px));min-width:0;display:flex}.marketing-nav-links>a,.marketing-nav-links>div{border-radius:var(--radius-pill);min-width:max-content;color:var(--landing-color-surface-dark);white-space:nowrap;flex:none;align-items:center;padding:9px max(8px,min(.9vw,13px));font-size:14px;font-weight:700;text-decoration:none;transition:background-color .2s,color .2s;display:inline-flex}.marketing-nav-links>a:hover{background:var(--landing-color-lavender-soft);color:var(--landing-color-primary-dark)}.marketing-nav-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:max(5px,min(.6vw,8px));min-width:max-content;display:flex}.marketing-nav-download{border-radius:var(--radius-pill);min-height:42px;color:var(--landing-color-surface-dark);white-space:nowrap;background:#ffffffb8;border:1px solid #17172f1f;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:750;text-decoration:none;transition:background-color .2s,border-color .2s,transform .18s;display:inline-flex}.marketing-nav-download:hover{color:var(--landing-color-primary-dark);background:#fff;border-color:#7952e859;transform:translateY(-1px)}.marketing-nav-download:active{transform:scale(.97)}.marketing-nav-download svg{width:15px;height:15px}.marketing-nav-signin{border-radius:var(--radius-pill);min-height:42px;color:var(--landing-color-surface-dark);border:1px solid #0000;justify-content:center;align-items:center;padding:0 16px;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .2s;display:inline-flex}.marketing-nav-signin:hover{background:var(--landing-color-lavender-soft);color:var(--landing-color-primary-dark)}.marketing-nav-join{border-radius:var(--radius-pill);background:var(--landing-color-primary);color:#fff;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 20px;font-size:14px;font-weight:850;text-decoration:none;transition:transform .18s,box-shadow .18s,background-color .2s;display:inline-flex;box-shadow:0 12px 26px #7952e842}.marketing-nav-join:hover{background:#5b3fc7;transform:translateY(-1px);box-shadow:0 16px 32px #7952e852}.marketing-nav-join svg{width:15px;height:15px}.marketing-nav-menu{min-width:42px;min-height:42px;color:var(--landing-color-surface-dark);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:background-color .2s,border-color .2s;display:none}.marketing-nav-menu:hover{background:var(--landing-color-lavender-soft)}.marketing-nav-menu:focus-visible{border-color:var(--landing-color-primary);background:var(--landing-color-lavender-soft);outline:0}.marketing-nav-menu:active{transform:scale(.94)}.marketing-nav-menu-bars{width:18px;height:14px;display:block;position:relative}.marketing-nav-menu-bars i{background:currentColor;border-radius:2px;height:2px;transition:transform .26s cubic-bezier(.22,1,.36,1),opacity .18s,top .26s cubic-bezier(.22,1,.36,1);position:absolute;left:0;right:0}.marketing-nav-menu-bars i:first-child{top:0}.marketing-nav-menu-bars i:nth-child(2){top:6px}.marketing-nav-menu-bars i:nth-child(3){top:12px}.marketing-nav-menu.is-open .marketing-nav-menu-bars i.is-top{top:6px;transform:rotate(45deg)}.marketing-nav-menu.is-open .marketing-nav-menu-bars i.is-mid{opacity:0}.marketing-nav-menu.is-open .marketing-nav-menu-bars i.is-bot{top:6px;transform:rotate(-45deg)}.marketing-drawer{z-index:120;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0}.marketing-drawer.is-open{pointer-events:auto}.marketing-drawer-backdrop{-webkit-backdrop-filter:blur(6px);opacity:0;cursor:pointer;background:#1410286b;border:0;padding:0;transition:opacity .24s;position:absolute;top:0;bottom:0;left:0;right:0}.marketing-drawer.is-open .marketing-drawer-backdrop{opacity:1}.marketing-drawer-panel{border-right:1px solid var(--color-border);width:100%;max-width:420px;padding:20px 24px max(28px,env(safe-area-inset-bottom));opacity:0;pointer-events:none;overscroll-behavior:contain;background:#fff;flex-direction:column;gap:8px;transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .24s;display:flex;position:absolute;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-102%);box-shadow:22px 0 60px #1410282e}.marketing-drawer.is-open .marketing-drawer-panel{opacity:1;pointer-events:auto;transform:translate(0)}.marketing-drawer-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:12px;display:flex}.marketing-drawer-brand{color:var(--landing-color-surface-dark);font:760 20px/1 var(--font-display);letter-spacing:-.04em;text-decoration:none}.marketing-drawer-close{width:40px;height:40px;color:var(--landing-color-surface-dark);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;place-items:center;transition:background-color .18s,transform .18s;display:grid}.marketing-drawer-close:hover{background:var(--landing-color-lavender-soft);color:var(--landing-color-primary-dark)}.marketing-drawer-close:focus-visible{background:var(--landing-color-lavender-soft);color:var(--landing-color-primary-dark);outline:0;box-shadow:0 0 0 3px #7952e847}.marketing-drawer-close:active{transform:scale(.92)}.marketing-drawer-links{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.marketing-drawer-link{border-radius:var(--radius-tag);width:100%;color:var(--landing-color-surface-dark);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:14px;padding:14px 16px;font-size:17px;font-weight:650;text-decoration:none;transition:background-color .18s,color .18s;display:flex}.marketing-drawer-link:hover{background:var(--landing-color-lavender-soft);color:var(--landing-color-primary-dark)}.marketing-drawer-link span{flex:1}.marketing-drawer-download{background:var(--landing-color-lavender-soft);color:var(--landing-color-primary-dark)}.marketing-drawer-download:hover{background:var(--landing-color-lavender-mid)}.marketing-drawer-divider{background:var(--color-border);height:1px;margin:8px 0}.marketing-drawer-bottom{flex-direction:column;gap:2px;margin-top:auto;padding-top:8px;display:flex}.marketing-drawer-accordion{flex-direction:column;display:flex}.marketing-drawer-accordion-trigger{justify-content:flex-start}.marketing-drawer-accordion-chev{color:var(--color-ink-soft);flex:none;transition:transform .25s}.marketing-drawer-accordion.is-open .marketing-drawer-accordion-chev{transform:rotate(180deg)}.marketing-drawer-accordion-panel{flex-direction:column;gap:0;padding:4px 0 8px 20px;display:none}.marketing-drawer-accordion.is-open .marketing-drawer-accordion-panel{display:flex}.marketing-drawer-accordion-item{border-radius:var(--radius-tag);width:100%;color:var(--color-ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:11px 14px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color .18s;display:flex}.marketing-drawer-accordion-item:hover{background:var(--landing-color-lavender-soft);color:var(--landing-color-primary-dark)}.marketing-drawer-accordion-item span{flex:1}.marketing-drawer-accordion-item svg:first-child{color:var(--color-ink-soft);flex:none}.marketing-drawer-accordion-item-chev{color:var(--color-ink-faint);opacity:.5;flex:none}@media (max-width:480px){.marketing-drawer-panel{max-width:100%;padding:16px 18px max(20px,env(safe-area-inset-bottom))}}.marketing-nav-menu{transition:background-color .2s,border-color .2s,transform .22s cubic-bezier(.22,1,.36,1)}.marketing-nav-menu:hover{transform:scale(1.05)}.marketing-nav-menu-bars i{transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .18s,top .28s cubic-bezier(.22,1,.36,1)}.marketing-nav-menu:not(.is-open):hover .marketing-nav-menu-bars i:first-child{transform:translate(2px)}.marketing-nav-menu:not(.is-open):hover .marketing-nav-menu-bars i:nth-child(3){transform:translate(-2px)}.marketing-nav-brand img{transition:transform .4s cubic-bezier(.22,1,.36,1)}.marketing-nav-brand:hover img{transform:rotate(-8deg)scale(1.06)}.marketing-drawer-close svg{transition:transform .42s cubic-bezier(.22,1,.36,1)}.marketing-drawer-close:active svg{transition-duration:.12s;transform:rotate(45deg)scale(.82)}@keyframes famos-drawer-item-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.marketing-drawer.is-open .marketing-drawer-link:first-child{animation:.38s cubic-bezier(.22,1,.36,1) 80ms backwards famos-drawer-item-in}.marketing-drawer.is-open .marketing-drawer-accordion{animation:.38s cubic-bezier(.22,1,.36,1) .12s backwards famos-drawer-item-in}.marketing-drawer.is-open .marketing-drawer-link:nth-child(3){animation:.38s cubic-bezier(.22,1,.36,1) .16s backwards famos-drawer-item-in}.marketing-drawer.is-open .marketing-drawer-link:nth-child(4){animation:.38s cubic-bezier(.22,1,.36,1) .2s backwards famos-drawer-item-in}.marketing-drawer.is-open .marketing-drawer-link:nth-child(5){animation:.38s cubic-bezier(.22,1,.36,1) .24s backwards famos-drawer-item-in}.marketing-drawer.is-open .marketing-drawer-bottom .marketing-drawer-link:first-child{animation:.38s cubic-bezier(.22,1,.36,1) .29s backwards famos-drawer-item-in}.marketing-drawer.is-open .marketing-drawer-bottom .marketing-drawer-link:nth-child(2){animation:.38s cubic-bezier(.22,1,.36,1) .33s backwards famos-drawer-item-in}@media (prefers-reduced-motion:reduce){.marketing-drawer.is-open .marketing-drawer-link,.marketing-drawer.is-open .marketing-drawer-accordion,.marketing-drawer.is-open .marketing-drawer-bottom .marketing-drawer-link{animation:none!important}.marketing-nav-brand:hover img{transform:none}.marketing-nav-menu,.marketing-nav-menu-bars i,.marketing-nav-brand img,.marketing-drawer-close svg{transition-duration:.01ms!important}}@media (max-width:1200px){.marketing-nav{justify-content:space-between;align-items:center;gap:14px;padding:12px max(20px,3vw);display:flex}.marketing-nav-links,.marketing-nav-actions{display:none}.marketing-nav-menu{display:inline-flex}}@media (max-width:540px){.marketing-nav{gap:8px;padding:10px 14px}.marketing-nav-brand strong{font-size:16px}.marketing-nav-brand img{border-radius:9px;width:33px;height:33px}.marketing-nav-signin,.marketing-nav-join{min-height:38px}.marketing-nav-signin,.marketing-nav-download span{display:none}.marketing-nav-download{width:38px;min-height:38px;padding:0}}@media (prefers-reduced-motion:reduce){.marketing-nav-join{transition:none}.marketing-nav-join:hover{transform:none}}.app-shell{font-family:var(--font-sans);color:var(--color-ink);background:#fafafa}.app-shell .app-topbar{border-color:var(--color-border);background:#fffffff0;min-height:64px}@supports (color:color-mix(in lab, red, red)){.app-shell .app-topbar{background:color-mix(in srgb,var(--color-surface) 94%,transparent)}}.app-shell .app-topbar{box-shadow:0 1px 2px #1f293708}.app-shell .topbar-wordmark strong{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--color-ink);font-weight:600}.app-shell .topbar-wordmark strong span{color:var(--color-accent)}.app-shell .page-header{border-color:var(--color-border);background:0 0}.app-shell .page-title{font-family:var(--font-sans);letter-spacing:-.025em;font-size:28px;font-weight:600;line-height:36px}.app-shell .page-subtitle{font-size:14px;line-height:20px}.app-shell .ui-section-title,.app-shell section>h2{font-family:var(--font-sans);letter-spacing:-.015em;font-weight:600}.app-shell .kinship-card,.app-shell .kinship-card.m3-card{border-radius:var(--radius-card)!important;background:var(--color-surface)!important;box-shadow:none!important;border:1px solid #0000!important}.app-shell .primary-nav{border-color:var(--color-border);background:#fffffff5}@supports (color:color-mix(in lab, red, red)){.app-shell .primary-nav{background:color-mix(in srgb,var(--color-surface) 96%,transparent)}}.app-shell .primary-nav{box-shadow:none}.app-shell .nav-item{color:var(--color-ink-soft);font-weight:500}.app-shell .nav-item .nav-label{font-weight:500}.app-shell .nav-item.is-active{color:var(--color-accent-strong)}.app-shell .nav-item.is-active .nav-icon{border-radius:var(--radius-control);background:var(--color-accent-soft);border:0}.app-shell .nav-item:hover .nav-icon{background:var(--color-surface-sunken);transform:none}.app-shell :where(select,textarea){border-color:var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);font:500 14px/20px var(--font-sans)}.app-shell :where(select,textarea):focus-visible{border-color:var(--color-accent);outline:3px solid #2563eb2e}@supports (color:color-mix(in lab, red, red)){.app-shell :where(select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent) 18%,transparent)}}.app-shell :where(select,textarea):focus-visible{outline-offset:0}.app-shell .task-board-group{border-radius:var(--radius-card);background:var(--color-surface);border-color:#0000}.app-shell .task-board-row{border-radius:var(--radius-control);background:var(--color-surface);border:1px solid #0000}.app-shell .reference-meals,.app-shell .reference-tasks,.app-shell .reference-groceries,.app-shell .reference-settings,.app-shell .reference-calendar,.app-shell .reference-dashboard,.app-shell .reference-kitchen{background:#fafafa}.app-shell .reference-meals>.px-5>.kinship-card:nth-child(n),.app-shell .reference-settings section:nth-of-type(n)>.kinship-card{background:#fff!important}.app-shell .broadcast-compose{border-color:var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:none;background-image:none;animation:none}.app-shell .broadcast-compose:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #2563eb2e}@supports (color:color-mix(in lab, red, red)){.app-shell .broadcast-compose:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.app-shell .broadcast-compose:focus-within{transform:none}.app-shell .broadcast-submit{border-radius:var(--radius-control)}.app-shell .broadcast-banner{border-color:var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:none}.app-shell .notification-feed{border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:0 10px 24px #1f29371f}.app-shell .task-header-actions>button,.app-shell .page-reset-button,.app-shell .grocery-mode-actions button{border-radius:var(--radius-control)}.app-shell .modal-card.m3-dialog{border-radius:var(--m3-shape-xl)!important}@media (min-width:700px){.app-shell .primary-nav{border-radius:var(--radius-card)}.app-shell .primary-nav .nav-items{width:100%;grid-template-columns:1fr!important;gap:4px!important;display:grid!important}.app-shell .primary-nav .nav-item{border-radius:var(--radius-control);gap:10px;padding:8px 10px;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;display:flex!important}.app-shell .primary-nav .nav-icon{border-radius:var(--radius-control);flex:0 0 32px;width:32px;height:32px}.app-shell .primary-nav .nav-label{text-align:left;font-size:13px;display:block}.app-shell .primary-nav .nav-item.is-active{background:var(--color-accent-soft)}}@media (min-width:768px){.app-shell .kw-page .kw-group-items{grid-template-columns:1fr 1fr!important}}@media (max-width:767px){.app-shell .page-title,body .app-content .page-title{letter-spacing:-.03em!important;font-size:25px!important;line-height:1.1!important}.app-shell .page-header-aside .page-spot-frame{display:none}.app-shell .page-header-aside{min-width:0!important;max-width:none!important}.app-shell .primary-nav{border-radius:0}.app-shell .kinship-card,.app-shell .kinship-card.m3-card{border-radius:var(--radius-card)!important}.app-shell .modal-card.m3-dialog{border-radius:var(--m3-shape-xl) var(--m3-shape-xl) 0 0!important}}.app-shell .reference-dashboard .today-metric-accent,.app-shell .reference-dashboard .today-flow-card{background:var(--pastel-lilac)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-dashboard .today-metric-accent,.app-shell .reference-dashboard .today-flow-card{background:color-mix(in srgb,var(--pastel-lilac) 38%,var(--color-surface))!important}}.app-shell .reference-dashboard .today-metric-rose,.app-shell .reference-dashboard .today-tasks-card{background:var(--pastel-pink)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-dashboard .today-metric-rose,.app-shell .reference-dashboard .today-tasks-card{background:color-mix(in srgb,var(--pastel-pink) 34%,var(--color-surface))!important}}.app-shell .reference-dashboard .today-metric-warn,.app-shell .reference-dashboard .today-command-card,.app-shell .reference-dashboard .today-pulse-card{background:var(--pastel-yellow)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-dashboard .today-metric-warn,.app-shell .reference-dashboard .today-command-card,.app-shell .reference-dashboard .today-pulse-card{background:color-mix(in srgb,var(--pastel-yellow) 36%,var(--color-surface))!important}}.app-shell .reference-dashboard .today-metric-good,.app-shell .reference-dashboard .today-groceries-card{background:var(--pastel-mint)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-dashboard .today-metric-good,.app-shell .reference-dashboard .today-groceries-card{background:color-mix(in srgb,var(--pastel-mint) 36%,var(--color-surface))!important}}.app-shell .reference-dashboard .today-meals-card{background:var(--pastel-peach)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-dashboard .today-meals-card{background:color-mix(in srgb,var(--pastel-peach) 34%,var(--color-surface))!important}}.app-shell .reference-dashboard .today-load-card{background:var(--pastel-blue)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-dashboard .today-load-card{background:color-mix(in srgb,var(--pastel-blue) 36%,var(--color-surface))!important}}.app-shell .task-board-group.violet{background:var(--pastel-lilac)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-board-group.violet{background:color-mix(in srgb,var(--pastel-lilac) 36%,var(--color-surface))}}.app-shell .task-board-group.green{background:var(--pastel-mint)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-board-group.green{background:color-mix(in srgb,var(--pastel-mint) 38%,var(--color-surface))}}.app-shell .task-board-group.slate{background:var(--pastel-blue)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-board-group.slate{background:color-mix(in srgb,var(--pastel-blue) 34%,var(--color-surface))}}.app-shell .task-board-group.rose{background:var(--pastel-pink)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-board-group.rose{background:color-mix(in srgb,var(--pastel-pink) 36%,var(--color-surface))}}.app-shell .task-board-group.amber{background:var(--pastel-yellow)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-board-group.amber{background:color-mix(in srgb,var(--pastel-yellow) 38%,var(--color-surface))}}.app-shell .task-board-group.custom{background:var(--custom-list-color)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-board-group.custom{background:color-mix(in srgb,var(--custom-list-color) 10%,var(--color-surface))}}.app-shell .reference-meals .meal-day-card:nth-child(3n+1){background:var(--pastel-yellow)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-meals .meal-day-card:nth-child(3n+1){background:color-mix(in srgb,var(--pastel-yellow) 34%,var(--color-surface))!important}}.app-shell .reference-meals .meal-day-card:nth-child(3n+2){background:var(--pastel-lilac)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-meals .meal-day-card:nth-child(3n+2){background:color-mix(in srgb,var(--pastel-lilac) 34%,var(--color-surface))!important}}.app-shell .reference-meals .meal-day-card:nth-child(3n){background:var(--pastel-mint)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-meals .meal-day-card:nth-child(3n){background:color-mix(in srgb,var(--pastel-mint) 34%,var(--color-surface))!important}}.app-shell .reference-groceries section:nth-of-type(3n+1) .kinship-card{background:var(--pastel-mint)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-groceries section:nth-of-type(3n+1) .kinship-card{background:color-mix(in srgb,var(--pastel-mint) 25%,var(--color-surface))!important}}.app-shell .reference-groceries section:nth-of-type(3n+2) .kinship-card{background:var(--pastel-blue)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-groceries section:nth-of-type(3n+2) .kinship-card{background:color-mix(in srgb,var(--pastel-blue) 25%,var(--color-surface))!important}}.app-shell .reference-groceries section:nth-of-type(3n) .kinship-card{background:var(--pastel-yellow)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-groceries section:nth-of-type(3n) .kinship-card{background:color-mix(in srgb,var(--pastel-yellow) 25%,var(--color-surface))!important}}.app-shell .reference-settings section:nth-of-type(3n+1)>.kinship-card{background:var(--pastel-lilac)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-settings section:nth-of-type(3n+1)>.kinship-card{background:color-mix(in srgb,var(--pastel-lilac) 22%,var(--color-surface))!important}}.app-shell .reference-settings section:nth-of-type(3n+2)>.kinship-card{background:var(--pastel-blue)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-settings section:nth-of-type(3n+2)>.kinship-card{background:color-mix(in srgb,var(--pastel-blue) 22%,var(--color-surface))!important}}.app-shell .reference-settings section:nth-of-type(3n)>.kinship-card{background:var(--pastel-mint)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-settings section:nth-of-type(3n)>.kinship-card{background:color-mix(in srgb,var(--pastel-mint) 22%,var(--color-surface))!important}.app-shell .reference-chat{background:linear-gradient(180deg,color-mix(in srgb,var(--pastel-lilac) 20%,var(--color-canvas)),var(--color-canvas) 38%)}}.app-shell .reference-chat .chat-message-bubble.theirs{background:var(--pastel-blue)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-chat .chat-message-bubble.theirs{background:color-mix(in srgb,var(--pastel-blue) 30%,var(--color-surface))!important}}.app-shell .reference-chat form{background:var(--pastel-lilac)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-chat form{background:color-mix(in srgb,var(--pastel-lilac) 14%,var(--color-surface))!important}}.today-progress-track,.finance-budget-track,.weekly-progress>div,.cook-progress-track,.onboarding-progress-track{box-shadow:inset 0 0 0 1px #1118270a}@supports (color:color-mix(in lab, red, red)){.today-progress-track,.finance-budget-track,.weekly-progress>div,.cook-progress-track,.onboarding-progress-track{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-border) 64%,transparent)}}.today-progress-fill{background:linear-gradient(90deg,var(--progress-color),var(--progress-color))}@supports (color:color-mix(in lab, red, red)){.today-progress-fill{background:linear-gradient(90deg,var(--progress-color),color-mix(in srgb,var(--progress-color) 58%,var(--color-fam-rose)))}}.today-progress-fill{box-shadow:0 0 12px var(--progress-color)}@supports (color:color-mix(in lab, red, red)){.today-progress-fill{box-shadow:0 0 12px color-mix(in srgb,var(--progress-color) 24%,transparent)}}.finance-budget-fill{background:linear-gradient(90deg,var(--budget-color),var(--budget-color))}@supports (color:color-mix(in lab, red, red)){.finance-budget-fill{background:linear-gradient(90deg,var(--budget-color),color-mix(in srgb,var(--budget-color) 58%,var(--color-fam-marigold)))}}.finance-budget-fill{box-shadow:0 0 12px var(--budget-color)}@supports (color:color-mix(in lab, red, red)){.finance-budget-fill{box-shadow:0 0 12px color-mix(in srgb,var(--budget-color) 22%,transparent)}}.weekly-progress{background:linear-gradient(135deg,var(--color-accent-strong),var(--color-fam-plum) 58%,var(--color-fam-rose))}.weekly-progress>div span{background:linear-gradient(90deg,var(--pastel-blue),var(--pastel-mint),var(--pastel-yellow));box-shadow:0 0 14px var(--pastel-mint)}@supports (color:color-mix(in lab, red, red)){.weekly-progress>div span{box-shadow:0 0 14px color-mix(in srgb,var(--pastel-mint) 42%,transparent)}}.cook-progress-track i{background:linear-gradient(90deg,var(--color-fam-coral),var(--color-fam-marigold),var(--color-fam-rose))!important}.onboarding-progress-track i{background:linear-gradient(90deg,var(--color-accent),var(--color-fam-sky),var(--color-fam-rose))}.calendar-event:nth-child(4n+1){background:var(--pastel-lilac)}@supports (color:color-mix(in lab, red, red)){.calendar-event:nth-child(4n+1){background:color-mix(in srgb,var(--pastel-lilac) 18%,var(--color-surface))}}.calendar-event:nth-child(4n+2){background:var(--pastel-blue)}@supports (color:color-mix(in lab, red, red)){.calendar-event:nth-child(4n+2){background:color-mix(in srgb,var(--pastel-blue) 18%,var(--color-surface))}}.calendar-event:nth-child(4n+3){background:var(--pastel-mint)}@supports (color:color-mix(in lab, red, red)){.calendar-event:nth-child(4n+3){background:color-mix(in srgb,var(--pastel-mint) 18%,var(--color-surface))}}.calendar-event:nth-child(4n){background:var(--pastel-pink)}@supports (color:color-mix(in lab, red, red)){.calendar-event:nth-child(4n){background:color-mix(in srgb,var(--pastel-pink) 16%,var(--color-surface))}}.reference-finance .kinship-card:nth-of-type(4n+1){border-color:var(--color-fam-plum)}@supports (color:color-mix(in lab, red, red)){.reference-finance .kinship-card:nth-of-type(4n+1){border-color:color-mix(in srgb,var(--color-fam-plum) 20%,var(--color-border))}}.reference-finance .kinship-card:nth-of-type(4n+2){border-color:var(--color-fam-sky)}@supports (color:color-mix(in lab, red, red)){.reference-finance .kinship-card:nth-of-type(4n+2){border-color:color-mix(in srgb,var(--color-fam-sky) 20%,var(--color-border))}}.reference-finance .kinship-card:nth-of-type(4n+3){border-color:var(--color-fam-moss)}@supports (color:color-mix(in lab, red, red)){.reference-finance .kinship-card:nth-of-type(4n+3){border-color:color-mix(in srgb,var(--color-fam-moss) 20%,var(--color-border))}}.reference-finance .kinship-card:nth-of-type(4n){border-color:var(--color-fam-coral)}@supports (color:color-mix(in lab, red, red)){.reference-finance .kinship-card:nth-of-type(4n){border-color:color-mix(in srgb,var(--color-fam-coral) 20%,var(--color-border))}}.grocery-list-row{transition:background-color .18s,opacity .18s,transform .22s cubic-bezier(.22,1,.36,1)}.grocery-list-row.is-checked{background:var(--pastel-mint)}@supports (color:color-mix(in lab, red, red)){.grocery-list-row.is-checked{background:color-mix(in srgb,var(--pastel-mint) 32%,transparent)}}.grocery-list-row.is-checked{opacity:.78}.shopping-complete-celebration{z-index:180;left:50%;top:max(76px,calc(env(safe-area-inset-top) + 58px));border:1px solid #15954661;align-items:center;gap:11px;min-width:min(340px,100vw - 32px);padding:12px 16px 12px 12px;display:flex;position:fixed}@supports (color:color-mix(in lab, red, red)){.shopping-complete-celebration{border:1px solid color-mix(in srgb,var(--color-good) 34%,var(--color-border))}}.shopping-complete-celebration{border-radius:var(--radius-card);background:#fff}@supports (color:color-mix(in lab, red, red)){.shopping-complete-celebration{background:color-mix(in srgb,var(--color-surface) 92%,var(--pastel-mint))}}.shopping-complete-celebration{color:var(--color-ink);animation:.46s cubic-bezier(.22,1,.36,1) both shoppingCompleteIn;overflow:visible;transform:translate(-50%);box-shadow:0 18px 42px #13202c2e}.shopping-complete-celebration>span:last-child{line-height:1.15;display:grid}.shopping-complete-celebration strong{font-size:13px;font-weight:750}.shopping-complete-celebration small{color:var(--color-ink-soft);margin-top:3px;font-size:11px}.shopping-complete-icon{z-index:1;border-radius:var(--radius-control);background:linear-gradient(135deg,var(--color-good),var(--color-fam-sky));color:#fff;flex:none;place-items:center;width:40px;height:40px;display:grid;position:relative;box-shadow:0 6px 14px #16a34a42}@supports (color:color-mix(in lab, red, red)){.shopping-complete-icon{box-shadow:0 6px 14px color-mix(in srgb,var(--color-good) 26%,transparent)}}.shopping-complete-icon{animation:.52s cubic-bezier(.22,1.45,.36,1) .1s both shoppingCheckPop}.shopping-complete-particles{pointer-events:none;width:1px;height:1px;position:absolute;top:31px;left:31px}.shopping-complete-particles i{--particle:#7c3aed;background:var(--particle);transform-origin:0 0;border-radius:99px;width:6px;height:3px;animation:.7s cubic-bezier(.22,1,.36,1) both shoppingParticle;position:absolute}.shopping-complete-particles i:first-child{--angle:0deg;--particle:var(--color-fam-coral)}.shopping-complete-particles i:nth-child(2){--angle:45deg;--particle:var(--color-fam-marigold)}.shopping-complete-particles i:nth-child(3){--angle:90deg;--particle:var(--color-fam-moss)}.shopping-complete-particles i:nth-child(4){--angle:135deg;--particle:var(--color-fam-sky)}.shopping-complete-particles i:nth-child(5){--angle:180deg;--particle:var(--color-fam-plum)}.shopping-complete-particles i:nth-child(6){--angle:225deg;--particle:var(--color-fam-rose)}.shopping-complete-particles i:nth-child(7){--angle:270deg;--particle:var(--color-fam-marigold)}.shopping-complete-particles i:nth-child(8){--angle:315deg;--particle:var(--color-fam-sky)}@keyframes shoppingCompleteIn{0%{opacity:0;transform:translate(-50%,-14px)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes shoppingCheckPop{0%{opacity:0;transform:scale(.5)rotate(-16deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes shoppingParticle{0%{opacity:0;transform:rotate(var(--angle)) translateX(8px) scale(.4)}28%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translateX(34px) scale(1)}}.theme-dark .app-shell .reference-dashboard .today-metric-accent,.theme-dark .app-shell .reference-dashboard .today-flow-card{background:var(--color-fam-plum)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .reference-dashboard .today-metric-accent,.theme-dark .app-shell .reference-dashboard .today-flow-card{background:color-mix(in srgb,var(--color-fam-plum) 15%,var(--color-surface))!important}}.theme-dark .app-shell .reference-dashboard .today-metric-rose,.theme-dark .app-shell .reference-dashboard .today-tasks-card{background:var(--color-fam-rose)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .reference-dashboard .today-metric-rose,.theme-dark .app-shell .reference-dashboard .today-tasks-card{background:color-mix(in srgb,var(--color-fam-rose) 12%,var(--color-surface))!important}}.theme-dark .app-shell .reference-dashboard .today-metric-warn,.theme-dark .app-shell .reference-dashboard .today-command-card,.theme-dark .app-shell .reference-dashboard .today-pulse-card{background:var(--color-fam-marigold)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .reference-dashboard .today-metric-warn,.theme-dark .app-shell .reference-dashboard .today-command-card,.theme-dark .app-shell .reference-dashboard .today-pulse-card{background:color-mix(in srgb,var(--color-fam-marigold) 11%,var(--color-surface))!important}}.theme-dark .app-shell .reference-dashboard .today-metric-good,.theme-dark .app-shell .reference-dashboard .today-groceries-card{background:var(--color-fam-moss)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .reference-dashboard .today-metric-good,.theme-dark .app-shell .reference-dashboard .today-groceries-card{background:color-mix(in srgb,var(--color-fam-moss) 13%,var(--color-surface))!important}}.theme-dark .app-shell .reference-dashboard .today-meals-card{background:var(--color-fam-coral)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .reference-dashboard .today-meals-card{background:color-mix(in srgb,var(--color-fam-coral) 12%,var(--color-surface))!important}}.theme-dark .app-shell .reference-dashboard .today-load-card{background:var(--color-fam-sky)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .reference-dashboard .today-load-card{background:color-mix(in srgb,var(--color-fam-sky) 12%,var(--color-surface))!important}}.theme-dark .app-shell .task-board-group.violet,.theme-dark .app-shell .reference-meals .meal-day-card:nth-child(3n+2){background:var(--color-fam-plum)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .task-board-group.violet,.theme-dark .app-shell .reference-meals .meal-day-card:nth-child(3n+2){background:color-mix(in srgb,var(--color-fam-plum) 13%,var(--color-surface))!important}}.theme-dark .app-shell .task-board-group.green,.theme-dark .app-shell .reference-meals .meal-day-card:nth-child(3n){background:var(--color-fam-moss)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .task-board-group.green,.theme-dark .app-shell .reference-meals .meal-day-card:nth-child(3n){background:color-mix(in srgb,var(--color-fam-moss) 12%,var(--color-surface))!important}}.theme-dark .app-shell .task-board-group.slate{background:var(--color-fam-sky)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .task-board-group.slate{background:color-mix(in srgb,var(--color-fam-sky) 12%,var(--color-surface))!important}}.theme-dark .app-shell .task-board-group.rose{background:var(--color-fam-rose)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .task-board-group.rose{background:color-mix(in srgb,var(--color-fam-rose) 12%,var(--color-surface))!important}}.theme-dark .app-shell .task-board-group.amber,.theme-dark .app-shell .reference-meals .meal-day-card:nth-child(3n+1){background:var(--color-fam-marigold)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .task-board-group.amber,.theme-dark .app-shell .reference-meals .meal-day-card:nth-child(3n+1){background:color-mix(in srgb,var(--color-fam-marigold) 11%,var(--color-surface))!important}}.theme-dark .calendar-event:nth-child(4n+1){background:var(--color-fam-plum)}@supports (color:color-mix(in lab, red, red)){.theme-dark .calendar-event:nth-child(4n+1){background:color-mix(in srgb,var(--color-fam-plum) 10%,var(--color-surface))}}.theme-dark .calendar-event:nth-child(4n+2){background:var(--color-fam-sky)}@supports (color:color-mix(in lab, red, red)){.theme-dark .calendar-event:nth-child(4n+2){background:color-mix(in srgb,var(--color-fam-sky) 10%,var(--color-surface))}}.theme-dark .calendar-event:nth-child(4n+3){background:var(--color-fam-moss)}@supports (color:color-mix(in lab, red, red)){.theme-dark .calendar-event:nth-child(4n+3){background:color-mix(in srgb,var(--color-fam-moss) 10%,var(--color-surface))}}.theme-dark .calendar-event:nth-child(4n){background:var(--color-fam-rose)}@supports (color:color-mix(in lab, red, red)){.theme-dark .calendar-event:nth-child(4n){background:color-mix(in srgb,var(--color-fam-rose) 9%,var(--color-surface))}}.theme-dark .grocery-list-row.is-checked{background:#16a34a1a}@supports (color:color-mix(in lab, red, red)){.theme-dark .grocery-list-row.is-checked{background:color-mix(in srgb,var(--color-good) 10%,transparent)}}.theme-dark .grocery-list-row.is-checked{opacity:.9}.theme-dark .shopping-complete-celebration{background:#fff}@supports (color:color-mix(in lab, red, red)){.theme-dark .shopping-complete-celebration{background:color-mix(in srgb,var(--color-surface) 92%,var(--color-fam-moss))}}.theme-dark .shopping-complete-celebration{box-shadow:0 18px 48px #0000006b}@media (max-width:540px){.shopping-complete-celebration{top:max(68px,calc(env(safe-area-inset-top) + 52px));min-width:calc(100vw - 24px)}}@media (prefers-reduced-motion:reduce){.shopping-complete-celebration,.shopping-complete-icon,.shopping-complete-particles i{animation:none}.grocery-list-row{transition:none}}.additional-google-help{border:1px solid #158d4549;gap:9px;margin:0 0 12px;padding:12px;display:grid}@supports (color:color-mix(in lab, red, red)){.additional-google-help{border:1px solid color-mix(in srgb,var(--color-good) 24%,var(--color-border))}}.additional-google-help{border-radius:var(--radius-control);background:#f6fef8}@supports (color:color-mix(in lab, red, red)){.additional-google-help{background:color-mix(in srgb,var(--color-good-soft) 60%,var(--color-surface))}}.additional-google-help>div{align-items:flex-start;gap:9px;display:flex}.additional-google-help svg{color:var(--color-good);flex:none;margin-top:1px}.additional-google-help strong,.additional-google-help span{display:block}.additional-google-help strong{color:var(--color-ink);font-size:12.5px}.additional-google-help span,.additional-google-help>p{color:var(--color-ink-soft);margin-top:3px;font-size:11px;line-height:1.45}.theme-dark .additional-google-help{background:#eaf7ef}@supports (color:color-mix(in lab, red, red)){.theme-dark .additional-google-help{background:color-mix(in srgb,var(--color-good) 9%,var(--color-surface))}}.fam-ai-page{background:#fafafa;flex-direction:column;height:100%;min-height:0;display:flex}.fam-ai-workspace{background:var(--color-surface);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.fam-ai-header-inner{text-align:left;max-width:none;padding:13px 52px 11px}.fam-ai-brand{justify-content:flex-start}.fam-ai-header-tagline{margin:3px 0 0 35px;font-size:10.5px}.fam-ai-welcome{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:max(52px,min(12vh,110px)) 20px 8px;display:flex}.fam-ai-welcome h2{letter-spacing:-.04em;color:var(--color-ink);font-size:max(24px,min(4vw,34px));font-weight:650}.fam-ai-welcome p{max-width:440px;color:var(--color-ink-soft);margin:0;font-size:13px;line-height:1.5}.fam-ai-workspace.is-welcome .fam-ai-chat{display:none}.fam-ai-workspace.is-welcome .fam-ai-suggestions{padding:0 20px max(18px,env(safe-area-inset-bottom));order:5}.fam-ai-workspace.is-welcome .fam-ai-composer{background:0 0;border-top:0;order:4;padding:14px 20px 10px;position:relative}.fam-ai-workspace.is-welcome .fam-ai-composer-foot,.fam-ai-suggestions-label{display:none}.fam-ai-suggestion-grid{flex-wrap:wrap;justify-content:center;gap:8px;max-width:640px;display:flex}.fam-ai-suggestion{border-radius:var(--radius-tag);background:var(--color-surface);border-width:1px;width:auto;min-height:34px;padding:7px 14px;font-size:12px;font-weight:600}.fam-ai-suggestion:hover{box-shadow:none;transform:none}.fam-ai-suggestion-icon{border-radius:var(--radius-tag);width:20px;height:20px}.fam-ai-suggestion-icon svg{width:12px;height:12px}.fam-ai-composer{background:var(--color-surface);padding-top:12px}.fam-ai-composer-inner{border-radius:var(--radius-section);background:var(--color-surface);border-width:1.5px;flex-direction:column;align-items:stretch;max-width:640px;min-height:52px;padding:12px 12px 8px 16px;display:flex;position:relative;box-shadow:0 8px 30px #1f293714}.fam-ai-composer-tools{align-items:center;gap:6px;margin-top:4px;display:flex}.fam-ai-composer-tool{border-radius:var(--radius-tag);background:var(--color-surface-sunken);color:var(--color-ink-soft);white-space:nowrap;flex:none;align-items:center;gap:4px;padding:4px 9px;font-size:10.5px;font-weight:650;display:inline-flex}.fam-ai-composer-tool svg{color:var(--color-ink-faint)}.fam-ai-composer-model{background:0 0}.fam-ai-composer-context{border-radius:var(--radius-tag);background:var(--color-accent-soft);color:var(--color-accent-strong);white-space:nowrap;flex:none;align-items:center;gap:4px;padding:4px 8px;font-size:9.5px;font-weight:700;display:inline-flex}.fam-ai-composer-spacer{flex:1}.fam-ai-composer-send{flex:none;width:34px;height:34px;border-radius:50%!important}.fam-ai-chat{padding-top:24px}.fam-ai-msg-row{max-width:680px}.fam-ai-msg-body{flex:0 auto;max-width:85%}.fam-ai-msg.user .fam-ai-msg-body{justify-content:flex-end;display:flex}.fam-ai-msg:not(.user) .fam-ai-msg-body p{background:0 0;padding-top:5px}.fam-ai-msg.user .fam-ai-msg-body p{background:var(--color-accent-soft);border:1px solid #2050ba33}@supports (color:color-mix(in lab, red, red)){.fam-ai-msg.user .fam-ai-msg-body p{border:1px solid color-mix(in srgb,var(--color-accent) 15%,var(--color-border))}}.fam-ai-review{width:min(620px,100% - 40px);margin-left:auto;margin-right:auto}.theme-dark .fam-ai-workspace,.theme-dark .fam-ai-composer{background:#fff!important}.theme-dark .fam-ai-composer-inner{box-shadow:0 12px 32px #00000040;background:var(--color-surface-sunken)!important}.theme-dark .fam-ai-msg:not(.user) .fam-ai-msg-body p{background:0 0!important}@media (min-width:720px){.app-shell .fam-ai-sheet{width:auto;height:auto;max-height:88vh;animation:.32s cubic-bezier(.34,1.56,.64,1) fam-ai-sheet-in-contained;top:6vh;bottom:6vh;left:max(16px,50vw - 520px);right:max(16px,50vw - 520px);transform:none}@keyframes fam-ai-sheet-in-contained{0%{opacity:0;transform:translateY(5vh)}to{opacity:1;transform:translateY(0)}}}@media (max-width:719px){.fam-ai-header-inner{padding-left:16px}.fam-ai-header-tagline{margin-left:35px}.fam-ai-welcome{padding-top:max(44px,min(10vh,76px))}.fam-ai-composer-tool{display:none}.fam-ai-composer-tools{gap:0}.fam-ai-workspace.is-welcome .fam-ai-suggestion-grid{display:flex}.fam-ai-workspace.is-welcome .fam-ai-suggestion{width:auto}}.app-shell svg.lucide{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.app-shell :where(button,a,[role=button])>svg.lucide{flex:none}.app-shell :where(.nav-icon,.fam-ai-brand-icon,.today-metric-card,.page-reset-button,.primary-action-button,.secondary-action-button) svg.lucide{stroke-width:1.8px}.app-shell .nav-item.is-active svg.lucide{stroke-width:2px}.app-shell :where(.primary-action-button,.fam-ai-composer-inner button,.fam-ai-review-approve) svg.lucide{stroke-width:2px}.app-shell :where(button,a,[role=button]):focus-visible svg.lucide{filter:drop-shadow(0 0 3px #2563eb47)}@supports (color:color-mix(in lab, red, red)){.app-shell :where(button,a,[role=button]):focus-visible svg.lucide{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--color-accent) 28%,transparent))}}.theme-dark .app-shell svg.lucide{filter:none}@media (prefers-reduced-motion:no-preference){.app-shell :where(button,a,[role=button])>svg.lucide{transition:transform .16s cubic-bezier(.22,1,.36,1),color .16s}.app-shell :where(button,a,[role=button]):active>svg.lucide{transform:scale(.92)}}.app-shell .app-content{background:#fafafa}.app-shell .weekly-progress{background:var(--pastel-lilac)}@supports (color:color-mix(in lab, red, red)){.app-shell .weekly-progress{background:color-mix(in srgb,var(--pastel-lilac) 72%,var(--color-surface))}}.app-shell .weekly-progress{border:1px solid #2153c23a}@supports (color:color-mix(in lab, red, red)){.app-shell .weekly-progress{border:1px solid color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.app-shell .weekly-progress{color:var(--color-ink)}.app-shell .weekly-progress p,.app-shell .weekly-progress small,.app-shell .weekly-progress b{color:var(--color-ink-soft)}.app-shell .weekly-progress>div{background:#e9effd}@supports (color:color-mix(in lab, red, red)){.app-shell .weekly-progress>div{background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface))}}.app-shell .weekly-progress>div span{background:var(--color-accent);box-shadow:none}.app-shell .today-progress-fill{background:var(--progress-color);box-shadow:none}.app-shell .finance-budget-fill{background:var(--budget-color);box-shadow:none}.app-shell .cook-progress-track i{background:var(--color-fam-coral)!important}.app-shell .onboarding-progress-track i{background:var(--color-accent)}.app-shell .shopping-complete-icon{background:var(--color-good);box-shadow:none}.app-shell .fam-ai-welcome>span{background:var(--color-accent);box-shadow:none}.app-shell .fam-ai-composer{background:var(--color-surface)}.app-shell .fam-ai-fab{background:var(--color-accent)}.app-shell .topbar-fam-ai:before{background:var(--color-accent-soft)}.app-shell .reference-chat{background:#fafafa}.app-shell .broadcast-compose{background:var(--pastel-lilac)}@supports (color:color-mix(in lab, red, red)){.app-shell .broadcast-compose{background:color-mix(in srgb,var(--pastel-lilac) 34%,var(--color-surface))}}.app-shell .broadcast-compose{background-size:auto;animation:none}.app-shell .broadcast-banner-accent{background:var(--color-accent)}.app-shell .event-discovery-intro{background:var(--pastel-mint)}@supports (color:color-mix(in lab, red, red)){.app-shell .event-discovery-intro{background:color-mix(in srgb,var(--pastel-mint) 42%,var(--color-surface))}}.app-shell .event-carousel-media{background:var(--pastel-lilac)}.app-shell .recipe-detail-card{background:var(--pastel-yellow)}@supports (color:color-mix(in lab, red, red)){.app-shell .recipe-detail-card{background:color-mix(in srgb,var(--pastel-yellow) 28%,var(--color-surface))}}.app-shell .weather-now-card{background:var(--pastel-blue)}@supports (color:color-mix(in lab, red, red)){.app-shell .weather-now-card{background:color-mix(in srgb,var(--pastel-blue) 52%,var(--color-surface))}}.app-shell .avatar-preset-grid button{background:var(--color-surface)}.theme-dark .app-shell .app-content{background:var(--color-canvas)!important}.theme-dark .app-shell .weekly-progress{background:var(--color-fam-plum)}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .weekly-progress{background:color-mix(in srgb,var(--color-fam-plum) 13%,var(--color-surface))}}.theme-dark .app-shell .weekly-progress{border-color:#2259d152}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .weekly-progress{border-color:color-mix(in srgb,var(--color-accent) 28%,var(--color-border))}}.theme-dark .app-shell .weekly-progress{color:var(--color-ink)}.theme-dark .app-shell .weekly-progress p,.theme-dark .app-shell .weekly-progress small,.theme-dark .app-shell .weekly-progress b{color:var(--color-ink-soft)}.theme-dark .app-shell .weather-now-card{background:var(--color-fam-sky)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .weather-now-card{background:color-mix(in srgb,var(--color-fam-sky) 10%,var(--color-surface))!important}}.theme-dark .app-shell .focus-shopping-overlay,.theme-dark .app-shell .cook-focus-screen{background:var(--color-canvas)}.app-shell{font-family:Inter,var(--font-sans);color:var(--color-ink);background:#fafafa;font-size:14px}.app-shell .app-topbar{background:#fffffff5;min-height:64px}@supports (color:color-mix(in lab, red, red)){.app-shell .app-topbar{background:color-mix(in srgb,var(--color-surface) 96%,transparent)}}.app-shell .app-topbar{border-bottom:1px solid var(--color-border);box-shadow:0 1px 2px #1018280a}.app-shell .topbar-wordmark strong{color:var(--color-ink);font-weight:600}.app-shell .page-header{border-bottom:1px solid var(--color-border);padding-top:20px;padding-bottom:18px}.app-shell .page-title{letter-spacing:-.02em;color:var(--color-ink);font-size:24px;font-weight:600;line-height:32px}.app-shell .page-subtitle{color:var(--color-ink-faint);margin-top:4px;font-size:13px;line-height:20px}.app-shell .ui-section-title,.app-shell section>h2{color:var(--color-ink);letter-spacing:-.01em;font-weight:600}.app-shell .kinship-card,.app-shell .kinship-card.m3-card{border-radius:var(--radius-card)!important;background:var(--color-surface)!important;border:1px solid #0000!important;box-shadow:0 1px 2px #1018280a!important}.app-shell .kinship-card:hover,.app-shell .kinship-card.m3-card:hover{border-color:#0000!important;box-shadow:0 1px 3px #10182814,0 1px 2px #1018280f!important}.app-shell .m3-button{letter-spacing:0;border-radius:8px;min-height:40px;padding:0 14px;font-size:13px;font-weight:600;box-shadow:0 1px 2px #1018280d}.app-shell .m3-button-filled{background:var(--color-accent);border:1px solid var(--color-accent);color:#fff}.app-shell .m3-button-filled:hover:not(:disabled){background:var(--color-accent-strong);border-color:var(--color-accent-strong);box-shadow:0 1px 2px #1018280d}.app-shell .m3-button-outlined{background:var(--color-surface);border:1px solid var(--color-border-strong);color:var(--color-ink-soft)}.app-shell .m3-button-outlined:hover:not(:disabled){background:var(--color-surface-sunken);color:var(--color-ink)}.app-shell .form-field{margin-bottom:16px}.app-shell .form-label{color:var(--color-ink-soft);margin-bottom:6px;font-size:13px;font-weight:500}.app-shell .form-control{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:40px;color:var(--color-ink);border-radius:8px;padding:9px 12px;font-size:14px;font-weight:400;box-shadow:0 1px 2px #1018280d}.app-shell :where(select,textarea){border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:40px;color:var(--color-ink);border-radius:8px;padding:9px 12px;font-size:14px;font-weight:400;box-shadow:0 1px 2px #1018280d}.app-shell .form-control::placeholder{color:var(--color-ink-faint)}.app-shell :where(textarea)::placeholder{color:var(--color-ink-faint)}.app-shell .form-control:focus{border-color:var(--color-accent);outline:0;box-shadow:0 0 0 4px #2563eb24,0 1px 2px #1018280d}.app-shell .form-control:focus-visible{border-color:var(--color-accent);outline:0;box-shadow:0 0 0 4px #2563eb24,0 1px 2px #1018280d}.app-shell :where(select,textarea):focus-visible{border-color:var(--color-accent);outline:0;box-shadow:0 0 0 4px #2563eb24,0 1px 2px #1018280d}@supports (color:color-mix(in lab, red, red)){.app-shell .form-control:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-accent) 14%,transparent),0 1px 2px #1018280d}.app-shell .form-control:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-accent) 14%,transparent),0 1px 2px #1018280d}.app-shell :where(select,textarea):focus-visible{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-accent) 14%,transparent),0 1px 2px #1018280d}}.app-shell .m3-chip{border:1px solid;min-height:24px;padding:2px 8px}@supports (color:color-mix(in lab, red, red)){.app-shell .m3-chip{border:1px solid color-mix(in srgb,currentColor 14%,transparent)}}.app-shell .m3-chip{border-radius:999px;font-size:11px;font-weight:500}.app-shell .m3-checkbox:before{border-width:1.5px;border-color:var(--color-border-strong);background:var(--color-surface);border-radius:6px;width:20px;height:20px}.app-shell .m3-checkbox[aria-pressed=true]:before{border-color:var(--checkbox-color,var(--color-accent));background:var(--checkbox-color,var(--color-accent))}.app-shell .modal-card.m3-dialog{background:var(--color-surface);box-shadow:0 24px 48px -12px #10182838;border:1px solid var(--color-border)!important;border-radius:var(--radius-card)!important}.app-shell .modal-card.m3-dialog h3{color:var(--color-ink);font-size:16px;font-weight:600}.app-shell.modal-close-button{width:36px;height:36px;box-shadow:none;color:var(--color-ink-faint);background:0 0;border-radius:8px}.share-sheet-preview{border-radius:var(--radius-card);border:1px solid var(--color-border);margin-bottom:12px;overflow:hidden}.share-sheet-preview img{object-fit:cover;width:100%;height:130px;display:block}.share-sheet-copy{gap:4px;margin-bottom:16px;display:grid}.share-sheet-copy strong{color:var(--color-ink);font-size:15px;font-weight:650}.share-sheet-copy p{color:var(--color-ink-soft);white-space:pre-line;margin:0;font-size:12.5px;line-height:1.5}.share-sheet-copy span{color:var(--color-ink-faint);overflow-wrap:anywhere;font-size:11px}.share-sheet-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.share-sheet-action{border:1px solid var(--color-border);background:var(--color-surface);min-height:46px;color:var(--color-ink);cursor:pointer;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out);border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:650;text-decoration:none;display:flex}.share-sheet-action svg{width:17px;height:17px;color:var(--color-accent)}.share-sheet-action:hover{background:var(--color-surface-sunken);border-color:var(--color-border-strong)}.share-sheet-action:active{transform:scale(.985)}.share-sheet-action:focus-visible{outline:3px solid #2563eb3d}@supports (color:color-mix(in lab, red, red)){.share-sheet-action:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent) 24%,transparent)}}.share-sheet-action:focus-visible{outline-offset:2px}@media (max-width:360px){.share-sheet-actions{grid-template-columns:1fr}.share-sheet-action{min-height:42px}}.app-shell .modal-close-button:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.app-shell .primary-nav{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 1px 2px #1018280a}.app-shell .nav-item{color:var(--color-ink-soft);border-radius:6px;font-weight:500}.app-shell .nav-item .nav-icon{border-radius:6px}.app-shell .nav-item.is-active{background:var(--color-accent-soft);color:var(--color-accent-strong)}.app-shell .nav-item:hover{background:var(--color-surface-sunken)}.app-shell .notification-feed{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 12px 24px -8px #1018282e}.app-shell .task-board-group{border-radius:var(--radius-card)}.app-shell .task-board-row{border-radius:8px;box-shadow:0 1px 2px #1018280a}.app-shell .calendar-event{border:1px solid #0000;border-radius:10px;box-shadow:0 1px 2px #10182808}.app-shell .fam-ai-sheet{border-radius:var(--radius-card);box-shadow:0 24px 48px -12px #1018283d}.app-shell .fam-ai-composer-inner{border-radius:10px;box-shadow:0 1px 2px #1018280d}.theme-dark .app-shell .kinship-card,.theme-dark .app-shell .kinship-card.m3-card{box-shadow:none!important}.theme-dark .app-shell .m3-button,.theme-dark .app-shell .form-control{box-shadow:none}.theme-dark .app-shell :where(select,textarea){box-shadow:none}@media (max-width:639px){.app-shell .modal-card.m3-dialog{border-radius:var(--radius-card) var(--radius-card) 0 0!important}.app-shell .page-title{font-size:24px;line-height:30px}}.marketing-nav.is-scrolled{border-color:var(--landing-border);box-shadow:var(--landing-shadow-xs);background:#ffffffe0}.marketing-nav-links>a,.marketing-nav-links>div{border-radius:var(--radius-tag);font-weight:600}.marketing-nav-signin,.marketing-nav-join{border-radius:var(--landing-control-radius);min-height:40px;box-shadow:var(--landing-shadow-xs);font-weight:650}.marketing-nav-join:hover{box-shadow:var(--landing-shadow-sm)}.marketing-nav-menu{border-radius:var(--landing-control-radius)}.personal-onboarding-note{border:1px solid #2153c23a;align-items:flex-start;gap:10px;margin:0 0 18px;padding:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.personal-onboarding-note{border:1px solid color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.personal-onboarding-note{background:#f6faff;border-radius:10px}@supports (color:color-mix(in lab, red, red)){.personal-onboarding-note{background:color-mix(in srgb,var(--color-accent-soft) 56%,var(--color-surface))}}.personal-onboarding-note{color:var(--color-accent-strong)}.personal-onboarding-note>svg{flex:none;margin-top:1px}.personal-onboarding-note p{gap:2px;display:grid}.personal-onboarding-note strong{font-size:12.5px;font-weight:600}.personal-onboarding-note span{color:var(--color-ink-soft);font-size:11px;line-height:1.45}.personal-profile-fields{align-items:start}.personal-onboarding-helper{color:var(--color-ink-faint);margin-top:10px;font-size:11px;line-height:1.45;display:block}.personal-onboarding-skip{width:100%;color:var(--color-ink-faint);text-align:center;margin-top:12px;padding:8px;font-size:12px;font-weight:500;display:block}.personal-onboarding-skip:hover{color:var(--color-accent-strong)}.personal-onboarding-skip:disabled{opacity:.45}.theme-dark .personal-onboarding-note{background:#ebf1fd}@supports (color:color-mix(in lab, red, red)){.theme-dark .personal-onboarding-note{background:color-mix(in srgb,var(--color-accent) 9%,var(--color-surface))}}.task-list-create-error{border:1px solid #bc242649;margin:0 0 12px;padding:9px 11px}@supports (color:color-mix(in lab, red, red)){.task-list-create-error{border:1px solid color-mix(in srgb,var(--color-warn) 24%,var(--color-border))}}.task-list-create-error{background:var(--color-warn-soft);color:var(--color-warn);border-radius:8px;font-size:12px;line-height:1.4}.ui-progress{width:100%;min-width:0}.ui-progress-copy{color:var(--color-ink-soft);justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;font-size:12px;line-height:18px;display:flex}.ui-progress-copy strong{color:var(--color-ink);font-variant-numeric:tabular-nums;font-weight:600}.ui-progress-track{background:var(--color-border);height:8px;box-shadow:none;border-radius:999px;overflow:hidden}.ui-progress-sm .ui-progress-track{height:6px}.ui-progress-lg .ui-progress-track{height:10px}.ui-progress-value{border-radius:inherit;background:var(--progress-color,var(--color-accent));height:100%;transition:width .45s cubic-bezier(.2,.8,.2,1);display:block}@media (prefers-reduced-motion:reduce){.ui-progress-value{transition:none}}.ui-icon-button{color:var(--color-ink-soft);background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:inline-grid}.ui-icon-button-md{width:36px;height:36px}.ui-icon-button-sm{width:32px;height:32px}.ui-icon-button-lg{width:40px;height:40px}.ui-icon-button:hover:not(:disabled){background:var(--color-surface-sunken);color:var(--color-ink)}.ui-icon-button:active:not(:disabled){transform:scale(.96)}.ui-icon-button-accent{background:var(--color-accent-soft);color:var(--color-accent-strong)}.ui-icon-button-danger{color:var(--color-warn)}.ui-icon-button:focus-visible{outline:0;box-shadow:0 0 0 4px #2563eb24}@supports (color:color-mix(in lab, red, red)){.ui-icon-button:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-accent) 14%,transparent)}}.ui-alert{border:1px solid var(--alert-border);background:var(--alert-bg);color:var(--alert-color);border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-bottom:16px;padding:12px;font-size:12px;line-height:18px;display:grid}.ui-alert>svg{margin-top:1px}.ui-alert-body{min-width:0}.ui-alert-body>strong{color:var(--color-ink);margin-bottom:2px;font-weight:600;display:block}.ui-alert-actions{flex-wrap:wrap;grid-column:2;gap:8px;margin-top:2px;display:flex}.ui-alert-info{--alert-bg:var(--color-accent-soft);--alert-border:#2256c944}@supports (color:color-mix(in lab, red, red)){.ui-alert-info{--alert-border:color-mix(in srgb,var(--color-accent) 22%,var(--color-border))}}.ui-alert-info{--alert-color:var(--color-accent-strong)}.ui-alert-success{--alert-bg:var(--color-good-soft);--alert-border:#158b4444}@supports (color:color-mix(in lab, red, red)){.ui-alert-success{--alert-border:color-mix(in srgb,var(--color-good) 22%,var(--color-border))}}.ui-alert-success{--alert-color:var(--color-good)}.ui-alert-warning,.ui-alert-error{--alert-bg:var(--color-warn-soft);--alert-border:#bc242649}@supports (color:color-mix(in lab, red, red)){.ui-alert-warning,.ui-alert-error{--alert-border:color-mix(in srgb,var(--color-warn) 24%,var(--color-border))}}.ui-alert-warning,.ui-alert-error{--alert-color:var(--color-warn)}.ui-segmented{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface-sunken);grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.ui-segmented button{border-radius:var(--radius-tag);min-height:36px;color:var(--color-ink-soft);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:600;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s;display:flex}.ui-segmented button:hover{color:var(--color-ink)}.ui-segmented button.selected{border-color:var(--color-border);background:var(--color-surface);color:var(--color-accent-strong);box-shadow:0 1px 2px #1018280f}.ui-segmented button:focus-visible{outline:0;box-shadow:0 0 0 3px #2563eb24}@supports (color:color-mix(in lab, red, red)){.ui-segmented button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 14%,transparent)}}.theme-dark .ui-segmented button.selected{border-color:var(--color-border-strong);box-shadow:none}.app-shell .weekly-progress>.ui-progress{height:auto;box-shadow:none;background:0 0;border-radius:0;overflow:visible}.app-shell .weekly-progress>.ui-progress .ui-progress-track{background:#e9effd}@supports (color:color-mix(in lab, red, red)){.app-shell .weekly-progress>.ui-progress .ui-progress-track{background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface))}}.app-shell .weekly-progress>.ui-progress .ui-progress-value{background:var(--color-accent);box-shadow:none}.cook-progress-card>.ui-progress{margin-top:10px}.onboarding-progress>.ui-progress{margin-top:8px}.apple-calendar-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-surface);min-height:auto;padding:14px 20px 12px}.apple-calendar-toolbar .calendar-hero-date{grid-template-columns:auto 1fr;align-items:center;gap:1px 10px;display:grid}.apple-calendar-toolbar .calendar-hero-dayname{letter-spacing:-.02em;color:var(--color-ink);font-size:20px;font-weight:600;line-height:26px}.apple-calendar-toolbar .calendar-hero-month{color:var(--color-ink-faint);grid-column:2;font-size:11px}.apple-calendar-today{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:34px;color:var(--color-accent-strong);border-radius:8px;grid-row:1/3;padding:0 11px;font-size:12px;font-weight:600;box-shadow:0 1px 2px #1018280a}.apple-calendar-controls{grid-template-columns:auto minmax(220px,340px);justify-content:space-between;align-items:center;gap:12px;padding:12px 0 8px;display:grid}.apple-calendar-navigation{display:none}.apple-calendar-navigation button{width:36px;height:36px;color:var(--color-accent-strong);border-radius:8px;place-items:center;display:grid}.apple-calendar-navigation button:hover{background:var(--color-accent-soft)}.apple-month-nav{align-items:center;gap:2px;min-width:0;display:flex}.apple-month-nav .calendar-hero-dayname{text-overflow:ellipsis;white-space:nowrap;padding:0 2px;overflow:hidden}.apple-month-nav-btn{width:30px;height:30px;color:var(--color-accent-strong);transition:background var(--motion-fast) ease,color var(--motion-fast) ease;background:0 0;border-radius:50%;flex:none;place-items:center;display:grid}.apple-month-nav-btn:hover{background:var(--color-accent-soft)}.apple-month-nav-btn:active{transform:scale(.94)}.apple-date-strip{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(7,minmax(0,1fr));padding:4px 0 10px;display:grid}.apple-date-strip button{min-height:58px;color:var(--color-ink-soft);border-radius:8px;place-items:center;gap:2px;display:grid}.apple-date-strip small{text-transform:uppercase;font-size:10px;font-weight:600}.apple-date-strip strong{border-radius:50%;place-items:center;width:30px;height:30px;font-size:14px;font-weight:500;display:grid}.apple-date-strip i{height:5px;color:var(--color-accent);font-size:13px;font-style:normal;line-height:4px}.apple-date-strip button:hover{background:var(--color-surface-sunken)}.apple-date-strip button.selected strong{background:var(--color-accent);color:#fff;font-weight:600}.apple-date-strip button.today:not(.selected) strong{color:var(--color-accent-strong);font-weight:700}.apple-calendar-month{background:var(--color-surface);box-shadow:none;border:0;border-radius:0;margin-top:12px}.apple-calendar-month .calendar-month-header{display:none}.apple-calendar-month .calendar-month-grid button{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:0 0;border-radius:0}.apple-calendar-month .calendar-month-grid button:nth-child(7n){border-right:0}.apple-calendar-month .calendar-month-grid button.selected{background:#f0f4fe}@supports (color:color-mix(in lab, red, red)){.apple-calendar-month .calendar-month-grid button.selected{background:color-mix(in srgb,var(--color-accent) 7%,var(--color-surface))}}.apple-calendar-month .calendar-month-grid button.selected{box-shadow:inset 0 0 0 1px var(--color-accent)}.apple-calendar-month .calendar-month-grid button.selected b{background:var(--color-accent);color:#fff}.apple-timegrid-shell{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);margin-top:12px;overflow:hidden;box-shadow:0 1px 2px #1018280a}.apple-timegrid-head{grid-template-columns:54px repeat(var(--calendar-days,7),minmax(92px,1fr));border-bottom:1px solid var(--color-border);background:var(--color-surface);min-width:max-content;display:grid}.apple-timegrid-zone{color:var(--color-ink-faint);text-transform:uppercase;place-items:end center;padding-bottom:8px;font-size:8px;display:grid}.apple-timegrid-head button{border-left:1px solid var(--color-border);min-width:92px;color:var(--color-ink-soft);justify-content:center;align-items:center;gap:7px;padding:8px 4px;display:flex}.apple-timegrid-head button small{text-transform:uppercase;font-size:10px;font-weight:600}.apple-timegrid-head button strong{border-radius:50%;place-items:center;width:28px;height:28px;font-size:14px;font-weight:500;display:grid}.apple-timegrid-head button.selected{color:var(--color-ink)}.apple-timegrid-head button.today strong{background:var(--color-accent);color:#fff;font-weight:700}.apple-all-day-row{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:54px minmax(0,1fr);min-height:48px;display:grid}.apple-all-day-row>span{color:var(--color-ink-faint);border-right:1px solid var(--color-border);justify-content:flex-end;align-items:center;padding:8px;font-size:9px;display:flex}.apple-all-day-row>div{scrollbar-width:none;align-items:center;gap:4px;padding:6px;display:flex;overflow-x:auto}.apple-all-day-row button{border-left:3px solid var(--event-color);background:var(--event-color);border-radius:5px;flex:0 auto;min-width:0;max-width:280px;padding:6px 9px}@supports (color:color-mix(in lab, red, red)){.apple-all-day-row button{background:color-mix(in srgb,var(--event-color) 13%,var(--color-surface))}}.apple-all-day-row button{color:var(--event-color)}@supports (color:color-mix(in lab, red, red)){.apple-all-day-row button{color:color-mix(in srgb,var(--event-color) 70%,var(--color-ink))}}.apple-all-day-row button{text-align:left}.apple-all-day-row button strong{text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:700;display:block;overflow:hidden}.apple-timegrid-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;max-height:min(62vh,760px);overflow:auto}.apple-timegrid{min-width:calc(54px + var(--calendar-days,7) * 92px);grid-template-columns:54px 1fr;height:1020px;display:grid;position:relative}.apple-time-labels{border-right:1px solid var(--color-border);position:relative}.apple-time-labels span{color:var(--color-ink-faint);font-variant-numeric:tabular-nums;font-size:9px;position:absolute;right:8px;transform:translateY(-50%)}.apple-time-columns{grid-template-columns:repeat(var(--calendar-days,7),minmax(92px,1fr));display:grid}.apple-time-column{border-right:1px solid var(--color-border);position:relative}.apple-time-column:last-child{border-right:0}.apple-time-column.today{background:#fafbff}@supports (color:color-mix(in lab, red, red)){.apple-time-column.today{background:color-mix(in srgb,var(--color-accent) 2.5%,var(--color-surface))}}.apple-hour-line{background:var(--color-border);pointer-events:none;height:1px;position:absolute;left:0;right:0}.apple-time-event{z-index:2;border-left:3px solid var(--event-color);background:var(--event-color);border-radius:5px;flex-direction:column;align-items:flex-start;padding:5px 6px;display:flex;position:absolute;left:3px;right:3px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.apple-time-event{background:color-mix(in srgb,var(--event-color) 15%,var(--color-surface))}}.apple-time-event{color:var(--event-color)}@supports (color:color-mix(in lab, red, red)){.apple-time-event{color:color-mix(in srgb,var(--event-color) 72%,var(--color-ink))}}.apple-time-event{text-align:left}.apple-time-event:hover{filter:saturate(1.08);box-shadow:0 1px 3px var(--event-color)}@supports (color:color-mix(in lab, red, red)){.apple-time-event:hover{box-shadow:0 1px 3px color-mix(in srgb,var(--event-color) 22%,transparent)}}.apple-time-event.is-editable,.apple-all-day-event.is-editable{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.apple-time-event.is-editable:active,.apple-all-day-event.is-editable:active{cursor:grabbing}.apple-time-event-resize{cursor:ns-resize;touch-action:none;border-radius:0 0 4px 4px;height:8px;position:absolute;bottom:0;left:0;right:0}.apple-time-event-resize:before{content:"";opacity:.35;background:currentColor;border-radius:2px;height:2px;position:absolute;bottom:2px;left:22%;right:22%}.apple-time-event.is-editable:hover .apple-time-event-resize:before{opacity:.6}.apple-all-day-event{position:relative}.apple-time-event strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;font-weight:700;overflow:hidden}.apple-time-event span,.apple-time-event small{opacity:.82;font-size:9px;line-height:1.25}.calendar-drag-error{border:1px solid #dc262657;align-items:center;gap:8px;margin:10px 20px 0;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.calendar-drag-error{border:1px solid color-mix(in srgb,var(--color-warn) 34%,transparent)}}.calendar-drag-error{border-radius:var(--radius-control);background:#fce9e9}@supports (color:color-mix(in lab, red, red)){.calendar-drag-error{background:color-mix(in srgb,var(--color-warn) 10%,var(--color-surface))}}.calendar-drag-error{color:#af2326}@supports (color:color-mix(in lab, red, red)){.calendar-drag-error{color:color-mix(in srgb,var(--color-warn) 78%,var(--color-ink))}}.calendar-drag-error{font-size:12px;font-weight:650}.calendar-drag-error svg{flex:none}.calendar-drag-error span{flex:1}.calendar-drag-error button{width:26px;height:26px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.calendar-drag-error button:hover{background:#dc262624}@supports (color:color-mix(in lab, red, red)){.calendar-drag-error button:hover{background:color-mix(in srgb,var(--color-warn) 14%,transparent)}}.apple-now-line{z-index:4;background:var(--color-warn);pointer-events:none;height:1px;position:absolute;left:44px;right:0}.apple-now-line:before{content:"";background:var(--color-warn);border-radius:50%;width:7px;height:7px;position:absolute;top:-3px;left:7px}.apple-now-line span{background:var(--color-warn);color:#fff;white-space:nowrap;border-radius:4px;padding:1px 4px;font-size:8px;position:absolute;top:-8px;right:calc(100% - 7px)}.theme-dark .apple-time-event{color:var(--event-color)}@supports (color:color-mix(in lab, red, red)){.theme-dark .apple-time-event{color:color-mix(in srgb,var(--event-color) 46%,#fff)}}@media (max-width:639px){.calendar-page{padding-top:0}.apple-calendar-toolbar{z-index:8;background:#fffffff0;padding:10px 14px;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.apple-calendar-toolbar{background:color-mix(in srgb,var(--color-surface) 94%,transparent)}}.apple-calendar-toolbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.apple-calendar-toolbar .calendar-hero-dayname{font-size:18px}.apple-calendar-toolbar .calendar-hero-month{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.apple-calendar-today{background:var(--color-surface-sunken);box-shadow:none;border:0;border-radius:999px}.calendar-hero-action{background:var(--color-surface-sunken);border:0}.calendar-hero-action-primary{background:var(--color-accent)}.apple-calendar-controls{grid-template-columns:1fr;padding:5px 0 3px}.apple-calendar-controls .ui-segmented{width:100%;max-width:none}.apple-calendar-controls .ui-segmented button{min-height:32px;padding:5px 8px}.apple-month-nav .calendar-hero-dayname{font-size:18px}.apple-month-nav-btn{width:34px;height:34px}.calendar-sources-primary{padding:4px 0 7px}.calendar-sources-heading{display:none}.calendar-sources-tab{min-height:30px;padding:5px 10px}.apple-date-strip{margin-inline-start:-20px;margin-inline-end:-20px;padding:2px 20px 8px}.apple-date-strip button{min-height:50px}.apple-date-strip strong{width:30px;height:30px;font-size:16px}.apple-date-strip small{font-size:9px}.apple-timegrid-shell{border:0;border-top:1px solid var(--color-border);box-shadow:none;border-radius:0;margin:0 -20px}.apple-timegrid-scroll{scrollbar-width:none;overscroll-behavior-y:contain;max-height:calc(100dvh - 280px)}.apple-timegrid-head{display:none}.apple-timegrid,.apple-timegrid-head{--calendar-days:1}.apple-timegrid{grid-template-columns:58px 1fr;min-width:100%;height:1020px}.apple-timegrid-head button:nth-of-type(n+2),.apple-time-column:nth-child(n+2){display:none}.apple-time-labels span{font-size:11px;right:10px}.apple-time-columns{grid-template-columns:1fr}.apple-hour-line{background:#1118270b}@supports (color:color-mix(in lab, red, red)){.apple-hour-line{background:color-mix(in srgb,var(--color-border) 76%,transparent)}}.apple-time-column.today{background:var(--color-surface)}.apple-time-event{border-left-width:4px;border-radius:7px;padding:7px 9px;left:7px;right:7px}.apple-time-event strong{font-size:13px}.apple-time-event span,.apple-time-event small{font-size:10.5px}.apple-now-line{height:2px;left:50px}.apple-now-line:before{width:9px;height:9px;top:-4px;left:4px}.apple-now-line span{border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700;top:-10px;right:calc(100% - 8px)}.apple-all-day-row{grid-template-columns:58px 1fr;margin-inline-start:0;margin-inline-end:0}.apple-all-day-row>span{font-size:10px}.apple-all-day-row button{max-width:230px}}.app-shell .nav-item-today{--nav-tone:var(--color-today)}.app-shell .nav-item-calendar{--nav-tone:var(--color-calendar)}.app-shell .nav-item-meals{--nav-tone:var(--color-meals)}.app-shell .nav-item-tasks{--nav-tone:var(--color-tasks)}.app-shell .nav-item-groceries,.app-shell .nav-item-kitchen{--nav-tone:var(--color-shopping)}.app-shell .nav-item-chat{--nav-tone:var(--color-chat)}.app-shell .nav-item.is-active{color:var(--nav-tone,var(--color-accent-strong));background:var(--nav-tone,#2563eb)}@supports (color:color-mix(in lab, red, red)){.app-shell .nav-item.is-active{background:color-mix(in srgb,var(--nav-tone,var(--color-accent)) 11%,var(--color-surface))}}.app-shell .nav-item.is-active .nav-icon{background:var(--nav-tone,#2563eb)}@supports (color:color-mix(in lab, red, red)){.app-shell .nav-item.is-active .nav-icon{background:color-mix(in srgb,var(--nav-tone,var(--color-accent)) 14%,var(--color-surface))}}.app-shell .nav-item.is-active:hover .nav-icon{background:var(--nav-tone,#2563eb)}@supports (color:color-mix(in lab, red, red)){.app-shell .nav-item.is-active:hover .nav-icon{background:color-mix(in srgb,var(--nav-tone,var(--color-accent)) 18%,var(--color-surface))}}.app-shell .page-header{background:var(--header-tint,var(--color-surface));position:relative;overflow:hidden}.app-shell .page-header:before{content:"";background:var(--header-tone,var(--color-accent));width:4px;position:absolute;top:0;bottom:0;left:0;right:auto}.app-shell .page-header-home{--header-tone:var(--color-today);--header-tint:var(--pastel-lilac)}@supports (color:color-mix(in lab, red, red)){.app-shell .page-header-home{--header-tint:color-mix(in srgb,var(--pastel-lilac) 32%,var(--color-surface))}}.app-shell .page-header-meals{--header-tone:var(--color-meals);--header-tint:var(--pastel-peach)}@supports (color:color-mix(in lab, red, red)){.app-shell .page-header-meals{--header-tint:color-mix(in srgb,var(--pastel-peach) 32%,var(--color-surface))}}.app-shell .page-header-tasks{--header-tone:var(--color-tasks);--header-tint:var(--pastel-lilac)}@supports (color:color-mix(in lab, red, red)){.app-shell .page-header-tasks{--header-tint:color-mix(in srgb,var(--pastel-lilac) 30%,var(--color-surface))}}.app-shell .page-header-groceries{--header-tone:var(--color-shopping);--header-tint:var(--pastel-mint)}@supports (color:color-mix(in lab, red, red)){.app-shell .page-header-groceries{--header-tint:color-mix(in srgb,var(--pastel-mint) 34%,var(--color-surface))}}.app-shell .page-header-chat{--header-tone:var(--color-chat);--header-tint:var(--pastel-pink)}@supports (color:color-mix(in lab, red, red)){.app-shell .page-header-chat{--header-tint:color-mix(in srgb,var(--pastel-pink) 32%,var(--color-surface))}}.app-shell .page-header-finance{--header-tone:var(--color-finance);--header-tint:var(--pastel-peach)}@supports (color:color-mix(in lab, red, red)){.app-shell .page-header-finance{--header-tint:color-mix(in srgb,var(--pastel-peach) 25%,var(--color-surface))}}.app-shell .page-header-settings{--header-tone:var(--color-family);--header-tint:var(--pastel-blue)}@supports (color:color-mix(in lab, red, red)){.app-shell .page-header-settings{--header-tint:color-mix(in srgb,var(--pastel-blue) 26%,var(--color-surface))}}.app-shell .page-header .page-eyebrow{color:var(--header-tone,var(--color-accent))}.app-shell .today-metric-card{position:relative;overflow:hidden}.app-shell .today-metric-card:before{content:"";background:var(--metric-tone,var(--color-accent));height:3px;position:absolute;top:0;left:0;right:0}.app-shell .today-metric-accent{--metric-tone:var(--color-today)}.app-shell .today-metric-good{--metric-tone:var(--color-shopping)}.app-shell .today-metric-warn{--metric-tone:var(--color-meals)}.app-shell .today-metric-rose{--metric-tone:var(--color-chat)}.app-shell .calendar-page{--color-accent:var(--color-calendar);--color-accent-strong:var(--color-calendar)}.app-shell .apple-calendar-toolbar{border-top:3px solid var(--color-calendar);background:var(--pastel-blue)}@supports (color:color-mix(in lab, red, red)){.app-shell .apple-calendar-toolbar{background:color-mix(in srgb,var(--pastel-blue) 24%,var(--color-surface))}}.app-shell .apple-timegrid-head{background:var(--pastel-blue)}@supports (color:color-mix(in lab, red, red)){.app-shell .apple-timegrid-head{background:color-mix(in srgb,var(--pastel-blue) 12%,var(--color-surface))}}.app-shell .apple-time-event{box-shadow:inset 0 0 0 1px var(--event-color)}@supports (color:color-mix(in lab, red, red)){.app-shell .apple-time-event{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--event-color) 16%,transparent)}}.app-shell .reference-tasks{--color-accent:var(--color-tasks);--color-accent-strong:var(--color-tasks)}.app-shell .reference-tasks .task-board-group,.app-shell .reference-tasks .task-board-group.green,.app-shell .reference-tasks .task-board-group.amber,.app-shell .reference-tasks .task-board-group.rose{border:none}.app-shell .weekly-progress{border-left:0}.app-shell .reference-meals{--color-accent:var(--color-meals);--color-accent-strong:var(--color-meals)}.app-shell .reference-meals .meal-day-card{border:none!important}.app-shell .reference-groceries{--color-accent:var(--color-shopping);--color-accent-strong:var(--color-shopping)}.app-shell .reference-groceries .kinship-card{border-left:1px solid #0000!important}.app-shell .reference-chat{--color-accent:var(--color-chat);--color-accent-strong:var(--color-chat)}.app-shell .reference-chat .chat-message-bubble.mine{background:#efe8fe!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-chat .chat-message-bubble.mine{background:color-mix(in srgb,var(--color-chat) 14%,var(--color-surface))!important}}.app-shell .reference-finance{--color-accent:var(--color-finance);--color-accent-strong:var(--color-finance)}.app-shell .reference-finance .kinship-card{border:none!important}.theme-dark .app-shell .page-header{background:var(--header-tone,#2563eb)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .page-header{background:color-mix(in srgb,var(--header-tone,var(--color-accent)) 8%,var(--color-surface))!important}}.theme-dark .app-shell .nav-item.is-active{background:var(--nav-tone,#2563eb)}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .nav-item.is-active{background:color-mix(in srgb,var(--nav-tone,var(--color-accent)) 13%,var(--color-surface))}}@media (prefers-reduced-motion:no-preference){.app-shell .today-metric-card:hover:before,.app-shell .meal-day-card:hover{filter:saturate(1.12)}}.app-shell .page-header,.theme-dark .app-shell .page-header{border-bottom:0;padding-top:24px;padding-bottom:20px;overflow:visible;background:0 0!important}.app-shell .page-header:before{display:none}.app-shell .page-title{letter-spacing:-.035em;font-size:max(30px,min(3vw,38px));line-height:1.08}.app-shell .page-subtitle{margin-top:6px;font-size:14px;line-height:1.45}@media (max-width:767px){body .app-content .page-header,body .app-content .m3-page-header{padding-top:calc(env(safe-area-inset-top) + 18px);padding-bottom:16px}.app-shell .page-title,body .app-content .page-title{letter-spacing:-.03em!important;font-size:24px!important;line-height:1.1!important}.app-shell .page-subtitle,body .app-content .page-subtitle{font-size:12.5px!important;line-height:1.4!important}}@media (max-width:380px){body .app-content .page-title{font-size:24px!important}}.kitchen-inventory-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-xs);margin:0 20px 16px;padding:16px}.kitchen-inventory-card>header{align-items:center;gap:11px;margin-bottom:13px;display:flex}.kitchen-inventory-mark{border-radius:var(--radius-card);background:var(--color-shopping-soft);width:42px;height:42px;color:var(--color-shopping-strong);place-items:center;display:grid}.kitchen-inventory-card>header p{color:var(--color-shopping-strong);letter-spacing:.12em;text-transform:uppercase;font-size:9.5px;font-weight:800}.kitchen-inventory-card>header h2{line-height:1.2;font-size:18px!important}.kitchen-inventory-card>header small{color:var(--color-ink-soft);font-size:11px}.inventory-purchased-strip{border:1px solid #149f9249;gap:7px;margin-bottom:12px;padding:10px;display:grid}@supports (color:color-mix(in lab, red, red)){.inventory-purchased-strip{border:1px solid color-mix(in srgb,var(--color-shopping) 24%,var(--color-border))}}.inventory-purchased-strip{border-radius:var(--radius-control);background:var(--color-shopping-soft)}.inventory-purchased-strip>strong{color:var(--color-shopping-strong);font-size:11px}.inventory-purchased-strip>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.inventory-purchased-strip>div>span{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;overflow:hidden}.inventory-purchased-strip>div>div{gap:4px;display:flex}.inventory-purchased-strip button{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-ink-soft);padding:5px 7px;font-size:9.5px;font-weight:700}.inventory-location-tabs{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px;display:grid}.inventory-location-tabs button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-height:36px;color:var(--color-ink-soft);justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.inventory-location-tabs button.selected{border-color:var(--color-shopping);background:var(--color-shopping-soft);color:var(--color-shopping-strong)}.inventory-location-tabs button span{border-radius:var(--radius-pill);background:var(--color-surface);place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:9px;display:grid}.inventory-item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.inventory-item-grid article{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-sunken);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:9px 10px;display:grid}.inventory-item-grid article strong,.inventory-item-grid article small{display:block}.inventory-item-grid article strong{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.inventory-item-grid article small{color:var(--color-ink-soft);margin-top:2px;font-size:10px}.inventory-item-grid label{color:var(--color-ink-faint);font-size:9px}.inventory-item-grid input{width:112px;color:var(--color-ink-soft);background:0 0;border:0;margin-top:2px;font-size:10px;display:block}.inventory-item-grid article>button{border-radius:var(--radius-control);width:28px;height:28px;color:var(--color-ink-faint);place-items:center;display:grid}.inventory-empty{border:1px dashed var(--color-border);border-radius:var(--radius-control);color:var(--color-ink-soft);text-align:center;padding:16px;font-size:11.5px}@media (max-width:640px){.kitchen-inventory-card{margin-inline-start:16px;margin-inline-end:16px}.inventory-item-grid{grid-template-columns:1fr}.inventory-purchased-strip>div{flex-direction:column;align-items:flex-start}.inventory-purchased-strip>div>div{width:100%}.inventory-purchased-strip button{flex:1}.inventory-item-grid input{width:105px}}.consume-review>p{color:var(--color-ink-soft);margin-bottom:12px;font-size:12.5px;line-height:1.5}.consume-review>div:nth-child(2){gap:7px;display:grid}.consume-review>div:nth-child(2)>button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);text-align:left;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;display:grid}.consume-review>div:nth-child(2)>button.selected{border-color:var(--color-shopping);background:var(--color-shopping-soft)}.consume-review>div:nth-child(2)>button>span{border:1px solid var(--color-border);border-radius:var(--radius-control);width:24px;height:24px;color:var(--color-shopping-strong);place-items:center;display:grid}.consume-review>div:nth-child(2)>button strong{color:var(--color-ink);font-size:12.5px}.consume-review>div:nth-child(2)>button small{color:var(--color-ink-soft);text-transform:capitalize;font-size:10.5px}.consume-review-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.app-shell[data-color-scheme=ocean]{--color-accent:#087ea4;--color-accent-strong:#075e78;--color-accent-soft:#e6f8fc;--color-today:#087ea4;--color-tasks:#087ea4;--color-family:#087ea4;--color-family-soft:#e6f8fc;--color-family-strong:#075e78}.app-shell[data-color-scheme=berry]{--color-accent:#c11574;--color-accent-strong:#9e165f;--color-accent-soft:#fdf2fa;--color-today:#c11574;--color-tasks:#c11574;--color-family:#c11574;--color-family-soft:#fdf2fa;--color-family-strong:#9e165f}.app-shell[data-color-scheme=forest]{--color-accent:#067647;--color-accent-strong:#055c38;--color-accent-soft:#e9fbf2;--color-today:#067647;--color-tasks:#067647;--color-family:#067647;--color-family-soft:#e9fbf2;--color-family-strong:#055c38}.app-shell[data-color-scheme=sunset]{--color-accent:#c4320a;--color-accent-strong:#942308;--color-accent-soft:#fff0e8;--color-today:#c4320a;--color-tasks:#c4320a;--color-family:#c4320a;--color-family-soft:#fff0e8;--color-family-strong:#942308}.app-shell.theme-dark[data-color-scheme=ocean]{--color-accent:#67e8f9;--color-accent-strong:#a5f3fc;--color-accent-soft:#164e63;--color-today:#67e8f9;--color-tasks:#67e8f9;--color-family:#67e8f9;--color-family-soft:#164e63;--color-family-strong:#a5f3fc}.app-shell.theme-dark[data-color-scheme=berry]{--color-accent:#f670c7;--color-accent-strong:#fcceee;--color-accent-soft:#4a1233;--color-today:#f670c7;--color-tasks:#f670c7;--color-family:#f670c7;--color-family-soft:#4a1233;--color-family-strong:#fcceee}.app-shell.theme-dark[data-color-scheme=forest]{--color-accent:#75e0a7;--color-accent-strong:#a6f4c5;--color-accent-soft:#123b2b;--color-today:#75e0a7;--color-tasks:#75e0a7;--color-family:#75e0a7;--color-family-soft:#123b2b;--color-family-strong:#a6f4c5}.app-shell.theme-dark[data-color-scheme=sunset]{--color-accent:#ff9c66;--color-accent-strong:#ffd6ae;--color-accent-soft:#4a1d12;--color-today:#ff9c66;--color-tasks:#ff9c66;--color-family:#ff9c66;--color-family-soft:#4a1d12;--color-family-strong:#ffd6ae}.app-shell[data-color-scheme=mist]{--color-accent:#5b5bd6;--color-accent-strong:#4141a5;--color-accent-soft:#eef;--color-today:#5b5bd6;--color-tasks:#5b5bd6;--color-family:#5b5bd6;--color-family-soft:#eef;--color-family-strong:#4141a5}.app-shell[data-color-scheme=sage]{--color-accent:#237a57;--color-accent-strong:#185b40;--color-accent-soft:#eaf8f1;--color-today:#237a57;--color-tasks:#237a57;--color-family:#237a57;--color-family-soft:#eaf8f1;--color-family-strong:#185b40}.app-shell[data-color-scheme=clay]{--color-accent:#9a3412;--color-accent-strong:#76280e;--color-accent-soft:#fff0e8;--color-today:#9a3412;--color-tasks:#9a3412;--color-family:#9a3412;--color-family-soft:#fff0e8;--color-family-strong:#76280e}.app-shell[data-color-scheme=harbour]{--color-accent:#334eac;--color-accent-strong:#263b82;--color-accent-soft:#edf2ff;--color-today:#334eac;--color-tasks:#334eac;--color-family:#334eac;--color-family-soft:#edf2ff;--color-family-strong:#263b82}.app-shell.theme-dark[data-color-scheme=mist]{--color-accent:#b9bade;--color-accent-strong:#ddddf2;--color-accent-soft:#34354f;--color-today:#b9bade;--color-tasks:#b9bade;--color-family:#b9bade;--color-family-soft:#34354f;--color-family-strong:#ddddf2}.app-shell.theme-dark[data-color-scheme=sage]{--color-accent:#9bc5b5;--color-accent-strong:#cae0d7;--color-accent-soft:#263f37;--color-today:#9bc5b5;--color-tasks:#9bc5b5;--color-family:#9bc5b5;--color-family-soft:#263f37;--color-family-strong:#cae0d7}.app-shell.theme-dark[data-color-scheme=clay]{--color-accent:#d3a99e;--color-accent-strong:#eacfc8;--color-accent-soft:#4b332e;--color-today:#d3a99e;--color-tasks:#d3a99e;--color-family:#d3a99e;--color-family-soft:#4b332e;--color-family-strong:#eacfc8}.app-shell.theme-dark[data-color-scheme=harbour]{--color-accent:#afc1d1;--color-accent-strong:#d5e0e8;--color-accent-soft:#2c3d4b;--color-today:#afc1d1;--color-tasks:#afc1d1;--color-family:#afc1d1;--color-family-soft:#2c3d4b;--color-family-strong:#d5e0e8}.app-shell.theme-dark[data-color-scheme]{--color-on-accent:#101828}.settings-color-scheme-card{padding:14px!important}.settings-color-scheme-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.settings-color-scheme-head>span{border-radius:var(--radius-control);background:var(--color-accent-soft);width:36px;height:36px;color:var(--color-accent-strong);place-items:center;display:grid}.settings-color-scheme-head strong,.settings-color-scheme-head small{display:block}.settings-color-scheme-head strong{color:var(--color-ink);font-size:13px}.settings-color-scheme-head small{color:var(--color-ink-soft);margin-top:2px;font-size:11px}.settings-color-schemes{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.settings-color-schemes>button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);text-align:left;grid-template-columns:auto minmax(0,1fr) 24px;align-items:center;gap:8px;padding:9px;display:grid}.settings-color-schemes>button.selected{border-color:var(--color-accent);background:var(--color-accent-soft)}.scheme-swatches{display:flex}.scheme-swatches i{border:2px solid var(--color-surface);border-radius:var(--radius-pill);width:14px;height:28px;margin-left:-5px}.scheme-swatches i:first-child{margin-left:0}.settings-color-schemes strong,.settings-color-schemes small{display:block}.settings-color-schemes strong{color:var(--color-ink);font-size:11.5px}.settings-color-schemes small{color:var(--color-ink-soft);margin-top:2px;font-size:9.5px}.settings-color-schemes em{border-radius:var(--radius-pill);background:var(--color-surface);width:22px;height:22px;color:var(--color-accent-strong);place-items:center;font-style:normal;display:grid}@media (max-width:900px){.settings-color-schemes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.settings-color-schemes{grid-template-columns:1fr}.settings-color-schemes>button{min-height:52px}}.app-shell .fam-ai-sheet{border:1px solid var(--color-border);background:var(--color-surface);overflow:hidden;box-shadow:0 24px 48px -12px #1018283d}.app-shell .fam-ai-page{background:var(--color-surface-sunken)}.app-shell .fam-ai-workspace{background:var(--color-surface)}.app-shell .fam-ai-header{border-bottom:1px solid var(--color-border);background:var(--pastel-lilac)}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-header{background:color-mix(in srgb,var(--pastel-lilac) 13%,var(--color-surface))}}.app-shell .fam-ai-header-inner{align-items:center;min-height:66px;padding:12px 54px 12px 20px;display:flex}.app-shell .fam-ai-brand{gap:10px;width:100%}.app-shell .fam-ai-brand-icon{background:var(--color-accent-soft);width:38px;height:38px;color:var(--color-accent-strong);border-radius:10px}.app-shell .fam-ai-brand-copy{gap:3px;min-width:0;display:grid}.app-shell .fam-ai-brand-copy strong{letter-spacing:-.01em;font-size:14px;font-weight:650}.app-shell .fam-ai-brand-copy>span{color:var(--color-ink-faint);align-items:center;gap:5px;font-size:10px;display:flex}.app-shell .fam-ai-brand-copy i{background:var(--color-good);width:7px;height:7px;box-shadow:0 0 0 2px var(--color-good-soft);border-radius:50%}.app-shell .fam-ai-brand em{border-radius:5px;margin-left:auto;padding:3px 7px;font-weight:650}.app-shell .fam-ai-header-tagline{display:none}.app-shell .fam-ai-welcome{padding:max(52px,min(12vh,110px)) 20px 8px}.app-shell .fam-ai-welcome h2{font-size:max(26px,min(4.5vw,36px));font-weight:650}.app-shell .fam-ai-welcome p{font-size:13px}.app-shell .fam-ai-chat{background:var(--color-surface);gap:20px;padding:24px 24px 18px}.app-shell .fam-ai-msg.user{margin-top:8px}.app-shell .fam-ai-msg:not(.user){margin-top:4px}.app-shell .fam-ai-msg-row{gap:12px;max-width:720px}.app-shell .fam-ai-msg-avatar{border:1px solid #2153c23a;width:34px;height:34px}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-msg-avatar{border:1px solid color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.app-shell .fam-ai-msg-avatar{background:var(--color-accent-soft);color:var(--color-accent-strong);border-radius:8px}.app-shell .fam-ai-msg-avatar.user{border-color:#7650d244}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-msg-avatar.user{border-color:color-mix(in srgb,var(--color-chat) 22%,var(--color-border))}}.app-shell .fam-ai-msg-avatar.user{background:#f1ebfe}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-msg-avatar.user{background:color-mix(in srgb,var(--color-chat) 12%,var(--color-surface))}}.app-shell .fam-ai-msg-avatar.user{color:var(--color-chat)}.app-shell .fam-ai-msg-body{max-width:min(82%,640px)}.app-shell .fam-ai-msg-meta{align-items:baseline;gap:7px;margin:0 0 8px;display:flex}.app-shell .fam-ai-msg-meta strong{color:var(--color-ink);font-size:11.5px;font-weight:650}.app-shell .fam-ai-msg-meta span{color:var(--color-ink-faint);font-size:9.5px}.app-shell .fam-ai-msg.user .fam-ai-msg-meta{justify-content:flex-end}.app-shell .fam-ai-msg-body p{border:1px solid var(--color-border);border-radius:4px 10px 10px;padding:11px 13px;font-size:13px;line-height:1.55;box-shadow:0 1px 2px #10182808;background:var(--color-surface-sunken)!important}.app-shell .fam-ai-msg.user .fam-ai-msg-body p{border-color:#2153c23a}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-msg.user .fam-ai-msg-body p{border-color:color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.app-shell .fam-ai-msg.user .fam-ai-msg-body p{border-radius:10px 4px 10px 10px;background:var(--color-accent-soft)!important}.app-shell .fam-ai-thinking{border:1px solid var(--color-border);background:var(--color-surface-sunken);border-radius:4px 10px 10px;min-width:58px;padding:13px 15px}.app-shell .fam-ai-thinking i{width:6px;height:6px}.app-shell .fam-ai-suggestions{padding:0 24px max(18px,env(safe-area-inset-bottom))}.app-shell .fam-ai-suggestion-grid{gap:8px;max-width:640px}.app-shell .fam-ai-suggestion{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);min-height:34px;box-shadow:none;padding:7px 14px}.app-shell .fam-ai-suggestion:hover{border-color:var(--color-accent);transform:none;box-shadow:0 2px 6px #1018280d}.app-shell .fam-ai-suggestion-icon{border-radius:var(--radius-tag);width:20px;height:20px}.app-shell .fam-ai-suggestion.tasks .fam-ai-suggestion-icon{background:#d8e3fb}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-suggestion.tasks .fam-ai-suggestion-icon{background:color-mix(in srgb,var(--color-tasks) 18%,var(--color-surface))}}.app-shell .fam-ai-suggestion.meals .fam-ai-suggestion-icon{background:#fdeed3}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-suggestion.meals .fam-ai-suggestion-icon{background:color-mix(in srgb,var(--color-meals) 18%,var(--color-surface))}}.app-shell .fam-ai-suggestion.calendar .fam-ai-suggestion-icon{background:#d8e3fb}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-suggestion.calendar .fam-ai-suggestion-icon{background:color-mix(in srgb,var(--color-calendar) 18%,var(--color-surface))}}.app-shell .fam-ai-suggestion.groceries .fam-ai-suggestion-icon{background:#d5f2ef}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-suggestion.groceries .fam-ai-suggestion-icon{background:color-mix(in srgb,var(--color-shopping) 18%,var(--color-surface))}}.app-shell .fam-ai-review{border-color:#2256c944;max-height:min(44vh,420px);padding:16px;overflow:auto}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-review{border-color:color-mix(in srgb,var(--color-accent) 22%,var(--color-border))}}.app-shell .fam-ai-review{background:#fbfcff;border-radius:10px}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-review{background:color-mix(in srgb,var(--color-accent-soft) 28%,var(--color-surface))}}.app-shell .fam-ai-review{box-shadow:0 4px 12px #1018280f}.app-shell .fam-ai-review-item{background:var(--color-surface);border-radius:8px}.app-shell .fam-ai-review-cancel,.app-shell .fam-ai-review-approve{border-radius:8px;min-height:38px}.app-shell .fam-ai-composer{border-top:1px solid var(--color-border);background:var(--color-surface);padding:14px 24px 12px}.app-shell .fam-ai-composer-inner{border:1.5px solid var(--color-border);border-radius:var(--radius-section);background:var(--color-surface);align-items:stretch;max-width:640px;min-height:52px;padding:12px 12px 8px 16px;box-shadow:0 8px 30px #1f293714}.app-shell .fam-ai-composer-inner:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #2563eb29}@supports (color:color-mix(in lab, red, red)){.app-shell .fam-ai-composer-inner:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 16%,transparent)}}.app-shell .fam-ai-composer-inner textarea{flex:none;min-height:30px;padding:4px 2px;font-size:14px}.app-shell .fam-ai-composer-context{border-radius:var(--radius-tag);background:var(--color-accent-soft);color:var(--color-accent-strong);padding:4px 8px;font-size:9.5px}.app-shell .fam-ai-composer-send{background:var(--color-accent)!important;border-radius:50%!important;width:34px!important;height:34px!important}.app-shell .fam-ai-composer-send:disabled{background:var(--color-border-strong)!important}.app-shell .fam-ai-composer-foot{max-width:720px;color:var(--color-ink-faint);grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:7px auto 0;font-size:9px;display:grid}.app-shell .fam-ai-composer-foot>span{align-items:center;gap:4px;display:flex}.app-shell .fam-ai-composer-foot p{text-align:center}.app-shell .fam-ai-composer-foot kbd{font:inherit;color:var(--color-ink-faint);justify-self:end}.theme-dark .app-shell .fam-ai-header{background:#f0f4fe}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .fam-ai-header{background:color-mix(in srgb,var(--color-accent) 7%,var(--color-surface))}}.theme-dark .app-shell .fam-ai-chat,.theme-dark .app-shell .fam-ai-composer{background:#fff!important}.theme-dark .app-shell .fam-ai-msg-body p{box-shadow:none}@media (max-width:719px){.app-shell .fam-ai-header-inner{min-height:60px;padding:10px 52px 10px 14px}.app-shell .fam-ai-brand-icon{width:34px;height:34px}.app-shell .fam-ai-chat{padding:18px 14px 12px}.app-shell .fam-ai-msg-body{max-width:86%}.app-shell .fam-ai-msg-avatar{width:30px;height:30px}.app-shell .fam-ai-suggestions{padding-inline-start:14px;padding-inline-end:14px}.app-shell .fam-ai-composer{padding:10px 14px calc(10px + env(safe-area-inset-bottom))}.app-shell .fam-ai-composer-context,.app-shell .fam-ai-composer-tool{display:none}.app-shell .fam-ai-composer-foot{grid-template-columns:1fr auto}.app-shell .fam-ai-composer-foot p{display:none}}.app-shell .barcode-detail-grid{grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr);align-items:start;gap:12px;margin-bottom:4px}.app-shell .barcode-detail-grid>.form-field{flex-direction:column;min-width:0;margin-bottom:0;display:flex}.app-shell .barcode-detail-grid .form-label{height:20px;margin-bottom:6px;line-height:20px;display:block}.app-shell .barcode-detail-grid .form-control,.app-shell .barcode-detail-grid .m3-stepper{width:100%;height:48px;min-height:48px}.app-shell .barcode-detail-grid .m3-stepper{justify-content:space-between;padding:3px}.app-shell .barcode-detail-grid .m3-stepper-button{width:40px;height:40px}.app-shell .barcode-detail-grid .m3-stepper-value{flex:1}@media (max-width:480px){.app-shell .barcode-detail-grid{grid-template-columns:1fr}.app-shell .barcode-detail-grid>.form-field{grid-column:auto!important}}.app-shell .meal-preferences-card{border-radius:var(--radius-card);background:var(--pastel-peach);grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);gap:10px 18px;margin-bottom:12px;padding:14px 16px;display:grid}@supports (color:color-mix(in lab, red, red)){.app-shell .meal-preferences-card{background:color-mix(in srgb,var(--pastel-peach) 14%,var(--color-surface))}}.app-shell .meal-preferences-card{box-shadow:0 1px 2px #1018280a}.app-shell .meal-preferences-copy{align-self:center}.app-shell .meal-preferences-copy p{letter-spacing:.12em;margin-bottom:3px;font-size:9.5px}.app-shell .meal-preferences-copy h3{font-size:17px;line-height:1.15}.app-shell .meal-preferences-copy span{margin-top:4px;font-size:11px;line-height:1.35}.app-shell .dietary-chip-row{align-content:center;gap:6px;margin-top:0}.app-shell .dietary-chip{min-height:30px;box-shadow:none;border-radius:8px;gap:5px;padding:3px 9px 3px 4px;font-size:11px;font-weight:650}.app-shell .dietary-chip-icon{width:22px;height:22px}.app-shell .meal-preferences-fields{grid-column:1/-1;gap:8px;margin-top:0}.app-shell .meal-preferences-fields input{border-radius:8px;min-height:38px;padding:8px 11px;font-size:12px;font-weight:500}.app-shell .meal-preferences-fields input:focus{border-color:var(--color-meals);outline:0;box-shadow:0 0 0 3px #f59e0b21}@supports (color:color-mix(in lab, red, red)){.app-shell .meal-preferences-fields input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-meals) 13%,transparent)}}.theme-dark .app-shell .meal-preferences-card{background:#fef8ee!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .meal-preferences-card{background:color-mix(in srgb,var(--color-meals) 7%,var(--color-surface))!important}}@media (max-width:720px){.app-shell .meal-preferences-card{grid-template-columns:1fr}.app-shell .meal-preferences-fields{grid-column:auto;grid-template-columns:1fr 1fr}}@media (max-width:520px){.app-shell .meal-preferences-fields{grid-template-columns:1fr}.app-shell .meal-preferences-copy span{max-width:34ch}.app-shell .dietary-chip-row{gap:5px}}.app-shell .kitchen-ideas-card{border:1px solid #d48b0f4d;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 20px 12px;padding:14px 16px;display:grid}@supports (color:color-mix(in lab, red, red)){.app-shell .kitchen-ideas-card{border:1px solid color-mix(in srgb,var(--color-meals) 26%,var(--color-border))}}.app-shell .kitchen-ideas-card{border-radius:var(--radius-card);background:#fef8ee}@supports (color:color-mix(in lab, red, red)){.app-shell .kitchen-ideas-card{background:color-mix(in srgb,var(--color-meals) 7%,var(--color-surface))}}.app-shell .kitchen-ideas-card{box-shadow:var(--shadow-xs)}.app-shell .kitchen-ideas-icon{border-radius:var(--radius-card);background:var(--color-surface);border:1px solid var(--color-border);width:42px;height:42px;color:var(--color-meals);box-shadow:var(--shadow-xs);place-items:center;display:grid}.app-shell .kitchen-ideas-copy{min-width:0}.app-shell .kitchen-ideas-copy p{color:var(--color-meals);letter-spacing:.12em;text-transform:uppercase;margin:0 0 2px;font-size:10px;font-weight:800}.app-shell .kitchen-ideas-copy h3{color:var(--color-ink);font-family:var(--font-display);margin:0;font-size:16px;font-weight:700;line-height:1.25}.app-shell .kitchen-ideas-copy span{color:var(--color-ink-soft);margin-top:3px;font-size:11.5px;line-height:1.4;display:block}.app-shell .kitchen-ideas-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.app-shell .kitchen-ideas-actions button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-height:34px;color:var(--color-ink);box-shadow:var(--shadow-xs);align-items:center;gap:5px;padding:7px 10px;font-size:11.5px;font-weight:700;transition:transform .15s,border-color .15s,background .15s;display:inline-flex}.app-shell .kitchen-ideas-actions button:not(:disabled):hover{border-color:var(--color-meals);background:#fef8ee;transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.app-shell .kitchen-ideas-actions button:not(:disabled):hover{background:color-mix(in srgb,var(--color-meals) 7%,var(--color-surface))}}.app-shell .kitchen-ideas-actions button:disabled{cursor:not-allowed;opacity:.48}.theme-dark .app-shell .kitchen-ideas-card{background:#fef7eb}@supports (color:color-mix(in lab, red, red)){.theme-dark .app-shell .kitchen-ideas-card{background:color-mix(in srgb,var(--color-meals) 8%,var(--color-surface))}}.theme-dark .app-shell .kitchen-ideas-card{border-color:var(--color-border)}@media (max-width:720px){.app-shell .kitchen-ideas-card{grid-template-columns:auto 1fr}.app-shell .kitchen-ideas-actions{grid-column:1/-1;grid-template-columns:repeat(3,1fr);display:grid}.app-shell .kitchen-ideas-actions button{justify-content:center}}@media (max-width:420px){.app-shell .kitchen-ideas-card{margin-inline-start:16px;margin-inline-end:16px;padding:13px}.app-shell .kitchen-ideas-actions button{padding-inline-start:7px;padding-inline-end:7px}.app-shell .kitchen-ideas-actions button span{font-size:10.5px}}.app-shell .task-list-switcher{scrollbar-width:none;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;gap:6px;margin:-4px 0 2px;padding:2px 1px 7px;display:flex;overflow-x:auto}.app-shell .task-list-switcher::-webkit-scrollbar{display:none}.app-shell .task-list-switcher button{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);min-height:36px;color:var(--color-ink-soft);white-space:nowrap;scroll-snap-align:start;flex:none;align-items:center;gap:6px;padding:7px 9px;font-size:11.5px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #10182808}.app-shell .task-list-switcher button>svg{color:var(--list-tone)}.app-shell .task-list-switcher button>em{border-radius:var(--radius-pill);background:var(--color-surface-sunken);min-width:20px;height:20px;color:var(--color-ink-faint);place-items:center;padding:0 5px;font-size:9px;font-style:normal;font-weight:700;display:grid}.app-shell .task-list-switcher button:hover{border-color:var(--list-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-list-switcher button:hover{border-color:color-mix(in srgb,var(--list-tone) 32%,var(--color-border))}}.app-shell .task-list-switcher button:hover{background:var(--list-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-list-switcher button:hover{background:color-mix(in srgb,var(--list-tone) 5%,var(--color-surface))}}.app-shell .task-list-switcher button.selected{border-color:var(--list-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-list-switcher button.selected{border-color:color-mix(in srgb,var(--list-tone) 55%,var(--color-border))}}.app-shell .task-list-switcher button.selected{background:var(--list-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-list-switcher button.selected{background:color-mix(in srgb,var(--list-tone) 11%,var(--color-surface))}}.app-shell .task-list-switcher button.selected{color:var(--list-tone);box-shadow:0 0 0 2px var(--list-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .task-list-switcher button.selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--list-tone) 9%,transparent)}}.app-shell .task-list-switcher button.selected>em{background:var(--list-tone);color:#fff}.app-shell .task-list-switcher button:focus-visible{box-shadow:0 0 0 3px var(--list-tone);outline:0}@supports (color:color-mix(in lab, red, red)){.app-shell .task-list-switcher button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--list-tone) 16%,transparent)}}.app-shell .calendar-sources-primary{border-bottom:1px solid var(--color-border);padding:2px 0 10px}.app-shell .calendar-sources-heading{justify-content:space-between;align-items:center;margin-bottom:7px;padding:0 2px;display:flex}.app-shell .calendar-sources-heading>span{color:var(--color-ink-faint);letter-spacing:.08em;text-transform:uppercase;font-size:9.5px;font-weight:700}.app-shell .calendar-sources-heading>button{color:var(--color-calendar);padding:3px 5px;font-size:10.5px;font-weight:650}.app-shell .calendar-sources-primary .calendar-sources-tabs{scroll-snap-type:x proximity;gap:6px;padding:1px 1px 3px}.app-shell .calendar-sources-primary .calendar-sources-tab{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);min-height:34px;color:var(--color-ink-soft);scroll-snap-align:start;gap:6px;padding:6px 9px;font-size:11px;box-shadow:0 1px 2px #10182808}.app-shell .calendar-sources-primary .calendar-sources-tab>i{width:8px;height:8px;box-shadow:0 0 0 2px var(--calendar-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .calendar-sources-primary .calendar-sources-tab>i{box-shadow:0 0 0 2px color-mix(in srgb,var(--calendar-tone) 12%,transparent)}}.app-shell .calendar-sources-primary .calendar-sources-tab>em{border-radius:var(--radius-pill);background:var(--color-surface-sunken);min-width:19px;height:19px;color:var(--color-ink-faint);place-items:center;padding:0 5px;font-size:8.5px;font-style:normal;font-weight:700;display:grid}.app-shell .calendar-sources-primary .calendar-sources-tab:hover{border-color:var(--calendar-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .calendar-sources-primary .calendar-sources-tab:hover{border-color:color-mix(in srgb,var(--calendar-tone) 34%,var(--color-border))}}.app-shell .calendar-sources-primary .calendar-sources-tab:hover{background:var(--calendar-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .calendar-sources-primary .calendar-sources-tab:hover{background:color-mix(in srgb,var(--calendar-tone) 5%,var(--color-surface))}}.app-shell .calendar-sources-primary .calendar-sources-tab.selected{border-color:var(--calendar-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .calendar-sources-primary .calendar-sources-tab.selected{border-color:color-mix(in srgb,var(--calendar-tone) 58%,var(--color-border))}}.app-shell .calendar-sources-primary .calendar-sources-tab.selected{background:var(--calendar-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .calendar-sources-primary .calendar-sources-tab.selected{background:color-mix(in srgb,var(--calendar-tone) 11%,var(--color-surface))}}.app-shell .calendar-sources-primary .calendar-sources-tab.selected{color:var(--color-ink);box-shadow:0 0 0 2px var(--calendar-tone)}@supports (color:color-mix(in lab, red, red)){.app-shell .calendar-sources-primary .calendar-sources-tab.selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--calendar-tone) 9%,transparent)}}.app-shell .calendar-sources-primary .calendar-sources-tab.selected>em{background:var(--calendar-tone);color:#fff}.app-shell .grocery-quantity-row{grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr);align-items:start;gap:12px;display:grid}.app-shell .grocery-quantity-row>div{flex-direction:column;min-width:0;display:flex}.app-shell .grocery-quantity-row .form-field{margin-bottom:0}.app-shell .grocery-quantity-row .form-label{height:20px;margin-bottom:6px;line-height:20px;display:block}.app-shell .grocery-quantity-row .form-control,.app-shell .grocery-quantity-row .m3-stepper{width:100%;height:48px;min-height:48px}.app-shell .grocery-quantity-row .m3-stepper{justify-content:space-between;padding:3px}.app-shell .grocery-quantity-row .m3-stepper-value{flex:1}@media (max-width:480px){.app-shell .grocery-quantity-row{grid-template-columns:1fr}}.app-shell :where(.primary-button,.primary-action-button,.m3-button-filled,.calendar-fab,.calendar-hero-action-primary,.calendar-view-btn.active,.calendar-daystrip-item.selected,.calendar-month-grid button.selected,.calendar-quick-icon,.broadcast-submit.is-ready,.meal-roulette-cuisine-chip.pinned,.chat-intent-add,.focus-shopping-done,.recipe-grocery-button,.groceries-missing-modal-summary button,.invite-password-setup button,.fam-ai-composer-send){color:var(--color-on-accent)!important}.app-shell :where(.fam-ai-suggestion-icon,.task-list-switcher button.selected>em,.calendar-sources-primary .calendar-sources-tab.selected>em){color:var(--color-on-vibrant)!important}.app-shell :where(.confirm-destructive-action,.event-danger-button,.apple-now-line span){color:var(--color-on-status)!important}.app-shell .nav-badge{background:var(--color-warn);color:var(--color-on-status)}.app-shell .fam-ai-suggestion.tasks .fam-ai-suggestion-icon{background:var(--color-accent-soft);color:var(--color-accent-strong)!important}.app-shell .fam-ai-suggestion.calendar .fam-ai-suggestion-icon{background:var(--color-calendar-soft);color:var(--color-calendar-strong)!important}.app-shell .fam-ai-suggestion.meals .fam-ai-suggestion-icon{background:var(--color-meals-soft);color:var(--color-meals-strong)!important}.app-shell .fam-ai-suggestion.groceries .fam-ai-suggestion-icon{background:var(--color-shopping-soft);color:var(--color-shopping-strong)!important}.app-shell .reference-chat .chat-message-bubble.mine{background:var(--color-chat-soft)!important;color:var(--color-chat-strong)!important;border:1px solid var(--color-chat-strong)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .reference-chat .chat-message-bubble.mine{border:1px solid color-mix(in srgb,var(--color-chat-strong) 18%,var(--color-border))!important}}.app-shell .task-list-switcher button.selected>em,.app-shell .calendar-sources-primary .calendar-sources-tab.selected>em{background:var(--list-tone,var(--calendar-tone,#2563eb))}@supports (color:color-mix(in lab, red, red)){.app-shell .task-list-switcher button.selected>em,.app-shell .calendar-sources-primary .calendar-sources-tab.selected>em{background:color-mix(in srgb,var(--list-tone,var(--calendar-tone,var(--color-accent))) 14%,var(--color-surface))}}.app-shell .task-list-switcher button.selected>em,.app-shell .calendar-sources-primary .calendar-sources-tab.selected>em{border:1px solid var(--list-tone,var(--calendar-tone,#2563eb));color:var(--color-ink)!important}@supports (color:color-mix(in lab, red, red)){.app-shell .task-list-switcher button.selected>em,.app-shell .calendar-sources-primary .calendar-sources-tab.selected>em{border:1px solid color-mix(in srgb,var(--list-tone,var(--calendar-tone,var(--color-accent))) 35%,var(--color-border))}}.app-shell .saved-recipe-card{border-radius:var(--radius-card);grid-template-rows:minmax(0,1fr) auto;align-items:stretch;display:grid;position:relative}.app-shell .saved-recipe-main{grid-template-rows:132px auto;gap:0;padding:0;display:grid}.app-shell .saved-recipe-media{background:var(--color-meals-soft);min-height:132px;color:var(--color-meals-strong);place-items:center;position:relative;overflow:hidden;display:grid!important}.app-shell .saved-recipe-saver{border:2px solid var(--color-surface);position:absolute;bottom:7px;right:7px;box-shadow:0 1px 4px #10182838}.app-shell .saved-recipe-media img{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-base) ease}.app-shell .saved-recipe-main:hover .saved-recipe-media img{transform:scale(1.035)}.app-shell .saved-recipe-copy{padding:13px 14px;display:block}.app-shell .saved-recipe-copy>span{display:block}.app-shell .saved-recipe-copy small{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.app-shell .saved-recipe-plan{border-top:1px solid var(--color-border);border-left:0;min-height:40px}.app-shell .saved-recipe-remove{z-index:2;position:absolute;top:8px;right:8px;background:#ffffffe6!important}@supports (color:color-mix(in lab, red, red)){.app-shell .saved-recipe-remove{background:color-mix(in srgb,var(--color-surface) 90%,transparent)!important}}.app-shell .saved-recipe-remove{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-shell .meal-search-ingredient-result{align-items:center;justify-content:initial;grid-template-columns:54px minmax(0,1fr);gap:10px;padding:7px;display:grid}.app-shell .meal-search-result-media{background:var(--color-meals-soft);width:54px;height:54px;color:var(--color-meals-strong);border-radius:8px;place-items:center;display:grid;overflow:hidden}.app-shell .meal-search-result-media img{object-fit:cover;width:100%;height:100%}.app-shell .meal-search-result-copy{text-align:left;min-width:0;display:block}.app-shell .cook-focus-hero{isolation:isolate;position:relative;overflow:hidden}.app-shell .cook-focus-hero.has-photo{background:#111827;align-items:flex-end;min-height:max(300px,min(46vh,520px));display:flex}.app-shell .cook-focus-hero-image{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.app-shell .cook-focus-hero-shade{z-index:-1;background:linear-gradient(#0c111d08 8%,#0c111d47 48%,#0c111deb 100%);position:absolute;top:0;bottom:0;left:0;right:0}.app-shell .cook-focus-hero.has-photo .cook-focus-copy{color:#fff;max-width:760px;position:relative}.app-shell .cook-focus-hero.has-photo .cook-focus-copy h2,.app-shell .cook-focus-hero.has-photo .cook-focus-copy>p{color:#fff}.app-shell .cook-focus-hero.has-photo .cook-meta-row span{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c111db3;border-color:#ffffff3d}@media (max-width:600px){.app-shell .saved-recipe-grid{scroll-snap-type:x mandatory;grid-template-columns:none;grid-auto-columns:min(82vw,300px);grid-auto-flow:column;padding-bottom:6px;overflow-x:auto}.app-shell .saved-recipe-card{scroll-snap-align:start}.app-shell .cook-focus-hero.has-photo{min-height:380px}.app-shell .cook-focus-hero-shade{background:linear-gradient(#0c111d05,#0c111df0 78%)}}.cook-mode-portal{z-index:1000;isolation:isolate;width:100%;height:100%;position:fixed;top:0;bottom:0;left:0;right:0}.app-shell .cook-focus-screen{z-index:140;color:var(--color-ink);overscroll-behavior:contain;background:#fafafa;position:fixed;top:0;bottom:0;left:0;right:0;overflow:auto}.app-shell .cook-focus-shell{background:var(--color-surface);width:min(1040px,100%);min-height:100%;margin:auto}.app-shell .cook-focus-topbar{z-index:20;min-height:64px;padding:calc(env(safe-area-inset-top) + 10px) 18px 10px;border-bottom:1px solid var(--color-border);background:#ffffffeb;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-focus-topbar{background:color-mix(in srgb,var(--color-surface) 92%,transparent)}}.app-shell .cook-focus-topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-shell .cook-focus-topbar>button,.app-shell .cook-focus-topbar-actions button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-height:40px;color:var(--color-ink);align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.app-shell .cook-guide-layout{padding:18px 18px calc(26px + env(safe-area-inset-bottom));gap:14px;display:grid}.app-shell .cook-step-media{border-radius:var(--radius-card);background:var(--color-meals-soft);min-height:max(210px,min(34vh,380px));position:relative;overflow:hidden}.app-shell .cook-step-media>img,.app-shell .cook-step-media>iframe{width:100%;height:100%;min-height:inherit;object-fit:cover;border:0;display:block}.app-shell .cook-step-media>span{color:var(--color-meals-strong);align-content:center;place-items:center;gap:8px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.app-shell .cook-step-media>span small{font-size:12px;font-weight:700}.app-shell .cook-step-media-label{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0c111dc7;border-radius:8px;padding:10px 12px;position:absolute;bottom:12px;left:12px;right:12px}.app-shell .cook-step-media-label span,.app-shell .cook-step-media-label strong{display:block}.app-shell .cook-step-media-label span{letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:800}.app-shell .cook-step-media-label strong{margin-top:2px;font-size:13px}.app-shell .cook-progress-card,.app-shell .cook-step-card,.app-shell .cook-quiet-reference{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:16px}.app-shell .cook-progress-card>div:first-child{color:var(--color-ink-soft);justify-content:space-between;align-items:center;font-size:12px;font-weight:700;display:flex}.app-shell .cook-step-card h3{letter-spacing:-.025em;max-width:34ch;margin:16px 0 10px;font-size:max(20px,min(2.4vw,30px));line-height:1.25}.app-shell .cook-step-card>p{color:var(--color-ink-soft);font-size:12px;line-height:1.5}.app-shell .cook-ingredient-nearby-list{color:var(--color-ink);gap:0;margin:12px 0 0;padding:0;list-style:none;display:grid}.app-shell .cook-ingredient-nearby-list li{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;font-size:12.5px;line-height:1.4;display:flex}.app-shell .cook-ingredient-nearby-list li:last-child{border-bottom:0}.app-shell .cook-ingredient-nearby-list li:before{content:"";background:var(--color-meals);border-radius:50%;flex:0 0 6px;width:6px;height:6px;margin-right:2px;transform:translateY(-1px)}.app-shell .cook-ingredient-nearby-list li span{flex:1;min-width:0}.app-shell .cook-ingredient-nearby-list li small{color:var(--color-ink-soft);white-space:nowrap;flex:none;font-size:11px}.app-shell .cook-step-kicker{color:var(--color-meals-strong);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.app-shell .cook-guide-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:#fffffff0;grid-template-columns:auto 1fr 1.2fr;gap:8px;margin:18px -16px -16px;display:grid;position:sticky;bottom:0}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-guide-actions{background:color-mix(in srgb,var(--color-surface) 94%,transparent)}}.app-shell .cook-guide-actions{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-shell .cook-guide-actions button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-height:48px;color:var(--color-ink);padding:0 14px;font-size:13px;font-weight:750}.app-shell .cook-guide-actions button.primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)!important}.app-shell .cook-guide-actions button:disabled{opacity:.42}@media (min-width:760px){.app-shell .cook-guide-layout{grid-template-columns:minmax(300px,.8fr) minmax(380px,1.2fr);align-items:start}.app-shell .cook-step-media{grid-row:1/4;position:sticky;top:82px}.app-shell .cook-progress-card,.app-shell .cook-step-card,.app-shell .cook-quiet-reference{grid-column:2}}@media (max-width:560px){.app-shell .cook-focus-topbar{flex-direction:column;align-items:flex-start}.app-shell .cook-focus-topbar-actions{width:100%;display:flex;overflow-x:auto}.app-shell .cook-step-media{min-height:230px}.app-shell .cook-step-card h3{font-size:20px;line-height:1.3}.app-shell .cook-guide-actions{grid-template-columns:1fr 1fr}.app-shell .cook-listen-toggle{grid-column:auto}}.celebration-confetti{z-index:179;pointer-events:none;contain:strict;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.celebration-confetti i{left:var(--confetti-left);background:var(--confetti-color);opacity:0;will-change:transform,opacity;width:9px;height:15px;transform:translate3d(0,0,0) rotate(0) scale(var(--confetti-scale));animation:celebrationConfettiBurst 1.35s cubic-bezier(.22,1,.36,1) var(--confetti-delay) both;border-radius:2px;position:absolute;bottom:10%}.celebration-confetti i:nth-child(3n){border-radius:50%;width:10px;height:10px}.celebration-confetti i:nth-child(5n){border-radius:999px;width:13px;height:7px}@keyframes celebrationConfettiBurst{0%{opacity:0;transform:translateY(8vh)rotate(0)scale(.45)}9%{opacity:1}68%{opacity:1}to{opacity:0;transform:translate3d(var(--confetti-x),var(--confetti-y),0) rotate(var(--confetti-rotate)) scale(var(--confetti-scale))}}@media (prefers-reduced-motion:reduce){.celebration-confetti{display:none}.shopping-complete-celebration{animation:none!important}}.family-avatar{box-shadow:0 0 0 2px var(--color-surface);transition:transform var(--motion-fast) ease,box-shadow var(--motion-fast) ease}.avatar-circles{isolation:isolate;align-items:center;min-width:0;padding:2px;display:inline-flex}.avatar-circles>:not(:first-child){margin-left:-7px}.avatar-circles .avatar-circle-item{position:relative}.avatar-circles .avatar-circle-item:first-child{z-index:8}.avatar-circles .avatar-circle-item:nth-child(2){z-index:7}.avatar-circles .avatar-circle-item:nth-child(3){z-index:6}.avatar-circles .avatar-circle-item:nth-child(4){z-index:5}.avatar-circles:hover .avatar-circle-item{transform:translateY(-1px)}.avatar-circles-overflow{z-index:4;border:2px solid var(--color-surface);background:var(--color-accent-soft);color:var(--color-accent-strong);letter-spacing:-.04em;border-radius:50%;flex:none;place-items:center;font-weight:750;display:grid;position:relative;box-shadow:0 1px 2px #10182814}.avatar-circles-xs>:not(:first-child){margin-left:-5px}.avatar-circles-xs .avatar-circles-overflow{width:18px;height:18px;font-size:7px}.avatar-circles-sm .avatar-circles-overflow{width:24px;height:24px;font-size:8px}.avatar-circles-md>:not(:first-child){margin-left:-8px}.avatar-circles-md .avatar-circles-overflow{width:32px;height:32px;font-size:10px}.avatar-circles-lg>:not(:first-child){margin-left:-10px}.avatar-circles-lg .avatar-circles-overflow{width:44px;height:44px;font-size:12px}.theme-dark .family-avatar{box-shadow:0 0 0 2px var(--color-surface)}@media (prefers-reduced-motion:reduce){.family-avatar{transition:none}.avatar-circles:hover .avatar-circle-item{transform:none}}.roulette-picker-list{transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.roulette-picker-list.is-refreshing{opacity:.42;pointer-events:none;transform:scale(.992)}.roulette-picker-error{border:1px solid #c4242657;margin:8px 0;padding:9px 10px}@supports (color:color-mix(in lab, red, red)){.roulette-picker-error{border:1px solid color-mix(in srgb,var(--color-warn) 30%,var(--color-border))}}.roulette-picker-error{background:var(--color-warn-soft);color:var(--color-warn);border-radius:8px;font-size:11.5px;font-weight:650;line-height:1.4}@media (prefers-reduced-motion:reduce){.roulette-picker-list{transition:none}}.roulette-ingredient-match{font-weight:700;color:var(--color-success-strong)!important}.app-page-error{border:1px solid var(--color-border);border-radius:var(--radius-section);background:var(--color-surface);text-align:center;max-width:620px;box-shadow:var(--shadow-sm);margin:32px auto;padding:32px}.app-page-error>svg{color:var(--color-warn)}.app-page-error h1{font:750 clamp(24px,4vw,34px)/1.1 var(--font-display);margin:12px 0 6px}.app-page-error p{color:var(--color-ink-soft)}.app-page-error>div{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.app-page-error button{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);min-height:42px;color:var(--color-ink);padding:0 16px;font-weight:700}.app-page-error button:first-child{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action{gap:6px;width:auto;min-width:auto;display:flex;border-color:var(--color-shopping-strong)!important;padding:0 10px!important}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action{border-color:color-mix(in srgb,var(--color-shopping-strong) 26%,var(--color-border))!important}}.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action{color:var(--color-shopping-strong);white-space:nowrap;font-size:10.5px;font-weight:800;background:var(--color-shopping-soft)!important}.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action.covered{border-color:#158d4549!important}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action.covered{border-color:color-mix(in srgb,var(--color-good) 24%,var(--color-border))!important}}.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action.covered{color:var(--color-good);background:var(--color-good-soft)!important}.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action.added{color:var(--color-accent-strong);background:var(--color-accent-soft)!important}.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action:disabled{opacity:1;cursor:default}.reference-meals .meal-day-card .meal-slot-actions .meal-surprise-action{min-width:116px;height:38px;font-size:11.5px;font-weight:800;box-shadow:0 3px 8px #2563eb3d;border-color:var(--color-accent)!important;background:var(--color-accent)!important;color:var(--color-on-accent)!important;padding:0 14px!important}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-actions .meal-surprise-action{box-shadow:0 3px 8px color-mix(in srgb,var(--color-accent) 24%,transparent)}}.reference-meals .meal-day-card .meal-slot-actions .meal-surprise-action{transition:transform var(--motion-fast) ease,box-shadow var(--motion-fast) ease,background var(--motion-fast) ease!important}.reference-meals .meal-day-card .meal-slot-actions .meal-surprise-action:hover{transform:translateY(-1px);box-shadow:0 5px 12px #2563eb4d;background:var(--color-accent-strong)!important;color:var(--color-on-accent)!important}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-actions .meal-surprise-action:hover{box-shadow:0 5px 12px color-mix(in srgb,var(--color-accent) 30%,transparent)}}.reference-meals .meal-day-card .meal-slot-actions .meal-surprise-action:active{transform:translateY(0)scale(.98);box-shadow:0 2px 5px #2563eb33}@supports (color:color-mix(in lab, red, red)){.reference-meals .meal-day-card .meal-slot-actions .meal-surprise-action:active{box-shadow:0 2px 5px color-mix(in srgb,var(--color-accent) 20%,transparent)}}@media (max-width:600px){.reference-meals .meal-slot-actions{flex-wrap:wrap;padding-left:28px}.reference-meals .meal-day-card .meal-slot-actions .meal-grocery-action{flex:1 0 100%;order:-1;justify-content:flex-start;padding-inline-start:12px!important;padding-inline-end:12px!important}.reference-meals .meal-day-card .meal-slot-actions .meal-surprise-action{flex:1 0 100%;order:-1;min-width:100%;height:42px;font-size:12px}}.app-shell .cook-focus-screen{font-family:var(--font-sans)}.app-shell .cook-focus-shell{box-shadow:0 0 0 1px var(--color-border),0 24px 70px #10182829;overflow:hidden}.app-shell .cook-focus-hero{background:#fffcf1;min-height:220px;padding:max(24px,min(5vw,54px))}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-focus-hero{background:color-mix(in srgb,var(--color-meals-soft) 72%,var(--color-surface))}}.app-shell .cook-focus-hero{border-bottom:1px solid var(--color-border)}.app-shell .cook-focus-hero.no-photo{align-items:flex-end;display:flex}.app-shell .cook-focus-copy{width:min(760px,100%);position:relative}.app-shell .cook-focus-copy .eyebrow{color:var(--color-meals-strong);letter-spacing:.12em;margin:0 0 8px;font-size:10px;font-weight:800}.app-shell .cook-focus-copy h2{color:var(--color-ink);letter-spacing:-.035em;margin:0;font-size:max(27px,min(5vw,46px));font-weight:700;line-height:1.08}.app-shell .cook-focus-copy>p:not(.eyebrow){color:var(--color-ink-soft);margin:10px 0 0;font-size:14px;line-height:1.55}.app-shell .cook-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;display:flex}.app-shell .cook-meta-row span{border:1px solid var(--color-meals-strong);align-items:center;gap:6px;min-height:34px;padding:6px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-meta-row span{border:1px solid color-mix(in srgb,var(--color-meals-strong) 20%,var(--color-border))}}.app-shell .cook-meta-row span{background:#ffffffd1;border-radius:8px}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-meta-row span{background:color-mix(in srgb,var(--color-surface) 82%,transparent)}}.app-shell .cook-meta-row span{color:var(--color-ink-soft);font-size:11.5px;font-weight:650}.app-shell .cook-cost-badge{background:#e3f4e9!important}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-cost-badge{background:color-mix(in srgb,var(--color-good) 12%,var(--color-surface))!important}}.app-shell .cook-cost-badge{border-color:#15924657!important}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-cost-badge{border-color:color-mix(in srgb,var(--color-good) 30%,var(--color-border))!important}}.app-shell .cook-cost-badge{margin-left:var(--space-3);color:var(--color-good-strong,#166534)!important;font-weight:700!important}.cook-ingredient-item{justify-content:space-between;align-items:center;gap:8px;display:flex}.cook-ingredient-item span{flex:1;min-width:0}.cook-substitute-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;border-radius:6px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:600;transition:background .15s,border-color .15s}.cook-substitute-btn:hover{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent)}.substitute-intro{color:var(--color-ink);margin:0 0 12px;font-size:13px}.substitute-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.substitute-list li{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);border-radius:8px;padding:10px 12px;font-size:12.5px;line-height:1.5}.substitute-empty{color:var(--color-ink-soft);text-align:center;padding:16px;font-size:13px}.app-shell .cook-status{border:1px solid #2256c944;align-items:center;gap:8px;margin:16px 18px 0;padding:11px 13px;display:flex}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-status{border:1px solid color-mix(in srgb,var(--color-accent) 22%,var(--color-border))}}.app-shell .cook-status{background:var(--color-accent-soft);color:var(--color-accent-strong);border-radius:10px;font-size:12px;font-weight:650}.app-shell .cook-status.subtle{border-color:#bc242649}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-status.subtle{border-color:color-mix(in srgb,var(--color-warn) 24%,var(--color-border))}}.app-shell .cook-status.subtle{background:var(--color-warn-soft);color:var(--color-warn)}.app-shell .cook-focus-layout{padding:18px 18px calc(30px + env(safe-area-inset-bottom));grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.app-shell .cook-panel{display:block;padding:18px!important}.app-shell .cook-panel:nth-of-type(3){grid-column:1/-1}.app-shell .cook-panel-head{color:var(--color-meals-strong);align-items:center;gap:8px;display:flex}.app-shell .cook-panel-head h3{color:var(--color-ink);margin:0;font-size:15px;font-weight:700}.app-shell .cook-panel-note{color:var(--color-ink-soft);margin:8px 0 12px;font-size:11.5px;line-height:1.5}.app-shell .cook-plain-list{color:var(--color-ink);gap:7px;margin:0;padding:0;font-size:12.5px;list-style:none;display:grid}.app-shell .cook-plain-list li{padding-left:15px;line-height:1.45;position:relative}.app-shell .cook-plain-list li:before{content:"";background:var(--color-meals);border-radius:50%;width:5px;height:5px;position:absolute;top:.58em;left:0}.app-shell .cook-plain-list.ordered{counter-reset:cook-step}.app-shell .cook-plain-list.ordered li{counter-increment:cook-step;background:var(--color-surface-sunken);border-radius:8px;padding:10px 10px 10px 38px}.app-shell .cook-plain-list.ordered li:before{content:counter(cook-step);background:var(--color-meals-soft);width:21px;height:21px;color:var(--color-meals-strong);place-items:center;font-size:9px;font-weight:800;display:grid;top:9px}.app-shell .cook-empty-line{font-style:normal;color:var(--color-ink-faint)!important}.app-shell .cook-empty-line:before{background:var(--color-border-strong)!important}.app-shell .recipe-grocery-button{border:1px solid var(--color-border);background:var(--color-shopping-soft);width:100%;min-height:42px;color:var(--color-shopping-strong);border-radius:8px;justify-content:center;align-items:center;gap:7px;margin-top:15px;padding:0 12px;font-size:12px;font-weight:750;transition:background .2s,color .2s,border-color .2s;display:flex}.app-shell .recipe-grocery-button.needs-items{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.app-shell .recipe-grocery-button.needs-items:hover{background:#1f54c8}@supports (color:color-mix(in lab, red, red)){.app-shell .recipe-grocery-button.needs-items:hover{background:color-mix(in srgb,var(--color-accent) 85%,#000)}}.app-shell .recipe-grocery-button:disabled{opacity:.6}.app-shell .cook-nutrition-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px;display:grid}.app-shell .cook-nutrition-main{background:var(--color-meals-soft);color:var(--color-meals-strong);border-radius:10px;grid-column:1/-1;align-items:baseline;gap:5px;padding:12px;display:flex}.app-shell .cook-nutrition-main strong{font-size:28px}.app-shell .cook-nutrition-main span{font-size:11px;font-weight:700}.app-shell .cook-nutrition-row{border-bottom:1px solid var(--color-border);color:var(--color-ink-soft);justify-content:space-between;gap:8px;padding:8px 9px;font-size:11.5px;display:flex}.app-shell .cook-nutrition-row b{color:var(--color-ink)}.app-shell .cook-nutrition-loading{color:var(--color-ink-soft);margin-top:12px;font-size:12px}.app-shell .cook-primary-action{border:1px solid var(--color-accent);background:var(--color-accent);min-height:58px;color:var(--color-on-accent);border-radius:10px;grid-column:1/-1;justify-content:center;align-items:center;gap:10px;padding:10px 16px;display:flex;box-shadow:0 5px 14px #2563eb33}@supports (color:color-mix(in lab, red, red)){.app-shell .cook-primary-action{box-shadow:0 5px 14px color-mix(in srgb,var(--color-accent) 20%,transparent)}}.app-shell .cook-primary-action>span{text-align:left;display:grid}.app-shell .cook-primary-action strong{font-size:13px}.app-shell .cook-primary-action small{opacity:.84;margin-top:2px;font-size:10.5px;font-weight:550}.app-shell .cook-primary-action:disabled{border-color:var(--color-border);background:var(--color-surface-sunken);color:var(--color-ink-faint);box-shadow:none}@media (max-width:640px){.app-shell .cook-focus-topbar{flex-direction:row;align-items:center;min-height:58px;padding-inline-start:12px;padding-inline-end:12px}.app-shell .cook-focus-topbar>button{flex:none;padding-inline-start:10px;padding-inline-end:10px}.app-shell .cook-focus-topbar-actions{flex-wrap:nowrap;width:auto;min-width:0;overflow-x:auto}.app-shell .cook-focus-topbar-actions button{white-space:nowrap}.app-shell .cook-focus-hero{min-height:190px;padding:24px 16px}.app-shell .cook-focus-layout{padding:12px 12px calc(24px + env(safe-area-inset-bottom));grid-template-columns:1fr}.app-shell .cook-panel:nth-of-type(3),.app-shell .cook-primary-action{grid-column:auto}.app-shell .cook-status{margin:12px 12px 0}.app-shell .cook-meta-row{gap:6px;margin-top:15px}}.today-daily-meals{gap:8px;display:grid}.today-daily-meal{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;display:grid}.today-daily-meal.is-planned{border-color:var(--color-meals-strong)}@supports (color:color-mix(in lab, red, red)){.today-daily-meal.is-planned{border-color:color-mix(in srgb,var(--color-meals-strong) 20%,var(--color-border))}}.today-daily-meal.is-planned{background:#fffdf7}@supports (color:color-mix(in lab, red, red)){.today-daily-meal.is-planned{background:color-mix(in srgb,var(--color-meals-soft) 42%,var(--color-surface))}}.today-daily-meal-icon{background:var(--color-meals-soft);width:36px;height:36px;color:var(--color-meals-strong);border-radius:8px;place-items:center;display:grid}.today-daily-meal-copy{min-width:0;display:grid}.today-daily-meal-copy>span{color:var(--color-meals-strong);letter-spacing:.08em;text-transform:uppercase;font-size:9.5px;font-weight:800}.today-daily-meal-copy>strong{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:13px;font-weight:650;overflow:hidden}.today-daily-meal-copy>small{color:var(--color-ink-faint);align-items:center;gap:5px;margin-top:4px;font-size:9.5px;display:flex}.today-daily-meal-thumb{object-fit:cover;border-radius:8px;width:34px;height:34px;margin-bottom:3px;box-shadow:0 2px 7px #0f172a1f}.today-daily-meal .today-meal-badge{border:1px solid var(--color-border);border-radius:7px;grid-column:2;justify-self:start;align-items:center;gap:5px;min-height:24px;padding:3px 7px;font-size:9.5px;font-weight:750;display:inline-flex}.today-daily-meal .today-meal-badge.needs{background:var(--color-shopping-soft);color:var(--color-shopping-strong)}.today-daily-meal .today-meal-badge.covered{background:var(--color-good-soft);color:var(--color-good)}.today-daily-meal-actions{grid-area:1/3/3;align-items:center;gap:5px;display:flex}.today-daily-meal-actions button{border:1px solid var(--color-border);background:var(--color-surface);min-height:34px;color:var(--color-ink-soft);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:10.5px;font-weight:700;display:inline-flex}.today-daily-meal-actions button.ideas{border-color:var(--color-meals-strong)}@supports (color:color-mix(in lab, red, red)){.today-daily-meal-actions button.ideas{border-color:color-mix(in srgb,var(--color-meals-strong) 22%,var(--color-border))}}.today-daily-meal-actions button.ideas{background:var(--color-meals-soft);color:var(--color-meals-strong)}.today-daily-meal-actions button.cook{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}@media (max-width:640px){.today-daily-meal{grid-template-columns:36px minmax(0,1fr)}.today-daily-meal-actions{grid-area:auto/1/auto/-1;grid-template-columns:1fr 1fr;display:grid}.today-daily-meal-actions.is-single{grid-template-columns:1fr}.today-daily-meal-actions button{min-height:38px}.today-daily-meal .today-meal-badge{grid-column:2}}.onboarding-scheme-picker{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-sunken);margin-top:16px;padding:14px}.onboarding-scheme-picker>span{color:var(--color-ink);align-items:center;gap:7px;font-size:12.5px;font-weight:800;display:flex}.onboarding-scheme-picker>p{color:var(--color-ink-soft);margin:4px 0 11px;font-size:10.5px;line-height:1.4}.onboarding-scheme-picker>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.onboarding-scheme-picker button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);text-align:left;justify-items:start;gap:3px;min-width:0;padding:9px;display:grid;position:relative}.onboarding-scheme-picker button.selected{border-color:var(--color-accent);box-shadow:0 0 0 2px #2563eb24}@supports (color:color-mix(in lab, red, red)){.onboarding-scheme-picker button.selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent) 14%,transparent)}}.onboarding-scheme-picker button>svg{color:var(--color-accent-strong);position:absolute;top:6px;right:6px}.onboarding-scheme-picker strong{color:var(--color-ink);font-size:10.5px}.onboarding-scheme-picker small{color:var(--color-ink-soft);font-size:8.5px}.onboarding-scheme-swatches{margin-bottom:2px;display:flex}.onboarding-scheme-swatches i{border:1px solid var(--color-surface);border-radius:50%;width:14px;height:14px;margin-left:-3px}.onboarding-scheme-swatches i:first-child{margin-left:0}@media (max-width:700px){.onboarding-scheme-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}}.task-import-source{flex-wrap:wrap;gap:6px;margin:14px 0 4px;display:flex}.task-import-source button{border:1px solid var(--color-border);background:var(--color-surface);min-height:36px;color:var(--color-ink-soft);border-radius:999px;padding:0 12px;font-size:12px;font-weight:700}.task-import-source button.is-selected{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.inventory-item-grid .date-field{margin:0}.inventory-item-grid .date-field .form-label{color:var(--color-ink-faint)}.kitchen-inventory-card>header{grid-template-columns:auto minmax(0,1fr) auto;display:grid}.inventory-add-button{border:1px solid var(--color-shopping);border-radius:var(--radius-control);background:var(--color-shopping-soft);min-height:38px;color:var(--color-shopping-strong);align-items:center;gap:6px;padding:0 12px;font-size:11.5px;font-weight:750;display:inline-flex}.inventory-pulse{grid-template-columns:repeat(3,minmax(82px,120px)) minmax(180px,1fr);gap:7px;margin-bottom:12px;display:grid}.inventory-pulse>div{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-sunken);grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;padding:9px 10px;display:grid}.inventory-pulse>div>span{background:var(--color-surface);width:28px;height:28px;color:var(--color-ink-soft);border-radius:9px;grid-row:1/3;place-items:center;display:grid}.inventory-pulse strong{font-size:15px;line-height:1}.inventory-pulse small{color:var(--color-ink-soft);margin-top:2px;font-size:9.5px;font-weight:650}.inventory-pulse>div.urgent{border-color:#c1242652}@supports (color:color-mix(in lab, red, red)){.inventory-pulse>div.urgent{border-color:color-mix(in srgb,var(--color-warn) 28%,var(--color-border))}}.inventory-pulse>div.urgent{background:var(--color-warn-soft)}.inventory-pulse>div.urgent>span{color:var(--color-warn)}.inventory-pulse>div.soon{border-color:#14a59757}@supports (color:color-mix(in lab, red, red)){.inventory-pulse>div.soon{border-color:color-mix(in srgb,var(--color-shopping) 30%,var(--color-border))}}.inventory-pulse>div.soon{background:var(--color-shopping-soft)}.inventory-pulse>div.soon>span{color:var(--color-shopping-strong)}.inventory-pulse>button{border:1px solid var(--color-accent);border-radius:var(--radius-control);background:var(--color-accent-soft);min-height:48px;color:var(--color-accent-strong);justify-content:center;align-items:center;gap:7px;font-size:11.5px;font-weight:750;display:flex}.inventory-pulse>button:disabled{border-color:var(--color-border);background:var(--color-surface-sunken);color:var(--color-ink-faint);opacity:.7}.inventory-item-grid article{grid-template-columns:minmax(0,1fr) minmax(120px,auto);grid-template-areas:"copy date""actions actions";align-items:end}.inventory-item-copy{grid-area:copy}.inventory-item-grid .date-field{grid-area:date}.inventory-item-grid article.is-expired{border-color:#c4242657}@supports (color:color-mix(in lab, red, red)){.inventory-item-grid article.is-expired{border-color:color-mix(in srgb,var(--color-warn) 30%,var(--color-border))}}.inventory-item-grid article.is-expired{background:var(--color-warn-soft)}.inventory-item-grid article.is-today,.inventory-item-grid article.is-soon{border-color:#14a39552}@supports (color:color-mix(in lab, red, red)){.inventory-item-grid article.is-today,.inventory-item-grid article.is-soon{border-color:color-mix(in srgb,var(--color-shopping) 28%,var(--color-border))}}.inventory-item-copy em{border-radius:var(--radius-pill);background:var(--color-shopping-soft);color:var(--color-shopping-strong);margin-top:5px;padding:3px 6px;font-size:9px;font-style:normal;font-weight:750;display:inline-block}.is-expired .inventory-item-copy em{background:var(--color-surface);color:var(--color-warn)}.inventory-item-actions{grid-area:actions;justify-content:flex-end;gap:6px;padding-top:3px;display:flex}.inventory-item-actions button{border:1px solid var(--color-border);background:var(--color-surface);justify-content:center;align-items:center;padding:0 8px;font-size:9.5px;font-weight:700;border-radius:var(--radius-pill)!important;width:auto!important;height:28px!important;color:var(--color-ink-soft)!important;gap:4px!important;display:inline-flex!important}.inventory-item-actions button:first-child{color:var(--color-accent-strong)!important}.inventory-item-actions button:disabled{opacity:.55}.inventory-empty{justify-items:center;gap:6px;padding:20px;display:grid}.inventory-empty>span{background:var(--color-shopping-soft);width:40px;height:40px;color:var(--color-shopping-strong);border-radius:13px;place-items:center;display:grid}.inventory-empty strong{color:var(--color-ink);font-size:13px}.inventory-empty p{max-width:480px;line-height:1.45}.inventory-empty button{border:1px solid var(--color-shopping);border-radius:var(--radius-control);background:var(--color-shopping-soft);color:var(--color-shopping-strong);align-items:center;gap:5px;margin-top:3px;padding:8px 11px;font-size:10.5px;font-weight:750;display:inline-flex}.inventory-add-intro{color:var(--color-ink-soft);margin:-3px 0 16px;font-size:12px;line-height:1.5}.inventory-add-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.inventory-add-location{margin-bottom:14px;display:block}.inventory-add-location>span{color:var(--color-ink-soft);margin-bottom:6px;font-size:12.5px;font-weight:650;display:block}.inventory-add-location>div{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.inventory-add-location button{border:1px solid var(--color-border);border-radius:var(--radius-control);min-height:42px;color:var(--color-ink-soft);justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.inventory-add-location button.selected{border-color:var(--color-shopping);background:var(--color-shopping-soft);color:var(--color-shopping-strong)}.inventory-add-error{color:var(--color-warn);margin:-5px 0 10px;font-size:11.5px;font-weight:650}@media (max-width:760px){.inventory-pulse{grid-template-columns:repeat(3,1fr)}.inventory-pulse>button{grid-column:1/-1}.kitchen-inventory-card>header{grid-template-columns:auto 1fr}.inventory-add-button{grid-column:1/-1;justify-content:center;margin-top:2px}.inventory-item-grid article{grid-template-columns:1fr;grid-template-areas:"copy""date""actions";align-items:stretch}.inventory-item-grid input{width:100%}.inventory-item-actions{justify-content:stretch}.inventory-item-actions button{flex:1}.inventory-add-grid{grid-template-columns:1fr}}.inventory-expiry-progress{gap:3px;min-width:130px;margin-top:7px;display:grid}.inventory-expiry-progress>span{background:var(--color-border);border-radius:999px;height:5px;display:block;overflow:hidden}.inventory-expiry-progress i{border-radius:inherit;background:var(--color-shopping);height:100%;transition:width .25s;display:block}.inventory-expiry-progress small{color:var(--color-ink-soft)!important;margin:0!important;font-size:9px!important}.is-expired .inventory-expiry-progress i{background:var(--color-warn)}.shopping-list-switcher{overscroll-behavior-inline:contain;scrollbar-width:none;gap:7px;max-width:100%;margin:0 20px 14px;padding-bottom:3px;display:flex;overflow-x:auto}.shopping-list-switcher::-webkit-scrollbar{display:none}.shopping-list-switcher button{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);min-height:38px;color:var(--color-ink-soft);flex:none;align-items:center;gap:6px;padding:0 11px;font-size:11px;font-weight:700;display:flex}.shopping-list-switcher button.selected{border-color:var(--list-tone,var(--color-shopping));background:var(--color-shopping-soft);color:var(--color-shopping-strong)}.shopping-list-switcher button em{border-radius:var(--radius-pill);background:var(--color-surface-sunken);min-width:20px;color:var(--color-ink-soft);text-align:center;padding:2px 5px;font-size:9px;font-style:normal}.shopping-list-switcher .shopping-list-add{color:var(--color-shopping-strong);border-style:dashed}@media (max-width:640px){.shopping-list-switcher{margin-inline-start:16px;margin-inline-end:16px}}.inventory-tools{justify-content:space-between;align-items:center;gap:10px;margin:0 0 10px;display:flex}.inventory-search{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-sunken);min-width:220px;max-width:420px;min-height:38px;color:var(--color-ink-faint);flex:1;align-items:center;gap:7px;padding:0 10px;display:flex}.inventory-search:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.inventory-search input{min-width:0;color:var(--color-ink);background:0 0;border:0;outline:0;flex:1;font-size:11.5px}.inventory-search button{width:24px;height:24px;color:var(--color-ink-faint);border-radius:8px;place-items:center;display:grid}.inventory-status-filter{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-sunken);gap:4px;padding:3px;display:flex}.inventory-status-filter button{min-height:30px;color:var(--color-ink-soft);white-space:nowrap;border-radius:9px;padding:0 9px;font-size:10px;font-weight:700}.inventory-status-filter button.selected{background:var(--color-surface);color:var(--color-accent-strong);box-shadow:var(--shadow-xs)}.inventory-use-first{border:1px solid #14a39552;grid-template-columns:minmax(155px,.5fr) minmax(0,1.5fr);gap:10px;margin:0 0 11px;padding:10px;display:grid}@supports (color:color-mix(in lab, red, red)){.inventory-use-first{border:1px solid color-mix(in srgb,var(--color-shopping) 28%,var(--color-border))}}.inventory-use-first{border-radius:var(--radius-control);background:#f7fefc}@supports (color:color-mix(in lab, red, red)){.inventory-use-first{background:color-mix(in srgb,var(--color-shopping-soft) 55%,var(--color-surface))}}.inventory-use-first>div:first-child{align-items:center;gap:8px;display:flex}.inventory-use-first>div:first-child>span{background:var(--color-surface);width:31px;height:31px;color:var(--color-shopping-strong);border-radius:10px;place-items:center;display:grid}.inventory-use-first strong,.inventory-use-first small{display:block}.inventory-use-first strong{color:var(--color-ink);font-size:11.5px}.inventory-use-first small{color:var(--color-ink-soft);margin-top:2px;font-size:9px}.inventory-use-first>div:last-child{gap:6px;display:flex;overflow-x:auto}.inventory-use-first button{border:1px solid var(--color-border);background:var(--color-surface);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-width:145px;padding:7px 9px;display:flex}.inventory-use-first button span{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;overflow:hidden}.inventory-use-first button em{color:var(--color-shopping-strong);white-space:nowrap;font-size:8.5px;font-style:normal;font-weight:750}.inventory-item-copy{align-items:flex-start;gap:9px;min-width:0;display:flex}.inventory-item-copy>img{object-fit:cover;border-radius:10px;width:34px;height:34px}.inventory-item-copy>div{min-width:0}.inventory-item-copy>div>span{color:var(--color-ink-faint);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:8px;font-weight:800;display:block}.inventory-item-copy>div>small{margin-top:1px}.inventory-item-actions{align-items:center}.inventory-quantity{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);grid-template-columns:26px minmax(42px,auto) 26px;align-items:center;margin-right:auto;display:inline-grid;overflow:hidden}.inventory-quantity button{border:0!important;border-radius:0!important;width:26px!important;height:27px!important;padding:0!important}.inventory-quantity button:disabled{opacity:.35}.inventory-quantity strong{color:var(--color-ink);text-align:center;white-space:nowrap;padding:0 4px;font-size:9.5px}.inventory-select-field{margin-bottom:14px;display:block}.inventory-select-field>span{color:var(--color-ink-soft);margin-bottom:6px;font-size:12.5px;font-weight:650;display:block}.inventory-select-field select{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;height:44px;color:var(--color-ink);outline:0;padding:0 12px;font-size:12px}.inventory-select-field select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}@media (max-width:760px){.inventory-use-first{grid-template-columns:1fr}.inventory-tools{flex-direction:column;align-items:stretch}.inventory-search{min-width:0;max-width:none}.inventory-status-filter{overflow-x:auto}.inventory-status-filter button{flex:1}.inventory-item-actions{flex-wrap:wrap}.inventory-quantity{grid-template-columns:34px 1fr 34px;width:100%;margin:0}.inventory-quantity button{width:34px!important}.inventory-add-grid .inventory-select-field{margin-bottom:0}}.settings-color-schemes,.onboarding-scheme-picker>div{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:700px){.settings-color-schemes,.onboarding-scheme-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.settings-color-schemes,.onboarding-scheme-picker>div{grid-template-columns:1fr}}.inventory-pulse{grid-template-columns:repeat(3,minmax(82px,120px))}.inventory-meal-ideas{border:1px solid var(--color-meals-strong);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin:0 0 12px;padding:10px 11px;display:grid}@supports (color:color-mix(in lab, red, red)){.inventory-meal-ideas{border:1px solid color-mix(in srgb,var(--color-meals-strong) 20%,var(--color-border))}}.inventory-meal-ideas{border-radius:var(--radius-control);background:#fffdf6}@supports (color:color-mix(in lab, red, red)){.inventory-meal-ideas{background:color-mix(in srgb,var(--color-meals-soft) 44%,var(--color-surface))}}.inventory-meal-ideas>span{background:var(--color-surface);width:32px;height:32px;color:var(--color-meals-strong);border-radius:10px;place-items:center;display:grid}.inventory-meal-ideas strong,.inventory-meal-ideas small{display:block}.inventory-meal-ideas strong{color:var(--color-ink);font-size:11.5px}.inventory-meal-ideas small{color:var(--color-ink-soft);margin-top:2px;font-size:9.5px}.inventory-meal-ideas button{border:1px solid var(--color-meals-strong);border-radius:var(--radius-control);background:var(--color-surface);min-height:34px;color:var(--color-meals-strong);padding:0 11px;font-size:10.5px;font-weight:750}.inventory-empty b{color:var(--color-ink);font-weight:750}@media (max-width:760px){.inventory-meal-ideas{grid-template-columns:auto 1fr}.inventory-meal-ideas button{grid-column:1/-1;min-height:38px}}.kitchen-watch-page{min-width:0}.kitchen-watch-overview,.kitchen-watch-review,.kitchen-watch-page>.kitchen-inventory-card{margin:0 20px 16px}.kitchen-watch-overview{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-xs);padding:16px}.kitchen-watch-overview .inventory-pulse{margin-bottom:11px}.kitchen-watch-calm{border:1px solid #14a0934b;align-items:center;gap:9px;margin-bottom:11px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.kitchen-watch-calm{border:1px solid color-mix(in srgb,var(--color-shopping) 25%,var(--color-border))}}.kitchen-watch-calm{border-radius:var(--radius-control);background:var(--color-shopping-soft);color:var(--color-shopping-strong)}.kitchen-watch-calm span,.kitchen-watch-calm strong,.kitchen-watch-calm small{display:block}.kitchen-watch-calm strong{font-size:11.5px}.kitchen-watch-calm small{color:var(--color-ink-soft);margin-top:2px;font-size:9.5px}.kitchen-watch-review{border:1px solid #14a0934b;grid-template-columns:minmax(180px,.6fr) minmax(0,1.4fr);gap:14px;padding:16px;display:grid}@supports (color:color-mix(in lab, red, red)){.kitchen-watch-review{border:1px solid color-mix(in srgb,var(--color-shopping) 25%,var(--color-border))}}.kitchen-watch-review{border-radius:var(--radius-card);background:#f9fefd}@supports (color:color-mix(in lab, red, red)){.kitchen-watch-review{background:color-mix(in srgb,var(--color-shopping-soft) 42%,var(--color-surface))}}.kitchen-watch-review>div:first-child p{color:var(--color-shopping-strong);letter-spacing:.11em;text-transform:uppercase;font-size:9px;font-weight:850}.kitchen-watch-review h2{color:var(--color-ink);margin:3px 0;font-size:17px;font-weight:750}.kitchen-watch-review small{color:var(--color-ink-soft);font-size:10px}.kitchen-watch-review>div:last-child{gap:7px;display:grid}.kitchen-watch-review article{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.kitchen-watch-review article>span{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.kitchen-watch-review article>div{gap:4px;display:flex}.kitchen-watch-review article button{border:1px solid var(--color-border);min-height:29px;color:var(--color-ink-soft);border-radius:8px;padding:0 8px;font-size:9px;font-weight:700}.kitchen-watch-review article button:first-child{border-color:var(--color-shopping);background:var(--color-shopping-soft);color:var(--color-shopping-strong)}.kitchen-watch-item-icon{background:var(--color-shopping-soft);width:34px;height:34px;color:var(--color-shopping-strong);border-radius:10px;flex:0 0 34px;place-items:center;display:grid}.kitchen-watch-page>.kitchen-inventory-card{padding:16px}.kitchen-watch-page>.kitchen-inventory-card>header{margin-bottom:13px}@media (max-width:760px){.kitchen-watch-overview,.kitchen-watch-review,.kitchen-watch-page>.kitchen-inventory-card{margin-inline-start:12px;margin-inline-end:12px}.kitchen-watch-review{grid-template-columns:1fr;padding:13px}.kitchen-watch-review article{grid-template-columns:1fr}.kitchen-watch-review article>div{grid-template-columns:repeat(3,1fr);display:grid}.kitchen-watch-page>.kitchen-inventory-card{padding:13px}}.kitchen-watch-page,.kitchen-watch-page>.kitchen-inventory-card,.kitchen-watch-page .inventory-item-grid{overflow:visible}.kitchen-watch-page .inventory-item-grid article{position:relative}.kitchen-watch-page .inventory-item-grid article:has(.date-trigger.is-open){z-index:40}.watch-purchase-prompt{border:1px solid #149f9249;align-items:flex-start;gap:11px;margin-bottom:18px;padding:13px;display:flex}@supports (color:color-mix(in lab, red, red)){.watch-purchase-prompt{border:1px solid color-mix(in srgb,var(--color-shopping) 24%,var(--color-border))}}.watch-purchase-prompt{border-radius:var(--radius-control);background:var(--color-shopping-soft)}.watch-purchase-prompt>span{background:var(--color-surface);width:40px;height:40px;color:var(--color-shopping-strong);border-radius:12px;flex:0 0 40px;place-items:center;display:grid}.watch-purchase-prompt strong{color:var(--color-ink);font-size:14px;display:block}.watch-purchase-prompt p{color:var(--color-ink-soft);margin-top:3px;font-size:11.5px;line-height:1.45}.watch-purchase-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.inventory-replace-button{border-color:#ce25267b!important}@supports (color:color-mix(in lab, red, red)){.inventory-replace-button{border-color:color-mix(in srgb,var(--color-warn) 45%,var(--color-border))!important}}.inventory-replace-button{background:var(--color-warn-soft)!important;color:var(--color-warn)!important}@media (max-width:520px){.watch-purchase-actions{grid-template-columns:1fr}}.kw-page{min-width:0;padding-bottom:24px}@media (max-width:700px){.kw-page{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}.kw-page .page-header-action .inventory-add-button,.kw-add-btn{border-radius:var(--radius-control);color:#fff;background:#e85d3a;border:1px solid #e85d3a;align-items:center;gap:6px;min-height:38px;padding:0 14px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.kw-add-btn:hover{background:#d4522e;transform:translateY(-1px);box-shadow:0 2px 8px #e85d3a40}.kw-alert-banner{border:1px solid #c853374b;align-items:center;gap:8px;margin:0 20px 14px;padding:12px 16px;display:flex}@supports (color:color-mix(in lab, red, red)){.kw-alert-banner{border:1px solid color-mix(in srgb,#e85d3a 25%,var(--color-border))}}.kw-alert-banner{border-radius:var(--radius-control);color:#e85d3a;background:#fde9e3;font-size:13px;font-weight:700}.kw-alert-banner svg{flex:none}.kw-search-bar{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);align-items:center;gap:8px;min-height:42px;margin:0 20px 14px;padding:0 12px;transition:border-color .15s,box-shadow .15s;display:flex}.kw-search-bar:focus-within{border-color:#e85d3a;box-shadow:0 0 0 3px #e85d3a1a}.kw-search-bar svg{color:var(--color-ink-faint);flex:none}.kw-search-bar input{min-width:0;color:var(--color-ink);background:0 0;border:0;outline:none;flex:1;font-size:13px}.kw-search-bar input::placeholder{color:var(--color-ink-faint)}.kw-search-bar button{border-radius:var(--radius-pill);background:var(--color-surface-sunken);width:24px;height:24px;color:var(--color-ink-soft);cursor:pointer;border:0;place-items:center;display:grid}.kw-category-tabs{scrollbar-width:none;gap:8px;margin:0 20px 14px;padding-bottom:4px;display:flex;overflow-x:auto}.kw-category-tabs::-webkit-scrollbar{display:none}.kw-category-tab{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;white-space:nowrap;flex:none;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.kw-category-tab:hover{border-color:var(--color-accent);color:var(--color-accent)}.kw-category-tab--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.kw-group{margin:0 20px 18px}.kw-group-header{border-bottom:2px solid var(--color-border);align-items:center;gap:8px;margin-bottom:10px;padding-bottom:8px;display:flex}.kw-group-indicator{border-radius:2px;flex:0 0 4px;width:4px;height:18px}.kw-group-header h3{color:var(--color-ink);margin:0;font-size:14px;font-weight:750}.kw-group-count{color:var(--color-ink-faint);font-size:12px;font-weight:600}.kw-group-items{gap:12px;display:grid}.kw-card{border-radius:var(--radius-section);background:var(--color-surface);border:1px solid #0000;transition:border-color .15s,box-shadow .15s;position:relative;overflow:hidden}.kw-card:active{box-shadow:var(--shadow-xs)}.kw-card--expired{background:#fef9f7;border-color:#0000}@supports (color:color-mix(in lab, red, red)){.kw-card--expired{background:color-mix(in srgb,#e85d3a 4%,var(--color-surface))}}.kw-card--soon{background:#fefaf9;border-color:#0000}@supports (color:color-mix(in lab, red, red)){.kw-card--soon{background:color-mix(in srgb,#e85d3a 3%,var(--color-surface))}}.kw-card-body{justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.kw-card-left{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.kw-card-cat{border-radius:var(--radius-pill);background:0 0;align-items:center;gap:6px;width:fit-content;padding:4px 0;display:inline-flex}.kw-card-cat-icon{border-radius:var(--radius-sm);place-items:center;width:20px;height:20px;display:grid}.kw-card-cat-label{color:var(--color-ink-soft);font-size:11px;font-weight:650}.kw-card-name{color:var(--color-ink);text-transform:capitalize;margin:4px 0 0;font-size:18px;font-weight:750;line-height:1.2}.kw-card-name-row{align-items:center;gap:8px;min-width:0;display:flex}.kw-card-name-row .kw-card-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.kw-card-expiry{color:#e85d3a;margin:4px 0 0;font-size:13px;font-weight:700}.kw-card-expiry--expired,.kw-card-expiry--soon{color:#e85d3a}.kw-card-date{color:var(--color-ink-soft);align-items:center;gap:4px;margin:4px 0 0;font-size:12px;display:inline-flex}.kw-card-date svg{flex:none}.kw-card-location{color:var(--color-ink-faint);margin:2px 0 0;font-size:12px;font-weight:500}.kw-card-right{flex-direction:column;flex:none;align-items:center;gap:8px;display:flex}.kw-card-actions{gap:6px;margin-top:8px;display:flex}.kw-change-date-btn{border-radius:var(--radius-md);color:#fff;cursor:pointer;white-space:nowrap;background:#e85d3a;border:1px solid #e85d3a;align-items:center;gap:5px;padding:6px 12px;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex}.kw-change-date-btn:hover{background:#d4522e;transform:translateY(-1px);box-shadow:0 2px 6px #e85d3a33}.kw-delete-btn{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:36px;height:36px;color:var(--color-ink-faint);cursor:pointer;place-items:center;transition:all .15s;display:grid}.kw-delete-btn:hover{background:#fdf2ef}@supports (color:color-mix(in lab, red, red)){.kw-delete-btn:hover{background:color-mix(in srgb,#e85d3a 8%,var(--color-surface))}}.kw-delete-btn:hover{color:#e85d3a;border-color:#e85d3a}.kw-replace-btn{border:1px solid #ce25267b;align-items:center;gap:4px;padding:4px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.kw-replace-btn{border:1px solid color-mix(in srgb,var(--color-warn) 45%,var(--color-border))}}.kw-replace-btn{border-radius:var(--radius-md);background:var(--color-warn-soft);color:var(--color-warn);cursor:pointer;white-space:nowrap;font-size:11px;font-weight:700}.kw-replace-btn:disabled{opacity:.5;cursor:not-allowed}.kw-empty{border:1px dashed var(--color-border);border-radius:var(--radius-card);color:var(--color-ink-soft);text-align:center;flex-direction:column;align-items:center;gap:8px;margin:32px 20px;padding:24px;display:flex}.kw-empty h3{color:var(--color-ink);font-size:15px;font-weight:700}.kw-empty p{font-size:12px}.kw-modal-intro{color:var(--color-ink-soft);margin-bottom:14px;font-size:12px;line-height:1.5}.kw-modal-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.kw-select-field{display:block}.kw-select-field>span{color:var(--color-ink-soft);margin-bottom:5px;font-size:12px;font-weight:600;display:block}.kw-select-field select{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;height:40px;color:var(--color-ink);padding:0 10px;font-size:12px}.kw-location-select{margin-bottom:14px;display:block}.kw-location-select>span{color:var(--color-ink-soft);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.kw-location-select>div{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.kw-location-select button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-height:36px;color:var(--color-ink-soft);cursor:pointer;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.kw-location-select button.selected{border-color:var(--color-shopping);background:var(--color-shopping-soft);color:var(--color-shopping-strong)}.kw-error{border:1px solid #c4242657;margin-bottom:12px;padding:8px 10px}@supports (color:color-mix(in lab, red, red)){.kw-error{border:1px solid color-mix(in srgb,var(--color-warn) 30%,var(--color-border))}}.kw-error{border-radius:var(--radius-control);background:var(--color-warn-soft);color:var(--color-warn);font-size:11.5px}.kw-suggestion-hint{border-radius:var(--radius-control);background:#2563eb14;margin-top:6px;margin-bottom:12px;padding:6px 10px}@supports (color:color-mix(in lab, red, red)){.kw-suggestion-hint{background:color-mix(in srgb,var(--color-accent) 8%,transparent)}}.kw-suggestion-hint{color:var(--color-accent);font-size:11.5px;line-height:1.4}.kw-cancel-btn{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;padding:8px 14px;font-size:12px;font-weight:600}.kw-confirm-delete-btn{border:1px solid var(--color-warn);border-radius:var(--radius-control);background:var(--color-warn);color:#fff;cursor:pointer;padding:8px 14px;font-size:12px;font-weight:600}.kw-purchase-queue{border:1px solid #14a0934b;margin:0 20px 14px;padding:14px}@supports (color:color-mix(in lab, red, red)){.kw-purchase-queue{border:1px solid color-mix(in srgb,var(--color-shopping) 25%,var(--color-border))}}.kw-purchase-queue{border-radius:var(--radius-card);background:#f9fefd}@supports (color:color-mix(in lab, red, red)){.kw-purchase-queue{background:color-mix(in srgb,var(--color-shopping-soft) 40%,var(--color-surface))}}.kw-pq-header p{color:var(--color-shopping-strong);letter-spacing:.11em;text-transform:uppercase;font-size:9px;font-weight:800}.kw-pq-header h2{color:var(--color-ink);margin:3px 0;font-size:16px;font-weight:750}.kw-pq-header small{color:var(--color-ink-soft);font-size:10px}.kw-pq-items{gap:6px;margin-top:10px;display:grid}.kw-pq-item{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.kw-pq-item>span{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:700;overflow:hidden}.kw-pq-item>div{gap:4px;display:flex}.kw-pq-item button{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;padding:5px 8px;font-size:9.5px;font-weight:700}.kw-pq-item button:hover{border-color:var(--color-shopping);color:var(--color-shopping-strong)}@media (max-width:640px){.kw-group,.kw-alert-banner,.kw-search-bar,.kw-purchase-queue{margin-inline-start:14px;margin-inline-end:14px}.kw-card-bottom{flex-direction:column;align-items:stretch}.kw-card-right{justify-content:space-between}.kw-modal-grid{grid-template-columns:1fr}}.feature-paywall{place-items:center;min-height:calc(100dvh - 150px);padding:max(20px,min(5vw,64px));display:grid}.feature-paywall-card{text-align:center;width:min(100%,560px);padding:max(24px,min(5vw,42px))}.feature-paywall-icon{background:var(--color-accent-soft);width:54px;height:54px;color:var(--color-accent);border-radius:16px;place-items:center;margin:0 auto 16px;display:grid}.feature-paywall-eyebrow{color:var(--color-accent);letter-spacing:.11em;text-transform:uppercase;font-size:12px;font-weight:800}.feature-paywall h1{color:var(--color-ink);font:750 clamp(30px,6vw,44px)/1.05 var(--font-display);margin:7px 0 10px}.feature-paywall-card>p:not(.feature-paywall-eyebrow):not(.feature-paywall-error){color:var(--color-ink-soft);line-height:1.55}.feature-paywall-price{border-radius:var(--radius-section);background:var(--color-surface-muted);justify-content:center;align-items:baseline;gap:10px;margin:24px 0;padding:18px;display:flex}.feature-paywall-price strong{color:var(--color-ink);font:750 30px/1 var(--font-display)}.feature-paywall-price span{color:var(--color-ink-soft);font-size:12px}.feature-paywall ul{text-align:left;color:var(--color-ink-soft);gap:10px;margin:0 0 24px;font-size:13px;display:grid}.feature-paywall li{align-items:flex-start;gap:9px;display:flex}.feature-paywall li svg{color:var(--color-good);flex:none}.feature-paywall button{justify-content:center;width:100%}.feature-paywall button+button{margin-top:10px}.feature-paywall-error{color:var(--color-warn);margin-top:12px;font-size:13px}@media (max-width:600px){.feature-paywall{align-items:start;padding:20px 14px 110px}.feature-paywall-price{gap:6px;display:grid}}.app-shell .page-title,body .app-content .page-title{letter-spacing:-.025em!important;font-size:23px!important;line-height:1.16!important}.app-shell .page-header-aside .page-spot-frame{display:grid!important}@media (max-width:767px){.app-shell .page-title,body .app-content .page-title{letter-spacing:-.03em!important;font-size:24px!important;line-height:1.1!important}.app-shell .page-header-aside{min-width:76px!important;max-width:92px!important}.app-shell .page-header-aside .page-spot-frame,.app-shell .page-header-aside .page-spot{width:76px!important;height:64px!important}.chat-mobile-composer{padding-bottom:calc(10px + env(safe-area-inset-bottom))!important}}@media (max-width:380px){.app-shell .page-title,body .app-content .page-title{font-size:24px!important}.app-shell .page-header-aside{min-width:68px!important;max-width:76px!important}.app-shell .page-header-aside .page-spot-frame,.app-shell .page-header-aside .page-spot{width:68px!important;height:58px!important}}.shopping-list-switcher .shopping-list-tab{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);flex:none;align-items:center;display:flex;overflow:hidden}.shopping-list-switcher .shopping-list-tab.selected{border-color:var(--list-tone,var(--color-shopping));background:var(--color-shopping-soft)}.shopping-list-switcher .shopping-list-tab>button:first-child{background:0 0;border:0;border-radius:0}.shopping-list-switcher .shopping-list-tab.selected>button:first-child{color:var(--color-shopping-strong)}.grocery-category-select{color:var(--color-ink-soft);gap:7px;margin:0 0 16px;font-size:12.5px;font-weight:600;display:grid}.grocery-category-select>span{justify-content:space-between;align-items:center;gap:10px;display:flex}.grocery-category-select>span em{color:var(--color-shopping-strong);font-size:10.5px;font-style:normal;font-weight:700}.grocery-category-select>div{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);align-items:center;gap:9px;min-height:44px;padding:0 38px 0 12px;display:flex;position:relative}.grocery-category-select>div:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-focus-ring)}.grocery-category-select select{-webkit-appearance:none;appearance:none;width:100%;min-width:0;color:var(--color-ink);font:600 13.5px/1.2 var(--font-sans);cursor:pointer;background:0 0;border:0;outline:0}.grocery-category-select>div>svg:last-child{color:var(--color-ink-soft);pointer-events:none;position:absolute;right:12px}.shopping-list-switcher .shopping-list-delete{min-height:30px;color:var(--color-ink-faint);background:0 0;border:0;border-radius:999px;margin-right:4px;padding:0 7px}.shopping-list-switcher .shopping-list-delete:hover{background:var(--color-warn-soft);color:var(--color-warn)}.settings-color-select{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);margin-top:14px;position:relative}.settings-color-select:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.settings-color-select>summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 12px;list-style:none;display:grid}.settings-color-select>summary::-webkit-details-marker{display:none}.settings-color-select[open]>summary>svg{rotate:180deg}.settings-color-select-copy strong,.settings-color-select-copy small{display:block}.settings-color-select-copy strong{color:var(--color-ink);font-size:12px}.settings-color-select-copy small{color:var(--color-ink-soft);margin-top:2px;font-size:10px}.settings-color-options{border-top:1px solid var(--color-border);gap:5px;max-height:330px;padding:7px;display:grid;overflow-y:auto}.settings-color-options button{text-align:left;border:1px solid #0000;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;padding:9px;display:grid}.settings-color-options button:hover,.settings-color-options button.selected{border-color:#235bd55c}@supports (color:color-mix(in lab, red, red)){.settings-color-options button:hover,.settings-color-options button.selected{border-color:color-mix(in srgb,var(--color-accent) 32%,var(--color-border))}}.settings-color-options button:hover,.settings-color-options button.selected{background:var(--color-accent-soft)}.settings-color-options button>span:nth-child(2) strong,.settings-color-options button>span:nth-child(2) small{display:block}.settings-color-options button>span:nth-child(2) strong{color:var(--color-ink);font-size:12px}.settings-color-options button>span:nth-child(2) small{color:var(--color-ink-soft);margin-top:2px;font-size:10px}.scheme-swatches{align-items:center;display:flex}.scheme-swatches i{border:2px solid var(--color-surface);width:17px;height:29px;box-shadow:var(--shadow-xs);border-radius:7px}.scheme-swatches i+i{margin-left:-5px}.scheme-swatches--small{gap:3px;display:flex}.scheme-swatches--small i{border:1px solid var(--color-surface);border-radius:4px;width:14px;height:18px}.assignment-avatars{flex:none;align-items:center;display:flex}.assignment-avatars>.family-avatar+.family-avatar{margin-left:-7px}.assignment-avatars>.family-avatar{box-shadow:0 0 0 2px var(--color-surface)}.assignment-avatars>span{border:2px solid var(--color-surface);background:var(--color-accent-soft);width:24px;height:24px;color:var(--color-accent-strong);border-radius:50%;place-items:center;margin-left:-5px;font-size:9px;font-weight:800;display:grid}.task-assignee-label small{color:var(--color-ink-faint);margin-left:4px;font-weight:500}.grocery-assignees{margin-left:-5px}.task-list-switcher .task-list-tab{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);flex:none;align-items:center;display:flex;overflow:hidden}.task-list-switcher .task-list-tab.selected{border-color:var(--list-tone,var(--color-tasks));background:var(--color-accent-soft)}.task-list-switcher .task-list-tab>button:first-child{align-items:center;gap:6px;padding:8px 7px 8px 11px;display:flex}.task-list-delete{width:30px;height:30px;color:var(--color-ink-faint);border-radius:50%;place-items:center;margin-right:3px;display:grid}.task-list-delete:hover{background:var(--color-warn-soft);color:var(--color-warn)}.today-customize-panel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-accent-soft);margin-top:8px;margin-bottom:14px;padding:10px 12px}.today-customize-panel .today-customize-hint{background:0 0;border:0;margin:0;padding:0}.today-card-toggles{border-top:1px solid #2153c23a;flex-wrap:wrap;gap:7px;margin-top:10px;padding-top:10px;display:flex}@supports (color:color-mix(in lab, red, red)){.today-card-toggles{border-top:1px solid color-mix(in srgb,var(--color-accent) 18%,var(--color-border))}}.today-card-toggles label{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:32px;color:var(--color-ink-soft);cursor:pointer;align-items:center;gap:6px;padding:0 9px;font-size:10.5px;display:flex}.today-card-toggles input{opacity:0;position:absolute}.today-card-toggles label>span{background:var(--color-border-strong);border-radius:999px;width:25px;height:15px;padding:2px;transition:background-color .15s}.today-card-toggles label>span:after{content:"";background:var(--color-surface);width:11px;height:11px;box-shadow:var(--shadow-xs);border-radius:50%;transition:translate .15s;display:block}.today-card-toggles input:checked+span{background:var(--color-accent)}.today-card-toggles input:checked+span:after{translate:10px}.today-card-toggles input:focus-visible+span{outline:3px solid #2563eb47}@supports (color:color-mix(in lab, red, red)){.today-card-toggles input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--color-accent) 28%,transparent)}}.today-card-toggles input:focus-visible+span{outline-offset:2px}.today-card-toggles strong{font-weight:700}@media (max-width:640px){.today-customize-panel{margin-inline-start:12px!important;margin-inline-end:12px!important}.today-customize-panel .today-customize-hint{flex-direction:column;align-items:flex-start}.today-card-toggles{grid-template-columns:1fr 1fr;display:grid}.today-card-toggles label{justify-content:flex-start}}.ui-badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-height:22px;padding:3px 8px;font-size:10px;font-weight:750;line-height:1;display:inline-flex}.ui-badge-neutral{border-color:var(--color-border);background:var(--color-surface-sunken);color:var(--color-ink-soft)}.ui-badge-accent{background:var(--color-accent);color:var(--color-on-accent,#fff)}.ui-badge-good{background:var(--color-good-soft);color:var(--color-good)}.ui-badge-warn{background:var(--color-warn-soft);color:var(--color-warn)}.ui-badge-calendar{background:var(--color-calendar-soft);color:var(--color-calendar)}.ui-badge-meals{background:var(--color-meals-soft);color:var(--color-meals)}.ui-badge-shopping{background:var(--color-shopping-soft);color:var(--color-shopping)}.ui-badge-chat{background:var(--color-chat-soft);color:var(--color-chat)}.ui-badge-family{background:var(--color-family-soft);color:var(--color-family)}.ui-badge-soft{border:none}.ui-badge-outlined{background:0 0;border:1px solid}.ui-badge-solid{color:#fff;background:currentColor}.ui-badge-sm{min-height:18px;padding:2px 6px;font-size:9px}.ui-badge-lg{min-height:26px;padding:4px 10px;font-size:11px}.ui-badge-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.ui-badge-numbered{background:var(--color-accent);color:#fff;min-width:20px;padding:0 6px}.ui-switch-row{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;display:flex}.ui-switch-copy strong,.ui-switch-copy small{display:block}.ui-switch-copy strong{color:var(--color-ink);font-size:12px}.ui-switch-copy small{color:var(--color-ink-soft);margin-top:2px;font-size:10px}.ui-switch{border:1px solid var(--color-border-strong);background:var(--color-surface-sunken);border-radius:999px;flex:0 0 38px;width:38px;height:22px;transition:border-color .16s,background-color .16s;position:relative}.ui-switch>span{background:var(--color-ink-faint);width:14px;height:14px;box-shadow:var(--shadow-xs);border-radius:50%;transition:translate .16s,background-color .16s;position:absolute;top:3px;left:3px}.ui-switch[aria-checked=true]{border-color:var(--color-accent);background:var(--color-accent)}.ui-switch[aria-checked=true]>span{background:var(--color-on-accent,#fff);translate:16px}.ui-switch:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.ui-switch-row.is-disabled{cursor:not-allowed;opacity:.55}.ui-circular-progress{flex:none;place-items:center;display:grid;position:relative}.ui-circular-progress svg{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0;rotate:-90deg}.ui-circular-progress circle{fill:none}.ui-circular-track{stroke:var(--ring-color)}@supports (color:color-mix(in lab, red, red)){.ui-circular-track{stroke:color-mix(in srgb,var(--ring-color) 14%,var(--color-surface))}}.ui-circular-value{stroke:var(--ring-color);stroke-linecap:round;transition:stroke-dashoffset .35s}.ui-circular-label{z-index:1;max-width:70%;color:var(--color-ink);text-align:center;place-items:center;font-size:10px;line-height:1.05;display:grid;position:relative}.ui-circular-label strong{font-size:11px;font-weight:800}.ui-menu-dropdown{position:relative}.ui-menu-dropdown>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;list-style:none;display:grid}.ui-menu-dropdown>summary::-webkit-details-marker{display:none}.ui-menu-dropdown[open]>summary>svg{rotate:180deg}.ui-menu-options{display:grid}.ui-menu-options button{text-align:left;width:100%}.settings-color-select{width:100%}.settings-color-select.ui-menu-dropdown>summary{grid-template-columns:auto minmax(0,1fr);width:100%}.settings-color-select.ui-menu-dropdown>summary>svg:last-child{margin-right:auto;margin-left:var(--space-3);order:-1}.settings-color-select .ui-menu-options{gap:var(--space-2);max-height:330px;padding:var(--space-2);border-top:1px solid var(--color-border);overflow-y:auto}.settings-color-select .ui-menu-options button{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);border:1px solid #0000;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.settings-color-select .ui-menu-options button:hover,.settings-color-select .ui-menu-options button.selected{border-color:#235bd55c}@supports (color:color-mix(in lab, red, red)){.settings-color-select .ui-menu-options button:hover,.settings-color-select .ui-menu-options button.selected{border-color:color-mix(in srgb,var(--color-accent) 32%,var(--color-border))}}.settings-color-select .ui-menu-options button:hover,.settings-color-select .ui-menu-options button.selected{background:var(--color-accent-soft)}.settings-color-select .ui-menu-options button>span:nth-child(2) strong,.settings-color-select .ui-menu-options button>span:nth-child(2) small{display:block}.settings-color-select .ui-menu-options button>span:nth-child(2) strong{color:var(--color-ink);font-size:var(--text-sm)}.settings-color-select .ui-menu-options button>span:nth-child(2) small{margin-top:var(--space-1);color:var(--color-ink-soft);font-size:var(--text-xs)}.kitchen-watch-page .inventory-item-grid article{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy expiry""actions actions";align-items:center}.kitchen-watch-page .inventory-item-copy{grid-area:copy;min-width:0}.inventory-expiry-control{grid-area:expiry;align-items:center;gap:10px;display:flex}.inventory-expiry-control .date-field{width:112px;margin:0}.inventory-expiry-control .form-label{font-size:9px}.inventory-expiry-control .date-trigger{min-height:34px;padding:0 9px;font-size:10px}.inventory-expiry-control .date-trigger>svg:last-child{display:none}.inventory-item-copy .ui-badge{width:max-content;margin-top:7px}.task-group-title .ui-badge{min-height:25px;padding-inline-start:10px;padding-inline-end:10px}.task-board-row>.avatar-circles{margin-left:auto}.task-board-row>.avatar-circles+.task-row-share{margin-left:0}@media (max-width:640px){.kitchen-watch-page .inventory-item-grid article{grid-template-columns:minmax(0,1fr) auto}.inventory-expiry-control{flex-direction:column;align-items:flex-end}.inventory-expiry-control .ui-circular-progress{width:64px!important;height:64px!important}.inventory-expiry-control .date-field{width:96px}.inventory-expiry-control .date-trigger{padding-inline-start:7px;padding-inline-end:7px}.task-board-row>.avatar-circles{margin-left:2px}}.native-ad{border:1px solid #2256c944;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin:12px 16px 0;padding:12px 14px;display:grid}@supports (color:color-mix(in lab, red, red)){.native-ad{border:1px solid color-mix(in srgb,var(--color-accent) 22%,var(--color-border))}}.native-ad{background:linear-gradient(105deg,#f1f7ff,var(--color-surface));border-radius:14px}@supports (color:color-mix(in lab, red, red)){.native-ad{background:linear-gradient(105deg,color-mix(in srgb,var(--color-accent-soft) 85%,var(--color-surface)),var(--color-surface))}}.native-ad{overflow:hidden}.native-ad-copy{min-width:0}.native-ad-tag{color:var(--color-ink-faint);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:5px;font-size:9.5px;font-weight:800;display:inline-flex}.native-ad-title{color:var(--color-ink);margin-top:4px;font-size:13px;font-weight:750;line-height:1.3;display:block}.native-ad-body{color:var(--color-ink-soft);margin:3px 0 0;font-size:11px;line-height:1.45}.native-ad-cta{border:1px solid #235bd761;align-items:center;gap:5px;margin-top:8px;padding:5px 11px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.native-ad-cta{border:1px solid color-mix(in srgb,var(--color-accent) 34%,var(--color-border))}}.native-ad-cta{background:var(--color-surface);color:var(--color-accent-strong);cursor:pointer;border-radius:999px;font-size:10.5px;font-weight:700;transition:background-color .15s,border-color .15s}.native-ad-cta:hover{border-color:var(--color-accent);background:var(--color-accent-soft)}.native-ad-media{border-radius:12px;flex:none;width:74px;height:74px;overflow:hidden}.native-ad-media img{object-fit:cover;width:100%;height:100%}.native-ad-compact{grid-template-columns:minmax(0,1fr) auto;padding-inline-start:12px;padding-inline-end:12px}.native-ad-compact .native-ad-media{width:56px;height:56px}.native-ad-compact .native-ad-title{font-size:12px}.native-ad-compact .native-ad-body{display:none}.partner-shell{--partner:#6d4de8;--partner-soft:var(--partner)}@supports (color:color-mix(in lab, red, red)){.partner-shell{--partner-soft:color-mix(in srgb,var(--partner) 10%,var(--color-surface))}}.partner-shell{--partner-border:var(--partner)}@supports (color:color-mix(in lab, red, red)){.partner-shell{--partner-border:color-mix(in srgb,var(--partner) 28%,var(--color-border))}}.partner-shell{background:var(--color-surface);min-height:100dvh;color:var(--color-ink)}.ptopbar{z-index:20;border-bottom:1px solid var(--color-border);background:#ffffffeb;align-items:center;gap:16px;height:56px;padding:0 20px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.ptopbar{background:color-mix(in srgb,var(--color-surface) 92%,transparent)}}.ptopbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.ptopbar-left{align-items:center;gap:10px;min-width:0;display:flex}.ptopbar-logo{background:var(--partner);color:#fff;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.ptopbar-brand strong{letter-spacing:-.01em;font-size:13px;line-height:1.15;display:block}.ptopbar-brand small{color:var(--color-ink-soft);font-size:10.5px;display:block}.ptopbar-tabs{border:1px solid var(--color-border);background:var(--color-surface-sunken);border-radius:10px;gap:2px;margin-left:auto;padding:3px;display:flex}.ptab{color:var(--color-ink-soft);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.ptab:hover{color:var(--color-ink)}.ptab-active{background:var(--color-surface);color:var(--partner);box-shadow:0 1px 3px #0000000f}.ptopbar-right{align-items:center;gap:10px;margin-left:auto;display:flex}.pverified{color:var(--color-good);align-items:center;gap:4px;font-size:10.5px;font-weight:700;display:inline-flex}.psignout{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:11px;font-weight:600;transition:all .15s}.psignout:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.playout{max-width:1100px;margin:0 auto;padding:20px 20px 80px}.pcampaigns-stats{flex-wrap:wrap;gap:14px;display:flex}.pstat{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;min-width:120px;padding:14px 18px}.pstat>span{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.06em;font-size:9.5px;font-weight:700;display:block}.pstat>strong{letter-spacing:-.01em;margin-top:4px;font-size:18px;font-weight:800;display:block}.pcampaigns-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:16px;display:flex}.pcampaigns-actions{align-items:center;gap:8px;display:flex}.psearch-wrap{border:1px solid var(--color-border);background:var(--color-surface);border-radius:9px;align-items:center;gap:6px;padding:7px 12px;display:flex}.psearch-wrap input{color:var(--color-ink);background:0 0;border:0;outline:none;width:160px;font-size:12px}.psearch-wrap svg{color:var(--color-ink-faint);flex:none}.pfilter{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);cursor:pointer;border-radius:9px;padding:7px 10px;font-size:11.5px;font-weight:600}.pbtn{cursor:pointer;white-space:nowrap;border:0;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.pbtn-primary{background:var(--partner);color:#fff}.pbtn-primary:hover{opacity:.9}.pbtn-primary:active{transform:translateY(1px)}.pbtn-primary:disabled{opacity:.5;cursor:not-allowed}.pbtn-ghost{color:var(--color-ink-soft);border:1px solid var(--color-border);background:0 0}.pbtn-ghost:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.pbtn-danger{background:var(--color-warn-soft);color:var(--color-warn);border:1px solid #c4242657}@supports (color:color-mix(in lab, red, red)){.pbtn-danger{border:1px solid color-mix(in srgb,var(--color-warn) 30%,var(--color-border))}}.pbtn-danger:hover{background:#dc26262e}@supports (color:color-mix(in lab, red, red)){.pbtn-danger:hover{background:color-mix(in srgb,var(--color-warn) 18%,transparent)}}.pbtn-full{width:100%}.ptoggle{background:var(--color-border-strong);cursor:pointer;border:0;border-radius:20px;width:36px;height:20px;padding:0;transition:background .2s;position:relative}.ptoggle-on{background:var(--partner)}.ptoggle-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.ptoggle-on .ptoggle-thumb{transform:translate(16px)}.pcampaigns-table-wrap{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;overflow-x:auto}.pcampaigns-table{border-collapse:collapse;width:100%;font-size:12px}.pcampaigns-table th{text-align:left;color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border);background:var(--color-surface-sunken);white-space:nowrap;padding:10px 14px;font-size:10.5px;font-weight:700}.pcampaigns-table td{border-bottom:1px solid #11182708;padding:10px 14px}@supports (color:color-mix(in lab, red, red)){.pcampaigns-table td{border-bottom:1px solid color-mix(in srgb,var(--color-border) 50%,transparent)}}.pcampaigns-table td{vertical-align:middle}.pcampaign-row{cursor:pointer;transition:background .12s}.pcampaign-row:hover{background:var(--color-surface-sunken)}.pcampaign-row:last-child td{border-bottom:0}.pcampaign-toggle{text-align:center;width:48px}.pcampaign-status{width:80px}.pcampaign-name strong{color:var(--color-ink);font-size:12.5px;font-weight:700;display:block}.pcampaign-headline{color:var(--color-ink-faint);text-overflow:ellipsis;white-space:nowrap;max-width:200px;margin-top:2px;font-size:11px;display:block;overflow:hidden}.pcampaign-placements{color:var(--color-ink-soft);font-size:11px}.pcampaign-num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.pcampaign-budget{width:120px}.pbudget-bar{background:var(--color-border);border-radius:2px;height:4px;margin-bottom:4px;overflow:hidden}.pbudget-fill{background:var(--partner);border-radius:2px;height:100%;transition:width .3s}.pcampaign-budget span{color:var(--color-ink-faint);font-size:10.5px}.pcampaign-actions{text-align:center;width:40px}.picon-btn{width:28px;height:28px;color:var(--color-ink-faint);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.picon-btn:hover{background:var(--color-surface-sunken);color:var(--color-ink)}.pbadge{letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:750;display:inline-flex}.status-draft{background:var(--color-surface-sunken);color:var(--color-ink-soft)}.status-active{background:#def5ed}@supports (color:color-mix(in lab, red, red)){.status-active{background:color-mix(in srgb,#10b981 14%,var(--color-surface))}}.status-active{color:#059669}.status-paused{background:#fae1e1}@supports (color:color-mix(in lab, red, red)){.status-paused{background:color-mix(in srgb,var(--color-warn) 14%,var(--color-surface))}}.status-paused{color:var(--color-warn)}.status-ended{background:var(--color-surface-sunken);color:var(--color-ink-faint)}.pbadge-pending{background:var(--partner)}@supports (color:color-mix(in lab, red, red)){.pbadge-pending{background:color-mix(in srgb,var(--partner) 14%,var(--color-surface))}}.pbadge-pending{color:var(--partner)}.pbadge-paid{background:#def5ed}@supports (color:color-mix(in lab, red, red)){.pbadge-paid{background:color-mix(in srgb,#10b981 14%,var(--color-surface))}}.pbadge-paid{color:#059669}.pbadge-overdue{background:#fde5e5}@supports (color:color-mix(in lab, red, red)){.pbadge-overdue{background:color-mix(in srgb,#ef4444 14%,var(--color-surface))}}.pbadge-overdue{color:#dc2626}.pbadge-void{background:var(--color-surface-sunken);color:var(--color-ink-faint)}.pcampaigns-empty{text-align:center;color:var(--color-ink-soft);flex-direction:column;align-items:center;gap:10px;padding:60px 20px;display:flex}.pcampaigns-empty strong{color:var(--color-ink);font-size:16px}.pcampaigns-empty p{max-width:36ch;margin:0;font-size:12.5px}.pcampaigns-loading{color:var(--color-ink-soft);justify-content:center;align-items:center;padding:40px;font-size:12.5px;display:flex}.ptoast{z-index:60;background:var(--color-ink);color:var(--color-surface);border-radius:10px;padding:10px 18px;font-size:12px;font-weight:700;position:fixed;bottom:24px;left:50%;translate:-50%;box-shadow:0 8px 24px #0003}.pdetail{flex-direction:column;gap:16px;display:flex}.pdetail-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.pback{color:var(--partner);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:6px 0;font-size:12px;font-weight:700;transition:opacity .15s;display:inline-flex}.pback:hover{opacity:.75}.pdetail-actions{gap:6px;display:flex}.pdetail-hero{border:1px solid var(--color-border);background:var(--color-surface);border-radius:14px;align-items:flex-start;gap:18px;padding:18px;display:flex}.pdetail-img{object-fit:cover;border-radius:12px;flex:none;width:100px;height:100px}.pdetail-img-placeholder{background:var(--partner-soft);color:var(--partner);place-items:center;display:grid}.pdetail-hero-info{flex:1;min-width:0}.pdetail-hero-top{align-items:center;gap:10px;margin-bottom:6px;display:flex}.pdetail-cpm{color:var(--color-ink-faint);font-size:11px;font-weight:600}.pdetail-hero-info h2{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:800}.pdetail-hero-info p{color:var(--color-ink-soft);margin:4px 0 0;font-size:12.5px}.pdetail-hero-info small{color:var(--color-ink-faint);margin-top:4px;font-size:11.5px;display:block}.plink{color:var(--partner);align-items:center;gap:4px;margin-top:8px;font-size:12px;font-weight:700;text-decoration:none;transition:opacity .15s;display:inline-flex}.plink:hover{opacity:.75}.pkpi-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.pkpi{border:1px solid var(--color-border);background:var(--color-surface);border-radius:11px;padding:14px 16px}.pkpi>span{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.04em;font-size:9.5px;font-weight:700;display:block}.pkpi>strong{letter-spacing:-.01em;margin-top:4px;font-size:17px;font-weight:800;display:block}.pchart-section{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:16px}.pchart-section h3{margin:0 0 12px;font-size:13px;font-weight:800}.pchart-dual{grid-template-columns:1fr 1fr;gap:16px;display:grid}.pchart-panel{flex-direction:column;gap:4px;display:flex}.pchart-label{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:700}.pchart{width:100%;position:relative;overflow:hidden}.ptargeting-section{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:16px}.ptargeting-section h3{margin:0 0 10px;font-size:13px;font-weight:800}.ptarget-row{border-top:1px solid var(--color-border);align-items:flex-start;gap:14px;padding:8px 0;font-size:12px;display:flex}.ptarget-row>span{min-width:130px;color:var(--color-ink-soft);flex:none;align-items:center;gap:6px;font-weight:700;display:inline-flex}.ptarget-row>div{flex-wrap:wrap;gap:6px;display:flex}.ptarget-row i{background:var(--partner-soft);color:var(--partner);border-radius:999px;padding:3px 10px;font-size:10.5px;font-style:normal;font-weight:700}.peditor{border:1px solid var(--color-border);background:var(--color-surface);border-radius:14px;flex-direction:column;gap:18px;padding:22px;display:flex}.peditor-top{justify-content:space-between;align-items:center;display:flex}.peditor-top h2{margin:0;font-size:17px;font-weight:800}.pfield{flex-direction:column;gap:5px;display:flex}.pfield>span{color:var(--color-ink-soft);font-size:11px;font-weight:700}.pfield input{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);border-radius:9px;outline:none;padding:9px 12px;font-size:12.5px;transition:border-color .15s,box-shadow .15s}.pfield input:focus{border-color:var(--partner);box-shadow:0 0 0 3px var(--partner)}@supports (color:color-mix(in lab, red, red)){.pfield input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--partner) 12%,transparent)}}.pfield select{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);border-radius:9px;outline:none;padding:9px 12px;font-size:12.5px}.pfield-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.pfield-narrow{max-width:320px}.pupload-area{flex-direction:column;gap:8px;display:flex}.pupload-area>span{color:var(--color-ink-soft);font-size:11px;font-weight:700}.pupload-preview{width:140px;position:relative}.pupload-preview img{object-fit:cover;border-radius:12px;width:140px;height:140px}.pupload-preview button{color:#fff;cursor:pointer;background:#0009;border:0;border-radius:7px;align-items:center;gap:4px;padding:5px 8px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:6px;right:6px}.pupload-box{border:1.5px dashed var(--color-border-strong);width:100%;max-width:360px;min-height:100px;color:var(--color-ink-soft);cursor:pointer;text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:7px;font-size:11.5px;transition:border-color .15s,background .15s;display:flex}.pupload-box:hover{border-color:var(--partner);background:var(--partner)}@supports (color:color-mix(in lab, red, red)){.pupload-box:hover{background:color-mix(in srgb,var(--partner) 4%,transparent)}}.pupload-box input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ptarget-block{flex-direction:column;gap:8px;display:flex}.ptarget-block>h3{align-items:center;gap:6px;font-size:13px;font-weight:800;display:flex}.ptarget-block>p{color:var(--color-ink-faint);margin:0;font-size:11px}.pchips{flex-wrap:wrap;gap:6px;display:flex}.pchip{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex}.pchip:hover{border-color:var(--partner-border);color:var(--color-ink)}.pchip-selected{border-color:var(--partner);background:var(--partner-soft);color:var(--partner)}.peditor-actions{border-top:1px solid var(--color-border);justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.pbilling{flex-direction:column;gap:20px;display:flex}.pbilling-header h2{margin:0;font-size:18px;font-weight:800}.pbilling-header p{color:var(--color-ink-soft);margin:4px 0 0;font-size:12.5px}.pbilling-summary{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.pbilling-stat{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:16px 18px}.pbilling-stat>span{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.05em;font-size:9.5px;font-weight:700;display:block}.pbilling-stat>strong{margin-top:5px;font-size:19px;font-weight:800;display:block}.pstat-warn{color:var(--color-warn)}.pbilling-section{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:16px}.pbilling-section h3{margin:0 0 12px;font-size:13px;font-weight:800}.pbilling-empty{color:var(--color-ink-faint);margin:0;font-size:12.5px}.pinvoice-table-wrap{overflow-x:auto}.pinvoice-table{border-collapse:collapse;width:100%;font-size:12px}.pinvoice-table th{text-align:left;color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border);background:var(--color-surface-sunken);white-space:nowrap;padding:8px 12px;font-size:10px;font-weight:700}.pinvoice-table td{border-bottom:1px solid #11182708;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.pinvoice-table td{border-bottom:1px solid color-mix(in srgb,var(--color-border) 50%,transparent)}}.pinvoice-table td{white-space:nowrap}.pinvoice-table tr:last-child td{border-bottom:0}.pform-error{background:var(--color-warn-soft);color:var(--color-warn);border-radius:9px;margin:0;padding:10px 14px;font-size:12px;font-weight:600;line-height:1.4}.pswitch{width:100%;color:var(--partner);cursor:pointer;background:0 0;border:0;margin-top:14px;padding:8px;font-size:12px;font-weight:700}.partner-login{background:radial-gradient(60% 60% at 50% 0%,var(--partner),var(--color-surface));place-items:center;min-height:100dvh;padding:20px;display:grid}@supports (color:color-mix(in lab, red, red)){.partner-login{background:radial-gradient(60% 60% at 50% 0%,color-mix(in srgb,var(--partner) 14%,var(--color-surface)),var(--color-surface))}}.partner-login-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:18px;width:100%;max-width:380px;padding:28px;box-shadow:0 16px 48px #00000014}.partner-brand{align-items:center;gap:12px;margin-bottom:22px;display:flex}.partner-brand-icon{background:var(--partner);color:#fff;box-sizing:border-box;border-radius:12px;place-items:center;width:40px;height:40px;padding:9px;display:grid}.partner-brand strong{letter-spacing:-.01em;font-size:15px;display:block}.partner-brand small{color:var(--color-ink-soft);font-size:11px;line-height:1.35;display:block}.partner-login form{flex-direction:column;gap:13px;display:flex}.partner-denied{border:1px solid var(--color-border);text-align:center;border-radius:18px;flex-direction:column;align-items:center;gap:14px;max-width:420px;margin:80px auto;padding:36px;display:flex}.partner-denied-icon{background:var(--color-warn-soft);width:56px;height:56px;color:var(--color-warn);border-radius:16px;place-items:center;display:grid}.partner-denied h1{margin:0;font-size:18px;font-weight:800}.partner-denied p{color:var(--color-ink-soft);max-width:32ch;margin:0;font-size:12.5px;line-height:1.5}.partner-loading{min-height:100dvh;color:var(--color-ink-soft);place-items:center;font-size:13px;display:grid}@media (max-width:768px){.ptopbar{gap:10px;padding:0 14px}.ptopbar-tabs{display:none}.playout{padding:14px 14px 60px}.pcampaigns-header{flex-direction:column;align-items:stretch}.pcampaigns-actions{flex-wrap:wrap}.pkpi-grid{grid-template-columns:repeat(2,1fr)}.pbilling-summary{grid-template-columns:1fr 1fr}.pchart-dual{grid-template-columns:1fr}.pdetail-hero{flex-direction:column}.pdetail-img{width:100%;height:160px}.pfield-row{grid-template-columns:1fr}}@media (max-width:480px){.pkpi-grid,.pbilling-summary{grid-template-columns:1fr}.pcampaigns-stats{gap:8px}.pstat{flex:1;min-width:0;padding:10px 12px}.pstat>strong{font-size:15px}}.partner-shell{width:100%;min-width:0;overflow-x:hidden;overflow-y:visible}.partner-shell button,.partner-shell input,.partner-shell select{font:inherit}.playout{box-sizing:border-box;width:100%;min-width:0}.pcampaigns-view,.pdetail,.peditor,.pbilling,.panalytics{min-width:0}.pcampaigns-actions{flex-wrap:wrap;min-width:0}.pcampaigns-table-wrap,.pinvoice-table-wrap{overscroll-behavior-x:contain;max-width:100%}.pcampaigns-table,.pinvoice-table{min-width:760px}.panalytics-charts,.pchart-dual{min-width:0}@media (min-width:769px){.partner-shell{min-height:100dvh}.playout{max-width:1180px;padding:28px max(24px,min(4vw,52px)) 96px}.ptopbar{padding-inline-start:max(20px,min(4vw,52px));padding-inline-end:max(20px,min(4vw,52px))}}@media (max-width:768px){.partner-shell{min-height:100dvh}.ptopbar{flex-wrap:wrap;align-items:center;height:auto;min-height:64px;padding:10px 14px;position:sticky}.ptopbar-left{flex:auto;min-width:0}.ptopbar-brand strong,.ptopbar-brand small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ptopbar-right{flex:none;margin-left:auto}.ptopbar-tabs{border-radius:var(--radius-control);-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1 0 100%;order:3;justify-content:flex-start;width:100%;margin:2px 0 0;display:flex;overflow-x:auto}.ptopbar-tabs::-webkit-scrollbar{display:none}.ptab{flex:none;min-height:38px;padding-inline-start:13px;padding-inline-end:13px}.pverified{display:none}.psignout{min-height:36px;padding-inline-start:11px;padding-inline-end:11px}.playout{padding:18px 14px calc(88px + env(safe-area-inset-bottom))}.pcampaigns-header{gap:16px;margin-bottom:18px}.pcampaigns-stats{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.pstat{width:auto;min-width:0}.pcampaigns-actions{grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;display:grid}.psearch-wrap{min-width:0;min-height:42px}.psearch-wrap input{width:100%;min-width:0}.pfilter{min-width:0;min-height:42px}.pcampaigns-actions>.pbtn{grid-column:1/-1;width:100%;min-height:44px}.pcampaigns-table-wrap{border-left:0;border-right:0;border-radius:0;margin-inline-start:-14px;margin-inline-end:-14px}.pdetail-top{align-items:flex-start}.pdetail-actions{flex-wrap:wrap;width:100%}.pdetail-actions .pbtn{flex:140px;min-height:42px}.pdetail-hero{padding:16px}.pdetail-img{height:180px}.pkpi-grid,.pbilling-summary,.panalytics-summary{gap:8px}.pkpi,.pbilling-stat,.panalytic-stat{padding:13px}.pchart-section,.ptargeting-section,.panalytic-chart,.peditor,.pbilling-section{padding:14px}.peditor-actions{flex-wrap:wrap}.peditor-actions .pbtn{flex:140px;min-height:42px}.panalytics{gap:14px}.panalytics-charts{gap:12px}}@media (max-width:480px){.ptopbar,.playout{padding-inline-start:12px;padding-inline-end:12px}.pcampaigns-stats{grid-template-columns:1fr 1fr}.pcampaigns-actions{grid-template-columns:1fr}.pfilter{width:100%}.pcampaigns-actions>.pbtn{grid-column:auto}.pcampaigns-table-wrap{margin-inline-start:-12px;margin-inline-end:-12px}.pdetail-hero{gap:12px}.pdetail-img{height:150px}.ptarget-row{gap:7px;display:grid}.ptarget-row>span{min-width:0}.pfield-row{gap:10px}}.panalytics{flex-direction:column;gap:16px;display:flex}.panalytics-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.panalytics-header h2{margin:0;font-size:17px;font-weight:800}.panalytics-header p{color:var(--color-ink-soft);margin:4px 0 0;font-size:12.5px}.panalytics-summary{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.panalytic-stat{border:1px solid var(--color-border);background:var(--color-surface);border-radius:11px;padding:14px 16px}.panalytic-stat>span{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.04em;font-size:9.5px;font-weight:700;display:block}.panalytic-stat>strong{letter-spacing:-.01em;margin-top:4px;font-size:18px;font-weight:800;display:block}.panalytics-charts{grid-template-columns:1fr 1fr;gap:16px;display:grid}.panalytic-chart{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:16px}.panalytic-chart h3{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px;font-size:12px;font-weight:700}.ppacement-table,.ptop-campaigns-table{border-collapse:collapse;width:100%;font-size:11.5px}.ppacement-table th,.ptop-campaigns-table th{text-align:left;color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border);background:var(--color-surface-sunken);padding:8px 10px;font-size:9.5px;font-weight:700}.ppacement-table td,.ptop-campaigns-table td{border-bottom:1px solid #11182708;padding:8px 10px}@supports (color:color-mix(in lab, red, red)){.ppacement-table td,.ptop-campaigns-table td{border-bottom:1px solid color-mix(in srgb,var(--color-border) 50%,transparent)}}.ppacement-table tr:last-child td,.ptop-campaigns-table tr:last-child td{border-bottom:0}.panalytics-empty,.panalytics-loading{text-align:center;color:var(--color-ink-soft);flex-direction:column;align-items:center;gap:8px;padding:40px;display:flex}.panalytics-empty strong{color:var(--color-ink);font-size:15px}.pempty{color:var(--color-ink-soft);text-align:center;padding:20px;font-size:12.5px}@media (max-width:768px){.panalytics-summary{grid-template-columns:1fr 1fr}.panalytics-charts{grid-template-columns:1fr}}section+section,.kinship-card+.kinship-card,.ui-alert+.kinship-card{margin-top:var(--space-4)}button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-md)}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-md)}input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-md)}select:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-md)}textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-md)}reference-tasks,.reference-dashboard,.reference-groceries,.reference-meals,.calendar-page{animation:pageIn var(--motion-base) var(--ease-out)}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.kinship-card{transition:border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-normal) var(--ease-out), transform var(--motion-fast) var(--ease-out)}.kinship-card:hover{box-shadow:0 2px 8px #1018280f,0 1px 3px #1018280a}.kinship-card:active{transform:scale(.998)}.form-control,.date-trigger,.ui-menu-dropdown summary,.location-autocomplete-input{border-radius:var(--radius-lg);transition:border-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out)}.form-control:focus,.date-trigger:focus,.ui-menu-dropdown[open] summary{box-shadow:0 0 0 3px #2563eb26}@supports (color:color-mix(in lab, red, red)){.form-control:focus,.date-trigger:focus,.ui-menu-dropdown[open] summary{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 15%, transparent)}}.task-group-title .ui-badge,.calendar-event .ui-badge{vertical-align:middle}.empty-state,.calendar-empty,.today-compact-empty{padding:var(--space-10) var(--space-6);text-align:center}.task-board-row,.event-carousel-card,.today-list-item{transition:border-color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out), box-shadow var(--motion-normal) var(--ease-out), transform var(--motion-fast) var(--ease-out)}.reference-dashboard .weather-now-card,.reference-dashboard .today-bento-kitchen>.kinship-card,.reference-dashboard .today-bento-schedule>.kinship-card,.reference-dashboard .today-bento-messages>.kinship-card,.reference-dashboard .today-meals-card,.reference-dashboard .today-groceries-card,.reference-dashboard .today-tasks-card{border:1px solid var(--color-border)!important;box-shadow:none!important}.reference-dashboard .weather-now-card:hover,.reference-dashboard .today-bento-kitchen>.kinship-card:hover,.reference-dashboard .today-bento-schedule>.kinship-card:hover,.reference-dashboard .today-bento-messages>.kinship-card:hover,.reference-dashboard .today-meals-card:hover,.reference-dashboard .today-groceries-card:hover,.reference-dashboard .today-tasks-card:hover{border-color:var(--color-border-strong)!important;box-shadow:none!important;transform:none!important}.reference-dashboard .today-daily-meal,.reference-dashboard .today-event-card,.reference-dashboard .today-daily-meal:hover,.reference-dashboard .today-event-card:hover{border-color:#0000!important}.reference-tasks .page-header,.reference-dashboard .page-header,.reference-groceries .page-header,.reference-meals .page-header,.calendar-page .page-header{padding-bottom:var(--space-4)}.ui-section-title{letter-spacing:-.025em;font-weight:650}.modal-card .form-field{margin-bottom:var(--space-4)}.modal-card .form-field:last-of-type{margin-bottom:var(--space-5)}.meal-slot-card{border:1px solid var(--color-border);border-left:4px solid var(--color-accent);border-radius:var(--radius-section);background:var(--color-surface);transition:border-color .15s,box-shadow .15s;position:relative;overflow:hidden}.meal-slot-card:hover{box-shadow:0 2px 8px #0000000f}.meal-slot-card.is-dinner{border-left-color:#d94f4f}.meal-slot-card-body{justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.meal-slot-card-left{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.meal-slot-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.meal-slot-label{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-size:11px;font-weight:700}.meal-slot-avatars{flex:none}.meal-slot-title{color:var(--color-ink);margin:0;font-size:16px;font-weight:750;line-height:1.25}.meal-slot-input-wrapper{align-items:center;gap:8px;width:100%;display:flex}.meal-slot-input{min-width:0;color:var(--color-ink);background:0 0;border:0;outline:none;flex:1;font-size:14px}.meal-slot-input::placeholder{color:var(--color-ink-faint)}.meal-slot-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding-top:8px;display:flex}.meal-slot-actions-left{flex-wrap:wrap;gap:8px;display:flex}.meal-slot-actions-right{flex:none;gap:6px;display:flex}.meal-cook-mode-btn{border:1px solid var(--color-accent);border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-on-accent);cursor:pointer;align-items:center;gap:5px;padding:6px 12px;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex}.meal-cook-mode-btn:hover{box-shadow:0 2px 8px rgba(var(--color-accent-rgb,105, 91, 217), .25);transform:translateY(-1px)}.meal-save-recipe-btn{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;align-items:center;gap:5px;padding:6px 12px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.meal-save-recipe-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.meal-tool-btn{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);width:32px;height:32px;color:var(--color-ink-faint);cursor:pointer;place-items:center;transition:all .15s;display:grid}.meal-tool-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.meal-tool-delete:hover{border-color:var(--color-warn);color:var(--color-warn);background:#fdf2f2}@supports (color:color-mix(in lab, red, red)){.meal-tool-delete:hover{background:color-mix(in srgb, var(--color-warn) 6%, var(--color-surface))}}.meal-suggest-btn{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink);cursor:pointer;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.meal-suggest-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-soft)}.meal-suggest-btn:disabled{opacity:.5;cursor:not-allowed}.meal-saved-btn{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;align-items:center;gap:5px;padding:6px 12px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.meal-saved-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.meal-plan-toolbar{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;margin-top:2px;display:flex}.meal-range-toggle button{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface);color:var(--color-ink-soft);cursor:pointer;padding:8px 14px;font-size:12px;font-weight:600;transition:all .15s}.meal-range-toggle button:hover{border-color:var(--color-accent);color:var(--color-accent)}.meal-range-toggle button.selected{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}:root{--ease-standard:cubic-bezier(.25, .46, .45, .94);--ease-decelerate:cubic-bezier(0, 0, .2, 1);--ease-accelerate:cubic-bezier(.4, 0, 1, 1);--ease-sharp:cubic-bezier(.4, 0, .6, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 rgba(var(--color-accent-rgb,105, 91, 217), .3)}50%{box-shadow:0 0 0 6px rgba(var(--color-accent-rgb,105, 91, 217), 0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.8)}40%{transform:scale(1.02)}60%{transform:scale(.98)}80%{transform:scale(1.01)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.85)}50%{transform:scale(1.03)}70%{transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-2deg)}40%{transform:rotate(2deg)}60%{transform:rotate(-1deg)}80%{transform:rotate(1deg)}}@keyframes checkmark{0%{stroke-dashoffset:24px}to{stroke-dashoffset:0}}@keyframes pressScale{0%{transform:scale(1)}50%{transform:scale(.96)}to{transform:scale(1)}}.animate-fade-in-up{animation:fadeInUp .5s var(--ease-decelerate) forwards}.animate-fade-in-scale{animation:fadeInScale .4s var(--ease-decelerate) forwards}.animate-slide-in-right{animation:slideInRight .45s var(--ease-decelerate) forwards}.animate-slide-in-left{animation:slideInLeft .45s var(--ease-decelerate) forwards}.animate-fade-in{animation:fadeIn .3s var(--ease-standard) forwards}.animate-bounce-in{animation:bounceIn .55s var(--ease-bounce) forwards}.animate-pop-in{animation:popIn .4s var(--ease-spring) forwards}.animate-wiggle{animation:wiggle .6s var(--ease-standard)}.animate-pulse-glow{animation:pulseGlow 2.5s var(--ease-standard) infinite}.animate-press{animation:pressScale .12s var(--ease-sharp)}.stagger-children>*{opacity:0;animation:fadeInUp .5s var(--ease-decelerate) forwards}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:40ms}.stagger-children>:nth-child(3){animation-delay:80ms}.stagger-children>:nth-child(4){animation-delay:.12s}.stagger-children>:nth-child(5){animation-delay:.16s}.stagger-children>:nth-child(6){animation-delay:.2s}.stagger-children>:nth-child(7){animation-delay:.24s}.stagger-children>:nth-child(8){animation-delay:.28s}.stagger-children>:nth-child(9){animation-delay:.32s}.stagger-children>:nth-child(10){animation-delay:.36s}.kw-card,.today-list-item,.event-carousel-card,.meal-slot-card{transition:transform .25s var(--ease-decelerate), box-shadow .25s var(--ease-decelerate), border-color .2s var(--ease-standard)}.kw-card:hover,.today-list-item:hover,.event-carousel-card:hover,.meal-slot-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014}.primary-button,.kw-add-btn,.meal-cook-mode-btn,.kw-change-date-btn,.meal-tool-btn,.meal-save-recipe-btn,.calendar-sources-tab,.coverage-city-chip{transition:transform 80ms var(--ease-sharp), box-shadow .12s var(--ease-standard), background-color .12s var(--ease-standard), border-color .12s var(--ease-standard)}.primary-button:active,.kw-add-btn:active,.meal-cook-mode-btn:active,.kw-change-date-btn:active,.meal-tool-btn:active,.meal-save-recipe-btn:active,.calendar-sources-tab:active,.coverage-city-chip:active{transform:scale(.96)}input,textarea,select{transition:border-color .15s var(--ease-standard), box-shadow .15s var(--ease-standard), background-color .15s var(--ease-standard)}input:focus,textarea:focus,select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(var(--color-accent-rgb,105, 91, 217), .15)}.app-shell .kinship-card,.app-shell .task-board-group,.app-shell .task-board-row,.app-shell .meal-card-new,.app-shell .meal-day-card,.app-shell .saved-recipe-card,.app-shell .cook-panel,.app-shell .cook-step-card,.app-shell .cook-progress-card,.app-shell .kw-card,.app-shell .kw-purchase-queue,.app-shell .kitchen-inventory-card,.app-shell .event-carousel-card,.app-shell .event-detail-card,.app-shell .calendar-event,.app-shell .apple-import-card,.app-shell .broadcast-compose,.app-shell .broadcast-banner,.app-shell .today-metric-card,.app-shell .today-command-card,.app-shell .today-pulse-card,.app-shell .today-flow-card,.app-shell .today-load-card,.app-shell .today-meals-card,.app-shell .today-groceries-card,.app-shell .today-tasks-card,.app-shell .today-messages-card,.app-shell .settings-color-scheme-card,.app-shell .settings-household-card,.app-shell .family-roster-card,.app-shell .today-daily-meal,.app-shell .today-daily-meal.is-planned{background:#fff!important}.app-shell .today-daily-meal-actions:empty{display:none}.app-shell .today-daily-meal-actions button.plan{border-color:var(--color-border);color:var(--color-accent-strong);background:#fff}.app-shell .today-daily-meal-actions button.plan:hover{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.app-shell .app-content{width:100%;min-width:0;max-width:none}.modal-card{animation:fadeInScale .35s var(--ease-decelerate) forwards}.modal-overlay{animation:fadeIn .25s var(--ease-standard) forwards}.checkmark-circle{animation:popIn .45s var(--ease-spring) forwards}.checkmark-path{stroke-dasharray:24;stroke-dashoffset:24px;animation:checkmark .5s var(--ease-decelerate) .15s forwards}.shimmer{background:linear-gradient(90deg, var(--color-surface-sunken) 25%, var(--color-surface) 50%, var(--color-surface-sunken) 75%);animation:shimmer 1.8s var(--ease-standard) infinite;background-size:200% 100%}.meal-slot-ring svg circle:last-child{transition:stroke-dashoffset .9s cubic-bezier(.34, 1.56, .64, 1), stroke .3s var(--ease-standard)}.nav-badge,.kw-alert-banner{animation:bounceIn .5s var(--ease-spring) forwards}.reference-fab{transition:transform .2s var(--ease-standard), box-shadow .2s var(--ease-standard)}.reference-fab:hover{transform:scale(1.06);box-shadow:0 10px 28px #0000001f}.reference-fab:active{transform:scale(.94)}.nav-item{transition:transform .12s var(--ease-sharp), color .12s var(--ease-standard), background-color .12s var(--ease-standard)}.nav-item:active{transform:scale(.94)}.nav-item.is-active .nav-icon{animation:popIn .35s var(--ease-spring) forwards}@keyframes spin{to{transform:rotate(360deg)}}.toast-enter{animation:slideInRight .4s var(--ease-decelerate) forwards}.toast-exit{animation:slideInLeft .3s var(--ease-accelerate) forwards}.page-transition-enter{animation:fadeInUp .45s var(--ease-decelerate) forwards}.page-transition-exit{animation:fadeIn .2s var(--ease-accelerate) forwards}.color-scheme-picker{width:100%;position:relative}.color-scheme-trigger{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;color:var(--color-ink);text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:grid}.color-scheme-trigger:hover{border-color:var(--color-accent)}.color-scheme-trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.color-scheme-chevron{color:var(--color-ink-soft);flex:0 0 16px;transition:transform .15s}.color-scheme-chevron.open{transform:rotate(180deg)}.color-scheme-value{align-items:center;gap:12px;width:100%;min-width:0;display:flex}.color-scheme-emoji{flex:none;font-size:20px;line-height:1}.color-scheme-info{flex-direction:column;gap:2px;min-width:0;display:flex;overflow:hidden}.color-scheme-label{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.color-scheme-note{color:var(--color-ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.color-scheme-swatches{flex:none;justify-content:flex-end;align-items:center;gap:2px;display:flex}.color-scheme-swatches i{border:1px solid var(--color-surface);width:16px;height:16px;box-shadow:var(--shadow-xs);border-radius:4px;flex:0 0 16px}.color-scheme-options{z-index:50;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);max-height:320px;margin-top:2px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 28px #1018271f}@media (max-width:640px){.color-scheme-options{border-radius:var(--radius-control);max-height:none;box-shadow:none;border-color:var(--color-border);margin-top:6px;position:static;top:auto;left:auto;right:auto;overflow:visible}}.color-scheme-option{border-radius:var(--radius-control);width:100%;color:var(--color-ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 12px;transition:background .12s,border-color .12s;display:grid}.color-scheme-option:hover{background:var(--color-accent-soft);border-color:var(--color-border)}.color-scheme-option.selected{background:var(--color-accent-soft);border-color:var(--color-accent)}.color-scheme-option .color-scheme-emoji{flex:none;font-size:18px;line-height:1}.color-scheme-option .color-scheme-info{min-width:0}.color-scheme-option .color-scheme-label{font-size:12px;font-weight:600}.color-scheme-option .color-scheme-note{font-size:10px}.color-scheme-option .color-scheme-swatches{flex:none;justify-content:flex-end;align-items:center;gap:2px;display:flex}.color-scheme-option .color-scheme-swatches i{border:1px solid var(--color-surface);width:16px;height:16px;box-shadow:var(--shadow-xs);border-radius:4px;flex:0 0 16px}.color-scheme-check{color:var(--color-accent);flex:0 0 16px;place-items:center;display:grid}@media (max-width:700px){.meal-plan-toolbar{flex-wrap:nowrap;align-items:center}.meal-plan-toolbar .meal-range-toggle{flex:auto;min-width:0}.meal-plan-toolbar .meal-range-toggle button{white-space:nowrap;padding:8px 10px;font-size:11.5px}body .app-content .page-title{max-width:none;font-size:25px!important}}.meal-card-slot--empty .meal-card-slot-name{opacity:.85}.meal-card-slot-empty-text{color:var(--color-ink-faint);font-style:italic}.meal-card-add-slot-btn{border-radius:var(--radius-md);border:1px dashed var(--color-border-strong);background:var(--color-surface-sunken);color:var(--color-ink-soft);cursor:pointer;align-items:center;gap:5px;padding:7px 13px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.meal-card-add-slot-btn:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-soft)}.billing-cadence-toggle{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface-sunken);gap:4px;padding:4px;display:flex}.billing-cadence-toggle button{border-radius:calc(var(--radius-tag) - 4px);color:var(--color-ink-soft);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:7px 12px;font-size:12px;font-weight:600;transition:all .15s}.billing-cadence-toggle button.selected{background:var(--color-surface);color:var(--color-accent);box-shadow:0 1px 3px #10182814}@media (min-width:1440px){.app-content{max-width:none}.landing-page{font-size:16px}.landing-nav{max-width:1400px}.landing-hero-fullbleed .landing-hero-copy{max-width:900px;padding-left:max(48px,50vw - 680px)}.landing-hero-fullbleed .landing-hero-copy h1{max-width:800px;font-size:max(64px,min(5vw,88px))}.landing-features{max-width:1400px}.landing-feature-grid{grid-template-columns:repeat(3,1fr);gap:24px}.landing-feature{min-height:480px}.capability-grid{grid-template-columns:repeat(3,1fr);gap:22px}.landing-devices-inner,.pricing-shell{max-width:1360px}.comparison-shell{max-width:1280px}.comparison-highlights{grid-template-columns:repeat(3,1fr);gap:22px}.landing-community{max-width:1360px}.landing-bento{max-width:1400px}.landing-intro,.landing-steps,.landing-privacy{padding:120px 40px}.landing-section-head{max-width:780px}}@media (min-width:1920px){.landing-page{font-size:17px}.landing-hero-fullbleed .landing-hero-copy{max-width:1000px;padding-left:max(60px,50vw - 740px)}.landing-hero-fullbleed .landing-hero-copy h1{max-width:860px;font-size:max(72px,min(4.5vw,92px))}.landing-feature-grid{gap:28px}.landing-feature{min-height:520px;padding:36px}.landing-devices-inner{max-width:1560px}.pricing-shell{max-width:1520px}.comparison-shell{max-width:1440px}.landing-community{max-width:1480px}.landing-bento{max-width:1560px}.landing-intro,.landing-steps,.landing-privacy{padding:130px 50px}}.m3-button:active:not(:disabled),.primary-button-row:active:not(:disabled){transition-duration:80ms!important;transform:scale(.97)!important}.m3-button:disabled,.primary-button-row:disabled{pointer-events:none;opacity:.45!important;cursor:not-allowed!important;transform:none!important}.landing-join:hover,.landing-hero-ctas>button:first-child:hover,.landing-final button:hover,.pricing-summary button:hover{transform:translateY(-2px)!important}.landing-join:active,.landing-hero-ctas>button:first-child:active,.landing-final button:active,.pricing-summary button:active{transition-duration:80ms!important;transform:translateY(0)scale(.97)!important}.m3-button-filled{color:#fff!important}.m3-button-outlined{color:var(--color-ink)!important}.m3-button-ghost{color:var(--color-accent)!important}.m3-button-soft{color:var(--color-ink)!important}.pbtn-primary,.landing-join,.landing-final button{color:#fff!important}.landing-hero-ctas>button:first-child{color:#fff!important;background:#17171f!important}.landing-hero-ctas>button:last-child{color:#fff!important;background:0 0!important}.landing-hero-fullbleed .landing-hero-ctas>button:first-child{color:#0f0c1e!important;background:#fff!important}.landing-hero-fullbleed .landing-hero-ctas>button:last-child{color:#ffffffd9!important;background:0 0!important}.app-shell .reference-meals{width:100%;min-width:0;color:var(--color-ink)}.app-shell .reference-meals .page-eyebrow{color:var(--color-meals)}.app-shell .reference-meals .page-title{color:var(--color-ink);font-weight:600}.app-shell .reference-meals .page-subtitle{color:var(--color-ink-soft)}.app-shell .reference-meals .meal-plan-toolbar{justify-content:space-between;align-items:center;width:100%;margin:0 0 4px;padding-inline-start:max(16px,min(3vw,40px))!important;padding-inline-end:max(16px,min(3vw,40px))!important}.app-shell .reference-meals .meal-range-toggle{border:1px solid var(--color-border);border-radius:var(--radius-tag);background:var(--color-surface-sunken);align-items:center;gap:3px;margin:0;padding:3px;display:inline-flex}.app-shell .reference-meals .meal-range-toggle button{border-radius:var(--radius-tag);min-height:34px;color:var(--color-ink-soft);white-space:nowrap;background:0 0;border:0;padding:7px 13px;font-size:12px;font-weight:600;line-height:1}.app-shell .reference-meals .meal-range-toggle button:hover{color:var(--color-ink);background:var(--color-surface)}.app-shell .reference-meals .meal-range-toggle button.selected{background:var(--color-surface);color:var(--color-meals-strong,var(--color-meals));box-shadow:var(--shadow-xs);border:0}.app-shell .reference-meals .meal-plan-share{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-height:36px;color:var(--color-ink-soft);white-space:nowrap;transition:background var(--motion-fast) ease, color var(--motion-fast) ease, border-color var(--motion-fast) ease, transform var(--motion-fast) ease;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.app-shell .reference-meals .meal-plan-share:hover{border-color:var(--color-meals);background:var(--color-meals-soft);color:var(--color-meals-strong,var(--color-meals))}.app-shell .reference-meals .meal-plan-share:active{transform:scale(.97)}.app-shell .reference-meals .meal-plan-list{gap:14px;margin-top:0;display:grid;padding-inline-start:max(16px,min(3vw,40px))!important;padding-inline-end:max(16px,min(3vw,40px))!important}.app-shell .reference-meals .meal-card-new{border-radius:var(--radius-card);width:100%;min-width:0;box-shadow:var(--shadow-xs);border:0;background:var(--color-surface)!important}.app-shell .reference-meals .meal-card-header{min-height:54px;padding:16px 20px 0}.app-shell .reference-meals .meal-card-date{color:var(--color-ink);margin:0;font-size:15px;font-weight:650;line-height:1.25}.app-shell .reference-meals .meal-card-slots{padding:8px 20px 12px}.app-shell .reference-meals .meal-card-slot+.meal-card-slot{border-top:1px solid var(--color-border);margin-top:0;padding-top:10px}.app-shell .reference-meals .meal-card-slot-top{min-width:0;margin-bottom:6px}.app-shell .reference-meals .meal-card-slot-name{letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:11px;font-weight:750;line-height:1.3;color:var(--color-meals)!important}.app-shell .reference-meals .meal-card-slot-dish{min-width:0;color:var(--color-ink);margin-top:5px;font-size:14px;font-weight:550;line-height:1.4}.app-shell .reference-meals .meal-card-slot-dish svg{color:var(--color-ink-muted)!important}.app-shell .reference-meals .meal-card-slot-dish span{color:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-shell .reference-meals .meal-card-slot-empty-text{color:var(--color-ink-faint);font-size:13px;font-style:normal;font-weight:450}.app-shell .reference-meals .meal-card-avatars{flex-shrink:0}.app-shell .reference-meals .meal-card-avatar{border-color:var(--color-surface)}.app-shell .reference-meals .meal-card-slot-buttons{align-items:center;gap:8px;min-width:0;padding-top:0}.app-shell .reference-meals .meal-card-btn,.app-shell .reference-meals .meal-card-add-slot-btn{border-radius:var(--radius-control);min-height:36px;font-size:12px;line-height:1}.app-shell .reference-meals .meal-card-btn{padding:0 12px}.app-shell .reference-meals .meal-card-btn-dark{background:var(--color-ink);color:#fff}.app-shell .reference-meals .meal-card-btn-outline{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft)}.app-shell .reference-meals .meal-card-btn-outline:hover{border-color:var(--color-meals);background:var(--color-meals-soft);color:var(--color-meals-strong,var(--color-meals))}.app-shell .reference-meals .meal-card-icon-btn{border-radius:var(--radius-control);background:var(--color-surface-sunken);border:0;width:32px;height:32px}.app-shell .reference-meals .meal-card-icon-btn:hover{background:var(--color-meals-soft);color:var(--color-meals-strong,var(--color-meals));border:0}.app-shell .reference-meals .meal-card-add-slot-btn{border:1px dashed var(--color-border-strong);background:var(--color-surface-sunken);min-height:34px;color:var(--color-ink-soft);padding:0 11px}.app-shell .reference-meals .meal-card-add-slot-btn:hover{border-color:var(--color-meals);background:var(--color-meals-soft);color:var(--color-meals-strong,var(--color-meals))}.app-shell .reference-meals .saved-recipes-section{margin:18px max(16px,min(3vw,40px)) 16px}.app-shell .reference-meals .saved-recipe-card{box-shadow:var(--shadow-xs);border-color:#0000;background:var(--color-surface)!important}@media (max-width:700px){.app-shell .reference-meals .meal-plan-toolbar{gap:8px;padding-inline-start:16px!important;padding-inline-end:16px!important}.app-shell .reference-meals .meal-range-toggle{flex:auto;min-width:0}.app-shell .reference-meals .meal-range-toggle button{flex:1 1 0;padding-inline-start:8px;padding-inline-end:8px;font-size:11.5px}.app-shell .reference-meals .meal-plan-share{flex:none;padding-inline-start:10px;padding-inline-end:10px}.app-shell .reference-meals .meal-plan-list{gap:12px;padding-inline-start:16px!important;padding-inline-end:16px!important}.app-shell .reference-meals .meal-card-header{padding-inline-start:16px;padding-inline-end:16px}.app-shell .reference-meals .meal-card-slots{padding-inline-start:16px;padding-inline-end:16px;padding-bottom:12px}.app-shell .reference-meals .meal-card-slot-buttons{flex-wrap:wrap}.app-shell .reference-meals .meal-card-btn{flex:0 auto;min-width:0;padding-inline-start:10px;padding-inline-end:10px}.app-shell .reference-meals .meal-card-slot-actions-right{margin-left:auto}.app-shell .reference-meals .saved-recipes-section{margin-inline-start:16px;margin-inline-end:16px}}@media (max-width:420px){.app-shell .reference-meals .meal-card-slot-top{gap:6px}.app-shell .reference-meals .meal-card-slot-dish span{white-space:normal;overflow-wrap:anywhere}.app-shell .reference-meals .meal-card-slot-buttons{gap:6px}.app-shell .reference-meals .meal-card-btn{padding-inline-start:8px;padding-inline-end:8px;font-size:11px}.app-shell .reference-meals .meal-card-icon-btn{width:30px;height:30px}}@media (prefers-reduced-motion:reduce){.app-shell .reference-meals .meal-plan-share,.app-shell .reference-meals .meal-card-btn,.app-shell .reference-meals .meal-card-icon-btn{transition:none}}.revised-onboarding,.revised-onboarding .guided-onboarding-panel{gap:18px;display:grid}.onboarding-value-heading{border-radius:var(--radius-control);background:var(--color-accent-soft);color:var(--color-accent-strong);align-items:flex-start;gap:12px;padding:14px;display:flex}.onboarding-value-heading>svg{flex:none;margin-top:2px}.onboarding-value-heading>div{gap:4px;min-width:0;display:grid}.onboarding-value-heading strong{color:var(--color-ink);font-size:15px;line-height:1.3}.onboarding-value-heading span{color:var(--color-ink-soft);font-size:12px;line-height:1.5}.revised-family-list{gap:12px;display:grid}.revised-family-row{border:1px solid var(--color-border);border-radius:var(--radius-control);background:#fff;flex-direction:column;gap:10px;padding:14px;display:flex;position:relative}.revised-family-row-main{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:10px;display:grid}.revised-family-row-invite{border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr;gap:10px;padding-top:8px;display:grid}.revised-invite-label{color:var(--text-muted);grid-column:1/-1;align-items:center;gap:6px;margin-bottom:2px;font-size:12px;font-weight:600;display:flex}.revised-family-row .form-field{margin-bottom:0}.revised-remove-member{background:var(--color-warn-soft);width:34px;height:40px;color:var(--color-warn);border:0;border-radius:6px;place-items:center;display:grid}.revised-remove-member:hover{background:var(--color-warn);color:#fff}.revised-interest-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.revised-interest-grid button,.revised-manual-schedule{border:1px solid var(--color-border);border-radius:var(--radius-pill);min-height:44px;color:var(--color-ink);text-align:left;background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:0 13px;font-size:12.5px;font-weight:650;display:flex}.revised-interest-grid button:hover,.revised-interest-grid button.selected,.revised-manual-schedule:hover,.revised-manual-schedule.selected{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.revised-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.revised-schedule-grid button{border:1px solid var(--color-border);border-radius:var(--radius-control);min-height:58px;color:var(--color-ink);text-align:left;background:#fff;align-items:center;gap:10px;padding:0 14px;font-size:13px;font-weight:700;display:flex}.revised-schedule-grid button span{flex:1;min-width:0}.revised-schedule-grid button:hover,.revised-schedule-grid button.selected{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.revised-manual-schedule{justify-content:flex-start;width:100%;margin-top:2px}.revised-value-screen,.revised-trial-gate,.revised-trial-confirmation{gap:18px;display:grid}.revised-value-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.revised-value-metrics>div{border-radius:var(--radius-control);background:var(--color-surface-sunken);text-align:center;gap:5px;padding:16px;display:grid}.revised-value-metrics strong{font:750 25px/1 var(--font-display);color:var(--color-accent-strong)}.revised-value-metrics span{color:var(--color-ink-soft);font-size:11px;line-height:1.35}.revised-value-items{gap:8px;display:grid}.revised-value-items article{border:1px solid var(--color-border);border-radius:var(--radius-control);background:#fff;align-items:center;gap:10px;padding:12px;display:flex}.revised-value-items article>svg{color:var(--color-accent);flex:none}.revised-value-items article>div{gap:3px;min-width:0;display:grid}.revised-value-items strong{color:var(--color-ink);font-size:13px}.revised-value-items span{color:var(--color-ink-soft);overflow-wrap:anywhere;font-size:11px}.revised-trial-gate h3{color:var(--color-ink);font:700 20px/1.2 var(--font-display);margin:0}.revised-trial-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:0;padding:0;list-style:none;display:grid}.revised-trial-features li{color:var(--color-ink-soft);align-items:flex-start;gap:7px;font-size:12px;line-height:1.4;display:flex}.revised-trial-features svg{color:var(--color-good);flex:none;margin-top:2px}.revised-trial-price{border-radius:var(--radius-control);background:var(--color-surface-sunken);align-items:baseline;gap:8px;padding:16px;display:flex}.revised-trial-price strong{font:750 27px/1 var(--font-display);color:var(--color-ink)}.revised-trial-price span,.revised-trial-note,.revised-trial-secondary{color:var(--color-ink-soft);font-size:12px}.revised-trial-note,.revised-trial-secondary{text-align:center;margin:0}.revised-trial-secondary{margin-top:-8px}.revised-trial-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.revised-trial-summary>div{border-radius:var(--radius-control);background:var(--color-surface-sunken);gap:5px;padding:12px;display:grid}.revised-trial-summary span{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:750}.revised-trial-summary strong{color:var(--color-ink);font-size:13px;line-height:1.3}.onboarding-card .onboarding-actions{margin-top:0}@media (max-width:680px){.revised-family-row-main{grid-template-columns:1fr 1fr;padding:0}.revised-family-row-main .form-field:last-of-type{grid-column:1/-1}.revised-family-row-invite{grid-template-columns:1fr}.revised-remove-member{width:30px;height:30px;position:absolute;top:10px;right:10px}.revised-family-row{padding-right:48px}.revised-schedule-grid,.revised-trial-features,.revised-value-metrics,.revised-trial-summary,.revised-interest-grid{grid-template-columns:1fr}}.desktop-auth-gate{background:var(--color-canvas);place-items:center;min-height:100dvh;padding:32px;display:grid}.desktop-auth-card{border:1px solid var(--color-border);border-radius:var(--radius-section);background:var(--color-surface);text-align:center;width:min(100%,440px);padding:40px;box-shadow:0 18px 50px #17171f14}.desktop-auth-mark{color:var(--color-ink);font:800 25px/1 var(--font-display);letter-spacing:-.07em}.desktop-auth-mark span{color:var(--color-accent)}.desktop-auth-eyebrow{color:var(--color-accent-strong);letter-spacing:.08em;text-transform:uppercase;margin:28px 0 10px;font-size:11px;font-weight:800}.desktop-auth-card h1{color:var(--color-ink);font:750 clamp(25px, 3vw, 34px)/1.08 var(--font-display);letter-spacing:-.045em;margin:0}.desktop-auth-copy{max-width:34ch;color:var(--color-ink-soft);margin:14px auto 26px;font-size:14px;line-height:1.55}.desktop-auth-button{background:var(--color-accent);color:#fff;cursor:pointer;width:100%;min-height:46px;transition:transform var(--motion-fast) var(--ease-out), filter var(--motion-fast) var(--ease-out);border:0;border-radius:6px;justify-content:center;align-items:center;gap:9px;font-size:14px;font-weight:750;display:inline-flex}.desktop-auth-button:hover:not(:disabled){filter:brightness(.96);transform:translateY(-1px)}.desktop-auth-button:disabled{cursor:wait;opacity:.65}.desktop-auth-note{color:var(--color-ink-faint);align-items:center;gap:5px;margin:16px 0 0;font-size:11px;display:inline-flex}.desktop-auth-error,.desktop-auth-status{color:var(--color-warn);margin:16px 0 0;font-size:12px;line-height:1.45}.desktop-auth-status{color:var(--color-ink-soft)}@media (max-width:520px){.desktop-auth-gate{padding:18px}.desktop-auth-card{padding:30px 22px}}.trial-confirmation-layer{z-index:125;-webkit-backdrop-filter:blur(8px);background:#17172f57;place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.trial-confirmation-card{border:1px solid var(--color-border);border-radius:var(--radius-card);width:min(100%,440px);color:var(--color-ink);animation:featureTourCardIn .28s var(--ease-out);background:#fff;padding:32px;box-shadow:0 24px 70px #17172f33}.trial-confirmation-mark{background:var(--color-good-soft);width:46px;height:46px;color:var(--color-good);border-radius:50%;place-items:center;margin-bottom:18px;display:grid}.trial-confirmation-card h2{color:var(--color-ink);font:700 30px/1.1 var(--font-display);letter-spacing:-.03em;margin:0}.trial-confirmation-copy{color:var(--color-ink-soft);margin:10px 0 22px;font-size:15px}.trial-confirmation-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:22px;display:grid}.trial-confirmation-summary>div{border-radius:var(--radius-control);background:var(--color-surface-sunken);gap:6px;padding:12px;display:grid}.trial-confirmation-summary span{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.trial-confirmation-summary strong{color:var(--color-ink);font-size:13px;line-height:1.25}.trial-confirmation-primary,.trial-confirmation-secondary{border-radius:6px;width:100%;min-height:44px;font-size:13px;font-weight:750}.trial-confirmation-primary{border:1px solid var(--color-accent);background:var(--color-accent);color:#fff}.trial-confirmation-primary:hover{background:var(--color-accent-hover)}.trial-confirmation-secondary{border:1px solid var(--color-border);color:var(--color-ink);background:#fff;margin-top:8px}.trial-confirmation-secondary:hover{background:var(--color-surface-sunken)}.feature-tour-layer{z-index:119;-webkit-backdrop-filter:blur(5px);animation:featureTourFadeIn .22s var(--ease-out);background:#17172f47;place-items:center;padding:24px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.feature-tour-layer-active{pointer-events:none;-webkit-backdrop-filter:none;background:#17172f1f}.feature-tour-card{border:1px solid var(--color-border);border-radius:var(--radius-card);width:min(100%,460px);max-height:min(680px,100dvh - 48px);color:var(--color-ink);animation:featureTourCardIn .28s var(--ease-out);background:#fff;padding:30px;position:relative;overflow-y:auto;box-shadow:0 24px 72px #10182833}.feature-tour-layer-active .feature-tour-card{pointer-events:auto}.feature-tour-card h2{color:var(--color-ink);font:700 28px/1.12 var(--font-display);letter-spacing:-.03em;margin:0}.feature-tour-card p:not(.feature-tour-eyebrow):not(.feature-tour-step-count){color:var(--color-ink-soft);margin:14px 0 0;font-size:14px;line-height:1.6}.feature-tour-close{background:var(--color-surface-sunken);width:34px;height:34px;color:var(--color-ink-soft);border:0;border-radius:50%;place-items:center;display:grid}.feature-tour-close:hover{background:var(--color-accent-soft);color:var(--color-accent-strong)}.feature-tour-mark,.feature-tour-complete-mark,.feature-tour-feature-icon{background:var(--color-accent-soft);width:46px;height:46px;color:var(--color-accent);border-radius:50%;place-items:center;margin-bottom:18px;display:grid}.feature-tour-eyebrow{color:var(--color-accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:800}.feature-tour-actions{align-items:center;gap:10px;margin-top:24px;display:flex}.feature-tour-actions button,.feature-tour-explore{min-height:42px;transition:transform var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out);border-radius:6px;padding:0 15px;font-size:13px;font-weight:750}.feature-tour-actions button:hover,.feature-tour-explore:hover{transform:translateY(-1px)}.feature-tour-primary{border:1px solid var(--color-accent);background:var(--color-accent);color:#fff}.feature-tour-primary:hover{background:var(--color-accent-hover)}.feature-tour-secondary{border:1px solid var(--color-border);color:var(--color-ink);background:#fff}.feature-tour-secondary:hover{background:var(--color-surface-sunken)}.feature-tour-feedback-link{color:var(--color-ink-faint);text-underline-offset:3px;background:0 0;border:0;margin:16px auto 0;font-size:12px;font-weight:650;text-decoration:underline;display:block}.feature-tour-feedback-link:hover{color:var(--color-accent-strong)}.feature-tour-active-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.feature-tour-step-count{color:var(--color-ink-faint);font-size:11px;font-weight:750}.feature-tour-active-head .feature-tour-close{flex:none}.feature-tour-progress{background:var(--color-surface-sunken);border-radius:4px;height:4px;margin-bottom:24px;overflow:hidden}.feature-tour-progress i{border-radius:inherit;background:var(--color-accent);height:100%;transition:width .25s var(--ease-out);display:block}.feature-tour-feature-icon{margin-bottom:14px}.feature-tour-explore{border:1px solid var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong);align-items:center;gap:8px;margin-top:20px;display:inline-flex}.feature-tour-explore:hover{background:var(--color-accent);color:#fff}.feature-tour-complete-actions button{flex:1}@keyframes featureTourFadeIn{0%{opacity:0}to{opacity:1}}@keyframes featureTourCardIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}@media (max-width:520px){.trial-confirmation-layer{padding:12px;padding-bottom:max(12px,env(safe-area-inset-bottom));align-items:end}.trial-confirmation-card{padding:26px 22px calc(22px + env(safe-area-inset-bottom));border-radius:var(--radius-card) var(--radius-card) 16px 16px}.trial-confirmation-card h2{font-size:26px}.trial-confirmation-summary{grid-template-columns:1fr}.feature-tour-layer{padding:12px;padding-bottom:max(12px, env(safe-area-inset-bottom));align-items:end}.feature-tour-card{border-radius:var(--radius-card) var(--radius-card) 16px 16px;max-height:calc(100dvh - 24px);padding:24px 20px}.feature-tour-card h2{font-size:25px}.feature-tour-actions{align-items:stretch}.feature-tour-actions button{flex:1}}.kinship-card,.task-board-group,.task-board-row,.calendar-event,.calendar-hero-action,.calendar-agenda,.calendar-agenda-section,.calendar-sources,.calendar-view-toggle,.calendar-month,.calendar-daystrip,.calendar-hero,.meal-card-new,.meal-day-card,.meal-preferences-card,.meal-slot-button,.grocery-list-row,.grocery-list-card,.chat-message,.chat-input,.fam-ai-page,.fam-ai-msg,.fam-ai-suggestion,.fam-ai-review,.fam-ai-composer,.settings-household-card,.reference-settings .kinship-card,.reference-tasks .kinship-card,.reference-dashboard .kinship-card,.reference-meals .kinship-card,.reference-meals .meal-day-card,.primary-nav,.app-topbar,.modal-card,.co-plan-shell,.co-agenda-list,.co-task-list,.co-timeline,.co-facts,.co-gear-list,.co-up-next,.co-readiness-list,.co-activity-grid>button,.co-next-event-card,.co-activities-intro,.co-command-card,.weekly-progress,.family-roster-card,.kw-card,.onboarding-channel-card,.partner-consent,.co-pulse,.m3-dialog-layer .modal-card,.broadcast-compose,.broadcast-banner,.chat-intent-chip,.chat-clear-option,.pending-invite-actions button,.barcode-actions label,.barcode-actions button,.grocery-mode-actions button,.page-reset-button,.meal-ideas-launcher button,.avatar-editor-actions label,.avatar-editor-actions button,.calendar-manager-list,.calendar-manager-item,.calendar-manager-status,.calendar-color-picker,.google-calendar-picker,.google-calendar-picker li.is-connected,.apple-import-card,.co-plan-shell,.co-plan-sidebar,.co-game-plan-steps button,.co-game-plan-sheet>footer,.co-game-plan-score,.reference-dashboard .today-metric-card,.reference-dashboard .today-command-card,.reference-dashboard .today-pulse-card,.reference-dashboard .today-flow-card,.reference-dashboard .today-load-card,.reference-settings .settings-dietary-picker button,.reference-settings .settings-dietary-picker button.selected,.theme-dark .kinship-card,.theme-dark .task-board-group,.theme-dark .task-board-row,.theme-dark .calendar-event,.theme-dark .calendar-hero-action,.theme-dark .meal-card-new,.theme-dark .meal-day-card,.theme-dark .meal-preferences-card,.theme-dark .modal-card,.theme-dark .reference-settings .kinship-card,.theme-dark .reference-tasks .kinship-card,.theme-dark .reference-tasks .page-header,.theme-dark .reference-dashboard .kinship-card,.theme-dark .reference-meals .kinship-card,.theme-dark .reference-meals .meal-day-card,.theme-dark .family-roster-card,.theme-dark .kw-card,.theme-dark .onboarding-channel-card,.theme-dark .calendar-manager-list,.theme-dark .calendar-manager-item,.theme-dark .google-calendar-picker li.is-connected,.theme-dark .co-agenda-list,.theme-dark .co-task-list,.theme-dark .co-timeline,.theme-dark .co-facts,.theme-dark .co-gear-list,.theme-dark .co-up-next,.theme-dark .co-readiness-list,.theme-dark .co-activity-grid>button,.theme-dark .co-next-event-card,.theme-dark .co-plan-shell,.theme-dark .co-plan-sidebar{background:var(--color-surface)!important}.grocery-list-row,.grocery-list-card,.kitchen-inventory-card,.inventory-item,.grocery-category-title,.card,.Card,.kw-card,.kw-card--expired,.kw-card--soon,.kw-pq-item,.kw-group-items article,.kw-page .kw-card,.settings-color-scheme-card,.settings-household-card,.settings-color-scheme-option,.reference-settings .kinship-card,.reference-settings section .kinship-card,.reference-settings .settings-dietary-picker button,.family-roster-card,.family-roster li,.pending-invite-actions button,.reference-settings .google-calendar-picker li.is-connected,.today-metric-card,.today-command-card,.today-pulse-card,.today-flow-card,.today-load-card,.today-list-item,.today-list-item-card,.today-messages-card,.today-kitchen-card,.today-meals-card,.today-tasks-card,.today-shopping-card,.today-calendar-card,.reference-dashboard .kinship-card,.reference-dashboard section .kinship-card,.calendar-event,.calendar-hero-action,.calendar-agenda article,.calendar-month-grid button,.calendar-daystrip-item,.calendar-sources-tab,.calendar-view-btn,.calendar-manager-item,.calendar-manager-list,.calendar-manager-status,.calendar-manager-famos .calendar-manager-item,.calendar-color-picker,.google-calendar-picker li.is-connected,.meal-card-new,.meal-day-card,.meal-slot-button,.meal-preferences-card,.meal-card-slot,.reference-meals .kinship-card,.reference-meals .meal-day-card,.task-board-group,.task-board-row,.reference-tasks .kinship-card,.reference-tasks .page-header,.chat-message,.chat-input,.chat-intent-chip,.chat-clear-option,.fam-ai-page,.fam-ai-msg:not(.user),.fam-ai-suggestion,.fam-ai-review,.fam-ai-review-item,.fam-ai-composer,.fam-ai-composer-inner,.modal-card,.m3-dialog-layer .modal-card{background:#fff!important}.primary-nav,.app-topbar,.primary-nav .nav-item{background:#fffffffa!important}[class*=border][class*=rounded]:not(button):not(a):not(input):not(select):not(textarea):not(svg):not(img):not(br):not(hr){background:#fff!important}.theme-dark .grocery-list-row,.theme-dark .grocery-list-card,.theme-dark .kitchen-inventory-card,.theme-dark .kw-card,.theme-dark .kw-card--expired,.theme-dark .kw-card--soon,.theme-dark .kw-pq-item,.theme-dark .settings-color-scheme-card,.theme-dark .settings-household-card,.theme-dark .settings-color-scheme-option,.theme-dark .family-roster-card,.theme-dark .family-roster li,.theme-dark .today-metric-card,.theme-dark .today-command-card,.theme-dark .today-pulse-card,.theme-dark .today-flow-card,.theme-dark .today-load-card,.theme-dark .today-list-item,.theme-dark .today-messages-card,.theme-dark .today-kitchen-card,.theme-dark .today-meals-card,.theme-dark .today-tasks-card,.theme-dark .today-shopping-card,.theme-dark .today-calendar-card,.theme-dark .calendar-event,.theme-dark .calendar-hero-action,.theme-dark .calendar-manager-item,.theme-dark .calendar-manager-list,.theme-dark .calendar-manager-status,.theme-dark .meal-card-new,.theme-dark .meal-day-card,.theme-dark .meal-slot-button,.theme-dark .meal-preferences-card,.theme-dark .task-board-group,.theme-dark .task-board-row,.theme-dark .chat-message,.theme-dark .chat-input,.theme-dark .chat-intent-chip,.theme-dark .chat-clear-option,.theme-dark .fam-ai-page,.theme-dark .fam-ai-msg:not(.user),.theme-dark .fam-ai-suggestion,.theme-dark .fam-ai-review,.theme-dark .fam-ai-composer,.theme-dark .fam-ai-composer-inner,.theme-dark .modal-card,.theme-dark .primary-nav,.theme-dark .app-topbar,.theme-dark .pending-invite-actions button{background:var(--color-surface)!important}.reference-tasks,.reference-groceries,.chat-page-shell{height:100vh;height:calc(var(--dvh,100vh));padding-bottom:calc(64px + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex;overflow:hidden}@supports (height:100dvh){.chat-page-shell{height:100dvh}}.chat-page-shell>.flex-1,.chat-page-shell>div:last-of-type{flex:1;min-height:0}.reference-settings,.reference-dashboard,.reference-meals,.reference-chat,.reference-kitchen,.reference-finance,.reference-coordination,.reference-fam-ai,.fam-ai-page{background:#fafafa!important}.theme-dark .reference-tasks,.theme-dark .reference-groceries,.theme-dark .reference-settings,.theme-dark .reference-dashboard,.theme-dark .reference-meals,.theme-dark .reference-chat,.theme-dark .reference-kitchen,.theme-dark .reference-finance,.theme-dark .reference-coordination,.theme-dark .reference-fam-ai,.theme-dark .fam-ai-page{background:var(--color-canvas)!important}.product-updates-stack{flex-direction:column;gap:8px;margin:0 0 12px;display:flex}.product-update-banner{border-radius:var(--radius-card);align-items:flex-start;gap:10px;padding:12px 14px;animation:.3s both productUpdateIn;display:flex;position:relative}@keyframes productUpdateIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.product-update-icon{background:#ffffffb3;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;margin-top:1px;display:grid}.product-update-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.product-update-body strong{font:700 13px/1.3 var(--font-sans)}.product-update-body span{font:400 12px/1.45 var(--font-sans);color:var(--color-ink-soft)}.product-update-link{font:600 11.5px/1 var(--font-sans);align-items:center;gap:3px;margin-top:2px;text-decoration:none;transition:opacity .15s;display:inline-flex}.product-update-link:hover{opacity:.7}.product-update-dismiss{width:24px;height:24px;color:var(--color-ink-faint);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;transition:background .15s,color .15s;display:grid;position:absolute;top:8px;right:8px}.product-update-dismiss:hover{color:var(--color-ink-soft);background:#0000000f}.today-trial-banner{border-radius:var(--radius-card);background:linear-gradient(135deg,var(--color-accent-soft) 0%,#eef3fd 100%);align-items:center;gap:12px;margin:0 20px 16px;padding:14px 16px;display:flex}@supports (color:color-mix(in lab, red, red)){.today-trial-banner{background:linear-gradient(135deg,var(--color-accent-soft) 0%,color-mix(in srgb,var(--color-accent) 8%,var(--color-surface)) 100%)}}.today-trial-banner{border:1px solid #2155c63f}@supports (color:color-mix(in lab, red, red)){.today-trial-banner{border:1px solid color-mix(in srgb,var(--color-accent) 20%,var(--color-border))}}.today-trial-banner svg{color:var(--color-accent-strong);flex:none}.today-trial-banner div{flex-direction:column;gap:2px;display:flex}.today-trial-banner strong{font:700 14px/1.2 var(--font-sans);color:var(--color-ink)}.today-trial-banner span{font:500 12px/1.4 var(--font-sans);color:var(--color-ink-soft)}.today-trial-expired{border-radius:var(--radius-card);background:#fdf2f2;align-items:center;gap:12px;margin:0 20px 16px;padding:14px 16px;display:flex}@supports (color:color-mix(in lab, red, red)){.today-trial-expired{background:color-mix(in srgb,var(--color-warn) 6%,var(--color-surface))}}.today-trial-expired{border:1px solid #b523263f}@supports (color:color-mix(in lab, red, red)){.today-trial-expired{border:1px solid color-mix(in srgb,var(--color-warn) 20%,var(--color-border))}}.today-trial-expired svg{color:var(--color-warn);flex:none}.today-trial-expired div{flex-direction:column;flex:1;gap:2px;display:flex}.today-trial-expired strong{font:700 14px/1.2 var(--font-sans);color:var(--color-ink)}.today-trial-expired span{font:500 12px/1.4 var(--font-sans);color:var(--color-ink-soft)}.today-trial-expired button{border-radius:var(--radius-control);background:var(--color-accent);color:#fff;min-height:36px;font:700 12px/1 var(--font-sans);cursor:pointer;border:0;flex:none;padding:0 16px}.feature-paywall-trial-note{color:var(--color-ink-soft);text-align:center;margin:6px 0 0;font-size:13px}.feature-paywall-tagline{color:var(--color-ink-muted);text-align:center;margin:4px 0 12px;font-size:14px}.roulette-upgrade-prompt{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:20px;display:flex}.roulette-upgrade-prompt svg{color:var(--color-accent-strong)}.roulette-upgrade-prompt h3{font:700 18px/1.2 var(--font-sans);color:var(--color-ink);margin:0}.roulette-upgrade-prompt p{font:400 14px/1.5 var(--font-sans);color:var(--color-ink-soft);margin:0}.theme-dark .primary-nav,.theme-dark .primary-nav.navbar-bg,.theme-dark .app-shell .primary-nav{background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .nav-item,.theme-dark .app-shell .nav-item{color:var(--color-ink-muted)!important;background:0 0!important}.theme-dark .nav-item.is-active,.theme-dark .app-shell .nav-item.is-active{background:var(--nav-tone,#2563eb)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .nav-item.is-active,.theme-dark .app-shell .nav-item.is-active{background:color-mix(in srgb, var(--nav-tone,var(--color-accent)) 13%, #1a1d24)!important}}.theme-dark .nav-item.is-active,.theme-dark .app-shell .nav-item.is-active{color:var(--color-accent)!important}.theme-dark .nav-item.is-active .nav-icon,.theme-dark .app-shell .nav-item.is-active .nav-icon{background:var(--nav-tone,#2563eb)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .nav-item.is-active .nav-icon,.theme-dark .app-shell .nav-item.is-active .nav-icon{background:color-mix(in srgb, var(--nav-tone,var(--color-accent)) 16%, #1a1d24)!important}}.theme-dark .nav-item:hover,.theme-dark .app-shell .nav-item:hover{background:#ffffff0d!important}.theme-dark .app-topbar,.theme-dark .app-shell .app-topbar{background:#1a1d24eb!important;border-color:#ffffff14!important}.theme-dark .kinship-card,.theme-dark .app-shell .kinship-card,.theme-dark .app-shell .kinship-card.m3-card{box-shadow:none!important;background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .kinship-card:hover,.theme-dark .app-shell .kinship-card:hover{border-color:#ffffff24!important}.theme-dark .page-header,.theme-dark .app-shell .page-header{background:var(--header-tone,#2563eb)!important}@supports (color:color-mix(in lab, red, red)){.theme-dark .page-header,.theme-dark .app-shell .page-header{background:color-mix(in srgb, var(--header-tone,var(--color-accent)) 8%, #1a1d24)!important}}.theme-dark .broadcast-bar,.theme-dark [class*=broadcast]{background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .weather-card,.theme-dark [class*=weather]{background:#1a1d24!important}.theme-dark .today-schedule-card,.theme-dark .activity-card,.theme-dark .event-card,.theme-dark [class*=schedule-card],.theme-dark [class*=activity-card],.theme-dark [class*=event-card]{background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .meal-card,.theme-dark .meal-day-card,.theme-dark [class*=meal-card],.theme-dark [class*=meal-day],.theme-dark .task-card,.theme-dark .task-board-group,.theme-dark [class*=task-card],.theme-dark [class*=task-board],.theme-dark .grocery-item,.theme-dark .shopping-item,.theme-dark [class*=grocery],.theme-dark [class*=shopping-item],.theme-dark .kitchen-item,.theme-dark [class*=kitchen-item],.theme-dark [class*=expiring],.theme-dark .chat-message,.theme-dark .chat-bubble,.theme-dark [class*=chat-msg],.theme-dark [class*=chat-bubble]{background:#1a1d24!important}.theme-dark .modal-card,.theme-dark .m3-dialog-layer .modal-card{background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .settings-card,.theme-dark .settings-section,.theme-dark [class*=settings-]{background:#1a1d24!important}.theme-dark .form-control,.theme-dark .ui-select,.theme-dark .ui-textarea{color:var(--color-ink)!important;background:#14161b!important;border-color:#ffffff24!important}.theme-dark .form-control:focus{border-color:var(--color-accent)!important}.theme-dark .date-popover,.theme-dark .ui-menu-options,.theme-dark .ui-menu-dropdown[open] summary{background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .m3-button-outlined,.theme-dark .m3-button-white{color:var(--color-ink)!important;background:#1a1d24!important;border-color:#ffffff24!important}.theme-dark .m3-button-outlined:hover,.theme-dark .m3-button-white:hover{background:#22262e!important}.theme-dark .ui-segmented{background:#14161b!important;border-color:#ffffff14!important}.theme-dark .ui-segmented button.selected{background:#1a1d24!important}.theme-dark .ui-switch{background:#14161b!important;border-color:#ffffff24!important}.theme-dark .flex.flex-col.items-center.justify-center.text-center{background:0 0!important}.theme-dark .notification-feed{background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .m3-chip,.theme-dark [class*=chip]{background:#ffffff14!important}.theme-dark .pending-invite-actions button{background:#22262e!important;border-color:#ffffff14!important}.theme-dark .settings-color-scheme-option,.theme-dark .onboarding-color-option{background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .avatar-editor-preview{border-color:#1a1d24!important}.theme-dark .family-roster-pending{border-color:#ffffff14!important}.theme-dark .calendar-fab,.theme-dark .reference-fab{box-shadow:0 4px 16px #0006!important}.theme-dark .today-trial-banner,.theme-dark .today-trial-expired{background:#22262e!important;border-color:#ffffff24!important}.theme-dark .feature-paywall-trial-note,.theme-dark .feature-paywall-tagline{color:var(--color-ink-muted)!important}.theme-dark .chat-input,.theme-dark [class*=chat-input]{background:#14161b!important;border-color:#ffffff14!important}.theme-dark .fam-ai-page,.theme-dark .fam-ai-msg,.theme-dark .fam-ai-suggestion,.theme-dark .fam-ai-review,.theme-dark .fam-ai-composer,.theme-dark .fam-ai-composer-inner{background:#1a1d24!important;border-color:#ffffff14!important}.theme-dark .text-white,.theme-dark [class*=text-white]{color:var(--color-ink)!important}.theme-dark .text-gray-500,.theme-dark .text-gray-600,.theme-dark .text-gray-700,.theme-dark [class*=text-gray-]{color:var(--color-ink-soft)!important}.app-shell .reference-tasks .task-list-switcher{overscroll-behavior-x:contain;min-width:0;max-width:100%}.app-shell .reference-tasks .task-list-tab{min-width:0;max-width:min(280px,82vw)}.app-shell .reference-tasks .task-list-tab>button:first-child{min-width:0}.app-shell .reference-tasks .task-list-tab>button:first-child>span,.app-shell .reference-tasks .task-list-switcher>button>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.app-shell .reference-tasks .task-board-group{min-width:0;overflow:hidden}.app-shell .reference-tasks .task-group-title{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-width:0;display:grid}.app-shell .reference-tasks .task-group-title h2{align-items:center;gap:8px;min-width:0;display:flex}.app-shell .reference-tasks .task-group-name{overflow-wrap:anywhere;min-width:0}.app-shell .reference-tasks .task-board-row{min-width:0}.app-shell .reference-tasks .task-row-copy{text-align:left;flex:auto;min-width:0}.app-shell .reference-tasks .task-row-copy strong,.app-shell .reference-tasks .task-row-copy small{overflow-wrap:anywhere;white-space:normal;min-width:0}.app-shell .reference-tasks .task-row-actions{flex:none;align-items:center;gap:2px;display:flex}@media (max-width:640px){.app-shell .reference-tasks .task-list-switcher{touch-action:auto;flex-wrap:wrap;gap:7px;padding-bottom:2px;overflow:visible}.app-shell .reference-tasks .task-list-tab,.app-shell .reference-tasks .task-list-switcher>button{max-width:100%}.app-shell .reference-tasks .task-board-group{padding:14px}.app-shell .reference-tasks .task-group-title{grid-template-columns:minmax(0,1fr) auto}.app-shell .reference-tasks .task-group-title .ui-badge{grid-area:1/2}.app-shell .reference-tasks .task-list-share{grid-area:2/1/auto/-1;justify-self:start}.app-shell .reference-tasks .task-board-row{flex-wrap:wrap;align-items:flex-start;gap:8px;padding:12px}.app-shell .reference-tasks .task-row-copy{flex-basis:calc(100% - 36px);padding-top:2px}.app-shell .reference-tasks .task-board-row>.avatar-circles{order:3;margin-left:28px}.app-shell .reference-tasks .task-row-actions{order:4;margin-left:auto}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@theme{ --font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif; --font-display: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;  --color-canvas: #fafafa; --color-surface: #fff; --color-surface-raised: #f1f1f1; --color-surface-sunken: #f5f5f5; --color-border: #1118270f; --color-border-strong: #1118271a; --color-border-focus: #1118272e;  --color-ink: #111827; --color-ink-soft: #4b5563; --color-ink-muted: #7b8794; --color-ink-faint: #9ca3af;  --color-accent: #2563eb; --color-accent-hover: #1d4ed8; --color-accent-soft: #eff6ff; --color-accent-strong: #1e40af; --color-on-accent: #fff;  --color-warn: #dc2626; --color-warn-soft: #fef2f2; --color-warn-border: #fecaca; --color-good: #16a34a; --color-good-soft: #f0fdf4; --color-good-border: #bbf7d0;  --color-calendar: #2563eb; --color-calendar-soft: #eff6ff; --color-meals: #f59e0b; --color-meals-soft: #fffbeb; --color-tasks: #2563eb; --color-tasks-soft: #eff6ff; --color-shopping: #14b8a6; --color-shopping-soft: #f0fdfa; --color-chat: #8b5cf6; --color-chat-soft: #f5f3ff; --color-finance: #10b981; --color-finance-soft: #ecfdf5; --color-family: #2563eb; --color-family-soft: #eff6ff;  --text-xs: 12px; --text-sm: 14px; --text-body: 15px; --text-body-lg: 16px; --text-section: 18px; --text-page: 24px; --text-display: 32px; --text-display-lg: 40px;  --radius-xs: 2px; --radius-sm: 4px; --radius-md: 6px; --radius-lg: 8px; --radius-xl: 8px; --radius-2xl: 16px; --radius-3xl: 20px; --radius-section: 20px; --radius-pill: 9999px; --radius-tag: 20px;  --radius-control: 6px;  --radius-card: 20px;   --shadow-xs: 0 1px 2px #1118270a; --shadow-sm: 0 2px 4px #1118270d; --shadow-md: 0 4px 12px #1118270f; --shadow-lg: 0 8px 24px #11182714; --shadow-floating: 0 12px 32px #1118271a;  --motion-fast: .14s; --motion-normal: .2s; --motion-base: .28s; --ease-out: cubic-bezier(.2, .8, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1);  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px; --space-6: 24px; --space-8: 32px; --space-10: 40px; --space-12: 48px; --space-16: 64px;}.theme-dark{--color-canvas:#111318;--color-surface:#1a1d24;--color-surface-raised:#22262e;--color-surface-sunken:#14161b;--color-border:#ffffff14;--color-border-strong:#ffffff24;--color-border-focus:#ffffff38;--color-ink:#f5f5f6;--color-ink-soft:#cecfd2;--color-ink-muted:#94969c;--color-ink-faint:#7b7d82;--color-accent:#60a5fa;--color-accent-hover:#93c5fd;--color-accent-soft:#1e3a5f;--color-accent-strong:#3b82f6;--color-on-accent:#0b0f1a;--color-warn:#ef4444;--color-warn-soft:#3d1515;--color-warn-border:#7f1d1d;--color-good:#4ade80;--color-good-soft:#13301e;--color-good-border:#14532d;--color-calendar:#60a5fa;--color-calendar-soft:#1e3a5f;--color-meals:#fbbf24;--color-meals-soft:#3d340a;--color-tasks:#60a5fa;--color-tasks-soft:#1e3a5f;--color-shopping:#2dd4bf;--color-shopping-soft:#0f2e2a;--color-chat:#a78bfa;--color-chat-soft:#2a1a4a;--color-finance:#34d399;--color-finance-soft:#0f2e22;--color-family:#60a5fa;--color-family-soft:#1e3a5f;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 2px 4px #00000040;--shadow-md:0 4px 12px #0000004d;--shadow-lg:0 8px 24px #00000059;--shadow-floating:0 12px 32px #0006}:root[data-daypart=morning]{--sunrise-gradient:linear-gradient(120deg, #e0f2fe 0%, #fde68a 35%, #fed7aa 64%, #fdba74 83%, #ffedd5 100%)}:root[data-daypart=day]{--sunrise-gradient:linear-gradient(120deg, #ffedd5 0%, #fde68a 32%, #fed7aa 60%, #fdba74 80%, #fff7ed 100%)}:root[data-daypart=evening]{--sunrise-gradient:linear-gradient(120deg, #f5f0ff 0%, #ede9fe 34%, #fce7f3 60%, #ffd6e8 82%, #fff1f2 100%)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root[data-color-scheme=famos],:root:not([data-color-scheme]){--color-accent:#e85d3d;--color-accent-hover:#d44a2e;--color-accent-soft:#fff3f0;--color-accent-strong:#b84226;--color-tasks:#e85d3d;--color-tasks-soft:#fff3f0;--color-family:#e85d3d;--color-family-soft:#fff3f0}:root[data-color-scheme=ocean]{--color-accent:#0d47a1;--color-accent-hover:#1565c0;--color-accent-soft:#e3f2fd;--color-accent-strong:#0a3a7a}:root[data-color-scheme=lagoon]{--color-accent:#006064;--color-accent-hover:#00838f;--color-accent-soft:#e0f7fa;--color-accent-strong:#004d4f}:root[data-color-scheme=horizon]{--color-accent:#0d1b3a;--color-accent-hover:#1e3a8a;--color-accent-soft:#e8ebf5;--color-accent-strong:#081226}:root[data-color-scheme=sunset]{--color-accent:#e73f1e;--color-accent-hover:#d83618;--color-accent-soft:#fff3f0;--color-accent-strong:#b83218}:root[data-color-scheme=terracotta]{--color-accent:#8b4513;--color-accent-hover:sienna;--color-accent-soft:#fdf8f5;--color-accent-strong:#6b3410}:root[data-color-scheme=autumn]{--color-accent:#c85c1e;--color-accent-hover:#b05018;--color-accent-soft:#fff8f0;--color-accent-strong:#964616}:root[data-color-scheme=desert]{--color-accent:#524646;--color-accent-hover:#6b5a5a;--color-accent-soft:#f5f3f2;--color-accent-strong:#3d3333}:root[data-color-scheme=forest]{--color-accent:#1b5e20;--color-accent-hover:#2e7d32;--color-accent-soft:#e8f5e9;--color-accent-strong:#124515}:root[data-color-scheme=meadow]{--color-accent:#2e7d32;--color-accent-hover:#388e3c;--color-accent-soft:#e8f5e9;--color-accent-strong:#1b5e20}:root[data-color-scheme=eucalyptus]{--color-accent:#4a6b4f;--color-accent-hover:#5a7f5f;--color-accent-soft:#f0f4f0;--color-accent-strong:#3a553e}:root[data-color-scheme=berry]{--color-accent:#c11574;--color-accent-hover:#ad145e;--color-accent-soft:#fce4ec;--color-accent-strong:#880e4f}:root[data-color-scheme=peach]{--color-accent:#e87a5a;--color-accent-hover:#d66a4a;--color-accent-soft:#fff3f0;--color-accent-strong:#c46040}:root[data-color-scheme=lavender]{--color-accent:#9b85d6;--color-accent-hover:#8a72c8;--color-accent-soft:#f3f1fa;--color-accent-strong:#7a64b8}:root[data-color-scheme=cotton]{--color-accent:#e87a9a;--color-accent-hover:#d46a8a;--color-accent-soft:#fff0f5;--color-accent-strong:#c45a7a}:root[data-color-scheme=jewel]{--color-accent:#6a1b9a;--color-accent-hover:#7b1fa2;--color-accent-soft:#f3e5f5;--color-accent-strong:#4a148c}:root[data-color-scheme=midnight]{--color-accent:#0d1b3a;--color-accent-hover:#1e3a8a;--color-accent-soft:#e8ebf5;--color-accent-strong:#081226}:root[data-color-scheme=velvet]{--color-accent:#5e3122;--color-accent-hover:#7a3f2e;--color-accent-soft:#faf5f3;--color-accent-strong:#46261a}:root[data-color-scheme=charcoal]{--color-accent:#1e1e1e;--color-accent-hover:#333;--color-accent-soft:#f5f5f5;--color-accent-strong:#0a0a0a}:root[data-color-scheme=warm-gray]{--color-accent:#4e4943;--color-accent-hover:#666059;--color-accent-soft:#f5f3f0;--color-accent-strong:#36322e}:root[data-color-scheme=noir]{--color-accent:#0a0a0a;--color-accent-hover:#1a1a1a;--color-accent-soft:#f0f0f0;--color-accent-strong:#000}:root[data-color-scheme=neon]{--color-accent:#ff006e;--color-accent-hover:#e60062;--color-accent-soft:#fff0f7;--color-accent-strong:#cc0058}:root[data-color-scheme=retro]{--color-accent:#ff1493;--color-accent-hover:#e61385;--color-accent-soft:#fff0f7;--color-accent-strong:#cc1076}:root[data-color-scheme=tropical]{--color-accent:#00ff7f;--color-accent-hover:#00e672;--color-accent-soft:#f0fff8;--color-accent-strong:#0c6}:root[data-color-scheme=spring]{--color-accent:#4caf50;--color-accent-hover:#43a047;--color-accent-soft:#e8f5e9;--color-accent-strong:#388e3c}:root[data-color-scheme=summer]{--color-accent:#0077be;--color-accent-hover:#0069a8;--color-accent-soft:#e3f2fd;--color-accent-strong:#005a92}:root[data-color-scheme=winter]{--color-accent:#5a7d9a;--color-accent-hover:#4a6d8a;--color-accent-soft:#f0f4f8;--color-accent-strong:#3a5d7a}:root[data-color-scheme=cozy]{--color-accent:#4a2c2a;--color-accent-hover:#5e3634;--color-accent-soft:#fdf8f5;--color-accent-strong:#36201e}.theme-dark[data-color-scheme=famos],.theme-dark:not([data-color-scheme]){--color-accent:#f07a5a;--color-accent-hover:#f59073;--color-accent-soft:#3d1f16;--color-accent-strong:#ffb899}.theme-dark[data-color-scheme=ocean]{--color-accent:#60a5fa;--color-accent-hover:#93c5fd;--color-accent-soft:#1e3a5f;--color-accent-strong:#3b82f6}.theme-dark[data-color-scheme=lagoon]{--color-accent:#22d3ee;--color-accent-hover:#5eead4;--color-accent-soft:#0f2e3a;--color-accent-strong:#0891b2}.theme-dark[data-color-scheme=horizon]{--color-accent:#3b82f6;--color-accent-hover:#60a5fa;--color-accent-soft:#1e3a5f;--color-accent-strong:#2563eb}.theme-dark[data-color-scheme=sunset]{--color-accent:#fb923c;--color-accent-hover:#fdb060;--color-accent-soft:#3d2614;--color-accent-strong:#f97316}.theme-dark[data-color-scheme=terracotta]{--color-accent:#cd5c5c;--color-accent-hover:#d98282;--color-accent-soft:#3d2020;--color-accent-strong:#b24a4a}.theme-dark[data-color-scheme=autumn]{--color-accent:#d4a843;--color-accent-hover:#ddb86a;--color-accent-soft:#3d3414;--color-accent-strong:#c4982f}.theme-dark[data-color-scheme=desert]{--color-accent:#a8a492;--color-accent-hover:#c0bcac;--color-accent-soft:#2e2a28;--color-accent-strong:#8e8a7a}.theme-dark[data-color-scheme=forest]{--color-accent:#4ade80;--color-accent-hover:#6ee7a7;--color-accent-soft:#13301e;--color-accent-strong:#22c55e}.theme-dark[data-color-scheme=meadow]{--color-accent:#8bc34a;--color-accent-hover:#9ccc65;--color-accent-soft:#1a3d16;--color-accent-strong:#7cb342}.theme-dark[data-color-scheme=eucalyptus]{--color-accent:#8fa28a;--color-accent-hover:#a5b8a0;--color-accent-soft:#2a322a;--color-accent-strong:#6b8e6b}.theme-dark[data-color-scheme=berry]{--color-accent:#f472b6;--color-accent-hover:#f9a8d4;--color-accent-soft:#3d142a;--color-accent-strong:#ec4899}.theme-dark[data-color-scheme=peach]{--color-accent:#fdb39c;--color-accent-hover:#fec9b8;--color-accent-soft:#3d1f16;--color-accent-strong:#f59e8e}.theme-dark[data-color-scheme=lavender]{--color-accent:#c4b5fd;--color-accent-hover:#ddd6fe;--color-accent-soft:#2c1a4a;--color-accent-strong:#a78bfa}.theme-dark[data-color-scheme=cotton]{--color-accent:#f9a8d4;--color-accent-hover:#fcd5e6;--color-accent-soft:#3d142a;--color-accent-strong:#f472b6}.theme-dark[data-color-scheme=jewel]{--color-accent:#d8b4fe;--color-accent-hover:#e9d5ff;--color-accent-soft:#2a1a4a;--color-accent-strong:#c084fc}.theme-dark[data-color-scheme=midnight]{--color-accent:#60a5fa;--color-accent-hover:#93c5fd;--color-accent-soft:#1e3a5f;--color-accent-strong:#3b82f6}.theme-dark[data-color-scheme=velvet]{--color-accent:#fdb39c;--color-accent-hover:#fec9b8;--color-accent-soft:#3d1f16;--color-accent-strong:#f59e8e}.theme-dark[data-color-scheme=charcoal]{--color-accent:#e0e0e0;--color-accent-hover:#f5f5f5;--color-accent-soft:#1a1a1a;--color-accent-strong:#fff}.theme-dark[data-color-scheme=warm-gray]{--color-accent:#d4d0c8;--color-accent-hover:#e8e4dc;--color-accent-soft:#1e1c1a;--color-accent-strong:#c8c4bc}.theme-dark[data-color-scheme=noir]{--color-accent:#fff;--color-accent-hover:#f0f0f0;--color-accent-soft:#0a0a0a;--color-accent-strong:#e0e0e0}.theme-dark[data-color-scheme=neon]{--color-accent:#ff006e;--color-accent-hover:#ff3385;--color-accent-soft:#3d001a;--color-accent-strong:#ff66a3}.theme-dark[data-color-scheme=retro]{--color-accent:#ff1493;--color-accent-hover:#ff4db3;--color-accent-soft:#3d001a;--color-accent-strong:#ff66b3}.theme-dark[data-color-scheme=tropical]{--color-accent:#00ff7f;--color-accent-hover:#3f9;--color-accent-soft:#003d1f;--color-accent-strong:#00e66a}.theme-dark[data-color-scheme=spring]{--color-accent:#81c784;--color-accent-hover:#a5d6a7;--color-accent-soft:#13301e;--color-accent-strong:#66bb6a}.theme-dark[data-color-scheme=summer]{--color-accent:#64b5f6;--color-accent-hover:#90caf9;--color-accent-soft:#1e3a5f;--color-accent-strong:#42a5f5}.theme-dark[data-color-scheme=winter]{--color-accent:#90caf9;--color-accent-hover:#bbdefb;--color-accent-soft:#1e3a5f;--color-accent-strong:#64b5f6}.theme-dark[data-color-scheme=cozy]{--color-accent:#e8b4b8;--color-accent-hover:#f0d0d4;--color-accent-soft:#3d1f16;--color-accent-strong:#d48a8e}:root{--landing-color-primary:#7952e8;--landing-color-primary-dark:#5741c9;--landing-color-surface-dark:#17171f;--landing-color-text-muted:#625e69;--landing-color-stage:#fff0a8;--landing-color-pink:#f45d9a;--landing-color-lavender-soft:#eee8ff;--landing-color-lavender-cool:#f5f1ff;--landing-color-lavender-mid:#f8f4ff;--landing-color-cream-step:#fff8e8;--landing-color-cream-intro:#f4f0ff;--landing-color-gray:#d7d2e2;--landing-color-gray-muted:#6d6874;--landing-color-sage-solid:#397b66;--landing-control-radius:var(--radius-control);--landing-card-radius:var(--radius-card);--landing-control-height:44px;--landing-border:#e4e0ec;--landing-shadow-xs:0 1px 2px #1c18300f;--landing-shadow-sm:0 2px 8px #2a224114;--landing-radius-stage:var(--radius-card);--landing-radius-preview:var(--radius-card);--landing-radius-hero:var(--radius-card);--landing-section-pad-y:110px;--landing-section-pad-x:28px;--landing-section-pad-y-mobile:76px;--landing-section-pad-x-mobile:18px;--landing-cta-pad-y:13px;--landing-cta-pad-x:20px;--landing-bp-tablet:900px;--landing-bp-nav:700px;--landing-bp-mobile:600px}.features-page{color:#17171f;min-height:100vh;font-family:var(--font-sans);background:#fffdf9;overflow-x:hidden}.features-nav{z-index:30;isolation:isolate;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf9d9;border-bottom:1px solid #7952e814;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;width:100%;max-width:1240px;margin:auto;padding:18px 28px;display:grid;top:0;position:sticky!important}.features-nav-brand{color:#17171f;letter-spacing:-.02em;align-items:center;gap:9px;font-weight:850;text-decoration:none;display:inline-flex}.features-nav-brand img{object-fit:contain;background:#fff5e9;border-radius:14px;width:48px;height:48px;padding:6px}.features-nav-brand span{font:800 20px/1 var(--font-display)}.features-nav-brand strong span{color:#7952e8}.features-nav-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:22px;display:flex!important}.features-nav-links a{color:#4a4555;white-space:nowrap;font-size:13.5px;font-weight:700;text-decoration:none;transition:color .2s}.features-nav-links a:hover,.features-nav-links a.is-active{color:#7952e8}.features-nav-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex!important}.features-nav-actions a,.features-nav-actions button{color:#17171f;background:#fff;border:1px solid #ddd6ff;border-radius:999px;align-items:center;gap:7px;padding:10px 16px;font-size:13px;font-weight:750;text-decoration:none;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,background .2s,color .2s;display:inline-flex}.features-nav-actions a:first-child{color:#fff;background:#17171f;border-color:#17171f}.features-nav-actions a:first-child:hover,.features-nav-actions button.primary:hover{color:#fff;background:#7952e8;transform:translateY(-2px);box-shadow:0 12px 26px #7952e847}.features-nav-actions button:hover{color:#17171f;background:#fff8e5}.features-nav-brand{flex:none}@media (max-width:760px){.features-nav{grid-template-columns:auto 1fr auto;gap:12px;padding:14px 18px}.features-nav-links{justify-content:flex-end;gap:14px;font-size:12.5px;display:flex!important}.features-nav-actions{gap:6px}.features-nav-actions a,.features-nav-actions button{padding:8px 12px;font-size:12px}}.features-hero{max-width:1240px;margin:0 auto;padding:96px 28px 110px;position:relative}.features-hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:46px;display:grid}.features-hero-copy p:first-of-type{color:#7952e8;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px;font-size:11px;font-weight:850}.features-hero-copy h1{font:760 clamp(40px,5.6vw,72px)/1.02 var(--font-display);letter-spacing:-.045em;color:#17171f;margin:0 0 18px}.features-hero-copy h1 em{color:#7952e8;font-style:normal}.features-hero-copy .features-lede{color:#5a5260;max-width:560px;margin:0 0 26px;font-size:17px;line-height:1.55}.features-hero-copy .features-cta-row{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.features-hero-copy .features-cta-row a,.features-hero-copy .features-cta-row button{color:#17171f;background:#fff;border:1px solid #ddd6ff;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 22px;font-size:13.5px;font-weight:800;text-decoration:none;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,color .2s,background .2s;display:inline-flex}.features-hero-copy .features-cta-row a:first-child,.features-hero-copy .features-cta-row button.primary{color:#fff;background:#17171f;border-color:#17171f}.features-hero-copy .features-cta-row a:first-child:hover,.features-hero-copy .features-cta-row button.primary:hover{background:#7952e8;border-color:#7952e8;transform:translateY(-2px);box-shadow:0 14px 28px #7952e847}.features-hero-copy .features-cta-row a:hover,.features-hero-copy .features-cta-row button:hover:not(.primary){background:#fff8e5}.features-hero-pills{flex-wrap:wrap;gap:7px;margin-top:24px;display:flex}.features-hero-pills b{font:700 11.5px/1.1 var(--font-sans);color:#5f5a67;background:#ffffffb3;border:1px solid #17172f0f;border-radius:10px;align-items:center;gap:5px;padding:6px 11px;display:inline-flex}.features-module-hero{background:#fff;border-bottom:1px solid #17171f14;padding:24px 28px 40px;overflow:hidden}.features-module-hero-grid{grid-template-columns:1.05fr .95fr;align-items:end;gap:48px;max-width:1240px;margin:auto;display:grid}.features-module-hero-copy>p{color:#7952e8;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px;font-size:11px;font-weight:850}.features-module-hero-copy h1{font:760 clamp(34px,5vw,60px)/1.04 var(--font-display);letter-spacing:-.038em;color:#17171f;margin:0 0 18px}.features-module-hero-copy h1 em{color:#7952e8;font-style:normal}.features-module-hero-copy span.lede{color:#5a5260;max-width:560px;margin:0 0 20px;font-size:16.5px;line-height:1.6;display:block}.features-module-hero-actions{flex-wrap:wrap;gap:12px;display:flex}.features-module-hero-actions a,.features-module-hero-actions button{color:#17171f;background:#fff;border:1px solid #ddd6ff;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 22px;font-size:13.5px;font-weight:800;text-decoration:none;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,background .2s,color .2s;display:inline-flex}.features-module-hero-actions a:first-child{color:#fff;background:#17171f;border-color:#17171f}.features-module-hero-actions a:first-child:hover{color:#fff;background:#7952e8;border-color:#7952e8;transform:translateY(-2px);box-shadow:0 14px 28px #7952e847}.features-module-hero-actions a:hover:not(:first-child){background:#fff8e5}.features-bullets{max-width:1240px;margin:0 auto;padding:84px 28px}.features-bullets-head{text-align:center;max-width:780px;margin:0 auto 40px}.features-bullets-head>p{color:#7952e8;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px;font-size:11px;font-weight:850}.features-bullets-head h2{font:760 clamp(30px,4vw,46px)/1.06 var(--font-display);letter-spacing:-.035em;color:#17171f;margin:0 0 12px}.features-bullets-head p.lede{color:#5a5260;margin:0;font-size:15.5px;line-height:1.55}.features-bullets-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.features-bullet{background:#fff;border:1px solid #7952e824;border-radius:24px;padding:24px;transition:transform .25s,box-shadow .25s;box-shadow:0 12px 30px #2a22410d}.features-bullet:hover{transform:translateY(-4px);box-shadow:0 18px 38px #2a22411a}.features-bullet>span{color:#7952e8;background:#faf6ff;border-radius:14px;place-items:center;width:46px;height:46px;display:grid}.features-bullet>span svg{width:22px;height:22px}.features-bullet h3{font:700 18px/1.2 var(--font-display);letter-spacing:-.018em;color:#17171f;margin:18px 0 8px}.features-bullet p{color:#5a5260;margin:0;font-size:13.5px;line-height:1.55}@media (max-width:1080px){.features-bullets-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.features-bullets-grid{grid-template-columns:1fr}}.features-index-hero{background:#fff;border-bottom:1px solid #17171f14;max-width:1240px;margin:0 auto;padding:24px 28px 40px;position:relative}.features-index-hero-grid{grid-template-columns:1.1fr .9fr;align-items:end;gap:46px;display:grid}.features-index-hero-copy>p:first-child{color:#7952e8;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px;font-size:11px;font-weight:850}.features-index-hero-copy h1{font:760 clamp(40px,5.6vw,72px)/1.02 var(--font-display);letter-spacing:-.045em;color:#17171f;margin:0 0 18px}.features-index-hero-copy h1 em{color:#7952e8;font-style:normal}.features-index-hero-copy p.lede{color:#5a5260;max-width:560px;margin:0 0 24px;font-size:17px;line-height:1.55}.features-index-hero-actions{flex-wrap:wrap;gap:12px;display:flex}.features-index-hero-actions a,.features-index-hero-actions button{color:#17171f;background:#fff;border:1px solid #ddd6ff;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 22px;font-size:13.5px;font-weight:800;text-decoration:none;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,background .2s,color .2s;display:inline-flex}.features-index-hero-actions a:first-child{color:#fff;background:#17171f;border-color:#17171f}.features-index-hero-actions a:first-child:hover{color:#fff;background:#7952e8;border-color:#7952e8;transform:translateY(-2px);box-shadow:0 14px 28px #7952e847}.features-index-hero-actions a:hover:not(:first-child){background:#fff8e5}@media (max-width:900px){.features-index-hero-grid,.features-hero-grid,.features-module-hero-grid{grid-template-columns:1fr}.features-mock-panel{margin:0}}.features-index-section{max-width:1240px;margin:0 auto;padding:80px 28px}.features-index-section h2{font:760 clamp(28px,3.6vw,40px)/1.05 var(--font-display);letter-spacing:-.035em;color:#17171f;margin:0 0 8px}.features-index-section .features-section-lede{color:#5a5260;max-width:680px;margin:0 0 30px;font-size:15.5px;line-height:1.55}.features-index-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.features-index-card{color:inherit;background:#fff;border:1px solid #7952e829;border-radius:24px;flex-direction:column;gap:14px;padding:26px;text-decoration:none;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 32px #2a22410f}.features-index-card:hover{border-color:#7952e852;transform:translateY(-5px)rotate(-.3deg);box-shadow:0 22px 46px #2a22411f}.features-index-card-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.features-index-card-head>span{color:#7952e8;background:#faf6ff;border-radius:16px;place-items:center;width:52px;height:52px;display:grid}.features-index-card-head>span svg{width:24px;height:24px}.features-index-card-head>b{text-transform:uppercase;letter-spacing:.12em;color:#3c74a0;background:#eefbff;border:1px solid #c7ddf2;border-radius:999px;padding:5px 10px;font-size:10px;font-weight:850}.features-index-card-head>b.lilac{color:#7952e8;background:#faf6ff;border-color:#d9cff7}.features-index-card-head>b.pink{color:#a44e68;background:#fff1f6;border-color:#f5d3df}.features-index-card-head>b.yellow{color:#87650c;background:#fff9dd;border-color:#ecdc92}.features-index-card-head>b.mint{color:#31735e;background:#eefaf4;border-color:#c6e8d7}.features-index-card-head>b.blue{color:#366d9f;background:#eef6ff;border-color:#c7ddf2}.features-index-card-head>b.peach{color:#a05e1f;background:#fff1e6;border-color:#f0d2b3}.features-index-card h3{font:760 23px/1.16 var(--font-display);letter-spacing:-.025em;color:#17171f;margin:0}.features-index-card p{color:#5a5260;margin:0;font-size:14px;line-height:1.55}.features-index-card-footer{color:#7952e8;border-top:1px dashed #17172f14;justify-content:space-between;align-items:center;margin-top:auto;padding-top:14px;font-size:12.5px;font-weight:800;display:flex}.features-index-card-footer svg{width:14px;transition:transform .25s}.features-index-card:hover .features-index-card-footer svg{transform:translate(3px)}@media (max-width:1080px){.features-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.features-index-grid{grid-template-columns:1fr}}.features-index-card[data-tone=lilac]{background:linear-gradient(#faf8ff 0%,#f4efff 100%)}.features-index-card[data-tone=pink]{background:linear-gradient(#fff8fb 0%,#ffeef5 100%)}.features-index-card[data-tone=yellow]{background:linear-gradient(#fffdf1 0%,#fff7d2 100%)}.features-index-card[data-tone=mint]{background:linear-gradient(#f8fffb 0%,#eaf9f2 100%)}.features-index-card[data-tone=blue]{background:linear-gradient(#f8fcff 0%,#eaf5ff 100%)}.features-index-card[data-tone=peach]{background:linear-gradient(#fffaf6 0%,#ffeddd 100%)}.features-final{background:linear-gradient(#fffdf9 0%,#f6f1ff 100%);border-radius:32px 32px 0 0;padding:108px 28px 110px}.features-final-inner{text-align:center;background:#fff;border:1px solid #7952e82e;border-radius:36px;max-width:920px;margin:auto;padding:48px 38px;box-shadow:0 22px 56px #2a224114}.features-final-inner h2{font:760 clamp(34px,4vw,52px)/1.03 var(--font-display);letter-spacing:-.035em;color:#17171f;margin:0 0 14px}.features-final-inner p{color:#5a5260;max-width:560px;margin:0 auto 24px;font-size:16px;line-height:1.55}.features-final-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.features-final-actions a,.features-final-actions button{color:#17171f;background:#fff;border:1px solid #ddd6ff;border-radius:999px;align-items:center;gap:8px;min-height:46px;padding:0 22px;font-size:13.5px;font-weight:800;text-decoration:none;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,background .2s,color .2s;display:inline-flex}.features-final-actions a:first-child{color:#fff;background:#17171f;border-color:#17171f}.features-final-actions a:first-child:hover{color:#fff;background:#7952e8;border-color:#7952e8;transform:translateY(-2px);box-shadow:0 14px 28px #7952e847}.features-final-actions a:hover:not(:first-child){background:#fff8e5}.features-sitewide{background:#fff3e0;padding:60px 28px}.features-sitewide-inner{grid-template-columns:repeat(3,1fr);gap:14px;max-width:1180px;margin:auto;display:grid}.features-sitewide article{background:#fff;border:1px solid #e7d9bd;border-radius:18px;align-items:center;gap:12px;padding:18px 20px;display:flex}.features-sitewide article>span:first-child{color:#85610d;background:#fff6cf;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.features-sitewide article>span:first-child svg{width:20px;height:20px}.features-sitewide article strong{color:#17171f;font-size:14px;display:block}.features-sitewide article small{color:#716953;margin-top:2px;font-size:11.5px;display:block}@media (max-width:900px){.features-sitewide-inner{grid-template-columns:1fr}}.features-breadcrumb{color:#716953;align-items:center;gap:6px;margin-bottom:10px;font-size:12px;font-weight:650;display:flex}.features-breadcrumb a{color:#7952e8;font-weight:750;text-decoration:none}.features-breadcrumb a:hover{text-decoration:underline}.features-breadcrumb svg{color:#a99bff;width:12px}.features-modulenav{background:#fff5e6;padding:60px 28px}.features-modulenav-inner{max-width:1240px;margin:auto}.features-modulenav-inner h3{font:760 24px/1.1 var(--font-display);letter-spacing:-.025em;color:#17171f;margin:0 0 18px}.features-modulenav-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid!important}.features-modulenav a{color:#17171f;background:#fff;border:1px solid #7952e829;border-radius:18px;align-items:center;gap:10px;padding:14px 16px;font-size:13.5px;font-weight:700;text-decoration:none;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex}.features-modulenav a:hover{border-color:#7952e852;transform:translateY(-3px);box-shadow:0 10px 22px #2a224114}.features-modulenav a>span{color:#7952e8;background:#faf6ff;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.features-modulenav a>span svg{width:15px}.features-modulenav a svg.arrow{color:#a99bff;width:13px;margin-left:auto}@media (max-width:900px){.features-modulenav-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.features-modulenav-grid{grid-template-columns:1fr}}.features-footer{color:#cfc8d6;background:#17171f;padding:54px 28px 36px}.features-footer-inner{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;max-width:1240px;margin:auto;display:grid}.features-footer-inner h4{font:700 13px/1.1 var(--font-sans);color:#fff;margin:0 0 14px}.features-footer-inner p{color:#a8a2b8;margin:0;font-size:13px;line-height:1.55}.features-footer-inner ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.features-footer-inner ul a{color:#cfc8d6;font-size:12.5px;text-decoration:none;transition:color .2s}.features-footer-inner ul a:hover{color:#fff}.features-footer-bottom{color:#8e8896;border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;max-width:1240px;margin:32px auto 0;padding-top:20px;font-size:11.5px;display:flex}.features-footer-bottom a{color:#a8a2b8;text-decoration:none}@media (max-width:760px){.features-footer-inner{grid-template-columns:1fr 1fr}}@media (max-width:500px){.features-footer-inner{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.features-index-card,.features-index-card-footer svg,.features-bullet,.features-modulenav a{transition:none!important}.features-index-card:hover,.features-bullet:hover,.features-modulenav a:hover{transform:none!important;box-shadow:0 14px 32px #2a22410f!important}}.features-dropdown{align-items:center;display:inline-flex;position:relative}.features-dropdown-trigger{font:700 14.5px/1 var(--font-sans);color:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:6px 4px;transition:color .2s;display:inline-flex}.features-dropdown-trigger:hover,.features-dropdown.is-active .features-dropdown-trigger{color:var(--landing-color-primary,#7952e8)}.features-dropdown-chev{opacity:.7;transition:transform .22s cubic-bezier(.2,.8,.2,1)}.features-dropdown.is-open .features-dropdown-chev{opacity:1;transform:rotate(180deg)}.features-dropdown-panel{z-index:60;pointer-events:none;visibility:hidden;background:#fff;border:1px solid #7952e829;border-radius:20px;width:min(920px,100vw - 48px);max-height:80vh;padding:22px 22px 18px;top:calc(100% + 14px);left:0;overflow-y:auto;transform:translateY(-6px);box-shadow:0 24px 58px #2a22412e;display:none!important;position:absolute!important}.features-dropdown.is-open .features-dropdown-panel{pointer-events:auto;visibility:visible;animation:.18s both featuresDropdownIn;display:block!important;position:absolute!important}@keyframes featuresDropdownIn{0%{opacity:0}to{opacity:1}}.features-dropdown-panel:before{content:"";background:#fff;border-top:1px solid #7952e829;border-left:1px solid #7952e829;border-radius:3px;width:14px;height:14px;position:absolute;top:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.features-dropdown-hero{justify-content:space-between;align-items:flex-end;gap:28px;padding:4px 6px 18px;display:flex}.features-dropdown-hero-copy{flex:1;min-width:0}.features-dropdown-hero-eyebrow{color:var(--landing-color-primary,#7952e8);letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:850}.features-dropdown-hero-title{color:#17171f;font:760 23px/1.1 var(--font-display);letter-spacing:-.02em;margin:0 0 6px}.features-dropdown-hero-sub{color:#716953;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:460px;font-size:12.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.features-dropdown-hero-actions{flex:none;gap:10px;display:flex}.features-dropdown-hero-cta{border:1px solid var(--landing-border,#e4e0ec);min-height:40px;color:var(--landing-color-surface-dark,#17171f);font:750 12.5px/1 var(--font-sans);background:#fff;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 16px;text-decoration:none;transition:border-color .18s,background .18s,color .18s,transform .18s;display:inline-flex}.features-dropdown-hero-cta:hover{transform:translateY(-1px)}.features-dropdown-hero-cta.primary{background:var(--landing-color-primary,#7952e8);border-color:var(--landing-color-primary,#7952e8);color:#fff}.features-dropdown-hero-cta.primary:hover{background:var(--landing-color-primary-dark,#5741c9);border-color:var(--landing-color-primary-dark,#5741c9)}.features-dropdown-hero-cta svg{width:15px;height:15px}.features-dropdown-divider{background:#17172f14;height:1px;margin:2px 6px 12px}.features-dropdown-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid!important}.features-dropdown-item{color:#17171f;border-radius:14px;flex-direction:column;gap:10px;padding:14px;text-decoration:none;transition:background .15s,box-shadow .15s;display:flex}.features-dropdown-item:hover{background:var(--color-surface,#f3f1f8)}.features-dropdown-item.is-current{background:color-mix(in srgb,var(--landing-color-primary,#7952e8) 12%,transparent);color:var(--landing-color-primary,#7952e8)}.features-dropdown-item:focus-visible{outline:2px solid color-mix(in srgb,var(--landing-color-primary,#7952e8) 35%,transparent);outline-offset:2px}.features-dropdown-item-icon{width:38px;height:38px;color:var(--landing-color-primary,#7952e8);background:#fff;border:1px solid #17172f14;border-radius:10px;place-items:center;transition:transform .2s,background .2s;display:grid}.features-dropdown-item:hover .features-dropdown-item-icon{transform:translateY(-2px)}.features-dropdown-item[data-tone=lilac] .features-dropdown-item-icon{color:#7952e8;background:#faf6ff;border-color:#d9cff7}.features-dropdown-item[data-tone=pink] .features-dropdown-item-icon{color:#a44e68;background:#fff1f6;border-color:#f5d3df}.features-dropdown-item[data-tone=yellow] .features-dropdown-item-icon{color:#87650c;background:#fff9dd;border-color:#ecdc92}.features-dropdown-item[data-tone=mint] .features-dropdown-item-icon{color:#31735e;background:#eefaf4;border-color:#c6e8d7}.features-dropdown-item[data-tone=blue] .features-dropdown-item-icon{color:#366d9f;background:#eef6ff;border-color:#c7ddf2}.features-dropdown-item[data-tone=peach] .features-dropdown-item-icon{color:#a05e1f;background:#fff1e6;border-color:#f0d2b3}.features-dropdown-item-copy strong{color:#17171f;font-size:13.5px;font-weight:750;display:block}.features-dropdown-item-copy small{color:#716953;margin-top:3px;font-size:11.5px;font-weight:600;line-height:1.4;display:block}.features-dropdown-item-link{color:var(--landing-color-primary,#7952e8);align-items:center;gap:4px;margin-top:auto;font-size:11.5px;font-weight:800;display:inline-flex}.features-dropdown-item-link svg{width:13px;height:13px;transition:transform .15s}.features-dropdown-item:hover .features-dropdown-item-link svg{transform:translate(3px)}@media (max-width:1080px){.features-dropdown-panel{width:min(720px,100vw - 48px)}.features-dropdown-hero{flex-direction:column;align-items:flex-start;gap:14px}.features-dropdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.features-dropdown-panel{width:auto;top:calc(100% + 10px);left:0;right:auto;transform:translateY(-6px)}.features-dropdown.is-open .features-dropdown-panel{transform:translateY(0)}.features-dropdown-panel:before{left:32px;transform:rotate(45deg)}.features-dropdown-grid{grid-template-columns:1fr}.features-dropdown-hero-actions{width:100%}.features-dropdown-hero-cta{flex:1}}@media (prefers-reduced-motion:reduce){.features-dropdown-panel,.features-dropdown-chev,.features-dropdown-hero-cta,.features-dropdown-item,.features-dropdown-item-link svg,.features-dropdown-item-icon{transition:none!important}.features-dropdown.is-open .features-dropdown-panel{animation:none}.features-dropdown-hero-cta:hover{transform:none}}.features-spotlight{background:#fffaf2;padding:84px 28px}.features-spotlight-lilac{background:linear-gradient(#faf8ff 0%,#f4efff 100%)}.features-spotlight-pink{background:linear-gradient(#fff8fb 0%,#ffeef5 100%)}.features-spotlight-yellow{background:linear-gradient(#fffdf1 0%,#fff7d2 100%)}.features-spotlight-mint{background:linear-gradient(#f8fffb 0%,#eaf9f2 100%)}.features-spotlight-blue{background:linear-gradient(#f8fcff 0%,#eaf5ff 100%)}.features-spotlight-peach{background:linear-gradient(#fffaf6 0%,#ffeddd 100%)}.features-spotlight-inner{max-width:1080px;margin:auto}.features-spotlight-head{text-align:center;max-width:780px;margin:0 auto 36px}.features-spotlight-head>p{color:#7952e8;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px;font-size:11px;font-weight:850}.features-spotlight-head h2{font:760 clamp(28px,3.8vw,44px)/1.06 var(--font-display);letter-spacing:-.035em;color:#17171f;margin:0 0 12px}.features-spotlight-head p.lede{color:#5a5260;margin:0;font-size:15px;line-height:1.55}.features-spotlight-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.features-spotlight-tip{border:1px solid var(--color-border);background:#fff;border-radius:22px;padding:24px;transition:transform .25s,box-shadow .25s;position:relative;box-shadow:0 12px 28px #2a22410d}.features-spotlight-tip:hover{transform:translateY(-3px);box-shadow:0 18px 36px #2a22411a}.features-spotlight-num{color:#7952e8;min-width:34px;height:24px;font:850 11px/1 var(--font-sans);letter-spacing:.08em;background:#7952e824;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;display:inline-flex}.features-spotlight-tip h3{font:720 17px/1.22 var(--font-display);letter-spacing:-.022em;color:#17171f;margin:16px 0 8px}.features-spotlight-tip p{color:#5a5260;margin:0;font-size:13px;line-height:1.55}@media (max-width:1080px){.features-spotlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.features-spotlight-grid{grid-template-columns:1fr}.features-spotlight{padding:60px 18px}}@media (prefers-reduced-motion:reduce){.features-spotlight-tip{transition:none!important}.features-spotlight-tip:hover{transform:none!important;box-shadow:0 12px 28px #2a22410d!important}}.feature-hero-stage{place-items:end center;width:100%;max-width:440px;min-height:560px;margin:auto;padding:0;display:grid;position:relative}.feature-hero-pills{flex-wrap:wrap;gap:8px;margin-top:24px;margin-bottom:44px;display:flex}.feature-hero-pills b{font:700 12px/1.15 var(--font-sans);color:#5d556a;letter-spacing:-.005em;background:#ffffffc7;border:1px solid #7952e829;border-radius:999px;align-items:center;padding:8px 14px;display:inline-flex}.feature-hero-phone{z-index:1;width:min(420px,90%);padding:0;position:relative}.feature-hero-phone-screen{z-index:1;background:0 0;border-radius:24px;width:100%;height:auto;display:block;position:relative;box-shadow:0 20px 50px #17171f26}.feature-hero-phone-css{aspect-ratio:9/16;background:#fff;border:1px solid #17171f14;border-radius:24px;flex-direction:column;width:100%;max-height:480px;display:flex;overflow:hidden;box-shadow:0 18px 42px #17171f1a}.feature-hero-phone-header{background:#f9fafb;justify-content:center;align-items:center;height:28px;display:flex}.feature-hero-phone-notch{background:#17171f14;border-radius:3px;width:80px;height:6px}.feature-hero-phone-content{font-family:var(--font-sans);color:#374151;flex-direction:column;flex:1;gap:8px;padding:20px 16px;font-size:12px;display:flex}.phs-kicker{letter-spacing:.1em;text-transform:uppercase;color:#9ca3af;margin-bottom:2px;font-size:9px;font-weight:800}.phs-hero-text{color:#111827;margin-bottom:8px;font-size:18px;font-weight:700;line-height:1.2}.phs-row{background:#f9fafb;border-radius:10px;align-items:center;gap:10px;margin-bottom:4px;padding:8px 10px;display:flex}.phs-row strong{color:#111827;font-size:12px}.phs-row-accent{background:#f5f3ff;border:1px solid #e0d4fc}.phs-dot{border-radius:50%;flex:none;width:8px;height:8px}.phs-badge{color:#4338ca;background:#e0e7ff;border-radius:99px;margin-left:auto;padding:3px 7px;font-size:9px;font-weight:700}.phs-divider{background:#e5e7eb;height:1px;margin:8px 0}.phs-section-title{color:#6b7280;margin-bottom:6px;font-size:11px;font-weight:700}.phs-chip-row{flex-wrap:wrap;gap:6px;display:flex}.phs-chip{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:99px;padding:5px 10px;font-size:10px;font-weight:600}.phs-chip-warn{color:#92400e;background:#fef3c7;border-color:#fde68a}.phs-chip-active{color:#fff;background:#7c3aed;border-color:#7c3aed}.phs-sub{color:#9ca3af;font-size:10px;font-weight:400;display:block}.phs-day-strip{gap:4px;margin:6px 0;display:flex}.phs-day-strip span{text-align:center;color:#9ca3af;border-radius:8px;flex:1;padding:6px 0;font-size:10px;font-weight:600}.phs-day-active{background:#7c3aed;color:#fff!important}.phs-meal-card{background:#f9fafb;border-radius:12px;align-items:center;gap:10px;margin-bottom:6px;padding:10px;display:flex}.phs-meal-emoji{font-size:24px}.phs-meal-card strong{color:#111827;font-size:12px}.phs-cta-pill{color:#fff;text-align:center;background:#7c3aed;border-radius:99px;margin-top:8px;padding:8px 16px;font-size:11px;font-weight:700}.phs-list-item{color:#374151;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.phs-check{border:1.5px solid #d1d5db;border-radius:4px;flex:none;width:16px;height:16px}.phs-tag{color:#6b7280;background:#f3f4f6;border-radius:99px;margin-left:auto;padding:2px 7px;font-size:9px;font-weight:600}.phs-task-item{color:#374151;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.phs-task-check{border:1.5px solid #d1d5db;border-radius:50%;flex:none;width:16px;height:16px}.phs-avatar-sm{color:#fff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:9px;font-weight:700;display:grid}.phs-streak{color:#374151;text-align:center;background:#fef3c7;border-radius:10px;padding:8px 10px;font-size:11px}.phs-chat-msg{border-radius:12px;margin-bottom:6px;padding:10px 12px;font-size:11px;line-height:1.4}.phs-chat-user{color:#fff;background:#7c3aed;border-radius:12px 12px 4px;align-self:flex-end;margin-left:20%}.phs-chat-ai{color:#374151;background:#f3f4f6;border-radius:12px 12px 12px 4px;align-items:flex-start;gap:6px;display:flex}.phs-chat-avatar{flex:none;font-size:14px}.feature-hero-phone.is-composite{background:#09090b;border-radius:58px;width:270px;height:565px;overflow:hidden;box-shadow:0 18px 42px #17171f29}.feature-hero-phone.is-composite .feature-hero-phone-screen{object-fit:contain;object-position:left bottom;width:auto;max-width:none;height:624px;transform:translate(-2px,-59px)}.feature-hero-phone.is-composite:after{content:"";z-index:2;background:#09090b;border-radius:0 0 52px 52px;height:8px;position:absolute;top:auto;bottom:0;left:0;right:0}.feature-hero-card{display:none}.feature-hero-card-1{animation-delay:-2s;top:-2px;left:-44px}.feature-hero-card-2{animation-delay:-4s;top:38%;right:-50px}.feature-hero-card-3{animation-delay:-1s;bottom:60px;left:-46px}.feature-hero-card-glyph{background:#fff;border:1px solid #17172f12;border-radius:11px;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.feature-hero-card strong{font:720 13.5px/1.18 var(--font-display);color:#17171f;letter-spacing:-.012em;display:block}.feature-hero-card small{font:600 11.5px/1.3 var(--font-sans);color:#716953;margin-top:3px;display:block}.feature-hero-card[data-accent=lilac]{background:linear-gradient(135deg,#faf8ff,#fff);border-color:#d9cff7}.feature-hero-card[data-accent=lilac] .feature-hero-card-glyph{color:#7952e8;background:#faf6ff}.feature-hero-card[data-accent=blue]{background:linear-gradient(135deg,#f8fcff,#fff);border-color:#c7ddf2}.feature-hero-card[data-accent=blue] .feature-hero-card-glyph{color:#366d9f;background:#edf6ff}.feature-hero-card[data-accent=mint]{background:linear-gradient(135deg,#f8fffb,#fff);border-color:#c6e8d7}.feature-hero-card[data-accent=mint] .feature-hero-card-glyph{color:#31735e;background:#eefaf5}.feature-hero-card[data-accent=peach]{background:linear-gradient(135deg,#fffaf6,#fff);border-color:#f0d2b3}.feature-hero-card[data-accent=peach] .feature-hero-card-glyph{color:#a05e1f;background:#fff1e6}.feature-hero-card[data-accent=amber]{background:linear-gradient(135deg,#fffdf1,#fff);border-color:#ecdc92}.feature-hero-card[data-accent=amber] .feature-hero-card-glyph{color:#85610d;background:#fff6cf}.feature-hero-card[data-accent=violet]{background:linear-gradient(135deg,#faf6ff,#fff);border-color:#d9cff7}.feature-hero-card[data-accent=violet] .feature-hero-card-glyph{color:#6748d1;background:#faf6ff}.feature-hero-card[data-accent=rose]{background:linear-gradient(135deg,#fff8fb,#fff);border-color:#f5d3df}.feature-hero-card[data-accent=rose] .feature-hero-card-glyph{color:#a44e68;background:#fff1f6}.feature-hero-card[data-accent=lime]{background:linear-gradient(135deg,#f8fffb,#fff);border-color:#c6e8d7}.feature-hero-card[data-accent=lime] .feature-hero-card-glyph{color:#3e5e1c;background:#eefaf5}.feature-hero-card[data-accent=sky]{background:linear-gradient(135deg,#f8fcff,#fff);border-color:#c7ddf2}.feature-hero-card[data-accent=sky] .feature-hero-card-glyph{color:#3c74a0;background:#edf6ff}@keyframes heroCardFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@media (max-width:1080px){.feature-hero-stage{max-width:400px;min-height:485px}.feature-hero-phone.is-composite{border-radius:50px;width:232px;height:485px}.feature-hero-phone.is-composite .feature-hero-phone-screen{height:535px;transform:translateY(-50px)}.feature-hero-card-1{left:-20px}.feature-hero-card-2{right:-22px}.feature-hero-card-3{bottom:40px;left:-22px}}@media (max-width:760px){.feature-hero-stage{min-height:471px;padding-bottom:0}.feature-hero-phone.is-composite{border-radius:48px;width:226px;height:471px}.feature-hero-phone.is-composite .feature-hero-phone-screen{height:520px;transform:translateY(-49px)}.feature-hero-phone-css{background:#fff;border:1px solid #17171f0f;box-shadow:0 12px 28px #17171f14}}.features-page :-webkit-any(.features-module-hero-actions,.features-index-hero-actions,.features-final-actions) a{box-sizing:border-box;border-radius:8px;justify-content:center;min-width:132px;height:48px;min-height:48px;padding:0 22px;line-height:1}.features-page :is(.features-module-hero-actions,.features-index-hero-actions,.features-final-actions) a{box-sizing:border-box;border-radius:8px;justify-content:center;min-width:132px;height:48px;min-height:48px;padding:0 22px;line-height:1}.features-page :-webkit-any(.features-module-hero-actions,.features-index-hero-actions,.features-final-actions) button{box-sizing:border-box;border-radius:8px;justify-content:center;min-width:132px;height:48px;min-height:48px;padding:0 22px;line-height:1}.features-page :is(.features-module-hero-actions,.features-index-hero-actions,.features-final-actions) button{box-sizing:border-box;border-radius:8px;justify-content:center;min-width:132px;height:48px;min-height:48px;padding:0 22px;line-height:1}@media (max-width:900px){.features-index-hero,.features-module-hero{padding:20px 20px 40px}.features-module-hero-copy{padding-bottom:0}.feature-hero-pills{margin-bottom:32px}}@media (max-width:600px){.features-index-hero,.features-module-hero{padding:16px 16px 40px}}.feature-hero-stage-tablet{align-self:center;place-items:center;max-width:680px;min-height:560px}.feature-hero-stage-tablet .feature-hero-phone{width:min(640px,100%)}.feature-hero-stage-tablet .feature-hero-phone-screen{filter:drop-shadow(0 24px 34px #17171f29);border-radius:24px;width:100%}@media (max-width:900px){.feature-hero-stage-tablet{max-width:760px;min-height:0;margin-top:8px}.feature-hero-stage-tablet .feature-hero-phone{width:min(720px,100%)}}@media (max-width:600px){.feature-hero-stage-tablet{margin-top:12px}.feature-hero-stage-tablet .feature-hero-phone{width:100%}.feature-hero-stage-tablet .feature-hero-phone-screen,.feature-hero-phone-screen,.feature-hero-stage-tablet .feature-hero-phone-screen{border-radius:16px}}@media (prefers-reduced-motion:reduce){.feature-hero-card{animation:none!important}}@media (min-width:1440px){.features-nav,.features-hero{max-width:1400px}.features-hero-grid{gap:60px}.features-hero-copy h1{font-size:max(50px,min(6vw,80px))}.features-hero-copy .features-lede{max-width:640px;font-size:18px}.features-hero-pills{gap:10px}.features-hero-pills b{padding:9px 16px;font-size:12.5px}.features-module-hero{padding:28px 40px 48px}.features-module-hero-grid{gap:60px;max-width:1400px}.features-module-hero-copy h1{font-size:max(42px,min(5.5vw,72px))}.features-module-hero-copy span.lede{max-width:640px;font-size:17.5px}.feature-hero-stage{max-width:480px;min-height:600px}.feature-hero-phone.is-composite{width:296px;height:610px}.feature-hero-phone.is-composite .feature-hero-phone-screen{height:670px}.features-bullets{max-width:1400px;padding:92px 40px}.features-bullets-grid{grid-template-columns:repeat(4,1fr);gap:20px}.features-spotlight-grid{gap:20px}.features-spotlight{max-width:1400px}.features-index-section{max-width:1400px;padding:92px 40px}.features-modulenav-inner{max-width:1400px}.features-modulenav-grid{grid-template-columns:repeat(4,1fr);gap:14px}.features-footer-inner{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;max-width:1400px}.features-footer-bottom{max-width:1400px}.feature-hero-stage-tablet{max-width:720px;min-height:580px}.feature-hero-stage-tablet .feature-hero-phone{width:min(680px,100%)}}@media (min-width:1920px){.features-nav,.features-hero{max-width:1560px}.features-hero-grid{gap:72px}.features-hero-copy h1{font-size:max(56px,min(6vw,88px))}.features-hero-copy .features-lede{max-width:720px;font-size:19px}.features-hero-pills b{padding:10px 18px;font-size:13px}.features-module-hero{padding:32px 50px 56px}.features-module-hero-grid{gap:72px;max-width:1560px}.features-module-hero-copy h1{font-size:max(48px,min(5.5vw,80px))}.features-module-hero-copy span.lede{max-width:720px;font-size:19px}.feature-hero-stage{max-width:520px;min-height:650px}.feature-hero-phone.is-composite{width:320px;height:660px}.feature-hero-phone.is-composite .feature-hero-phone-screen{height:724px}.features-bullets{max-width:1560px;padding:100px 50px}.features-bullets-grid{grid-template-columns:repeat(4,1fr);gap:24px}.features-spotlight{max-width:1560px}.features-index-section{max-width:1560px;padding:100px 50px}.features-modulenav-inner{max-width:1560px}.features-modulenav-grid{grid-template-columns:repeat(4,1fr);gap:16px}.features-footer-inner{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;max-width:1560px}.features-footer-bottom{max-width:1560px}.feature-hero-stage-tablet{max-width:780px;min-height:620px}.feature-hero-stage-tablet .feature-hero-phone{width:min(740px,100%)}}
