:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--md-sys-color-primary:#6750a4;--md-sys-color-on-primary:#fff;--md-sys-color-primary-container:#eaddff;--md-sys-color-on-primary-container:#21005d;--md-sys-color-secondary:#625b71;--md-sys-color-on-secondary:#fff;--md-sys-color-secondary-container:#e8def8;--md-sys-color-on-secondary-container:#1d192b;--md-sys-color-tertiary:#7d5260;--md-sys-color-on-tertiary:#fff;--md-sys-color-tertiary-container:#ffd8e4;--md-sys-color-on-tertiary-container:#31111d;--md-sys-color-error:#b3261e;--md-sys-color-on-error:#fff;--md-sys-color-error-container:#f9dedc;--md-sys-color-on-error-container:#410e0b;--md-sys-color-surface:#fffbfe;--md-sys-color-background:#fffbfe;--md-sys-color-on-background:#1d1b20;--md-sys-color-surface-dim:#ded8e1;--md-sys-color-surface-bright:#fffbfe;--md-sys-color-surface-container-lowest:#fff;--md-sys-color-surface-container-low:#f7f2fa;--md-sys-color-surface-container:#f3edf7;--md-sys-color-surface-container-high:#ece6f0;--md-sys-color-surface-container-highest:#e6e0e9;--md-sys-color-on-surface:#1d1b20;--md-sys-color-on-surface-variant:#49454f;--md-sys-color-outline:#79747e;--md-sys-color-outline-variant:#cac4d0;--md-sys-color-inverse-surface:#322f35;--md-sys-color-inverse-on-surface:#f5eff7;--md-sys-color-inverse-primary:#d0bcff;--md-sys-color-surface-tint:#6750a4;--md-sys-color-scrim:#000;--md-sys-color-shadow:#000;--md-sys-state-hover-state-layer-opacity:.08;--md-sys-state-focus-state-layer-opacity:.12;--md-sys-state-pressed-state-layer-opacity:.12;--md-sys-state-dragged-state-layer-opacity:.16;--font-family:"Roboto", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--md-sys-typescale-display-large-font:var(--font-family);--md-sys-typescale-display-large-size:3.5625rem;--md-sys-typescale-display-large-line-height:4rem;--md-sys-typescale-display-large-weight:400;--md-sys-typescale-display-large-tracking:0;--md-sys-typescale-display-medium-font:var(--font-family);--md-sys-typescale-display-medium-size:2.8125rem;--md-sys-typescale-display-medium-line-height:3.25rem;--md-sys-typescale-display-medium-weight:400;--md-sys-typescale-display-medium-tracking:0;--md-sys-typescale-display-small-font:var(--font-family);--md-sys-typescale-display-small-size:2.25rem;--md-sys-typescale-display-small-line-height:2.75rem;--md-sys-typescale-display-small-weight:400;--md-sys-typescale-display-small-tracking:0;--md-sys-typescale-headline-large-font:var(--font-family);--md-sys-typescale-headline-large-size:2rem;--md-sys-typescale-headline-large-line-height:2.5rem;--md-sys-typescale-headline-large-weight:400;--md-sys-typescale-headline-large-tracking:0;--md-sys-typescale-headline-medium-font:var(--font-family);--md-sys-typescale-headline-medium-size:1.75rem;--md-sys-typescale-headline-medium-line-height:2.25rem;--md-sys-typescale-headline-medium-weight:400;--md-sys-typescale-headline-medium-tracking:0;--md-sys-typescale-headline-small-font:var(--font-family);--md-sys-typescale-headline-small-size:1.5rem;--md-sys-typescale-headline-small-line-height:2rem;--md-sys-typescale-headline-small-weight:400;--md-sys-typescale-headline-small-tracking:0;--md-sys-typescale-title-large-font:var(--font-family);--md-sys-typescale-title-large-size:1.375rem;--md-sys-typescale-title-large-line-height:1.75rem;--md-sys-typescale-title-large-weight:400;--md-sys-typescale-title-large-tracking:0;--md-sys-typescale-title-medium-font:var(--font-family);--md-sys-typescale-title-medium-size:1rem;--md-sys-typescale-title-medium-line-height:1.5rem;--md-sys-typescale-title-medium-weight:500;--md-sys-typescale-title-medium-tracking:.009375rem;--md-sys-typescale-title-small-font:var(--font-family);--md-sys-typescale-title-small-size:.875rem;--md-sys-typescale-title-small-line-height:1.25rem;--md-sys-typescale-title-small-weight:500;--md-sys-typescale-title-small-tracking:.00625rem;--md-sys-typescale-body-large-font:var(--font-family);--md-sys-typescale-body-large-size:1rem;--md-sys-typescale-body-large-line-height:1.5rem;--md-sys-typescale-body-large-weight:400;--md-sys-typescale-body-large-tracking:.03125rem;--md-sys-typescale-body-medium-font:var(--font-family);--md-sys-typescale-body-medium-size:.875rem;--md-sys-typescale-body-medium-line-height:1.25rem;--md-sys-typescale-body-medium-weight:400;--md-sys-typescale-body-medium-tracking:.015625rem;--md-sys-typescale-body-small-font:var(--font-family);--md-sys-typescale-body-small-size:.75rem;--md-sys-typescale-body-small-line-height:1rem;--md-sys-typescale-body-small-weight:400;--md-sys-typescale-body-small-tracking:.025rem;--md-sys-typescale-label-large-font:var(--font-family);--md-sys-typescale-label-large-size:.875rem;--md-sys-typescale-label-large-line-height:1.25rem;--md-sys-typescale-label-large-weight:500;--md-sys-typescale-label-large-tracking:.00625rem;--md-sys-typescale-label-medium-font:var(--font-family);--md-sys-typescale-label-medium-size:.75rem;--md-sys-typescale-label-medium-line-height:1rem;--md-sys-typescale-label-medium-weight:500;--md-sys-typescale-label-medium-tracking:.03125rem;--md-sys-typescale-label-small-font:var(--font-family);--md-sys-typescale-label-small-size:.6875rem;--md-sys-typescale-label-small-line-height:1rem;--md-sys-typescale-label-small-weight:500;--md-sys-typescale-label-small-tracking:.03125rem;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--content-max:46rem;--phone-width:24.375rem;--phone-height:52.75rem;--touch-target:3rem;--compact-target:2.5rem;--avatar-size:2.5rem;--bottom-bar-height:4.5rem;--md-sys-shape-corner-none:0;--md-sys-shape-corner-extra-small:.25rem;--md-sys-shape-corner-small:.5rem;--md-sys-shape-corner-medium:.75rem;--md-sys-shape-corner-large:1rem;--md-sys-shape-corner-extra-large:1.75rem;--md-sys-shape-corner-full:999px;--radius-small:var(--md-sys-shape-corner-small);--radius-medium:var(--md-sys-shape-corner-medium);--radius-large:var(--md-sys-shape-corner-extra-large);--elevation-1:0 1px 2px color-mix(in srgb, var(--md-sys-color-shadow) 30%, transparent), 0 1px 3px 1px color-mix(in srgb, var(--md-sys-color-shadow) 15%, transparent);--elevation-2:0 2px 6px 2px color-mix(in srgb, var(--md-sys-color-shadow) 15%, transparent), 0 1px 2px color-mix(in srgb, var(--md-sys-color-shadow) 30%, transparent);--elevation-3:0 4px 8px 3px color-mix(in srgb, var(--md-sys-color-shadow) 15%, transparent), 0 1px 3px color-mix(in srgb, var(--md-sys-color-shadow) 30%, transparent);--shadow-sheet:var(--elevation-3);--motion-fast-easing:cubic-bezier(.2, 0, 0, 1);--motion-standard-easing:cubic-bezier(.2, 0, 0, 1);--motion-emphasized-easing:cubic-bezier(.2, .8, .2, 1);--motion-fast:.12s var(--motion-fast-easing);--motion-standard:.18s var(--motion-standard-easing);--motion-emphasized:.22s var(--motion-emphasized-easing);--app-backdrop:#2b2930;font-family:var(--font-family);font-synthesis:none;text-rendering:optimizelegibility}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--md-sys-color-primary:#d0bcff;--md-sys-color-on-primary:#381e72;--md-sys-color-primary-container:#4f378b;--md-sys-color-on-primary-container:#eaddff;--md-sys-color-secondary:#ccc2dc;--md-sys-color-on-secondary:#332d41;--md-sys-color-secondary-container:#4a4458;--md-sys-color-on-secondary-container:#e8def8;--md-sys-color-tertiary:#efb8c8;--md-sys-color-on-tertiary:#492532;--md-sys-color-tertiary-container:#633b48;--md-sys-color-on-tertiary-container:#ffd8e4;--md-sys-color-error:#f2b8b5;--md-sys-color-on-error:#601410;--md-sys-color-error-container:#8c1d18;--md-sys-color-on-error-container:#f9dedc;--md-sys-color-surface:#141218;--md-sys-color-background:#141218;--md-sys-color-on-background:#e6e0e9;--md-sys-color-surface-dim:#141218;--md-sys-color-surface-bright:#3b383e;--md-sys-color-surface-container-lowest:#0f0d13;--md-sys-color-surface-container-low:#1d1b20;--md-sys-color-surface-container:#211f26;--md-sys-color-surface-container-high:#2b2930;--md-sys-color-surface-container-highest:#36343b;--md-sys-color-on-surface:#e6e0e9;--md-sys-color-on-surface-variant:#cac4d0;--md-sys-color-outline:#938f99;--md-sys-color-outline-variant:#49454f;--md-sys-color-inverse-surface:#e6e0e9;--md-sys-color-inverse-on-surface:#322f35;--md-sys-color-inverse-primary:#6750a4;--md-sys-color-surface-tint:#d0bcff;--app-backdrop:#09070b}*,:before,:after{box-sizing:border-box}html{background:var(--md-sys-color-surface);min-width:20rem;color:var(--md-sys-color-on-surface);scroll-behavior:smooth}body{min-width:20rem;min-height:100vh;color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface);font-family:var(--font-family);font-size:var(--md-sys-typescale-body-large-size);line-height:var(--md-sys-typescale-body-large-line-height);letter-spacing:var(--md-sys-typescale-body-large-tracking);-webkit-font-smoothing:antialiased;margin:0}#root{min-height:100dvh}button,input,select,textarea{font:inherit}button{appearance:none;cursor:pointer;color:inherit;border:0}button:disabled{cursor:not-allowed}a{color:var(--md-sys-color-primary)}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--md-sys-color-on-surface);font-family:var(--font-family);font-weight:400}h1{font-size:var(--md-sys-typescale-title-large-size);line-height:var(--md-sys-typescale-title-large-line-height);letter-spacing:var(--md-sys-typescale-title-large-tracking);margin-bottom:0}h2{font-size:var(--md-sys-typescale-title-medium-size);line-height:var(--md-sys-typescale-title-medium-line-height);letter-spacing:var(--md-sys-typescale-title-medium-tracking)}h3{font-size:var(--md-sys-typescale-title-small-size);line-height:var(--md-sys-typescale-title-small-line-height);letter-spacing:var(--md-sys-typescale-title-small-tracking)}p{margin-bottom:var(--space-4)}:where(button,input,select,textarea,summary):focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}:where(input,select,textarea){border:1px solid var(--md-sys-color-outline);border-radius:var(--md-sys-shape-corner-extra-small);min-width:0;color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface);transition:border-color var(--motion-standard), box-shadow var(--motion-standard), background-color var(--motion-standard)}:where(input,select,textarea)::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.8}:where(input,select,textarea):focus{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 .2rem color-mix(in srgb, var(--md-sys-color-primary) 18%, transparent);outline:none}:where(input,select,textarea):disabled{color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container);opacity:.6}.material-icon{color:currentColor;font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;flex:none;font-style:normal;display:inline-flex}.app-shell{min-height:100dvh;padding-bottom:calc(var(--bottom-bar-height) + var(--space-4));background:var(--md-sys-color-surface)}.content-column,.shopping-content{width:min(calc(100% - var(--space-6)), var(--content-max));margin:0 auto}.content-column{padding-top:var(--space-5)}.top-bar{align-items:center;gap:var(--space-3);width:min(calc(100% - var(--space-6)), var(--content-max));min-height:4rem;padding:var(--space-2) 0;grid-template-columns:1fr auto;margin:0 auto;display:grid}.shopping-top{grid-template-columns:auto minmax(0,1fr) auto}.shopping-top.reorder-top{grid-template-columns:1fr}.people-top{grid-template-columns:auto minmax(0,1fr) auto}.settings-top{grid-template-columns:auto minmax(0,1fr)}.shopping-top>div,.people-top>div,.picker-top>div:first-child{min-width:0}.shopping-top h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.top-actions{align-items:center;gap:var(--space-1);display:flex}.eyebrow{margin-bottom:var(--space-1);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-small-size);font-weight:var(--md-sys-typescale-label-small-weight);line-height:var(--md-sys-typescale-label-small-line-height);letter-spacing:var(--md-sys-typescale-label-small-tracking);text-transform:uppercase}.icon-button,.admin-nav{width:var(--touch-target);height:var(--touch-target);min-width:var(--touch-target);min-height:var(--touch-target);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-surface-variant);transition:background-color var(--motion-standard), color var(--motion-standard);background:0 0;place-items:center;padding:0;font-size:1.25rem;line-height:1;text-decoration:none;display:inline-grid}.icon-button:hover,.icon-button:focus-visible,.admin-nav:hover,.admin-nav:focus-visible{color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.account-menu{position:relative}.account-menu-popover{min-width:13rem;max-width:calc(100vw - var(--space-8));--md-menu-container-color:var(--md-sys-color-surface-container);--md-menu-container-shape:var(--md-sys-shape-corner-medium);--md-menu-container-elevation:2;--md-menu-top-space:var(--space-2);--md-menu-bottom-space:var(--space-2);--md-menu-item-one-line-container-height:3.5rem;--md-menu-item-leading-space:var(--space-4);--md-menu-item-trailing-space:var(--space-4);--md-menu-item-label-text-font:var(--md-sys-typescale-label-large-font);--md-menu-item-label-text-size:var(--md-sys-typescale-label-large-size);--md-menu-item-label-text-line-height:var(--md-sys-typescale-label-large-line-height);--md-menu-item-label-text-weight:var(--md-sys-typescale-label-large-weight);--md-menu-item-label-text-color:var(--md-sys-color-on-surface);--md-menu-item-leading-icon-color:var(--md-sys-color-on-surface-variant)}.account-menu-popover md-menu-item.danger{--md-menu-item-label-text-color:var(--md-sys-color-error);--md-menu-item-leading-icon-color:var(--md-sys-color-error);--md-menu-item-hover-state-layer-color:var(--md-sys-color-error)}.account-menu-icon{--md-icon-size:1.5rem}.connection-rail,.presence-indicator{width:min(calc(100% - var(--space-6)), var(--content-max));min-height:var(--touch-target);align-items:center;gap:var(--space-3);margin:var(--space-3) auto;padding:var(--space-2) var(--space-3);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-medium);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);display:flex}.connection-rail{color:var(--md-sys-color-on-error-container);background:var(--md-sys-color-error-container)}.connection-rail.is-reconnecting{color:var(--md-sys-color-on-tertiary-container);background:var(--md-sys-color-tertiary-container)}.status-icon,.presence-icon{color:currentColor;--md-icon-size:1.25rem;flex:none;display:inline-flex}.connection-copy,.presence-copy{gap:var(--space-0);min-width:0;display:grid}.connection-copy{flex:auto}.connection-copy strong,.presence-copy strong{color:inherit;font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height)}.connection-copy>span,.presence-copy>span{color:inherit;font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height)}.connection-retry{min-height:var(--touch-target);padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);color:inherit;font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);white-space:nowrap;transition:background-color var(--motion-standard);background:0 0;border:1px solid;margin-left:auto}.connection-retry:hover{background:color-mix(in srgb, currentColor 12%, transparent)}.presence-indicator{margin-top:var(--space-2);color:var(--md-sys-color-secondary);background:var(--md-sys-color-secondary-container)}.presence-copy strong{color:var(--md-sys-color-on-secondary-container);letter-spacing:var(--md-sys-typescale-label-medium-tracking);text-transform:uppercase}.presence-copy>span{color:var(--md-sys-color-on-secondary-container)}.list-rows,.person-rows{gap:var(--space-1);display:grid}.list-row,.person-row{align-items:stretch;min-height:4rem;display:flex}.list-row-body{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-2) var(--space-1) var(--space-2) 0;color:inherit;text-align:left;background:0 0;flex:1;display:flex}.list-row-body:hover strong{color:var(--md-sys-color-primary)}.list-row-body>span:last-child,.person-row>div:first-child{min-width:0}.list-row-copy,.person-row-copy{flex:auto;min-width:0}.list-row strong,.person-row strong{color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);line-height:var(--md-sys-typescale-title-medium-line-height);letter-spacing:var(--md-sys-typescale-title-medium-tracking);display:block}.list-row small,.person-row small{margin-top:var(--space-1);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.list-symbol,.empty-icon{width:var(--avatar-size);height:var(--avatar-size);border-radius:var(--radius-medium);color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);font-family:var(--font-family);flex:none;place-items:center;font-size:1.05rem;display:inline-grid}.avatar{width:var(--avatar-size);height:var(--avatar-size);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);font-size:var(--md-sys-typescale-title-small-size);font-weight:var(--md-sys-typescale-title-small-weight);flex:none;place-items:center;display:inline-grid}.list-avatar{border-radius:var(--radius-medium)}.avatar-small{width:2rem;height:2rem;font-size:var(--md-sys-typescale-label-large-size)}.account-button{border:0}.overflow-button,.person-row>.icon-button{flex:0 0 var(--touch-target)}.person-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0 var(--space-2) var(--space-1)}.person-row.is-revoked,.person-row.is-revoked strong{color:var(--md-sys-color-on-surface-variant)}.list-row.is-archived .list-avatar{color:var(--md-sys-color-outline);background:var(--md-sys-color-surface-container-highest)}.list-row.is-archived strong{color:var(--md-sys-color-on-surface-variant)}.avatar.person-avatar{color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container)}.person-row.is-self .person-avatar{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.person-row.is-revoked .person-avatar{color:var(--md-sys-color-outline);background:var(--md-sys-color-surface-container-highest)}.settings-content,.settings-mcp{gap:var(--space-6);display:grid}.settings-mcp>h2{font-size:var(--md-sys-typescale-headline-small-size);line-height:var(--md-sys-typescale-headline-small-line-height);margin:0}.settings-mcp>.screen-intro{margin:0;display:block}.mcp-guide{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-medium);background:var(--md-sys-color-surface-container-low);display:grid}.mcp-guide h3{margin:0}.mcp-guide p,.mcp-guide ol{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);margin:0}.mcp-guide ol{gap:var(--space-2);padding-left:var(--space-5);display:grid}.mcp-guide li{padding-left:var(--space-1)}.mcp-url{margin-top:var(--space-1);padding:var(--space-3);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-high);font-family:var(--font-family-mono);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);-webkit-user-select:all;user-select:all;white-space:nowrap;display:block;overflow:auto}.mcp-guide-note{padding-top:var(--space-3);font-size:var(--md-sys-typescale-body-small-size)!important}.oauth-connections{gap:var(--space-3);display:grid}.oauth-connections h2{margin:0}.oauth-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.oauth-row{align-items:center;gap:var(--space-3);min-height:4.5rem;padding:var(--space-3) 0;display:flex}.oauth-row-copy{gap:var(--space-1);flex:auto;min-width:0;display:grid}.oauth-row-copy strong{font-size:var(--md-sys-typescale-title-small-size);font-weight:var(--md-sys-typescale-title-small-weight);line-height:var(--md-sys-typescale-title-small-line-height);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.oauth-client-id{color:var(--md-sys-color-on-surface-variant);font-family:var(--font-family-mono);font-size:var(--md-sys-typescale-body-small-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.oauth-meta,.oauth-empty,.oauth-error{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height)}.oauth-empty,.oauth-error{margin:0}.oauth-error{color:var(--md-sys-color-error)}.oauth-revoke{flex:0 0 var(--touch-target);color:var(--md-sys-color-error)}.oauth-confirmation{padding-top:0}.oauth-confirmation p{margin-bottom:var(--space-3);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.oauth-confirmation p:last-of-type{margin-bottom:var(--space-4)}.admin-pill{padding:var(--space-1) var(--space-2);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-high);font-size:var(--md-sys-typescale-label-small-size);font-weight:var(--md-sys-typescale-label-small-weight);letter-spacing:var(--md-sys-typescale-label-small-tracking);text-transform:uppercase}.role-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-small);color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);font-size:var(--md-sys-typescale-label-small-size);font-weight:var(--md-sys-typescale-label-small-weight);line-height:var(--md-sys-typescale-label-small-line-height);flex:none}.screen-intro{max-width:34rem;margin-bottom:var(--space-4);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.empty-state{justify-items:start;gap:var(--space-1);max-width:30rem;margin:var(--space-5) 0 var(--space-7);padding:var(--space-4) 0;display:grid}.empty-state .empty-icon{margin-bottom:var(--space-2);color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container)}.empty-icon>.material-icon{--md-icon-size:2rem}.empty-state h2{margin-bottom:0}.empty-state p{max-width:30rem;color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);margin-bottom:0}.empty-state.compact{margin:var(--space-16) auto;text-align:center;justify-items:center}.collapsed-zone{margin-top:var(--space-5);padding-top:var(--space-2)}.zone-toggle,.collapsed-zone summary{width:100%;min-height:var(--touch-target);padding:var(--space-2) 0;color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);letter-spacing:var(--md-sys-typescale-label-large-tracking);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;list-style:none;display:flex}.collapsed-zone summary::-webkit-details-marker{display:none}.zone-chevron{--md-icon-size:1.5rem;color:var(--md-sys-color-primary)}.revoked-zone[open] .zone-chevron{transform:rotate(180deg)}.bottom-bar,.shopping-actions{z-index:5;align-items:center;gap:var(--space-2);padding:var(--space-2) max(var(--space-4), calc((100vw - var(--content-max)) / 2)) max(var(--space-3), env(safe-area-inset-bottom));background:color-mix(in srgb, var(--md-sys-color-surface) 96%, transparent);box-shadow:var(--elevation-1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-bar{justify-content:flex-end}.shopping-actions{z-index:6;justify-content:flex-end}.shopping-shell .shopping-top.reorder-top{grid-template-columns:1fr}.shopping-shell .shopping-top.reorder-top>div{padding-left:1rem}.primary-button,.secondary-button,.danger-button{min-height:var(--touch-target);justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--md-sys-shape-corner-full);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);letter-spacing:var(--md-sys-typescale-label-large-tracking);transition:background-color var(--motion-standard), box-shadow var(--motion-standard), color var(--motion-standard), transform var(--motion-fast);display:inline-flex}.primary-button{color:var(--md-sys-color-on-primary);background:var(--md-sys-color-primary);box-shadow:var(--elevation-1)}.primary-button:hover:not(:disabled),.primary-button:focus-visible{background:color-mix(in srgb, var(--md-sys-color-primary) 90%, var(--md-sys-color-on-primary))}.primary-button:active:not(:disabled){transform:scale(.98)}.primary-button:disabled{opacity:.5;box-shadow:none}.secondary-button{color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container)}.secondary-button:hover:not(:disabled),.secondary-button:focus-visible{background:color-mix(in srgb, var(--md-sys-color-secondary-container) 88%, var(--md-sys-color-secondary))}.secondary-button:disabled,.danger-button:disabled{opacity:.45}.danger-button{color:var(--md-sys-color-on-error);background:var(--md-sys-color-error)}.danger-button:hover:not(:disabled),.danger-button:focus-visible{background:color-mix(in srgb, var(--md-sys-color-error) 90%, var(--md-sys-color-on-error))}.full-button{width:100%;display:flex}.top-link{align-items:center;text-decoration:none;display:inline-flex}.text-action{min-height:var(--touch-target);padding:var(--space-2);border-radius:var(--radius-small);color:var(--md-sys-color-primary);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);letter-spacing:var(--md-sys-typescale-label-large-tracking);transition:background-color var(--motion-standard), color var(--motion-standard);background:0 0}.text-action:hover:not(:disabled),.text-action:focus-visible{background:var(--md-sys-color-primary-container)}.text-action:disabled{opacity:.45}.danger{color:var(--md-sys-color-error)}.auth-page{min-height:100dvh;padding:var(--space-8);background:var(--md-sys-color-surface-container-low);place-items:center;display:grid}.auth-card{width:min(100%,30rem);padding:var(--space-8);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-extra-large);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface);box-shadow:var(--elevation-3);position:relative}.auth-card>*{z-index:1;position:relative}.brand-mark{width:4rem;height:4rem;margin-bottom:var(--space-8);border-radius:var(--radius-large);color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);place-items:center;display:grid}.brand-icon{--md-icon-size:2rem}.auth-card h1{max-width:25rem;margin-bottom:var(--space-3);font-size:var(--md-sys-typescale-display-small-size);line-height:var(--md-sys-typescale-display-small-line-height);letter-spacing:var(--md-sys-typescale-display-small-tracking)}.auth-card h1 em{color:var(--md-sys-color-secondary);font-style:normal}.auth-copy{max-width:23rem;margin-bottom:var(--space-8);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-large-size);line-height:var(--md-sys-typescale-body-large-line-height)}.oauth-consent-card{overflow-wrap:anywhere}.oauth-brand-icon{width:50%;height:50%}.oauth-consent-card .auth-copy{margin-bottom:var(--space-4)}.oauth-consent-detail{margin-bottom:var(--space-8);color:var(--md-sys-color-on-surface-variant)}.oauth-consent-actions{gap:var(--space-3);width:100%;display:flex}.oauth-consent-actions button{flex:1}.google-button{justify-content:center;align-items:center;gap:var(--space-3);width:100%;min-height:3rem;padding:var(--space-3) var(--space-4);border:1px solid var(--md-sys-color-outline);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);letter-spacing:var(--md-sys-typescale-label-large-tracking);transition:background-color var(--motion-standard), border-color var(--motion-standard);background:0 0;display:inline-flex}.google-button:hover,.google-button:focus-visible{border-color:var(--md-sys-color-primary);background:var(--md-sys-color-surface-container-high)}.google-button:active{background:var(--md-sys-color-surface-container)}.google-icon{--md-icon-size:1.125rem}.fine-print{margin-top:var(--space-3);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);text-align:center}.notice{align-items:start;gap:var(--space-3);margin:var(--space-6) 0 0;padding:var(--space-4);border:1px solid var(--md-sys-color-error);border-radius:var(--radius-medium);color:var(--md-sys-color-on-error-container);background:var(--md-sys-color-error-container);grid-template-columns:1.5rem minmax(0,1fr);display:grid}.notice-icon{--md-icon-size:1.25rem}.notice strong{font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);display:block}.notice span{margin-top:var(--space-1);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);display:block}.auth-loading{gap:var(--space-4);text-align:center;place-items:center;display:grid}.shopping-summary{margin:var(--space-1) 0 0;color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height)}.filter-row{width:min(calc(100% - var(--space-6)), var(--content-max));justify-content:space-between;align-items:center;gap:var(--space-3);margin:var(--space-3) auto var(--space-2);padding-bottom:var(--space-2);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);display:flex}.fold-switch{min-height:var(--touch-target);align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-2);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);text-align:left;transition:background-color var(--motion-standard), color var(--motion-standard);background:0 0;border:0;display:inline-flex}.fold-switch:hover:not(:disabled),.fold-switch:focus-visible{background:var(--md-sys-color-surface-container-low)}.fold-switch:disabled{color:var(--md-sys-color-on-surface-variant);opacity:.58}.switch-mark{border-radius:var(--md-sys-shape-corner-full);width:1.5rem;height:1.5rem;color:var(--md-sys-color-on-primary);background:var(--md-sys-color-surface-container-high);border:0;place-items:center;display:inline-grid}.switch-mark .material-icon{--md-icon-size:1rem}.fold-switch.is-shown .switch-mark{background:var(--md-sys-color-primary)}.fold-switch.is-mixed .switch-mark{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.archived-banner{width:min(calc(100% - var(--space-6)), var(--content-max));align-items:baseline;gap:var(--space-2);margin:var(--space-3) auto;padding:var(--space-3);border:1px solid var(--md-sys-color-tertiary);border-radius:var(--radius-medium);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-tertiary-container);font-size:var(--md-sys-typescale-body-small-size);display:flex}.archived-banner span{color:var(--md-sys-color-on-tertiary-container)}.list-menu{justify-self:end;position:relative}.list-menu-trigger{color:var(--md-sys-color-on-surface-variant);background:0 0}.list-menu-trigger[aria-expanded=true]{color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.list-menu-popover{top:calc(100% + var(--space-1));z-index:12;gap:var(--space-1);min-width:13rem;padding:var(--space-1);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-medium);background:var(--md-sys-color-surface-container);box-shadow:var(--elevation-2);display:grid;position:absolute;right:0}.list-menu-popover button{min-height:var(--touch-target);padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);text-align:left;background:0 0}.list-menu-popover button:hover:not(:disabled),.list-menu-popover button:focus-visible{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.list-menu-popover button:disabled{color:var(--md-sys-color-on-surface-variant);opacity:.55}.catalog-actions-popover{min-width:max-content;max-width:min(18rem, calc(100vw - var(--space-8)))}.catalog-actions-popover .danger{color:var(--md-sys-color-error)}.catalog-actions-popover .danger:hover:not(:disabled),.catalog-actions-popover .danger:focus-visible{color:var(--md-sys-color-on-error-container);background:var(--md-sys-color-error-container)}.discovery-hint{width:min(calc(100% - var(--space-6)), var(--content-max));align-items:center;gap:var(--space-3);min-height:2.75rem;margin:var(--space-2) auto var(--space-3);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-3);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-medium);color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);display:flex}.discovery-hint .text-action{min-width:var(--touch-target);white-space:nowrap;margin-left:auto}.group-section{margin:var(--space-5) 0 var(--space-6)}.group-section>header{justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin-bottom:0;padding-bottom:0;display:flex}.group-section h2{min-width:0;color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);line-height:var(--md-sys-typescale-title-medium-line-height);letter-spacing:var(--md-sys-typescale-title-medium-tracking);text-overflow:ellipsis;white-space:nowrap;flex:auto;margin:0;overflow:hidden}.group-name-button{width:100%;min-height:var(--touch-target);padding:var(--space-2) 0;color:inherit;font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;align-items:flex-end;display:flex;overflow:hidden}.group-name-button:hover{color:var(--md-sys-color-primary)}.group-header-meta{align-items:center;gap:var(--space-1);flex:none;display:flex}.group-count{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);white-space:nowrap}.count-bump{color:var(--md-sys-color-secondary);animation:count-bump .32s var(--motion-emphasized-easing);display:inline-block}.group-edit-trigger{min-width:var(--touch-target);min-height:var(--touch-target);padding:var(--space-2);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight);background:0 0;justify-content:center;align-items:center;display:none}.group-edit-trigger:hover{color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.group-add-trigger{min-width:var(--touch-target);min-height:var(--touch-target);align-items:center;gap:var(--space-1);max-width:min(30vw,12rem);padding:var(--space-2);border-radius:var(--radius-small);color:var(--md-sys-color-primary);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight);text-align:left;background:0 0;display:inline-flex;overflow:hidden}.group-add-trigger:hover,.group-add-trigger:focus-visible{background:var(--md-sys-color-primary-container)}.group-add-trigger>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fold-chip{min-width:var(--touch-target);min-height:var(--touch-target);justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);white-space:nowrap;transition:background-color var(--motion-standard), color var(--motion-standard);background:0 0;border:0;display:inline-flex}.fold-chip:hover:not(:disabled),.fold-chip:focus-visible,.fold-chip[aria-expanded=true]{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.fold-chip:disabled{cursor:not-allowed;opacity:.5}.fold-count{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height)}.fold-chip[aria-expanded=true] .fold-count{color:var(--md-sys-color-on-primary-container)}.fold-chip .fold-count.count-bump{color:var(--md-sys-color-secondary)}.fold-chevron{--md-icon-size:1.25rem;color:var(--md-sys-color-primary)}.group-header-editor{gap:var(--space-3);margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--md-sys-color-outline-variant);border-inline-start:.25rem solid var(--md-sys-color-primary);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container);display:grid}.group-editor-heading{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.group-editor-heading span,.group-editor-muted{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size)}.group-editor-heading strong{color:var(--md-sys-color-primary)}.group-editor-muted,.group-editor-error{margin:0;line-height:1.35}.group-editor-error{color:var(--md-sys-color-error);font-size:var(--md-sys-typescale-body-small-size)}.group-editor-form{gap:var(--space-1);display:grid}.group-editor-form>label,.group-create-field label,.inline-add-field label{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight);line-height:var(--md-sys-typescale-label-medium-line-height)}.group-editor-name-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.group-editor-name-row input{flex:12rem}.group-editor-actions,.group-delete-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.group-editor-actions .text-action,.group-delete-actions .secondary-button,.group-delete-actions .danger-button{min-height:var(--touch-target)}.group-delete-confirm{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-small);color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container);display:grid}.group-delete-confirm p{color:inherit;font-size:var(--md-sys-typescale-body-small-size);margin:0;line-height:1.4}.group-delete-actions{justify-content:flex-end}.entry-list{gap:var(--space-1);margin-left:1rem;display:grid}.entry-row{min-height:3.5rem;display:flex;position:relative}.entry-row.is-departing{animation:entry-departure .32s var(--motion-emphasized-easing) forwards;pointer-events:none}.entry-row.is-arriving{animation:entry-arrival .32s var(--motion-emphasized-easing) both}.entry-toggle{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-2) var(--space-1) var(--space-2) 0;color:var(--md-sys-color-on-surface);text-align:left;background:0 0;flex:1;display:flex}.entry-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.entry-toggle:hover:not(:disabled){color:var(--md-sys-color-primary)}.entry-toggle:disabled{opacity:.6}.shopping-checkbox{border:2px solid var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-extra-small);width:1.5rem;height:1.5rem;color:var(--md-sys-color-on-primary);pointer-events:none;background:0 0;flex:0 0 1.5rem;place-items:center;display:inline-grid}.shopping-checkbox .material-icon{--md-icon-size:1rem}.is-checked .shopping-checkbox{background:var(--md-sys-color-primary)}.is-checked .entry-name{color:var(--md-sys-color-on-surface-variant);text-decoration:line-through;text-decoration-thickness:.09em}.amount-chip{max-width:46%;padding:var(--space-1) var(--space-2);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-high);font-size:var(--md-sys-typescale-label-medium-size);line-height:var(--md-sys-typescale-label-medium-line-height);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inline-add-row{gap:var(--space-3);padding:var(--space-3) 0 var(--space-4);margin-inline-start:var(--space-4);display:grid}.fab-add-row{align-content:start;gap:var(--space-3);min-width:0;display:grid}.inline-add-heading{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight);display:flex}.inline-add-close{min-height:var(--touch-target);white-space:nowrap}.inline-add-form{align-items:end;gap:var(--space-2);grid-template-columns:minmax(0,1fr) minmax(5.5rem,8rem) auto;display:grid}.fab-add-row .inline-add-form{grid-template-columns:minmax(0,1fr) minmax(7rem,10rem) minmax(5.5rem,8rem) auto}.inline-add-field{gap:var(--space-1);min-width:0;display:grid}.inline-add-field input,.inline-add-field select,.group-create-field input,.group-editor-name-row input{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-3)}.inline-add-amount{max-width:8rem}.inline-add-submit{min-height:var(--touch-target);white-space:nowrap}.fab-add-help{margin:0}.inline-add-matches{gap:var(--space-1);display:grid}.inline-add-match-row{align-items:center;gap:var(--space-1);grid-template-columns:minmax(0,1fr) auto;display:grid}.inline-add-match-row>.remove-confirm,.inline-add-match-row>.catalog-merge-disclosure{grid-column:1/-1}.inline-add-match{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-3);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container);font-size:var(--md-sys-typescale-body-small-size);text-align:left;text-overflow:ellipsis;white-space:nowrap;align-items:center;display:flex;overflow:hidden}.inline-add-match:hover,.inline-add-match:focus-visible{border-color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.inline-add-match span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inline-add-catalog-actions{justify-content:flex-end;align-items:center;display:flex}.inline-add-actions-trigger{flex:0 0 var(--touch-target)}.inline-add-search-state,.inline-add-error{font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);margin:0}.inline-add-search-state{color:var(--md-sys-color-on-surface-variant)}.inline-add-error{color:var(--md-sys-color-error)}.fab-add-row:has(.group-create-form) .inline-add-form{grid-template-columns:minmax(0,1fr) minmax(5.5rem,8rem) auto}.fab-add-row:has(.group-create-form) .inline-add-group-field{grid-area:1/1/auto/-1}.fab-add-row:has(.group-create-form) .inline-add-field:first-child{grid-area:2/1}.fab-add-row:has(.group-create-form) .inline-add-amount-field{grid-area:2/2}.fab-add-row:has(.group-create-form) .inline-add-submit{grid-area:2/3}.add-group-row{align-items:center;gap:var(--space-2);width:100%;min-height:3.5rem;margin:var(--space-3) 0 var(--space-8);padding:var(--space-3) var(--space-4);border:1px dashed var(--md-sys-color-primary);border-radius:var(--radius-medium);color:var(--md-sys-color-primary);font-weight:var(--md-sys-typescale-label-large-weight);text-align:left;transition:background-color var(--motion-standard), border-color var(--motion-standard), color var(--motion-standard);background:0 0;display:flex}.add-group-row:hover,.add-group-row:focus-visible{color:var(--md-sys-color-on-primary-container);border-color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.add-group-row>.material-icon{--md-icon-size:1.25rem}.group-create-row{gap:var(--space-3);width:100%;margin:var(--space-3) 0 var(--space-8);padding:var(--space-4);border:1px solid var(--md-sys-color-outline-variant);border-inline-start:.25rem solid var(--md-sys-color-primary);border-radius:var(--radius-medium);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container);display:grid}.group-create-heading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.group-create-heading>div{gap:var(--space-1);display:grid}.group-create-heading strong{color:var(--md-sys-color-primary)}.group-create-heading span{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size)}.group-create-row .group-create-form{align-items:end;gap:var(--space-2);flex-wrap:wrap;display:flex}.group-create-field{gap:var(--space-1);flex:14rem;min-width:0;display:grid}.group-create-row .group-create-form .primary-button{flex:none}.group-create-help,.group-create-error{font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);margin:0}.group-create-help{color:var(--md-sys-color-on-surface-variant)}.group-create-error{color:var(--md-sys-color-error)}.entry-edit{flex:0 0 var(--touch-target);width:var(--touch-target);min-height:var(--touch-target);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight);background:0 0;place-items:center;display:inline-grid}.entry-edit:hover:not(:disabled){color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.entry-edit:disabled{opacity:.35}.entry-editor{background:var(--md-sys-color-surface-container);margin-inline-start:var(--space-4)}.entry-zone{gap:var(--space-3);min-height:12.8rem;padding:var(--space-4);border-inline-start:.25rem solid var(--md-sys-color-primary);display:grid;position:relative}.entry-zone.is-saving,.catalog-zone.is-saving{opacity:.62;pointer-events:none}.entry-zone.is-saving:after,.catalog-zone.is-saving:after{background:var(--md-sys-color-secondary);content:"";pointer-events:none;width:.25rem;animation:.9s ease-in-out infinite editor-sweep;position:absolute;inset:0 auto 0 0}.entry-editor-label{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight)}.entry-editor-label span{font-weight:400}.entry-amount-field{width:100%;min-height:var(--touch-target);padding:var(--space-3);resize:none;line-height:1.35;overflow:hidden}.entry-editor-error{color:var(--md-sys-color-error);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);margin:0}.entry-exits{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.entry-exits .text-action,.remove-entry{min-height:var(--touch-target)}.remove-entry{justify-self:start}.remove-confirm{gap:var(--space-3);width:100%;padding:var(--space-3);border-radius:var(--radius-small);color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container);display:grid}.remove-confirm p{color:inherit;font-size:var(--md-sys-typescale-body-small-size);margin:0;line-height:1.4}.remove-confirm p span{color:var(--md-sys-color-on-secondary-container);display:block}.remove-confirm-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.remove-confirm-actions .secondary-button,.remove-confirm-actions .danger-button{min-height:var(--touch-target)}.entry-editor-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.entry-editor-actions .remove-entry{margin-inline-end:auto}.catalog-zone{color:var(--md-sys-color-on-surface);background:color-mix(in srgb, var(--md-sys-color-primary-container) 34%, var(--md-sys-color-surface-container));position:relative}.catalog-lid{align-items:center;gap:var(--space-4);width:100%;min-height:3.5rem;padding:var(--space-3) var(--space-4);color:var(--md-sys-color-on-surface);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.catalog-lid:hover:not(:disabled),.catalog-lid:focus-visible{background:color-mix(in srgb, var(--md-sys-color-primary-container) 48%, transparent)}.catalog-lid>span:first-child{align-items:center;gap:var(--space-1);min-width:0;font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight);text-overflow:ellipsis;white-space:nowrap;display:flex;overflow:hidden}.catalog-lid-copy{align-items:center;gap:var(--space-1);color:var(--md-sys-color-secondary);font-size:var(--md-sys-typescale-body-small-size);font-weight:var(--md-sys-typescale-label-medium-weight);white-space:nowrap;display:inline-flex}.catalog-warning-icon{color:var(--md-sys-color-tertiary);--md-icon-size:1.125rem;flex:none}.catalog-lid-chevron{--md-icon-size:1.25rem}.catalog-fields{gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4);display:grid;position:relative}.catalog-fields>input,.catalog-fields>select{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-3)}.catalog-fields>input:disabled,.catalog-fields>select:disabled{opacity:.6}.catalog-error{gap:var(--space-1);padding:var(--space-2) var(--space-3);border-inline-start:.25rem solid var(--md-sys-color-error);border-radius:var(--radius-small);color:var(--md-sys-color-error);background:var(--md-sys-color-error-container);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);margin:0;display:grid}.catalog-error .text-action{min-height:var(--touch-target);color:var(--md-sys-color-error);justify-self:start}.catalog-blocking-reason{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);margin:0}.catalog-actions{margin-top:var(--space-1);justify-content:flex-end;display:flex}.catalog-item-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.catalog-item-actions>.remove-catalog-item{margin-inline-start:auto}.catalog-item-actions>.remove-confirm{flex:100%}.catalog-merge-disclosure{gap:var(--space-2);display:grid}.catalog-merge-disclosure>.text-action{min-height:var(--touch-target);justify-self:start}.catalog-merge-picker,.catalog-merge-confirmation{gap:var(--space-3);width:100%;padding:var(--space-3);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface);display:grid}.catalog-merge-lead,.catalog-merge-confirmation-copy p{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);margin:0;line-height:1.4}.catalog-merge-picker label{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight)}.catalog-merge-picker input{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-3)}.catalog-merge-search-state,.catalog-merge-error{font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);margin:0}.catalog-merge-search-state{color:var(--md-sys-color-on-surface-variant)}.catalog-merge-error{color:var(--md-sys-color-error)}.catalog-merge-results{gap:var(--space-1);display:grid}.catalog-merge-target{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-3);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-small);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container);font-size:var(--md-sys-typescale-body-small-size);text-align:left;align-items:center;display:flex;overflow:hidden}.catalog-merge-target:hover,.catalog-merge-target:focus-visible{border-color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.catalog-merge-target span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.catalog-merge-picker-actions,.catalog-merge-confirmation-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.catalog-merge-picker-actions .secondary-button,.catalog-merge-confirmation-actions .secondary-button,.catalog-merge-confirmation-actions .danger-button{min-height:var(--touch-target)}.catalog-merge-confirmation h2{font-size:var(--md-sys-typescale-title-small-size);margin:0}.catalog-merge-confirmation-copy{gap:var(--space-2);display:grid}.undo-button{min-width:0;min-height:var(--touch-target);padding:var(--space-2) var(--space-4);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);text-align:left;text-overflow:ellipsis;white-space:nowrap;transition:background-color var(--motion-standard), color var(--motion-standard), transform var(--motion-fast);border:0;flex:auto;overflow:hidden}.undo-button:hover:not(:disabled),.undo-button:focus-visible{background:color-mix(in srgb, var(--md-sys-color-secondary-container) 88%, var(--md-sys-color-secondary))}.undo-button.is-hidden{visibility:hidden}.fab{border-radius:var(--radius-medium);width:3.5rem;height:3.5rem;min-height:3.5rem;color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);box-shadow:var(--elevation-3);transition:background-color var(--motion-standard), box-shadow var(--motion-standard), transform var(--motion-fast);place-items:center;display:grid}.fab .material-icon{--md-icon-size:1.5rem}.fab:hover:not(:disabled),.fab:focus-visible{background:color-mix(in srgb, var(--md-sys-color-primary-container) 84%, var(--md-sys-color-primary))}.fab:active:not(:disabled){transform:scale(.95)}.fab:disabled{opacity:.45;box-shadow:none}.reorder-mode{align-items:start;gap:var(--space-4);width:min(calc(100% - var(--space-4)), var(--content-max));padding:var(--space-1);border-radius:var(--radius-medium);touch-action:none;animation:reorder-enter .24s var(--motion-emphasized-easing) both;grid-template-columns:minmax(0,1fr) auto;margin:0 auto;display:grid}.reorder-scroll{overscroll-behavior:contain;scrollbar-color:var(--md-sys-color-outline) transparent;scrollbar-width:thin;touch-action:none;min-width:0;min-height:0;max-height:calc(100dvh - 12rem);overflow-y:auto}.reorder-list{gap:var(--space-2);display:grid}.reorder-list-item{min-width:0}.reorder-group-row{justify-content:flex-start;align-items:center;gap:var(--space-3);width:100%;min-height:3.5rem;padding:var(--space-3) var(--space-4);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-medium);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface);font-size:var(--md-sys-typescale-body-large-size);font-weight:var(--md-sys-typescale-title-medium-weight);line-height:var(--md-sys-typescale-body-large-line-height);text-align:left;-webkit-tap-highlight-color:transparent;touch-action:none;-webkit-user-select:none;user-select:none;transition:background-color var(--motion-standard), border-color var(--motion-standard), box-shadow var(--motion-standard), transform var(--motion-fast);display:flex;position:relative}.reorder-drag-handle{color:var(--md-sys-color-on-surface-variant);opacity:.48;--md-icon-size:1.5rem;margin-left:auto}.reorder-group-row:hover,.reorder-group-row.is-selected{border-color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.reorder-group-row.is-selected .reorder-drag-handle{color:var(--md-sys-color-on-primary-container);opacity:.72}.reorder-group-row:active:not(.is-dragging){transform:scale(.99)}.reorder-group-row.is-dragging{cursor:grabbing;box-shadow:var(--elevation-2)}.reorder-ungrouped-row{align-content:center;gap:var(--space-1);min-height:3.5rem;margin-top:var(--space-1);padding:var(--space-2) var(--space-4);border:2px dashed var(--md-sys-color-outline);border-radius:var(--radius-medium);color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-low);display:grid}.reorder-ungrouped-row strong{color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-title-small-size)}.reorder-ungrouped-row span{font-size:var(--md-sys-typescale-body-small-size)}.reorder-add-group-row{justify-content:flex-start;align-items:center;gap:var(--space-2);width:100%;min-height:3rem;margin-top:var(--space-1);padding:var(--space-2) var(--space-4);border:1px dashed var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-primary);font-weight:var(--md-sys-typescale-label-large-weight);text-align:left;touch-action:none;transition:background-color var(--motion-standard), border-color var(--motion-standard), color var(--motion-standard);background:0 0;display:flex}.reorder-add-group-row:hover:not(:disabled),.reorder-add-group-row:focus-visible{background:var(--md-sys-color-primary-container)}.reorder-add-group-row>.material-icon{--md-icon-size:1.25rem}.reorder-move-rail{top:var(--space-4);align-content:start;gap:var(--space-3);width:12rem;padding:var(--space-4);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-medium);color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-low);box-shadow:var(--elevation-1);touch-action:none;display:grid;position:sticky}.reorder-idle-prompt,.reorder-selection{min-height:var(--compact-target);align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-small);font-size:var(--md-sys-typescale-body-small-size);margin:0;line-height:1.35;display:flex}.reorder-idle-prompt{color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container)}.reorder-selection{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.reorder-selection strong{color:inherit}.reorder-move-controls{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.reorder-move-button{width:var(--touch-target);height:var(--touch-target);min-width:var(--touch-target);min-height:var(--touch-target);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-medium);color:var(--md-sys-color-primary);background:var(--md-sys-color-surface);touch-action:none;transition:background-color var(--motion-standard), border-color var(--motion-standard), color var(--motion-standard), transform var(--motion-fast);justify-self:center;place-items:center;line-height:1;display:grid}.reorder-move-button .material-icon{--md-icon-size:1.5rem}.reorder-move-button:hover:not(:disabled),.reorder-move-button:focus-visible{border-color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.reorder-move-button:active:not(:disabled){transform:scale(.94)}.reorder-move-button:disabled{color:var(--md-sys-color-outline);opacity:.5}.reorder-done{min-width:5rem;min-height:var(--touch-target);border-radius:var(--md-sys-shape-corner-full);transition:background-color var(--motion-standard), box-shadow var(--motion-standard), transform var(--motion-fast)}.reorder-done:active{transform:scale(.97)}.sheet-backdrop{z-index:20;isolation:isolate;background:color-mix(in srgb, var(--md-sys-color-scrim) 42%, transparent);animation:fade-in var(--motion-standard);align-items:flex-end;display:flex;position:fixed;inset:0}.bottom-sheet{z-index:1;width:min(100%,42rem);max-height:min(90vh,52rem);padding:var(--space-2) var(--space-4) var(--space-6);border-radius:var(--md-sys-shape-corner-extra-large) var(--md-sys-shape-corner-extra-large) 0 0;color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-low);box-shadow:var(--shadow-sheet);animation:sheet-rise var(--motion-emphasized);margin:0 auto;position:relative;overflow:auto}.sheet-handle{width:2.25rem;height:.25rem;margin:0 auto var(--space-3);border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-outline);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.sheet-handle:active{cursor:grabbing}.sheet-heading{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.sheet-heading-copy{min-width:0}.sheet-heading h2{font-size:var(--md-sys-typescale-title-large-size);line-height:var(--md-sys-typescale-title-large-line-height);margin:0}.sheet-subtitle{margin:var(--space-1) 0 0;color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.sheet-copy>p{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.sheet-form{gap:var(--space-2);display:grid}.sheet-form label,.member-picker label,.confirmation-block label{margin-top:var(--space-2);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight);line-height:var(--md-sys-typescale-label-medium-line-height)}.sheet-form label span{font-weight:400}.sheet-form input,.sheet-form select,.confirmation-block input,.member-picker select{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-3)}.sheet-help{padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);background:var(--md-sys-color-primary-container);font-size:var(--md-sys-typescale-body-small-size);color:var(--md-sys-color-on-primary-container)!important}.sheet-actions{gap:var(--space-1);margin-top:var(--space-4);display:grid}.sheet-action{width:100%;min-height:var(--touch-target);justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;color:var(--md-sys-color-on-surface);font-weight:var(--md-sys-typescale-title-medium-weight);text-align:left;transition:background-color var(--motion-standard), color var(--motion-standard);background:0 0;display:flex}.sheet-action-icon{color:var(--md-sys-color-primary);--md-icon-size:1.5rem;flex:none}.sheet-action.danger .sheet-action-icon{color:var(--md-sys-color-error)}.sheet-action span{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);text-align:right;font-weight:400;line-height:1.35;display:block}.sheet-action:hover:not(:disabled),.sheet-action:focus-visible{color:var(--md-sys-color-primary)}.sheet-action:disabled{color:var(--md-sys-color-on-surface-variant);opacity:.55}.sheet-action:disabled span{color:var(--md-sys-color-on-surface-variant)}.sheet-action-copy{min-width:0}.sheet-action span.sheet-action-copy{gap:var(--space-0);max-width:none;color:inherit;font-size:var(--md-sys-typescale-body-large-size);line-height:var(--md-sys-typescale-body-large-line-height);text-align:left;flex:auto;display:grid}.sheet-action-copy strong{font-weight:400}.sheet-action-copy small{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);display:block}.text-action.danger{color:var(--md-sys-color-error)}.sheet-warning{align-items:start;gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-4);border-inline-start:.25rem solid var(--md-sys-color-error);border-radius:var(--radius-medium);color:var(--md-sys-color-on-error-container);background:var(--md-sys-color-error-container);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);grid-template-columns:1.5rem minmax(0,1fr);display:grid}.sheet-warning>.material-icon{color:var(--md-sys-color-on-error-container);--md-icon-size:1.5rem}.sheet-warning>span{gap:var(--space-1);color:inherit;display:grid}.sheet-warning strong{font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height)}.sheet-warning small{color:inherit;font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.sheet-warning span{color:var(--md-sys-color-on-error-container)}.sheet-muted{font-size:var(--md-sys-typescale-body-medium-size)}.sheet-status-copy{margin:0 0 var(--space-2);color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.sheet-status-copy p{margin:0}.section-heading{margin-top:var(--space-6);justify-content:space-between;align-items:baseline;display:flex}.section-heading h3,.confirmation-block h3{margin-bottom:var(--space-2)}.section-heading span{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size)}.member-list{gap:var(--space-1);display:grid}.member-row{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;display:flex}.member-row-copy{flex:1;min-width:0}.member-row strong,.member-row small{display:block}.member-row small{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size)}.member-row-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex;position:relative}.action-reason{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);text-align:right;flex-basis:100%}.member-picker{gap:var(--space-1);margin-top:var(--space-4);display:grid}.inline-form{align-items:center;gap:var(--space-2);display:flex}.inline-form select{flex:1}.inline-form .secondary-button{flex:none}.group-create-form{flex-wrap:wrap}.group-create-form input{flex:12rem;width:auto;min-width:0}.group-create-form .text-action{flex:none}.compact-form{margin-bottom:var(--space-5)}.confirmation-block{margin-top:var(--space-4);padding-top:var(--space-4)}.confirmation-block p{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.confirmation-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);display:flex}.sheet-member-list{gap:var(--space-1);margin-top:var(--space-2);display:grid}.sheet-member-row{align-items:center;gap:var(--space-2);min-height:3.5rem;padding:var(--space-2) 0;display:flex}.sheet-member-row .avatar{width:2.5rem;height:2.5rem;font-size:var(--md-sys-typescale-label-large-size)}.sheet-member-row .is-member-self{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.sheet-member-copy{flex:auto;min-width:0}.sheet-member-copy strong,.sheet-member-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sheet-member-copy strong{font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);line-height:var(--md-sys-typescale-title-medium-line-height)}.sheet-member-copy small{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height)}.sheet-member-row .icon-button{flex:0 0 var(--touch-target)}.sheet-inline-action{align-items:center;gap:var(--space-4);width:100%;min-height:3.5rem;margin-top:var(--space-2);padding:var(--space-2) 0;color:var(--md-sys-color-primary);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);line-height:var(--md-sys-typescale-title-medium-line-height);text-align:left;background:0 0;display:flex}.sheet-inline-action:hover,.sheet-inline-action:focus-visible{background:var(--md-sys-color-surface-container-high)}.sheet-inline-action .material-icon{--md-icon-size:1.5rem}.snackbar{right:var(--space-4);bottom:calc(var(--bottom-bar-height) + var(--space-4) + env(safe-area-inset-bottom));z-index:30;max-width:min(28rem, calc(100vw - var(--space-8)));padding:var(--space-3) var(--space-4);border-radius:var(--radius-small);color:var(--md-sys-color-inverse-on-surface);background:var(--md-sys-color-inverse-surface);box-shadow:var(--elevation-3);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);position:fixed}.loading-state,.center-state{align-content:center;place-items:center;gap:var(--space-3);min-height:50vh;padding:var(--space-8);color:var(--md-sys-color-on-surface-variant);text-align:center;display:grid}.loading-mark{border:2px solid var(--md-sys-color-outline-variant);border-inline-start-color:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-full);width:1.25rem;height:1.25rem;animation:.8s linear infinite spin}.center-state h1{font-size:var(--md-sys-typescale-headline-medium-size);margin-bottom:0}.center-state p{max-width:24rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (hover:hover) and (pointer:fine){.entry-row .entry-edit{width:auto;height:var(--touch-target);min-width:var(--touch-target);padding:var(--space-1) var(--space-3);clip:auto;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--motion-standard), color var(--motion-standard), background-color var(--motion-standard);justify-content:center;align-items:center;display:inline-flex;position:static;overflow:visible}.entry-row:hover .entry-edit:not(:disabled),.entry-row:focus-within .entry-edit:not(:disabled){opacity:1;pointer-events:auto}.entry-edit:hover:not(:disabled){color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.group-edit-trigger{display:inline-flex}.group-edit-trigger,.group-add-trigger{opacity:0;pointer-events:none;transition:opacity var(--motion-standard), color var(--motion-standard), background-color var(--motion-standard)}.group-section>header:hover .group-edit-trigger,.group-section>header:hover .group-add-trigger,.group-section>header:focus-within .group-edit-trigger,.group-section>header:focus-within .group-add-trigger{opacity:1;pointer-events:auto}}@media (width<=38rem){html{background:var(--app-backdrop)}body{background:var(--app-backdrop);min-height:100%}.app-shell{width:var(--phone-width);height:min(var(--phone-height), calc(100dvh - var(--space-4)));min-height:0;margin:max(var(--space-4), calc(50dvh - 29.25rem)) auto 6.75rem;border-radius:var(--md-sys-shape-corner-extra-large);background:var(--md-sys-color-surface);box-shadow:0 1.5rem 4rem color-mix(in srgb, var(--md-sys-color-shadow) 50%, transparent);flex-direction:column;padding-bottom:0;display:flex;position:relative;overflow:hidden}.app-shell>.top-bar,.app-shell>.connection-rail,.app-shell>.presence-indicator,.app-shell>.filter-row{flex:none}.top-bar,.shopping-top{width:100%;min-height:4rem;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-1);background:var(--md-sys-color-surface);margin:0}.top-bar h1,.shopping-top h1{font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);line-height:var(--md-sys-typescale-title-large-line-height);letter-spacing:var(--md-sys-typescale-title-large-tracking)}.picker-top>div:first-child,.people-top>div,.shopping-top>div{min-width:0;padding-left:var(--space-2)}.shopping-top>div{padding-left:0}.picker-top .eyebrow,.people-top .eyebrow,.shopping-top .eyebrow{display:none}.top-actions{gap:var(--space-1)}.content-column,.shopping-content{flex:auto;width:100%;min-height:0;margin:0;padding:0 0 6rem;overflow-y:auto}.content-column{padding-top:0}.list-row,.person-row{min-height:4rem;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);gap:var(--space-2)}.list-row-body{gap:var(--space-2);padding:0}.list-row strong,.person-row strong{font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);line-height:var(--md-sys-typescale-title-medium-line-height)}.list-row small,.person-row small{font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);margin-top:0}.list-symbol,.list-avatar,.avatar.person-avatar{border-radius:var(--radius-medium);width:2.5rem;height:2.5rem;font-size:var(--md-sys-typescale-title-medium-size);font-weight:400}.avatar.person-avatar{border-radius:var(--md-sys-shape-corner-full)}.account-button .avatar-small{width:2.5rem;height:2.5rem;font-size:var(--md-sys-typescale-label-large-size);font-weight:400}.overflow-button,.person-row>.icon-button{flex:0 0 var(--touch-target)}.role-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-small);font-size:var(--md-sys-typescale-label-medium-size);font-weight:var(--md-sys-typescale-label-medium-weight);line-height:var(--md-sys-typescale-label-medium-line-height)}.admin-pill,.screen-intro{display:none}.collapsed-zone{margin:var(--space-2) var(--space-4) 0}.zone-toggle,.collapsed-zone summary{min-height:4rem;padding:var(--space-2) 0;color:var(--md-sys-color-primary);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height)}.bottom-bar{z-index:5;min-height:4.5rem;padding:var(--space-3) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));background:var(--md-sys-color-surface-container);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0}.bottom-bar .full-button{min-height:var(--touch-target);padding:0 var(--space-6);border-radius:var(--md-sys-shape-corner-full);display:inline-flex}.connection-rail,.presence-indicator{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-4);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);border:0;border-radius:0;margin:0}.connection-rail{color:var(--md-sys-color-on-error-container);background:var(--md-sys-color-error-container)}.connection-rail.is-reconnecting{color:var(--md-sys-color-on-tertiary-container);background:var(--md-sys-color-tertiary-container)}.connection-copy{flex:auto}.connection-retry{min-height:var(--touch-target);padding:0 var(--space-3);margin-left:0}.presence-indicator{background:var(--md-sys-color-surface-container-low);min-height:2.5rem}.people-top{gap:var(--space-1);grid-template-columns:auto minmax(0,1fr)}.empty-state{max-width:none;padding:var(--space-12) var(--space-6);text-align:center;justify-items:center;margin:0 auto}.empty-state .empty-icon{width:4.5rem;height:4.5rem;margin-bottom:var(--space-5);border-radius:var(--radius-large)}.empty-state .empty-icon>.material-icon{--md-icon-size:2.5rem}.empty-state h2{margin-bottom:var(--space-2);font-size:var(--md-sys-typescale-headline-small-size);line-height:var(--md-sys-typescale-headline-small-line-height)}.empty-state p{font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.empty-state>.primary-button{min-height:var(--touch-target);margin-top:var(--space-6)}.unarchive-action{min-height:var(--touch-target);padding:0 var(--space-3);margin-left:auto}.shopping-shell .shopping-top{grid-template-columns:auto minmax(0,1fr) auto}.shopping-summary{font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);margin:0}.shopping-content{padding:0 var(--space-4) calc(var(--bottom-bar-height) + var(--space-8) + env(safe-area-inset-bottom));scroll-padding-bottom:calc(var(--bottom-bar-height) + var(--space-8) + env(safe-area-inset-bottom))}.shopping-shell>.filter-row{width:100%;padding:var(--space-1) var(--space-4) var(--space-2);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);flex:none;margin:0}.fold-switch,.shopping-shell .discovery-hint .text-action,.shopping-shell .group-name-button,.shopping-shell .group-add-trigger,.shopping-shell .group-edit-trigger,.fold-chip{min-height:var(--touch-target)}.switch-mark{width:1.5rem;height:1.5rem}.discovery-hint{width:100%;min-height:2.75rem;padding:var(--space-1) var(--space-3);font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height);border:0;border-radius:0;margin:0}.group-section{margin:0 0 var(--space-2)}.group-section>header{min-height:2.5rem;padding:var(--space-4) 0 0;margin:0;position:relative}.group-section h2{font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);line-height:var(--md-sys-typescale-title-medium-line-height)}.group-header-meta{gap:0}.group-add-trigger,.group-edit-trigger{width:var(--touch-target);min-width:var(--touch-target);justify-content:center;padding:0}.group-add-trigger>span:last-child,.group-edit-trigger{display:none}.fold-chip{padding:0 var(--space-3)}.entry-list{margin-inline-start:var(--space-4)}.entry-row{min-height:3.5rem}.entry-row .entry-zone{gap:var(--space-2)}.entry-name{font-size:var(--md-sys-typescale-body-large-size);line-height:var(--md-sys-typescale-body-large-line-height);letter-spacing:var(--md-sys-typescale-body-large-tracking)}.amount-chip{min-height:1.5rem;padding:var(--space-1) var(--space-2);border-radius:var(--radius-small);font-size:var(--md-sys-typescale-label-medium-size);line-height:var(--md-sys-typescale-label-medium-line-height)}.add-group-row{min-height:var(--touch-target);margin-bottom:var(--space-8);border-radius:var(--md-sys-shape-corner-full);font-size:var(--md-sys-typescale-label-large-size);scroll-margin-bottom:calc(var(--bottom-bar-height) + var(--space-4) + env(safe-area-inset-bottom))}.group-create-row{scroll-margin-bottom:calc(var(--bottom-bar-height) + var(--space-4) + env(safe-area-inset-bottom))}.shopping-actions{z-index:6;width:var(--phone-width);min-height:4.5rem;padding:var(--space-2) var(--space-4) calc(var(--space-2) + env(safe-area-inset-bottom));background:var(--md-sys-color-surface-container);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;position:fixed;bottom:0;left:50%;right:auto;transform:translate(-50%)}.shopping-actions.reorder-actions{justify-content:stretch}.shopping-actions .undo-button{min-height:var(--touch-target);text-align:center}.shopping-actions .fab{width:3.5rem;height:3.5rem;min-height:3.5rem}.shopping-actions.reorder-actions .reorder-done{flex:auto;width:100%;max-width:28rem;margin-inline:auto}.bottom-sheet{width:100%;max-height:82%;padding:var(--space-4) 0 var(--space-6);border-radius:var(--md-sys-shape-corner-extra-large) var(--md-sys-shape-corner-extra-large) 0 0;background:var(--md-sys-color-surface-container-low);box-shadow:var(--elevation-3);border:0}.sheet-backdrop{z-index:20;background:color-mix(in srgb, var(--md-sys-color-scrim) 40%, transparent);position:absolute}.sheet-handle{width:2rem;height:.25rem;margin-bottom:var(--space-2);background:var(--md-sys-color-outline-variant)}.sheet-heading{padding:var(--space-1) var(--space-6) var(--space-3);margin:0}.sheet-heading h2{font-size:var(--md-sys-typescale-title-large-size);font-weight:var(--md-sys-typescale-title-large-weight);line-height:var(--md-sys-typescale-title-large-line-height)}.sheet-heading .icon-button{width:var(--touch-target);height:var(--touch-target)}.sheet-copy{padding:0 var(--space-6)}.sheet-actions{margin:0 calc(var(--space-6) * -1)}.sheet-action{min-height:3.5rem;padding:var(--space-2) var(--space-6);justify-content:flex-start;gap:var(--space-4);font-size:var(--md-sys-typescale-body-large-size);font-weight:400;line-height:var(--md-sys-typescale-body-large-line-height)}.sheet-action-icon{color:currentColor;--md-icon-size:1.5rem;flex-basis:1.5rem}.sheet-action span.sheet-action-copy{font-size:var(--md-sys-typescale-body-large-size);line-height:var(--md-sys-typescale-body-large-line-height)}.sheet-action-copy strong{font-weight:400}.sheet-action-copy small{font-size:var(--md-sys-typescale-body-small-size);line-height:var(--md-sys-typescale-body-small-line-height)}.sheet-action:hover:not(:disabled),.sheet-action:focus-visible{color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-high)}.sheet-action>span:not(.sheet-action-copy){text-align:right;max-width:48%}.sheet-warning{margin:0 0 var(--space-4);border-radius:var(--radius-medium);border-inline-start:0}.sheet-member-list{margin:0 calc(var(--space-6) * -1)}.sheet-member-row{min-height:3.5rem;padding:var(--space-2) var(--space-6)}.sheet-inline-action{min-height:3.5rem;padding:var(--space-2) 0}.bottom-sheet>.confirmation-block.sheet-copy{padding:0 var(--space-6);margin:0}.bottom-sheet>.sheet-form.sheet-copy{padding-top:0}.member-row{flex-wrap:wrap}.member-row-copy{flex:1 1 0}.member-row-actions{flex:100%;justify-content:flex-end;padding-inline-start:3.125rem}.action-reason{text-align:left}.archived-banner{width:min(calc(100% - var(--space-6)), var(--content-max));align-items:flex-start;gap:var(--space-1);flex-direction:column}.group-add-trigger{max-width:34vw}.group-create-row .group-create-form .primary-button{flex:100%}.inline-add-form{grid-template-columns:minmax(0,1fr) minmax(5.5rem,7rem)}.fab-add-row .inline-add-form{grid-template-columns:minmax(0,1fr) auto}.inline-add-field:first-child,.fab-add-row .inline-add-group-field{grid-column:1/-1}.inline-add-submit{grid-column:2}.fab-add-row:has(.group-create-form) .inline-add-form{grid-template-columns:minmax(0,1fr) auto}.fab-add-row:has(.group-create-form) .inline-add-group-field{grid-area:1/1/auto/-1}.fab-add-row:has(.group-create-form) .inline-add-field:first-child{grid-area:2/1/auto/-1}.fab-add-row:has(.group-create-form) .inline-add-amount-field{grid-area:3/1}.fab-add-row:has(.group-create-form) .inline-add-submit{grid-area:3/2}.shopping-shell .shopping-top.reorder-top{grid-template-columns:1fr}.shopping-shell .shopping-top.reorder-top>div{padding-left:var(--space-4)}.reorder-mode{width:min(calc(100% - var(--space-6)), var(--content-max));gap:var(--space-3);padding:var(--space-1);grid-template-columns:1fr}.reorder-scroll{max-height:calc(100dvh - 14rem);padding:0 var(--space-1) var(--space-2)}.reorder-move-rail{width:100%;padding:var(--space-3);position:relative;top:auto}.reorder-move-controls{grid-template-columns:repeat(4,minmax(0,1fr))}.reorder-done{min-height:var(--touch-target)}.settings-content{width:100%;padding:var(--space-6) var(--space-4) 6rem}.settings-mcp>.screen-intro{display:block}}@media (width<=30rem){body{background:var(--md-sys-color-surface)}.app-shell{width:100vw;height:100dvh;box-shadow:none;border-radius:0;margin:0}.shopping-actions{width:auto;bottom:0;left:0;right:0;transform:none}.auth-page{background:var(--md-sys-color-surface);width:100vw;padding:0}.auth-card{width:100vw;height:100dvh;padding:var(--space-8);box-shadow:none;text-align:center;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;display:flex}}@media (width<=38rem){.auth-page{min-height:100dvh;padding:var(--space-4);background:var(--app-backdrop)}.auth-card{width:var(--phone-width);height:min(var(--phone-height), calc(100dvh - var(--space-4)));padding:var(--space-8);border-radius:var(--md-sys-shape-corner-extra-large);box-shadow:0 1.5rem 4rem color-mix(in srgb, var(--md-sys-color-shadow) 50%, transparent);text-align:center;border:0;flex-direction:column;justify-content:center;align-items:center;display:flex}.oauth-consent-card{min-height:min(var(--phone-height), calc(100dvh - var(--space-4)));height:auto}.brand-mark{width:5.5rem;height:5.5rem;margin:0 0 var(--space-6);border-radius:var(--radius-large)}.brand-icon{--md-icon-size:2.75rem}.auth-card h1{font-size:var(--md-sys-typescale-title-large-size);line-height:var(--md-sys-typescale-title-large-line-height);margin:0}.auth-copy{margin:var(--space-2) 0 var(--space-7);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.google-button{width:13.5rem;min-height:var(--touch-target);padding:0 var(--space-4)}.auth-card .notice{width:100%;margin:var(--space-6) 0 0;padding:var(--space-4);border-radius:var(--radius-medium);text-align:left;border:0}.auth-card .notice strong{font-size:var(--md-sys-typescale-label-large-size);line-height:var(--md-sys-typescale-label-large-line-height)}.auth-card .notice span{margin-top:var(--space-1);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}}@media (width<=30rem){.auth-page{background:var(--md-sys-color-surface);width:100vw;padding:0}.auth-card{width:100vw;height:100dvh;box-shadow:none;border-radius:0}.oauth-consent-card{height:auto;min-height:100dvh}}@media (width>=38.0625rem){.sheet-backdrop{justify-content:flex-end;align-items:stretch}.bottom-sheet{width:min(100%,28rem);height:100%;max-height:none;padding:var(--space-6);border-inline-start:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-large) 0 0 var(--radius-large);animation:sheet-slide-in var(--motion-emphasized);margin:0}.sheet-handle{display:none}.sheet-copy{padding:0}.sheet-actions,.sheet-member-list{margin-inline:0}.fab-add-row .inline-add-form{grid-template-columns:minmax(0,1fr) auto}.fab-add-row .inline-add-field:first-child,.fab-add-row .inline-add-group-field{grid-column:1/-1}.fab-add-row .inline-add-amount-field{grid-column:1}.fab-add-row .inline-add-submit{grid-column:2}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.entry-row.is-departing,.entry-row.is-arriving{animation:none;transform:none}.entry-row.is-departing{opacity:0}.count-bump{animation:none;transform:none}.entry-zone.is-saving:after,.catalog-zone.is-saving:after,.reorder-mode{animation:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-rise{0%{opacity:.7;transform:translateY(2rem)}to{opacity:1;transform:translateY(0)}}@keyframes sheet-slide-in{0%{opacity:.7;transform:translate(2rem)}to{opacity:1;transform:translate(0)}}@keyframes count-bump{0%,to{transform:scale(1)}45%{transform:scale(1.08)}}@keyframes entry-departure{0%,25%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(1rem)}}@keyframes entry-arrival{0%{opacity:0;transform:translate(-1rem)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes editor-sweep{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes reorder-enter{0%{opacity:0;transform:translateY(.35rem)}to{opacity:1;transform:translateY(0)}}
