:root{--color-ink: #16191D;--color-ink-2: #5F666E;--color-ink-3: #9AA0A7;--color-screen: #F2F3F5;--color-card: #FFFFFF;--color-card-2: #EEF0F2;--color-line: #E7E9EC;--color-ink-fill: #16191D;--color-ink-press: #000000;--color-accent: #2A4BD9;--color-accent-deep: #1E39B4;--color-accent-soft: #EEF2FE;--color-danger: #C0271F;--color-danger-soft: #FDECEA;--color-warning: #8A5B04;--color-warning-soft: #FDF3E0;--color-success: #0E6B4F;--color-success-soft: #E7F5EE;--color-toggle-off: #D6D9DD;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--size-target-min: 44px;--size-target-primary: 48px;--size-target-hero: 52px;--size-control: 54px;--size-field: 58px;--size-row: 74px;--size-row-tall: 92px;--size-row-compact: 56px;--size-tabbar: 60px;--size-urgency-bar: 3px;--size-artboard-w: 390px;--size-artboard-h: 844px;--radius-card: 20px;--radius-control: 16px;--radius-tile: 14px;--radius-sheet: 24px;--radius-pill: 6px;--radius-round: 999px}:root{--safe-bottom: env(safe-area-inset-bottom, 0px);--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-screen);color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-size-adjust:100%}button{font:inherit;color:inherit;background:none;border:0;padding:0;text-align:left;cursor:pointer}.Screen{display:flex;flex-direction:column;height:100%;max-width:560px;margin:0 auto;background:var(--color-screen)}.Screen__scroll{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.VenueHead{flex:none;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-card)}.VenueHead__back{flex:none;min-width:var(--size-target-min);min-height:var(--size-target-min);display:flex;align-items:center;margin-left:calc(-1 * var(--space-2));font-size:22px;font-weight:700}.VenueHead__where{flex:1;min-width:0}.VenueHead__venue{display:block;font-size:16px;font-weight:600;letter-spacing:-.01em}.VenueHead__point{display:block;margin-top:1px;font-size:13px;color:var(--color-ink-2)}.VenueHead__lang{flex:none;min-width:var(--size-target-min);min-height:var(--size-target-min);display:flex;align-items:center;justify-content:center;padding:0 var(--space-2);border-radius:var(--radius-control);background:var(--color-card-2);font-size:13px;font-weight:600;text-transform:uppercase}.CategoryRail{flex:none;display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-card);overflow-x:auto;scrollbar-width:none}.CategoryRail::-webkit-scrollbar{display:none}.CategoryRail__chip{flex:none;min-height:var(--size-target-min);display:flex;align-items:center;padding:0 var(--space-3);border-radius:var(--radius-control);background:var(--color-card-2);font-size:14px;font-weight:600;white-space:nowrap}.CategoryRail__chip--on{background:var(--color-ink);color:var(--color-card)}.Section__head{position:sticky;top:0;z-index:1;display:flex;align-items:baseline;gap:var(--space-2);padding:var(--space-4) var(--space-4) var(--space-2);background:var(--color-screen)}.Section__name{font-size:19px;font-weight:700;letter-spacing:-.01em}.Section__count{font-family:var(--font-mono);font-size:13px;color:var(--color-ink-2)}.Section__list{margin:0;padding:0 var(--space-4) var(--space-2);list-style:none}.Section__nothing{margin:0 var(--space-4) var(--space-4);padding:var(--space-4);border-radius:var(--radius-card);background:var(--color-card);font-size:15px;color:var(--color-ink-2);line-height:1.45}.DishRow{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3);border-radius:var(--radius-card);background:var(--color-card)}.DishRow__body{flex:1;min-width:0;display:block;min-height:var(--size-target-min)}.DishRow__name{display:block;font-size:16px;font-weight:600;line-height:1.3}.DishRow__description{display:block;margin-top:2px;font-size:14px;line-height:1.4;color:var(--color-ink-2)}.DishRow__meta{display:flex;align-items:baseline;gap:var(--space-2);margin-top:var(--space-2)}.DishRow__price{font-family:var(--font-mono);font-size:15px;font-weight:700;white-space:nowrap}.DishRow__price--asked{font-family:var(--font-sans);font-weight:400;font-size:14px;color:var(--color-ink-2);white-space:normal}.DishRow__portion{font-size:13px;color:var(--color-ink-2)}.DishRow__slot{flex:none;min-width:var(--size-target-primary);min-height:var(--size-target-primary);display:flex;align-items:center;justify-content:center}.DishRow__add{width:var(--size-target-primary);height:var(--size-target-primary);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-control);background:var(--color-ink);color:var(--color-card);font-size:22px;font-weight:600}.DishRow__count{font-family:var(--font-mono);font-size:17px;font-weight:700}.DishRow__opens{font-size:22px;font-weight:700;color:var(--color-ink-2)}.DishRow__out{padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--color-warning-soft);color:var(--color-warning);font-size:12px;font-weight:600;text-align:center;line-height:1.25}.BasketBar{position:relative;flex:none;padding:var(--space-3) var(--space-4) calc(var(--space-3) + var(--safe-bottom));background:var(--color-card);box-shadow:0 -1px 0 var(--color-card-2)}.BasketBar__button{width:100%;min-height:var(--size-control);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:0 var(--space-4);border-radius:var(--radius-control);background:var(--color-ink);color:var(--color-card);font-size:16px;font-weight:600}.BasketBar__count{font-family:var(--font-mono);font-weight:700}.Banner{flex:none;display:flex;gap:var(--space-2);align-items:flex-start;padding:var(--space-3) var(--space-4);font-size:14px;line-height:1.4}.Banner--warning{background:var(--color-warning-soft)}.Banner--danger{background:var(--color-danger-soft)}.Plain{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--space-3);height:100%;padding:var(--space-6) var(--space-5);text-align:center}.Plain__line{font-size:19px;font-weight:600;line-height:1.35;max-width:26ch}.Plain__support{font-size:15px;color:var(--color-ink-2);line-height:1.5;max-width:32ch}.Plain__action{min-height:var(--size-control);display:flex;align-items:center;padding:0 var(--space-5);border-radius:var(--radius-control);background:var(--color-ink);color:var(--color-card);font-size:16px;font-weight:600}.Skel{background:var(--color-card-2);border-radius:var(--radius-pill)}.Skel--row{height:var(--size-row);margin-bottom:var(--space-2);border-radius:var(--radius-card)}.Dish{padding:var(--space-4)}.Dish__name{margin:0 0 var(--space-2);font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.Dish__description{margin:0 0 var(--space-3);font-size:15px;line-height:1.55}.Dish__meta{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.Dish__price{font-family:var(--font-mono);font-size:19px;font-weight:700}.Dish__portion{font-size:14px;color:var(--color-ink-2)}.Question{margin:var(--space-5) 0 0;padding:0 0 var(--space-2);border:0;border-radius:var(--radius-card);background:var(--color-card)}.Question--asking{box-shadow:inset 0 0 0 2px var(--color-warning)}.Question__head{display:block;padding:var(--space-3) var(--space-4) var(--space-2)}.Question__name{display:block;font-size:16px;font-weight:600}.Question__rule{display:block;margin-top:2px;font-size:13px;color:var(--color-ink-2)}.Question__missing{margin:0 var(--space-3) var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);background:var(--color-warning-soft);font-size:14px;line-height:1.4}.Choice{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--size-target-min);padding:var(--space-2) var(--space-4)}.Choice__mark{flex:none;width:22px;height:22px;border-radius:var(--radius-round);box-shadow:inset 0 0 0 2px var(--color-ink-2)}.Choice__mark--many{border-radius:7px}.Choice__mark--on{box-shadow:inset 0 0 0 7px var(--color-ink)}.Choice__label{flex:1;min-width:0;font-size:15px;line-height:1.35}.Choice__extra{flex:none;font-family:var(--font-mono);font-size:14px;color:var(--color-ink-2)}.Quantity{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-5)}.Quantity--tight{margin-top:var(--space-2);gap:var(--space-2)}.Quantity__label{flex:1;font-size:16px;font-weight:600}.Quantity__step{width:var(--size-target-primary);height:var(--size-target-primary);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-control);background:var(--color-card-2);font-size:20px;font-weight:700}.Quantity__value{min-width:26px;font-family:var(--font-mono);font-size:17px;font-weight:700;text-align:center}.Round__list{margin:0;padding:var(--space-3) var(--space-4) 0;list-style:none}.Line{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3);border-radius:var(--radius-card);background:var(--color-card)}.Line__body{flex:1;min-width:0}.Line__name{display:block;font-size:16px;font-weight:600;line-height:1.3}.Line__choices{display:block;margin-top:2px;font-size:14px;color:var(--color-ink-2);line-height:1.4}.Line__gone{display:inline-block;margin-top:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--color-warning-soft);color:var(--color-warning);font-size:12px;font-weight:600}.Line__side{flex:none;display:flex;flex-direction:column;align-items:flex-end}.Line__price{font-family:var(--font-mono);font-size:15px;font-weight:700;white-space:nowrap}.Note{display:block;margin:var(--space-2) var(--space-4) var(--space-5)}.Note__label{display:block;margin-bottom:var(--space-2);font-size:15px;font-weight:600}.Note__field{width:100%;padding:var(--space-3);border:0;border-radius:var(--radius-card);background:var(--color-card);color:var(--color-ink);font:inherit;font-size:15px;line-height:1.45;resize:none}.BasketBar__preview{margin:0 0 var(--space-2);font-size:13px;color:var(--color-ink-2);text-align:center}.Sent{padding:var(--space-6) var(--space-4) var(--space-4);text-align:center}.Sent__label{margin:0;font-size:15px;color:var(--color-ink-2)}.Sent__number{margin:var(--space-1) 0 var(--space-5);font-family:var(--font-mono);font-size:88px;font-weight:700;line-height:1;letter-spacing:-.04em}.Steps{margin:0 auto var(--space-5);padding:0;list-style:none;display:inline-flex;flex-direction:column;gap:var(--space-3);text-align:left}.Step{display:flex;align-items:center;gap:var(--space-3);font-size:16px;color:var(--color-ink-2)}.Step__mark{flex:none;width:14px;height:14px;border-radius:var(--radius-round);box-shadow:inset 0 0 0 2px var(--color-ink-3)}.Step--done{color:var(--color-ink);font-weight:600}.Step--done .Step__mark{background:var(--color-success);box-shadow:none}.Sent__total{margin:0;font-family:var(--font-mono);font-size:20px;font-weight:700}.Sent__totalLabel{display:block;margin-top:var(--space-1);font-family:var(--font-sans);font-size:13px;font-weight:400;color:var(--color-ink-2)}.BasketBar__button--quiet{background:var(--color-card-2);color:var(--color-ink)}.BasketBar__button+.BasketBar__button,.BasketBar__button+.BasketBar__preview{margin-top:var(--space-2)}.RoundCard__list{margin:0;padding:var(--space-3) var(--space-4) var(--space-2);list-style:none}.RoundCard{margin-bottom:var(--space-2);border-radius:var(--radius-card);background:var(--color-card)}.RoundCard--theirs{background:var(--color-card-2);padding:var(--space-3)}.RoundCard__open{display:block;width:100%;min-height:var(--size-target-min);padding:var(--space-3)}.RoundCard__top{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-2)}.RoundCard__number{font-family:var(--font-mono);font-size:20px;font-weight:700}.RoundCard__who{flex:1;min-width:0;font-size:13px;color:var(--color-ink-2)}.RoundCard__total{font-family:var(--font-mono);font-size:15px;font-weight:700;white-space:nowrap}.RoundCard__what{margin:0 0 var(--space-2);font-size:15px;line-height:1.4}.RoundCard__progress{margin:0;font-size:14px;font-weight:600;color:var(--color-ink-2)}.Progress{padding:var(--space-5) var(--space-4) var(--space-4)}.Progress .Steps{display:flex;margin:0 0 var(--space-5)}.Progress__next{margin:0 0 var(--space-5);font-size:17px;font-weight:600}.Progress__lines{margin:0 0 var(--space-4);padding:0;list-style:none}.Progress__note{margin:0 0 var(--space-4);padding:var(--space-3);border-radius:var(--radius-card);background:var(--color-card);font-size:15px;line-height:1.45}.Progress__noteLabel{display:block;margin-bottom:var(--space-1);font-size:13px;font-weight:600;color:var(--color-ink-2)}.Sent__open{display:inline-flex;align-items:center;min-height:var(--size-target-min);margin-top:var(--space-4);padding:0 var(--space-3);font-size:15px;font-weight:600;color:var(--color-accent)}.Step--ended{color:var(--color-ink);font-weight:600}.Step--ended .Step__mark{background:var(--color-ink-2);box-shadow:none}.Sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;justify-content:flex-end}.Sheet__scrim{flex:1;width:100%;background:#00000059}.Sheet__panel{max-width:560px;width:100%;margin:0 auto;padding:var(--space-2) var(--space-3) calc(var(--space-3) + var(--safe-bottom));border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;background:var(--color-card);box-shadow:0 -8px 32px #0000002e}.Sheet__list{margin:0;padding:0;list-style:none}.Sheet__choice{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:var(--size-control);padding:0 var(--space-3);border-radius:var(--radius-control);font-size:17px}.Sheet__choice--on{background:var(--color-card-2);font-weight:600}.Sheet__mark{font-size:17px;font-weight:700}.Sheet__panel{max-height:70vh;overflow-y:auto}.DishRow__inRound{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--color-card-2);color:var(--color-ink-2);font-size:12px;font-weight:600;white-space:nowrap}.BasketBar__quiet{display:block;width:100%;min-height:var(--size-target-min);margin-bottom:var(--space-2);border:0;border-radius:var(--radius-control);background:var(--color-card-2);color:var(--color-ink);font:inherit;font-weight:600}.Portions{margin:0 0 var(--space-4) 0;padding:0;list-style:none;border-radius:var(--radius-card);background:var(--color-card);overflow:hidden}.Portion+.Portion{border-top:1px solid var(--color-line)}.Portion__act{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--size-target-hero);padding:var(--space-2) var(--space-4);border:0;background:none;font:inherit;color:var(--color-ink);text-align:left}.Portion__mark{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border:2px solid var(--color-line);border-radius:var(--radius-round);color:var(--color-card);font-size:15px;line-height:1}.Portion--mine .Portion__mark{border-color:var(--color-success);background:var(--color-success)}.Portion__name{flex:1 1 auto}.Portion__price{font-variant-numeric:tabular-nums;color:var(--color-ink-2)}.Portion--theirs .Portion__act{color:var(--color-ink-3)}.Portion--theirs .Portion__mark{border-style:dashed}.Portion__taken{flex:0 0 auto;font-size:13px;color:var(--color-ink-3)}.SplitTally{padding:var(--space-4) 0 var(--space-5);border-top:1px solid var(--color-line)}.SplitTally__yours{display:flex;justify-content:space-between;align-items:baseline;margin:0;font-size:17px}.SplitTally__yours strong{font-size:21px;font-variant-numeric:tabular-nums}.SplitTally__left{margin:var(--space-2) 0 0;color:var(--color-warning);font-size:14px;font-weight:600}.SplitTally__note{margin:var(--space-3) 0 0;color:var(--color-ink-3);font-size:13px;line-height:1.45}:root{--move: .19s;--move-quick: .13s;--ease-in-place: cubic-bezier(.16, .84, .44, 1)}.Stage{display:contents}.Stage__screen{height:100%;animation:screen-forward var(--move) var(--ease-in-place) both}.Stage__screen--back{animation-name:screen-back}.Stage__screen--first{animation-name:screen-first}@keyframes screen-forward{0%{opacity:0;transform:translate3d(18px,0,0)}}@keyframes screen-back{0%{opacity:0;transform:translate3d(-18px,0,0)}}@keyframes screen-first{0%{opacity:0}}.BasketBar{animation:bar-rises var(--move) var(--ease-in-place) both}@keyframes bar-rises{0%{opacity:0;transform:translate3d(0,100%,0)}}.BasketBar--again{animation:none}.BasketBar--again .BasketBar__count{animation:count-notices var(--move-quick) var(--ease-in-place) 2 alternate}@keyframes count-notices{to{transform:scale(1.18)}}.Landed{display:flex;justify-content:center;padding-bottom:var(--space-2);pointer-events:none}.Landed__word{max-width:100%;color:var(--color-ink-2);font-size:14px;font-weight:600;line-height:1.3;text-align:center;animation:landed var(--move) var(--ease-in-place) both}@keyframes landed{0%{opacity:0;transform:translate3d(0,8px,0)}}.DishRow__out{animation:landed var(--move) var(--ease-in-place) both}.BasketBar__button--sending{animation:sending 1.1s ease-in-out infinite}@keyframes sending{50%{opacity:.62}}.Skel{animation:waiting 1.4s ease-in-out infinite}@keyframes waiting{50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.Stage__screen,.BasketBar,.BasketBar--again .BasketBar__count,.Landed__word,.DishRow__out,.BasketBar__button--sending,.Skel{animation:none}}
