:root,html{background-color:var(--fp-bg)}:root{color:var(--fp-color-ink)}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--fp-font-body)}body:has(.fp-app-chrome-scaffold){background-color:transparent}body:has(.fp-app-chrome-scaffold) #__next-build-watcher,body:has(.fp-app-chrome-scaffold) #devtools-indicator,body:has(.fp-app-chrome-scaffold) [class*=nextjs-portal],body:has(.fp-app-chrome-scaffold) [data-next-mark],body:has(.fp-app-chrome-scaffold) [data-nextjs-dev-tools-button],body:has(.fp-app-chrome-scaffold) [data-nextjs-dialog-overlay],body:has(.fp-app-chrome-scaffold) [data-nextjs-toast],body:has(.fp-app-chrome-scaffold) button[aria-label*="Next.js"],body:has(.fp-app-chrome-scaffold) button[aria-label*=Turbopack],body:has(.fp-app-chrome-scaffold) nextjs-portal{display:none!important;pointer-events:none!important}.fp-onboarding-tabs{display:flex;flex-wrap:wrap;gap:var(--fp-space-sm)}.fp-onboarding-tabs .fp-button{flex:1 1 auto;min-width:7.5rem;font-size:var(--fp-text-body-sm-size);padding:var(--fp-space-sm) var(--fp-space-sm)}.fp-settings-theme-swatch{display:inline-block;width:1rem;height:1rem;border-radius:var(--fp-radius-pill);background:var(--fp-accent);margin-right:var(--fp-space-sm);vertical-align:middle}.fp-scaffold__brand{display:flex;flex-wrap:wrap;align-items:center;gap:var(--fp-space-sm)}.fp-scaffold__household-logo{border-radius:var(--fp-radius-md);object-fit:cover}.fp-app-chrome-home__greeting{margin-top:var(--fp-space-md);padding-top:var(--fp-space-md);border-top:1px solid var(--fp-decor-border)}.fp-app-chrome-home__greeting-text{font-size:var(--fp-text-body-size);line-height:1.4;color:var(--fp-color-ink-muted)}button.fp-app-chrome-week-row__day{flex:0 0 auto;min-width:2.25rem;display:flex;flex-direction:column;align-items:center;gap:var(--fp-space-xs);text-align:center;border:none;background:none;padding:0;font:inherit;color:inherit;cursor:pointer}.fp-app-chrome-week-row__day--selected .fp-app-chrome-week-row__label{color:var(--fp-color-ink);font-weight:var(--fp-text-label-weight)}.fp-app-chrome-week-row__day--selected .fp-app-chrome-week-dot{box-shadow:0 0 0 2px var(--fp-color-ink)}.fp-app-chrome-week-row__day--today.fp-app-chrome-week-row__day--selected .fp-app-chrome-week-dot{box-shadow:none}.fp-app-chrome-home__card--householdTasks .fp-app-chrome-card__head{margin-bottom:var(--fp-space-sm)}.fp-emergency-contact-modal{padding-bottom:var(--fp-space-sm)}.fp-emergency-contact-modal__call-wrap{display:grid;grid-gap:var(--fp-space-xs);gap:var(--fp-space-xs)}.fp-emergency-contact-modal__call{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:var(--fp-space-sm) var(--fp-space-md);border-radius:var(--fp-radius-md);border:1px solid color-mix(in srgb,var(--fp-logo-secondary) 55%,transparent);background:color-mix(in srgb,var(--fp-logo-secondary) 16%,var(--fp-surface));font-family:var(--fp-font-display);font-size:var(--fp-text-subheading-size);font-weight:var(--fp-text-label-weight);color:var(--fp-color-ink);text-decoration:none}.fp-emergency-contact-modal__call:focus-visible{outline:2px solid var(--fp-accent);outline-offset:2px}.fp-emergency-contact-modal__call-hint{line-height:1.35}.fp-emergency-contact-modal__call-hint,.fp-emergency-contact-modal__empty,.fp-emergency-contact-modal__status{margin:0;font-size:var(--fp-text-caption-size);color:var(--fp-color-ink-muted)}.fp-emergency-contact-modal__people{display:grid;grid-gap:var(--fp-space-md);gap:var(--fp-space-md)}.fp-emergency-contact-modal__person{display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm);margin:0;padding:0;border:none;background:transparent}.fp-emergency-contact-modal__person-head{display:grid;grid-gap:calc(var(--fp-space-xs) / 3);gap:calc(var(--fp-space-xs) / 3);padding-bottom:var(--fp-space-xs);border-bottom:1px dashed color-mix(in srgb,var(--fp-decor-border) 70%,transparent)}.fp-emergency-contact-modal__person-name{margin:0;font-family:var(--fp-font-display);font-size:var(--fp-text-body-size);font-weight:var(--fp-text-label-weight);line-height:1.3;color:var(--fp-color-ink)}.fp-emergency-contact-modal__person-role{margin:0;font-size:var(--fp-text-caption-size);line-height:1.35;color:var(--fp-color-ink-muted)}.fp-emergency-contact-modal__fields{display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm)}.fp-emergency-contact-modal__value{display:flex;align-items:center;min-height:2.5rem;box-sizing:border-box;text-decoration:none;word-break:break-word}.fp-emergency-contact-modal__value:not(.fp-emergency-contact-modal__value--empty):hover{border-color:color-mix(in srgb,var(--fp-accent) 45%,var(--fp-decor-border))}.fp-emergency-contact-modal__value:not(.fp-emergency-contact-modal__value--empty):active{transform:translateY(1px)}.fp-emergency-contact-modal__value--empty{color:var(--fp-color-ink-muted)}.fp-emergency-contact-modal__plan{margin:0;white-space:pre-wrap;line-height:1.45;min-height:4rem;align-items:flex-start;padding-top:.2rem;padding-bottom:var(--fp-space-sm)}.fp-emergency-contact-modal__update-hint{margin:var(--fp-space-sm) var(--fp-space-md) 0;font-size:var(--fp-text-caption-size);line-height:1.35;text-align:center;color:var(--fp-color-ink-muted)}.fp-emergency-contact-modal__update-hint a{font-weight:var(--fp-text-label-weight);color:var(--fp-color-ink);text-decoration:none}.fp-emergency-contact-modal__update-hint a:focus-visible{outline:2px solid var(--fp-accent);outline-offset:2px;border-radius:var(--fp-radius-sm)}.fp-planner{display:grid;grid-gap:var(--fp-space-lg);gap:var(--fp-space-lg)}.fp-planner__panel{padding:var(--fp-space-md);border-radius:var(--fp-radius-lg);background:var(--fp-surface);border:1px solid var(--fp-accent-soft);box-shadow:var(--fp-shadow-soft)}.fp-planner__panel h2{margin:0 0 var(--fp-space-md);font-size:var(--fp-text-subheading-size)}.fp-app-chrome-page .fp-planner{gap:var(--fp-app-chrome-card-section-gap)}.fp-app-chrome-page .fp-planner__panel{padding:0;border:none;border-radius:0;background:transparent;box-shadow:none}.fp-app-chrome-page .fp-planner__panel+.fp-planner__panel{padding-top:.2rem;border-top:1px dashed color-mix(in srgb,var(--fp-color-ink-muted) 14%,transparent)}.fp-app-chrome-page .fp-planner__panel h2{font-family:var(--fp-font-display);font-size:var(--fp-app-chrome-card-title-size);font-weight:var(--fp-app-chrome-card-title-weight);line-height:var(--fp-app-chrome-card-title-line-height)}.fp-app-chrome-page .fp-planner__strip-item{background:color-mix(in srgb,var(--fp-bg) 22%,var(--fp-surface))}.fp-planner__strip{display:flex;gap:var(--fp-space-sm);overflow-x:auto;list-style:none;margin:0;padding:0}.fp-planner__strip-item{display:flex;flex-direction:column;align-items:center;gap:var(--fp-space-xs);min-width:8rem;padding:var(--fp-space-sm);border-radius:var(--fp-radius-md);background:var(--fp-surface);border:1px solid var(--fp-accent-soft);color:var(--fp-color-ink);text-align:center}.fp-planner__strip-icon{flex-shrink:0}.fp-planner__strip-avatar{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:50%;border:2px solid var(--fp-surface);box-shadow:var(--fp-shadow-soft);overflow:hidden}.fp-planner__strip-avatar .fp-app-chrome-member-avatar__frame{width:100%;height:100%}.fp-planner__strip-avatar .fp-app-chrome-member-avatar__initials,.fp-planner__strip-avatar .fp-app-chrome-member-avatar__photo{width:100%;height:100%;object-fit:cover}.fp-planner__strip-title{font-size:var(--fp-text-body-sm-size);line-height:1.25}.fp-planner__points{font-size:var(--fp-text-body-sm-size);font-weight:var(--fp-text-label-weight);color:color-mix(in srgb,var(--fp-accent) 72%,var(--fp-color-ink))}.fp-planner__form,.fp-planner__list{display:grid;grid-gap:var(--fp-space-md);gap:var(--fp-space-md)}.fp-planner__form label{display:block;margin-bottom:var(--fp-space-xs);font-weight:var(--fp-text-label-weight)}.fp-planner__form button,.fp-planner__form input,.fp-planner__form select{width:100%}.fp-planner__list{list-style:none;margin:0;padding:0}.fp-planner__actions{display:flex;gap:var(--fp-space-sm)}.fp-planner__error{color:var(--fp-accent);margin:0}.fp-money{display:grid;grid-gap:var(--fp-space-lg);gap:var(--fp-space-lg)}.fp-money__panel{padding:var(--fp-space-md);border-radius:var(--fp-radius-lg);background:var(--fp-surface);border:1px solid var(--fp-accent-soft);box-shadow:var(--fp-shadow-soft)}.fp-money__panel h2{margin:0 0 var(--fp-space-md);font-size:var(--fp-text-subheading-size)}.fp-money__balance{margin:0;font-size:var(--fp-text-title-size)}.fp-money__meta{margin:var(--fp-space-sm) 0 0;color:var(--fp-color-ink-muted)}.fp-money__toolbar{display:grid;grid-gap:var(--fp-space-md);gap:var(--fp-space-md);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));margin-bottom:var(--fp-space-md)}.fp-money__toolbar label{display:block;margin-bottom:var(--fp-space-xs);font-weight:var(--fp-text-label-weight)}.fp-money__toolbar button,.fp-money__toolbar input{width:100%}.fp-money__list,.fp-money__plan-ahead-list{display:grid;grid-gap:var(--fp-space-md);gap:var(--fp-space-md);list-style:none;margin:0;padding:0}.fp-money__plan-ahead-item{padding:var(--fp-space-sm) var(--fp-space-md);border-radius:var(--fp-radius-md);background:color-mix(in srgb,var(--fp-accent-soft) 20%,var(--fp-surface));border-left:4px solid var(--fp-accent)}.fp-money__actions{display:flex;gap:var(--fp-space-sm)}.fp-money__chart-bars{grid-template-columns:repeat(auto-fit,minmax(1.5rem,1fr));align-items:end;list-style:none;margin:0;padding:0;min-height:10rem}.fp-money__chart-bar-item,.fp-money__chart-bars{display:grid;grid-gap:var(--fp-space-xs);gap:var(--fp-space-xs)}.fp-money__chart-bar-item{justify-items:center;height:100%}.fp-money__chart-bar{width:100%;min-height:.5rem;border-radius:var(--fp-radius-sm) var(--fp-radius-sm) 0 0}.fp-money__chart-bar,.fp-money__chart-bar--low{background:var(--fp-accent)}.fp-money__chart-label{font-size:var(--fp-text-caption-size);color:var(--fp-color-ink-muted)}.fp-money__error{color:var(--fp-color-error);margin:0}.fp-money__track-card{display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm);padding:var(--fp-space-sm);border:1px solid var(--fp-color-border);border-radius:var(--fp-radius-sm);background:var(--fp-surface)}.fp-money__track-header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--fp-space-sm)}.fp-money__track-level{font-size:var(--fp-text-body-sm-size);color:color-mix(in srgb,var(--fp-accent) 28%,var(--fp-color-ink));font-weight:var(--fp-text-label-weight)}.fp-money__track-progress{height:.5rem;border-radius:var(--fp-radius-pill);background:var(--fp-color-border);overflow:hidden}.fp-money__track-progress-bar{height:100%;background:var(--fp-accent)}.fp-money__lesson-toggle{display:flex;width:100%;justify-content:space-between;gap:var(--fp-space-sm);padding:var(--fp-space-sm) 0;border:0;background:transparent;text-align:left;cursor:pointer}.fp-money__lesson-body{display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm);padding:0 0 var(--fp-space-sm)}.grocery-planner{display:grid;grid-gap:var(--fp-space-md);gap:var(--fp-space-md)}.fp-meals-grocery-planner__hint{margin:0;font-size:var(--fp-text-body-sm-size);color:var(--fp-color-ink-muted);line-height:1.45}.fp-meals-grocery-planner__build-week{font-weight:var(--fp-text-label-weight)}.fp-meals-grocery-planner__actions{margin-top:var(--fp-space-xs)}.grocery-planner__header{display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm)}.grocery-planner__handoff{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--fp-space-xs)}.grocery-planner__handoff a,.grocery-planner__handoff button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--fp-space-xs);min-height:var(--fp-pill-min-height);padding:var(--fp-pill-padding-block) var(--fp-pill-padding-inline);border:none;border-radius:calc(var(--fp-radius-pill) - 2px);font:inherit;font-family:var(--fp-font-body);font-size:var(--fp-pill-font-size);font-weight:var(--fp-text-label-weight);line-height:1.2;text-decoration:none;cursor:pointer;color:var(--fp-color-ink);background:transparent;box-shadow:none;white-space:nowrap}.grocery-planner__handoff .grocery-planner__handoff-icon{min-width:var(--fp-pill-min-height)}.grocery-planner__handoff :is(button,a) svg{display:block;flex:none;width:1.15rem;height:1.15rem;color:inherit}.grocery-planner__handoff a:hover,.grocery-planner__handoff button:hover:not(:disabled){background:color-mix(in srgb,var(--fp-color-ink) 8%,transparent)}.grocery-planner__handoff a:focus-visible,.grocery-planner__handoff button:focus-visible{outline:2px solid var(--fp-color-ink-muted);outline-offset:2px}.grocery-planner__handoff button:disabled{opacity:.45;cursor:default}.grocery-planner__aisle .fp-button--ghost{min-height:2.125rem;padding:var(--fp-space-xs) calc(var(--fp-space-sm) + var(--fp-space-xs));font-size:var(--fp-text-body-sm-size)}.grocery-planner__build-week{font-weight:var(--fp-text-label-weight)}.grocery-planner__add{display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm);max-width:calc(28rem * 1.75)}.fp-app-chrome-page .grocery-planner__add .fp-app-chrome-select-or-add__control,.fp-app-chrome-page .grocery-planner__add .fp-app-chrome-select-or-add__control .fp-calendar__event-sheet-input{max-width:calc(var(--fp-form-field-max-width) * 1.75)}.grocery-planner__add-unit{color:var(--fp-color-ink-muted);font-weight:var(--fp-text-body-weight)}.grocery-planner__add-status{margin:0;font-size:var(--fp-text-caption-size);color:var(--fp-color-ink-muted)}.grocery-planner__list{display:grid;grid-gap:var(--fp-space-md);gap:var(--fp-space-md)}.grocery-planner__bucket{display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm)}.grocery-planner__bucket-title{margin:0;font-family:var(--fp-font-display);font-size:var(--fp-text-body-size)}.grocery-planner__bucket-empty{margin:0;font-size:var(--fp-text-body-sm-size);color:var(--fp-color-ink-muted)}.grocery-planner__aisle h3,.grocery-planner__aisle h4{margin:0 0 var(--fp-space-sm);font-size:var(--fp-text-caption-size);font-weight:var(--fp-text-label-weight);letter-spacing:.06em;text-transform:uppercase;color:var(--fp-color-ink-muted)}.fp-app-chrome-page .grocery-planner__header h2{font-family:var(--fp-font-display);font-size:clamp(2rem,4vw,2.75rem);font-weight:var(--fp-app-chrome-card-title-weight);line-height:1.05}.fp-app-chrome-page .grocery-planner__aisle+.grocery-planner__aisle{padding-top:.2rem;border-top:1px dashed color-mix(in srgb,var(--fp-color-ink-muted) 14%,transparent)}.grocery-planner__aisle ul{list-style:none;padding:0;margin:0;display:grid;grid-gap:0;gap:0}.grocery-planner__aisle li{position:relative;display:flex;align-items:center;gap:var(--fp-space-sm);min-height:3.5rem;padding-block:var(--fp-space-xs);border-bottom:1px solid color-mix(in srgb,var(--fp-color-ink) 8%,transparent)}.grocery-planner__aisle li>button{flex-shrink:0}.grocery-planner__aisle li.is-checked span{text-decoration:line-through;color:var(--fp-color-ink-muted)}.grocery-planner__aisle li>span,.grocery-planner__name{flex:1 1;min-width:0;font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.2}.grocery-planner__qty{flex:none;font-size:var(--fp-text-body-sm-size);color:var(--fp-color-ink-muted)}.grocery-planner__row-actions{display:inline-flex;flex-shrink:0;align-items:center;gap:var(--fp-space-xs);margin-left:auto;opacity:.55}.grocery-planner__dont-need,.grocery-planner__shopped{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;border:none;border-radius:var(--fp-radius-pill);background:transparent;cursor:pointer;color:var(--fp-color-ink)}.grocery-planner__dont-need{width:2.25rem;height:2.25rem;color:var(--fp-color-ink-muted)}.grocery-planner__dont-need svg,.grocery-planner__shopped svg{display:block;width:1.65rem;height:1.65rem}.grocery-planner__dont-need svg{width:1.15rem;height:1.15rem}.grocery-planner__shopped:focus-visible,.grocery-planner__shopped:hover:not(:disabled){background:color-mix(in srgb,var(--fp-color-success) 14%,transparent)}.grocery-planner__dont-need:focus-visible,.grocery-planner__dont-need:hover:not(:disabled){background:color-mix(in srgb,var(--fp-color-error) 14%,transparent)}.grocery-planner__dont-need:focus-visible,.grocery-planner__shopped:focus-visible{outline:2px solid currentColor;outline-offset:2px}.grocery-planner__dont-need:disabled,.grocery-planner__shopped:disabled{opacity:.45;cursor:default}.grocery-planner__shopped--on{color:var(--fp-color-success)}.grocery-planner__item-icon{flex-shrink:0}.fp-family-visual svg{width:100%;height:100%;display:block}.reminders-planner,.tasks-planner{display:grid;grid-gap:var(--fp-space-md);gap:var(--fp-space-md)}.reminders-planner__add,.tasks-planner__add{display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm);max-width:28rem}.reminders-planner__list,.tasks-planner__list{list-style:none;padding:0;margin:0;display:grid;grid-gap:var(--fp-space-sm);gap:var(--fp-space-sm)}.reminders-planner__item,.tasks-planner__list li{display:flex;align-items:center;gap:var(--fp-space-sm)}.tasks-planner__list li.is-done span{text-decoration:line-through;opacity:.7}