:root{color-scheme:light dark;--space-xxs: 4px;--space-xs: 8px;--space-s: 12px;--space-m: 16px;--space-l: 24px;--space-xl: 32px;--touch: 48px;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", system-ui, sans-serif;--large-title: 2.125rem;--title: 1.375rem;--body: 1.0625rem;--callout: .9375rem;--subhead: .875rem;--footnote: .8125rem;--label-tracking: .04em;--title-tracking: -.022em;--radius-card: 16px;--radius-button: 12px;--radius-small: 10px;--radius-sheet: 22px;--radius-pill: 999px;--background: #f2f2f7;--surface: #ffffff;--ink: #111113;--muted: #5e5e63;--faint: #aeaeb2;--line: rgba(60, 60, 67, .14);--ring: rgba(60, 60, 67, .35);--ring-soft: rgba(60, 60, 67, .28);--field: rgba(118, 118, 128, .12);--bar: rgba(242, 242, 247, .8);--track: rgba(118, 118, 128, .18);--accent: #ffc629;--on-accent: #2a1d00;--accent-text: #8a6100;--accent-soft: rgba(255, 198, 41, .24);--danger: #c4362f;--scrim: rgba(0, 0, 0, .32);--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);--wordmark: #2a1d00;--live: #2e9e5b;--section-produce: #2e9e5b;--section-bakery: #c98a1b;--section-deli: #c2557a;--section-meatAndFish: #d9534f;--section-dairyAndEggs: #3478f6;--section-cheese: #d9a520;--section-frozen: #2aa7c9;--section-pantry: #a0703c;--section-canned: #6e7fd0;--section-breakfast: #e07b39;--section-snacksAndSweets: #d65b9a;--section-drinks: #8e5bd6;--section-household: #8a8a8e;--section-personalCare: #2fa39a;--section-baby: #e58fb6;--section-pet: #8c6d4f;--section-other: #9a9aa0;--avatar-0: #1f8a5b;--avatar-1: #3478f6;--avatar-2: #d65b9a;--avatar-3: #c98a1b;--avatar-4: #8e5bd6;--avatar-5: #d9534f;--on-avatar: #ffffff;--qr-ink: #111113;--qr-paper: #ffffff}@media(prefers-color-scheme:dark){:root{--background: #1c1c1e;--surface: #2c2c2e;--ink: #f5f5f7;--muted: #a1a1a6;--faint: #636366;--line: rgba(84, 84, 88, .45);--ring: rgba(235, 235, 245, .4);--ring-soft: rgba(235, 235, 245, .25);--field: rgba(118, 118, 128, .24);--bar: rgba(28, 28, 30, .8);--track: rgba(118, 118, 128, .32);--accent: #ffd54a;--accent-text: #ffd54a;--accent-soft: rgba(255, 213, 74, .16);--danger: #ff6961;--scrim: rgba(0, 0, 0, .55);--shadow: none;--wordmark: #f5f5f7}}*,*:before,*:after{box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%}body{margin:0;background:var(--background);color:var(--ink);font-family:var(--font);font-size:var(--body);line-height:1.4;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}a{color:inherit}h1,h2,h3,p{margin:0}ul{list-style:none;margin:0;padding:0}:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}@media(prefers-reduced-motion:no-preference){.progress-fill,.checkmark,.button,.side-list,.list-row{transition:background-color .12s ease,width .2s ease,border-color .12s ease}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--muted)}.small{font-size:var(--footnote)}.strong{font-weight:600}.accent-text{color:var(--accent-text);font-weight:500}.danger{color:var(--danger)}.numbers{font-variant-numeric:tabular-nums}.stack{display:flex;flex-direction:column;gap:var(--space-s)}.large-title{font-size:var(--large-title);font-weight:700;line-height:1.1;letter-spacing:var(--title-tracking)}.lead{font-size:1.1875rem;line-height:1.5;color:var(--muted)}.card{background:var(--surface);border-radius:var(--radius-card);overflow:hidden}.card>li+li,.items>li+li{border-top:1px solid var(--line)}.group{display:flex;flex-direction:column;gap:6px}.group-header{display:flex;align-items:center;gap:var(--space-xs);padding:0 var(--space-m);font-size:var(--footnote);font-weight:600;letter-spacing:var(--label-tracking);text-transform:uppercase;color:var(--muted)}.group-count{margin-left:auto;font-weight:500;letter-spacing:0}.marker{width:8px;height:8px;border-radius:50%;flex-shrink:0}.section-name{display:inline-flex;align-items:center;gap:var(--space-xs)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);min-height:var(--touch);padding:0 var(--space-l);border:0;border-radius:var(--radius-button);background:var(--field);color:var(--ink);font-size:var(--callout);font-weight:600;text-decoration:none;cursor:pointer}.button:disabled{opacity:.5;cursor:default}.button-primary{background:var(--accent);color:var(--on-accent)}.button-tinted{background:var(--accent-soft);color:var(--accent-text)}.button-plain{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.button-plain.danger{color:var(--danger)}.button-destructive{background:var(--danger);color:var(--surface)}.button-quiet{background:transparent;color:var(--accent-text)}.button-small{min-height:36px;padding:0 var(--space-m)}.text-button,.link{display:inline-flex;align-items:center;gap:6px;min-height:var(--touch);padding:0 var(--space-xs);border:0;background:none;color:var(--accent-text);font-size:var(--callout);font-weight:500;cursor:pointer}.text-button.danger{color:var(--danger)}.link{min-height:0;padding:0;text-decoration:underline;text-underline-offset:2px}.pill-button{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:40px;padding:0 14px;border:0;border-radius:var(--radius-pill);background:var(--surface);font-size:var(--subhead);font-weight:500;cursor:pointer}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:var(--touch);height:var(--touch);border:0;border-radius:var(--radius-small);background:transparent;color:var(--danger);cursor:pointer}.field{display:flex;flex-direction:column;gap:6px}.field-head{display:flex;align-items:center;justify-content:space-between}.label{font-size:var(--footnote);font-weight:600;color:var(--muted)}input,select{min-height:var(--touch);width:100%;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-button);background:var(--surface);color:var(--ink);font-size:1rem}input::placeholder{color:var(--muted)}input:focus,select:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--accent-soft)}.field-error{color:var(--danger);font-size:var(--footnote)}.divider{display:flex;align-items:center;gap:var(--space-s);color:var(--muted);font-size:var(--footnote)}.divider:before,.divider:after{content:"";flex:1;border-top:1px solid var(--line)}.colors{display:flex;flex-wrap:wrap;gap:6px;border:0;padding:0;margin:0}.colors legend{padding:0;margin-bottom:4px}.color{position:relative;width:36px;height:36px;margin:4px;border-radius:50%;cursor:pointer}.color input{position:absolute;inset:-4px;width:auto;min-height:0;opacity:0;margin:0;cursor:pointer}.color:has(input:checked){box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--ink)}.color:has(input:focus-visible){outline:2px solid var(--accent-text);outline-offset:6px}.segmented{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;padding:2px;border-radius:var(--radius-small);background:var(--field)}.plain-fieldset{border:0;padding:0;margin:0}.plain-fieldset legend{padding:0;margin-bottom:6px}.segmented label{position:relative;display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:8px;font-size:var(--callout);font-weight:500;cursor:pointer}.segmented input{position:absolute;inset:0;width:auto;min-height:0;opacity:0;margin:0;cursor:pointer}.segmented label:has(input:checked){background:var(--surface);font-weight:600;box-shadow:0 1px 3px #0000001f}.segmented label:has(input:focus-visible){outline:2px solid var(--accent-text)}.message,.banner{padding:var(--space-s) var(--space-m);border-radius:var(--radius-small);background:var(--accent-soft);font-size:var(--callout)}.banner{margin:var(--space-s) auto 0;max-width:1240px;color:var(--danger)}.avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;color:var(--on-avatar);font-weight:700;line-height:1;-webkit-user-select:none;user-select:none}.avatar-stack{display:inline-flex;align-items:center}.avatar-stack .avatar{border:2px solid var(--background)}.avatar-stack .avatar+.avatar{margin-left:-8px}.checkmark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:2px solid var(--ring);color:var(--on-accent)}.checkmark-on{border:0;background:var(--accent)}.progress{display:block;height:6px;border-radius:3px;background:var(--track);overflow:hidden}.progress-fill{display:block;height:100%;background:var(--accent)}.tag{padding:2px var(--space-xs);border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-text);font-size:var(--footnote);font-weight:600;white-space:nowrap}.topbar{position:sticky;top:0;z-index:2;background:var(--bar);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--line)}.topbar-inner{max-width:1240px;margin:0 auto;padding:6px 20px;display:flex;align-items:center;gap:var(--space-m)}.topbar-home{display:inline-flex;align-items:center;min-height:var(--touch);margin-right:auto;border-radius:var(--radius-small)}.logo{display:block}.sync{display:inline-flex;align-items:center;gap:var(--space-xs);color:var(--muted);font-size:var(--subhead)}.dot{width:8px;height:8px;border-radius:50%;background:var(--live);flex-shrink:0}.sync-saving .dot{background:var(--accent)}.sync-offline .dot{background:var(--danger)}.menu{position:relative}.menu summary{list-style:none;cursor:pointer;display:flex;min-height:var(--touch);min-width:var(--touch);align-items:center;justify-content:center;border-radius:var(--radius-pill);color:var(--accent-text)}.menu summary::-webkit-details-marker{display:none}.menu-panel{position:absolute;z-index:3;right:0;top:calc(100% + var(--space-xs));width:min(340px,calc(100vw - 2 * var(--space-m)));padding:var(--space-m);background:var(--surface);border-radius:var(--radius-card);box-shadow:0 12px 40px #0000002e}.list-menu .menu-panel{width:min(260px,calc(100vw - 2 * var(--space-m)));padding:var(--space-xs);gap:0}.menu-item{display:flex;align-items:center;width:100%;min-height:var(--touch);padding:0 var(--space-s);border:0;border-radius:var(--radius-small);background:transparent;text-align:left;font-size:var(--body);cursor:pointer}.menu-item:hover{background:var(--field)}.profile-card{display:flex;align-items:center;gap:var(--space-s)}.profile-text{display:flex;flex-direction:column;min-width:0}.profile-name{font-size:1.1875rem;font-weight:600}.page{max-width:760px;margin:0 auto;padding:var(--space-l) 20px calc(2 * var(--space-xl));display:flex;flex-direction:column;gap:22px}.empty{padding:var(--space-l) var(--space-m)}.new-list{display:flex;gap:var(--space-xs)}.new-list input{flex:1;min-width:0}.sidebar .new-list{flex-direction:column}.list-row{display:flex;align-items:center;gap:var(--space-s);min-height:72px;padding:var(--space-s) var(--space-m);text-decoration:none}.list-row:hover{background:var(--field)}.list-tile{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-small);background:var(--accent-soft);color:var(--accent-text);flex-shrink:0}.list-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.list-name{font-weight:600}.list-sub{font-size:var(--callout)}.list-count{color:var(--muted);font-size:var(--callout)}.chevron{display:flex;color:var(--faint)}.invitation{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs);padding:var(--space-s) var(--space-m)}.invitation-text{display:flex;flex-direction:column;flex:1 1 200px}.phone-note{display:flex;align-items:center;gap:var(--space-xs);padding:0 var(--space-m);font-size:var(--footnote)}.phone-note svg{flex-shrink:0}.list-layout{max-width:1240px;margin:0 auto;padding:var(--space-l) 20px calc(2 * var(--space-xl));display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}.sidebar{flex:1 1 240px;max-width:300px;display:flex;flex-direction:column;gap:20px}.side-group{display:flex;flex-direction:column;gap:6px}.sidebar .group-header{padding:0 var(--space-s)}.side-lists{display:flex;flex-direction:column;gap:2px}.side-list{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 var(--space-s);border-radius:var(--radius-small);font-size:var(--callout);text-decoration:none}.side-list:hover{background:var(--field)}.side-list[aria-current=page]{background:var(--accent-soft);color:var(--accent-text);font-weight:600}.side-name{flex:1;min-width:0;overflow-wrap:anywhere}.side-count{font-size:var(--footnote);color:var(--muted)}.side-list[aria-current=page] .side-count{color:var(--accent-text)}.side-note{padding:0 var(--space-s)}.shopper-card{display:flex;align-items:center;gap:10px;padding:14px;border-radius:14px;background:var(--accent-soft)}.shopper-text{display:flex;flex-direction:column;gap:2px}.shopper-title{font-size:var(--subhead);font-weight:600;color:var(--accent-text)}.changes{display:flex;flex-direction:column;gap:var(--space-s);padding:0 var(--space-s)}.changes li{display:flex;align-items:flex-start;gap:10px;font-size:var(--subhead)}.change-time{display:block}.list-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:22px}.list-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-m)}.list-head-text{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0}.list-title{overflow-wrap:anywhere}.title-button{padding:0;border:0;background:none;font:inherit;letter-spacing:inherit;text-align:left;cursor:text}.rename input{font-weight:700;letter-spacing:var(--title-tracking);padding:0 var(--space-xs)}.list-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:var(--callout)}.store-chip{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-radius:var(--radius-pill);background:var(--surface);font-size:var(--subhead);font-weight:500}button.store-chip{min-height:var(--touch);border:0;color:var(--ink);cursor:pointer}.list-actions{display:flex;align-items:center;gap:10px}.add-bar{display:flex;flex-wrap:wrap;gap:10px}.add-input{flex:1 1 260px;min-width:0;font-size:var(--body);padding:0 var(--space-m)}.add-section{position:relative;display:inline-flex;align-items:center;gap:var(--space-xs);min-height:var(--touch);padding:0 var(--space-s);border-radius:var(--radius-button);background:var(--surface);font-size:var(--callout)}.add-section select{appearance:none;width:auto;min-height:var(--touch);padding:0;border:0;background:transparent;font-size:var(--callout);cursor:pointer}.add-section select:focus{box-shadow:none}.add-section:has(select:focus-visible){outline:2px solid var(--accent-text)}.add-button{padding:0 22px}.sections{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-m);align-items:start}.section-card .group-header,.basket-card .group-header{padding:14px var(--space-m) var(--space-xs)}.section-card .group-header .section-name{gap:var(--space-xs)}.basket-card{background:transparent;border:1px dashed var(--ring-soft)}.items{border-top:1px solid var(--line)}.item{display:flex;align-items:center;gap:2px;min-height:var(--touch);padding:0 var(--space-m) 0 var(--space-xxs)}.check{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;background:transparent;flex-shrink:0;cursor:pointer}.item-name{flex:1;min-width:0;min-height:44px;padding:0;border:0;background:none;text-align:left;font-size:1rem;overflow-wrap:anywhere;cursor:pointer}.item.checked .item-name{color:var(--muted);text-decoration:line-through}.item-quantity{font-size:var(--subhead);margin-left:var(--space-xs)}.stepper{display:inline-flex;align-items:center;flex-shrink:0;height:32px;margin-left:var(--space-xs);border-radius:var(--radius-pill);background:var(--field)}.stepper button{position:relative;display:flex;align-items:center;justify-content:center;width:34px;height:32px;padding:0;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--ink);cursor:pointer}.stepper button:after{content:"";position:absolute;inset:-6px -2px}.stepper button:active:not(:disabled){background:var(--track)}.stepper button:disabled{opacity:.3;cursor:default}.stepper-count{min-width:20px;text-align:center;font-weight:600;font-size:var(--callout)}.stepper input{width:4.5em;min-height:0;height:32px;padding:0 2px;border:0;background:transparent;text-align:center;font-weight:600;font-size:var(--callout)}.stepper input:focus{box-shadow:none}.stepper:has(input:focus-visible){outline:2px solid var(--accent-text)}.item-who{margin-left:var(--space-xs);white-space:nowrap}.item.fresh{background:var(--accent-soft)}.item.editing{align-items:flex-start;padding-top:var(--space-xs);padding-bottom:var(--space-xs)}.edit-form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs);flex:1;min-width:0}.edit-name{flex:1 1 160px}.edit-quantity{flex:0 1 90px}.edit-section{flex:1 1 140px}.share-dialog{width:min(560px,calc(100vw - 2 * var(--space-m)));max-height:calc(100vh - 2 * var(--space-m));padding:0;background:var(--background);color:var(--ink);border:0;border-radius:var(--radius-sheet);box-shadow:0 20px 60px #0000004d}.share-dialog::backdrop{background:var(--scrim)}.share-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-m);padding:var(--space-m) var(--space-m) var(--space-xs) 20px}.share-title{font-size:var(--body);font-weight:600}.share-body{display:flex;flex-direction:column;gap:20px;padding:var(--space-xs) 20px 20px}.share-code{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:20px;text-align:center}.qr-box{display:flex;align-items:center;justify-content:center;width:192px;height:192px;padding:12px;border-radius:14px;background:var(--qr-paper)}.qr{width:100%;height:100%}.share-scan{font-weight:600;margin-top:var(--space-xs)}.share-side{display:flex;flex-direction:column;gap:20px}.add-person{display:flex;flex-direction:column}.add-person-row{display:flex;align-items:center;gap:var(--space-xs);padding:0 var(--space-xs) 0 var(--space-m);color:var(--accent-text)}.add-person-row input{flex:1;min-width:0;border:0;background:transparent;padding:0 var(--space-xs)}.add-person-row input:focus{box-shadow:none}.add-person-row:has(input:focus-visible){outline:2px solid var(--accent-text)}.share-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}@media(prefers-reduced-motion:no-preference){.drawn-check path{stroke-dasharray:1;animation:draw-check .32s ease-out 60ms backwards}.copy-done{animation:copy-pop .24s ease-out}}@keyframes draw-check{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes copy-pop{50%{transform:scale(1.04)}}.share-until{max-width:360px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-s);width:100%;max-width:360px;min-height:var(--touch);border-top:1px solid var(--line);color:var(--ink);font-size:var(--body);cursor:pointer}.switch{appearance:none;flex:none;position:relative;width:51px;min-height:0;height:31px;margin:0;padding:0;border:0;border-radius:var(--radius-pill);background:var(--track);cursor:pointer}.switch:after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow)}.switch:checked{background:var(--accent)}.switch:focus{border:0;box-shadow:none}.switch:checked:after{transform:translate(20px)}@media(prefers-reduced-motion:no-preference){.switch,.switch:after{transition:background-color .15s ease,transform .15s ease}}.people{display:flex;flex-direction:column}.person{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-s);min-height:56px;padding:var(--space-xs) var(--space-m)}.person-name{display:flex;flex-direction:column;flex:1;min-width:0}.person-sub{display:block}.members{display:flex;flex-direction:column;gap:6px}.confirm{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs);font-size:var(--callout)}.share-dialog .message{margin:0 20px 20px}.store-pick{background:var(--surface);border-radius:var(--radius-button)}.store-actions{display:flex;flex-wrap:wrap;gap:var(--space-s)}.store-form{display:flex;flex-direction:column;gap:var(--space-s);padding:var(--space-m)}.store-form-buttons{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.store-note{padding:0 var(--space-m)}.walking-order{list-style:none;margin:0;padding:0}.order-row{display:flex;align-items:center;gap:var(--space-s);min-height:52px;padding:0 var(--space-xs) 0 var(--space-m);background:var(--surface);cursor:grab}.order-number{min-width:1.5em;font-size:var(--callout)}.order-name{flex:1;min-width:0}.order-move{color:var(--accent-text)}.order-move:disabled{color:var(--faint);cursor:default}.order-grip{display:inline-flex;padding:0 var(--space-xs);color:var(--faint)}.order-row.dragging{opacity:.4}.order-row.drop-before{box-shadow:inset 0 3px 0 var(--accent)}.order-row.drop-after{box-shadow:inset 0 -3px 0 var(--accent)}.store-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-xs)}.welcome{min-height:100vh;display:flex;flex-direction:column}.welcome-head{max-width:1120px;width:100%;margin:0 auto;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-s)}.welcome-main{flex-grow:1;max-width:1120px;width:100%;margin:0 auto;padding:var(--space-xl) 20px 64px;display:flex;flex-wrap:wrap;align-items:center;gap:56px}.welcome-intro{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:var(--space-l)}.welcome-title{font-size:clamp(2.25rem,4vw,3.25rem);line-height:1.06;letter-spacing:-.028em;font-weight:700}.welcome-intro .lead{max-width:520px}.welcome-sample{max-width:440px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-s)}.sample-card{padding:14px;border-radius:var(--radius-card);background:var(--surface);display:flex;flex-direction:column;gap:var(--space-xs)}.sample-card .group-header{padding:0;font-size:.75rem}.sample-item{font-size:var(--callout)}.sample-item.checked{color:var(--muted);text-decoration:line-through}.welcome-form{flex:1 1 360px;max-width:440px;min-width:0;padding:var(--space-xl);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.welcome-form .stack{gap:18px}.welcome-form .button{width:100%;min-height:50px;font-size:var(--body)}.welcome-form .button-plain{font-size:1rem}.form-title{font-size:1.5rem;font-weight:700;letter-spacing:-.015em}.switch-form,.switch-form .link{font-size:var(--callout)}.privacy-note{border-radius:var(--radius-small);font-size:var(--callout)}.privacy-note[open]{padding:0 var(--space-m) var(--space-m);background:var(--field)}.privacy-note summary{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:var(--touch);color:var(--accent-text);font-weight:500;cursor:pointer;list-style:none}.privacy-note summary::-webkit-details-marker{display:none}.privacy-note summary:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:var(--radius-small)}.privacy-note ul{display:flex;flex-direction:column;gap:var(--space-xxs);margin-bottom:var(--space-xs);padding-left:1.2em;list-style:disc}.preview-pill{align-self:flex-start;padding:10px 14px;border-radius:var(--radius-pill);background:var(--accent-soft);font-size:var(--callout)}.policy{flex-grow:1;max-width:720px;width:100%;margin:0 auto;padding:var(--space-l) 20px 64px;display:flex;flex-direction:column;gap:var(--space-m);line-height:1.5}.policy section{display:flex;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-s)}.policy h2{font-size:var(--title);font-weight:700;letter-spacing:var(--title-tracking)}.policy ul{display:flex;flex-direction:column;gap:var(--space-xs);padding-left:1.2em;list-style:disc}.policy .button{align-self:flex-start;margin-top:var(--space-l)}.waiting{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-m)}@media(max-width:760px){.hide-narrow{display:none}.sidebar{max-width:none}.list-main{order:-1}.welcome-form{padding:var(--space-l)}}.side-receipt-status{display:block;font-weight:400}.receipt-layout{max-width:1240px;margin:0 auto;padding:var(--space-l) 20px calc(2 * var(--space-xl));display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}.receipt-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:var(--space-m)}.receipt-side{flex:1 1 300px;max-width:420px;display:flex;flex-direction:column;gap:var(--space-m)}.back-link{align-self:flex-start;padding:0}.receipt-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-m)}.receipt-label{padding:0;color:var(--accent-text)}.receipt-mode{flex:0 1 320px}.receipt-table-card{overflow-x:auto}.receipt-table{width:100%;border-collapse:collapse;font-size:var(--callout)}.receipt-table th,.receipt-table td{padding:var(--space-xxs) var(--space-s);text-align:left;vertical-align:middle}.receipt-table thead th{padding-top:var(--space-s);padding-bottom:var(--space-s);font-size:var(--footnote);font-weight:600;color:var(--muted)}.receipt-table tbody tr{border-top:1px solid var(--line)}.receipt-table .receipt-line{min-width:9em;font-weight:400;color:var(--ink);overflow-wrap:break-word}.receipt-table .amount{text-align:right;white-space:nowrap}.receipt-table .payer-column{text-align:center;white-space:nowrap}.receipt-own{background:var(--accent-soft)}.receipt-total{display:flex;flex-direction:column;gap:var(--space-s);padding:var(--space-m)}.receipt-total-line{display:flex;flex-direction:column;gap:var(--space-xxs)}.receipt-amount{font-size:var(--large-title);font-weight:700;letter-spacing:var(--title-tracking)}.settle-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-s);min-height:64px;padding:var(--space-s) var(--space-m)}.settle-text{flex:1 1 140px;display:flex;flex-direction:column;gap:2px;min-width:0}.settle-amount{font-size:var(--body);font-weight:700}@media(max-width:640px){.receipt-table .paid-by-column{display:none}.receipt-table th,.receipt-table td{padding:var(--space-xxs) 6px}.receipt-table .receipt-line{min-width:6.5em}}
