*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.block{display:block}.inline{display:inline}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.border{border-width:1px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color-scheme:light;--font-display:"Bricolage Grotesque",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-sans:"Manrope",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--brand-50:oklch(97% 0.02 152);--brand-100:oklch(93% 0.035 152);--brand-200:oklch(87% 0.05 152);--brand-300:oklch(79% 0.07 152);--brand-400:oklch(70% 0.09 152);--brand-500:oklch(54% 0.115 152);--brand-600:oklch(51% 0.11 152);--brand-700:oklch(42% 0.1 152);--brand-800:oklch(33% 0.08 152);--brand-900:oklch(24% 0.06 152);--success-50:oklch(97% 0.03 138);--success-100:oklch(90% 0.06 138);--success-300:oklch(72% 0.11 138);--success-600:oklch(62% 0.13 138);--success-700:oklch(43% 0.11 138);--error-50:oklch(97% 0.02 35);--error-100:oklch(90% 0.05 35);--error-300:oklch(75% 0.11 35);--error-600:oklch(60% 0.16 35);--error-700:oklch(42% 0.14 35);--neutral-paper:oklch(98.3% 0.006 95);--neutral-50:oklch(97% 0.007 95);--neutral-100:oklch(93% 0.008 95);--neutral-200:oklch(87% 0.01 95);--neutral-300:oklch(78% 0.012 95);--neutral-400:oklch(65% 0.014 90);--neutral-500:oklch(52% 0.015 90);--neutral-600:oklch(40% 0.014 90);--neutral-700:oklch(30% 0.012 90);--neutral-800:oklch(20% 0.01 90);--neutral-900:oklch(15% 0.008 95);--ink:var(--neutral-900);--muted:var(--neutral-500);--line:var(--neutral-200);--paper:var(--neutral-paper);--overlay-dim:rgba(12,16,14,0.72);--panel:#ffffff;--soft-surface:var(--neutral-50);--mint:var(--brand-100);--mint-strong:var(--brand-500);--coral:var(--error-600);--blue:#2f6f9f;--gold:#e3b64b;--card-shadow:0 1px 1px rgba(21,23,22,0.012),0 4px 10px rgba(21,23,22,0.015);--card-shadow-hover:0 1px 1px rgba(21,23,22,0.02),0 6px 14px rgba(21,23,22,0.03);--modal-shadow:0 24px 60px rgba(21,23,22,0.22);--panel-shadow:0 12px 32px rgba(21,23,22,0.12);--soft-shadow:var(--card-shadow);--hover-shadow:var(--card-shadow-hover);--focus-ring-brand:0 0 0 4px oklch(90% 0.06 152/0.55);--focus-ring-error:0 0 0 4px oklch(90% 0.05 35/0.6);--error-text:oklch(50% 0.15 35);--success-text:oklch(35% 0.09 138);--motion:270ms ease;--ease-out:cubic-bezier(0.23,1,0.32,1);--ease-in:cubic-bezier(0.68,0,0.77,0);--ease-in-out:cubic-bezier(0.77,0,0.175,1);--radius-xs:8px;--radius-sm:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px}[data-theme=dark]{color-scheme:dark;--neutral-paper:oklch(20% 0.01 90);--panel:oklch(27% 0.012 90);--ink:oklch(97% 0.007 95);--muted:oklch(65% 0.014 90);--line:oklch(33% 0.012 90);--soft-surface:oklch(24% 0.012 90);--mint-strong:oklch(60% 0.11 152);--coral:oklch(70% 0.13 35)}@keyframes btn-spin{to{transform:rotate(1turn)}}.live-presence{align-items:center;align-self:flex-start;background:var(--success-100);border-radius:var(--radius-lg);color:var(--success-text);display:inline-flex;font-size:.78rem;font-weight:700;gap:7px;max-width:100%;padding:6px 14px;width:-moz-fit-content;width:fit-content}.live-dot{background:var(--success-600);border-radius:var(--radius-pill);flex:0 0 auto;height:7px;width:7px;animation:live-pulse 1.6s ease-in-out infinite}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.35}}.taken-badge{color:var(--coral);font-size:.8rem;font-weight:700}.btn-spinner{display:inline-block;width:14px;height:14px;flex:none;margin-right:8px;vertical-align:-2px;border:2px solid;border-top:2px solid transparent;border-radius:50%;opacity:.9;animation:btn-spin .6s linear infinite}.btn-spinner:only-child{margin-right:0}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,rgba(199,234,215,.8),transparent 28rem),linear-gradient(135deg,var(--paper) 0,var(--neutral-50) 48%,var(--brand-50) 100%);color:var(--ink);font-family:var(--font-sans);font-feature-settings:"cv11","ss01";letter-spacing:-.01em;line-height:1.55;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.qr-scan-title,.section-title,h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.15}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}button,input,select{font:inherit}input[type=password]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}input[type=checkbox],input[type=radio]{accent-color:var(--brand-500);cursor:pointer}input[type=checkbox]{border-radius:var(--radius-xs)}input[type=checkbox]:disabled,input[type=radio]:disabled{cursor:not-allowed}button{cursor:pointer;transition:background-color var(--motion),border-color var(--motion),box-shadow var(--motion),color var(--motion),opacity var(--motion),transform var(--motion)}button:disabled{cursor:not-allowed;opacity:.45}.dropdown-chevron{border-bottom:2px solid;border-right:2px solid;color:var(--muted);display:inline-block;flex:0 0 auto;height:8px;transform:rotate(45deg) translate(-1px,-1px);width:8px}.dropdown-chevron.is-open{transform:rotate(225deg) translate(-1px,-1px)}.app-shell{min-height:100vh}@media (min-width:901px){.app-shell:has(.hero-grid){display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.app-shell:has(.hero-grid) .page-frame{display:flex;flex:1;flex-direction:column;min-height:0}.app-shell:has(.hero-grid) .hero-grid{flex:1;min-height:0}.app-shell:has(.hero-grid) .access-lookup,.app-shell:has(.hero-grid) .intro,.app-shell:has(.hero-grid) .workspace{min-height:0}}.app-shell.has-sticky-paybar{padding-bottom:92px}.diner-sticky-paybar{background:rgba(255,255,255,.96);border-top:1px solid var(--line);bottom:0;box-shadow:0 -8px 24px rgba(21,23,22,.08);left:0;opacity:0;padding:12px 24px;pointer-events:none;position:fixed;right:0;transform:translateY(110%);transition:opacity .24s ease,transform .28s ease;z-index:40}.diner-sticky-paybar.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.diner-sticky-paybar-inner{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:0 auto;max-width:1132px}.diner-sticky-paybar-inner>div{align-items:baseline;display:flex;gap:12px}.diner-sticky-paybar-inner span{color:var(--muted);font-size:.9rem;font-weight:800}.diner-sticky-paybar-inner strong{color:var(--ink);font-size:1.35rem}.diner-sticky-paybar .button{gap:10px;min-width:150px}.scroll-down-cue{align-items:center;background:var(--ink);border:0;border-radius:50%;bottom:104px;box-shadow:0 10px 24px rgba(21,23,22,.2);color:var(--panel);display:flex;height:44px;justify-content:center;opacity:var(--scroll-cue-opacity,1);padding:0;position:fixed;right:20px;transition:background var(--motion),visibility 0s linear;visibility:visible;width:44px;z-index:38}.scroll-down-cue:hover{background:var(--brand-600)}.scroll-down-cue[data-visible=false]{opacity:0;pointer-events:none;transition:opacity .18s ease,background var(--motion),visibility 0s linear .18s;visibility:hidden}.scroll-down-cue-arrow{color:currentColor;margin:0;transform:rotate(90deg)}.diner-help-cue{align-items:center;background:var(--ink);border:0;border-radius:50%;bottom:160px;box-shadow:0 10px 24px rgba(21,23,22,.2);color:var(--panel);display:flex;font-size:1.35rem;font-weight:900;height:44px;justify-content:center;padding:0;position:fixed;right:20px;transition:transform var(--motion),background var(--motion);width:44px;z-index:39}.diner-help-cue:hover{background:var(--brand-600);transform:translateY(-2px)}.page-frame{margin:0 auto;max-width:1180px;padding:24px}.topbar{justify-content:space-between;gap:18px;padding:12px 0 24px}.brand,.topbar{align-items:center;display:flex}.brand{gap:10px;font-size:1.2rem;font-weight:800}.brand-logo{display:block;height:44px;-o-object-fit:contain;object-fit:contain;width:168px}.home-brand-logo{height:106px;width:406px}.diner-splash{align-items:center;background:var(--mint);display:flex;inset:0;justify-content:center;pointer-events:none;position:fixed;z-index:200}.diner-splash.is-ready{animation:diner-splash-exit .63s ease 3.35s forwards}.diner-splash-mark{backface-visibility:hidden;max-width:min(78vw,420px);opacity:0;position:relative;transform:translateY(12px) scale(.94);width:min(78vw,420px);will-change:transform,opacity}.diner-splash.is-ready .diner-splash-mark{animation:diner-splash-enter .72s cubic-bezier(.22,1,.36,1) both}.diner-splash-logo{display:block;height:auto;width:100%}.diner-splash-split{height:33.014%;left:86.617%;overflow:visible;position:absolute;top:42.344%;width:11.002%}.diner-splash-pie,.diner-splash-ring{fill:var(--brand-500);opacity:0}.diner-splash-pie.is-tr,.diner-splash-ring.is-tr{animation-delay:1.65s}.diner-splash-pie.is-br,.diner-splash-ring.is-br{animation-delay:2s}.diner-splash-pie.is-bl,.diner-splash-ring.is-bl{animation-delay:2.35s}.diner-splash-pie.is-tl,.diner-splash-ring.is-tl{animation-delay:2.7s}.diner-splash.is-ready .diner-splash-pie,.diner-splash.is-ready .diner-splash-ring{animation-duration:.35s;animation-fill-mode:forwards;animation-name:diner-splash-fill;animation-timing-function:ease}.diner-splash-split line{stroke:#585c4a;stroke-dasharray:140;stroke-dashoffset:140;stroke-linecap:butt;stroke-width:9}.diner-splash-split line:first-of-type{animation-delay:.9s}.diner-splash-split line:nth-of-type(2){animation-delay:1.25s}.diner-splash.is-ready .diner-splash-split line{animation-duration:.3s;animation-fill-mode:forwards;animation-name:diner-splash-divide;animation-timing-function:ease}@keyframes diner-splash-divide{to{stroke-dashoffset:0}}@keyframes diner-splash-fill{to{opacity:1}}@keyframes diner-splash-enter{0%{opacity:0;transform:translateY(12px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes diner-splash-exit{to{opacity:0;visibility:hidden}}.hero-grid{align-items:stretch;gap:26px;grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr)}.bill-view-grid,.hero-grid{display:grid}.intro{display:flex;flex-direction:column;justify-content:center;min-height:620px}.eyebrow{color:var(--muted);font-size:.84rem;font-weight:900;letter-spacing:0;margin:0 0 12px;text-transform:none}.intro-eyebrow{font-size:1.575rem}h1{font-size:clamp(1.8rem,4.8vw,4.14rem);letter-spacing:0;line-height:1.02;margin:0;max-width:760px}.hero-highlight{color:var(--brand-400);font-weight:inherit}.lede{color:var(--muted);font-size:1.12rem;line-height:1.7;margin:24px 0 0;max-width:620px}.workspace{background:rgba(255,255,255,.86);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--card-shadow);min-height:620px;padding:20px}.bill-workspace{background:rgba(255,255,255,.9);min-height:auto}.choice-workspace{min-height:calc(100vh - 124px)}.workspace:has(>.access-lookup){background:none;border:none;box-shadow:none;display:flex;padding:0}.workspace:has(>.participation-page){background:none;border:none;box-shadow:none;min-height:0;padding:0}.workspace:has(>.invoice-review-page){border:none;padding:12px}.workspace:has(>.mode-selection-page){border:none}.workspace:has(>.bill-content){border:none}.lookup-panel{background:var(--ink);border-radius:var(--radius-lg);color:white;padding:18px}.workspace:has(>.access-lookup)>.lookup-panel{flex:1}.lookup-panel .eyebrow{color:rgba(255,255,255,.74)}.lookup-panel .portal-field-error{align-items:flex-start;color:var(--error-300);display:inline-flex;font-size:12px;gap:8px;line-height:1em;opacity:1;transform:translateY(0);transition:opacity .16s var(--ease-out),transform .16s var(--ease-out);@starting-style{opacity:0;transform:translateY(-4px)}}.lookup-panel .portal-field.has-error input{border-color:var(--error-300);box-shadow:var(--focus-ring-error)}.lookup-panel .portal-field.has-error input:focus{border-color:var(--error-600);box-shadow:var(--focus-ring-error)}@keyframes shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}.lookup-panel .code-submit-button.shake,.lookup-panel .portal-field.shake{animation:shake .35s var(--ease-in-out)}.access-lookup{align-content:center;display:grid;gap:18px;min-height:580px}.access-lookup .section-title{color:var(--brand-400);font-size:1.5rem;margin-bottom:0}.lookup-panel form{align-items:start;display:grid;gap:10px;grid-template-columns:1fr auto;margin-top:16px}.access-lookup form{margin-top:0}.access-lookup form input{font-size:1.1rem;min-height:58px}.access-lookup form .button{min-height:58px;padding:0}.code-submit-button{align-items:center;display:grid;place-items:center;width:58px}.code-submit-button .btn-spinner{margin-right:0}.code-submit-button svg{height:22px;width:22px}.access-divider{align-items:center;color:rgba(255,255,255,.74);display:grid;font-size:1.15rem;font-weight:900;grid-template-columns:1fr auto 1fr;gap:12px;margin:0}.access-divider:after,.access-divider:before{background:rgba(255,255,255,.22);content:"";height:1px}.code-entry-title,.qr-scan-title{color:rgba(255,255,255,.78);font-size:1rem;font-weight:700;margin:0}.qr-scan-button{align-items:flex-start;background:none;border:none;border-radius:var(--radius-lg);color:white;display:flex;flex-direction:column;gap:10px;justify-content:flex-start;margin-top:0;min-height:92px;padding:0;text-align:left;transition:background-color .16s var(--ease-out),transform .14s var(--ease-out);width:100%}.qr-scan-caption{align-items:center;display:flex;gap:10px}.qr-scan-button:hover{background:rgba(255,255,255,.05)}.qr-scan-button:active{background:rgba(255,255,255,.02);transform:scale(.97)}.access-lookup .qr-scan-button{min-height:auto;padding:0}.access-lookup .qr-scan-icon{height:56px;padding:8px;width:56px}.access-lookup .qr-scan-button small{font-size:1.2rem}.qr-scan-button small{color:rgba(255,255,255,.68);font-size:.86rem;font-weight:700}.qr-scan-icon{background:var(--brand-500);border:none;border-radius:var(--radius-xs);color:white;display:grid;flex:0 0 auto;height:56px;padding:8px;place-items:center;width:56px}.qr-scan-icon svg{display:block;height:100%;width:100%}.lookup-panel input,.participant-input,.percent-input,.tip-input{background:white;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);min-height:44px;padding:0 12px;transition:border-color var(--motion),box-shadow var(--motion);width:100%}.lookup-panel input{transition:border-color .2s var(--ease-out),box-shadow .2s var(--ease-out)}.lookup-panel input:hover:not(:focus),.participant-input:hover:not(:focus),.percent-input:hover:not(:focus),.tip-input:hover:not(:focus){border-color:var(--neutral-300)}.lookup-panel input:focus,.participant-input:focus,.percent-input:focus,.tip-input:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring-brand);outline:none}.button{align-items:center;border:0;border-radius:var(--radius-sm);display:inline-flex;font-weight:700;gap:8px;justify-content:center;letter-spacing:.01em;min-height:44px;padding:0 18px;text-decoration:none;transition:background-color .16s var(--ease-out),transform .14s var(--ease-out)}.button:active:not(:disabled){transform:scale(.97)}.button-primary{background:var(--brand-500);color:white}.button-primary:hover:not(:disabled){background:var(--brand-700)}.payment-proceed-button{box-sizing:border-box;flex:0 0 176px;gap:12px;max-width:100%;min-width:176px;padding-inline:24px;width:176px}.ui-arrow:before{background:currentColor;border-radius:999px;content:"";height:2px;left:0;position:absolute;top:7px;width:16px}.ui-arrow:after{border-right:2px solid;border-top:2px solid;content:"";height:7px;position:absolute;right:0;top:4px;transform:rotate(45deg);width:7px}.ui-arrow{display:inline-block;flex:0 0 18px;height:16px;position:relative;vertical-align:-3px;width:18px}.button-dark{background:var(--neutral-900);color:white}.button-dark:hover:not(:disabled){background:var(--neutral-800)}.button-soft{background:var(--brand-100);color:var(--brand-800)}.button-soft:hover:not(:disabled){background:var(--brand-200)}.button-ghost{background:transparent;color:var(--ink)}.button-ghost:hover:not(:disabled){background:var(--neutral-50)}.button-danger{background:transparent;border:1px solid var(--error-300);color:var(--error-text)}.button-danger:hover:not(:disabled){background:var(--error-50)}.bill-header,.payment-ready,.summary-band{border-bottom:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;padding:18px 0}@media (min-width:701px){.bill-workspace .summary-band{justify-content:center}}.payment-ready{background:var(--soft-surface);border-bottom:none;border-radius:var(--radius-lg);flex-wrap:wrap;min-width:0;padding:16px}.payment-total-label{color:var(--ink);font-size:1.12rem;font-weight:900;margin:0 0 4px}.payment-total-amount{color:var(--ink);font-size:clamp(2rem,4vw,3.15rem);font-variant-numeric:tabular-nums;font-weight:950;line-height:1;margin:0}.section-title{font-size:clamp(1.24rem,2vw,1.55rem);font-weight:950;letter-spacing:0;line-height:1.12;margin:0 0 12px}.muted{color:var(--muted)}.bill-items,.people-list,.totals-list{display:grid;gap:10px}.bill-breakdown{border:1px solid var(--line);border-radius:var(--radius-md);gap:0;margin-top:12px}.bill-breakdown,.individual-breakdown{background:var(--neutral-50);display:grid;overflow:hidden}.individual-breakdown{border:none;border-radius:var(--radius-md)}.bill-breakdown-row{align-items:center;display:flex;justify-content:space-between;gap:16px;padding:13px 14px}.invoice-review-breakdown{border:none;margin-top:8px}.equal-payment-breakdown{border:none}.invoice-review-breakdown .bill-breakdown-row{justify-content:space-between;padding:7px 14px}.invoice-review-breakdown .bill-breakdown-total strong,.invoice-review-breakdown .bill-breakdown-total strong span{color:var(--brand-600)}.bill-breakdown-row+.bill-breakdown-row{border-top:1px solid var(--line)}.bill-breakdown-row span{color:var(--muted);font-weight:800}.breakdown-label-stack{display:grid;gap:5px}.breakdown-label-stack span{color:var(--muted);font-weight:800}.breakdown-label-stack small{color:var(--ink);display:grid;gap:3px;font-size:.9rem;font-weight:500;line-height:1.35}.bill-breakdown-row .breakdown-label-stack small span{color:var(--ink);font-weight:400}.item-subtotal-breakdown-row{align-items:stretch;display:grid;gap:10px;grid-template-columns:minmax(0,1fr);justify-content:stretch}.item-breakdown-summary{align-items:center;display:flex;gap:16px;justify-content:space-between}.selected-item-breakdown-list{display:grid;gap:0;width:100%}.selected-item-breakdown-row{align-items:start;display:grid;font-size:.9rem;gap:8px;grid-template-columns:7px minmax(0,1fr) minmax(38px,auto) minmax(82px,auto);line-height:1.35;padding:6px 0}.selected-item-breakdown-row+.selected-item-breakdown-row{border-top:1px solid var(--brand-100)}.selected-item-breakdown-marker{background:var(--brand-500);border-radius:50%;height:5px;margin-top:.48em;width:5px}.bill-breakdown-row .selected-item-breakdown-name,.bill-breakdown-row .selected-item-breakdown-price,.bill-breakdown-row .selected-item-breakdown-quantity{color:var(--ink);font-weight:500}.bill-breakdown-row .selected-item-breakdown-price,.bill-breakdown-row .selected-item-breakdown-quantity{font-variant-numeric:tabular-nums;white-space:nowrap}.bill-breakdown-row .selected-item-breakdown-quantity{color:var(--muted);text-align:center}.bill-breakdown-row .selected-item-breakdown-price{text-align:right}.item-breakdown-empty{color:var(--muted);font-size:.9rem;margin:0}.bill-breakdown-total{background:white}.bill-breakdown-total span,.bill-breakdown-total strong{color:var(--ink);font-size:1.22rem;font-variant-numeric:tabular-nums}.bill-item,.person-row,.total-row{align-items:center;background:var(--soft-surface);border:1px solid var(--line);border-radius:var(--radius-md);display:grid;gap:12px;grid-template-columns:1fr auto;padding:12px;transition:background-color var(--motion),border-color var(--motion),box-shadow var(--motion),transform var(--motion)}.bill-item:hover,.person-row:hover,.total-row:hover{border-color:var(--brand-300);box-shadow:var(--card-shadow-hover);transform:translateY(-1px)}.invoice-review-page .bill-items{gap:0}.invoice-review-page .bill-item{align-items:end;background:none;border:none;border-bottom:1px solid var(--line);border-radius:0;font-size:.88rem;padding:6px 4px}.invoice-review-page .bill-item-name .muted{font-size:.8rem}.invoice-review-page .bill-item:last-child{border-bottom:none}.invoice-review-page .bill-item:hover{box-shadow:none;transform:none}.invoice-review-page .bill-item-name{display:flex;flex-direction:column;gap:2px}.invoice-review-page .bill-item>strong{color:var(--brand-600);justify-self:end}.bill-content{animation:page-enter .39s ease both;display:grid;gap:20px;padding-top:18px}.bill-content>.bill-header{order:-4}.bill-content>.join-card,.bill-content>.mobile-bill-shortcuts{order:-3}.bill-content>.active-mode-bar{order:-2}.bill-content>.mode-separator{margin-block:3.6px;order:-1}.items-selection-title{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.invoice-items-readonly .bill-item:hover{border-color:var(--line);box-shadow:none;transform:none}.mode-selection-page{animation:page-enter .39s ease both;display:grid;gap:22px;padding-top:18px}.mode-selection-page .join-card.mode-join-card{align-items:flex-start;flex-direction:column;gap:10px;text-align:left}.back-button{align-self:flex-start;flex:0 0 auto;justify-content:flex-start;justify-self:start;padding:0 14px 0 10px;width:auto}.mode-back-button{margin-bottom:-12px}.mode-join-card-qr{background:none;border:0;border-radius:var(--radius-sm);cursor:pointer;display:block;flex-shrink:0;line-height:0;padding:0}.mode-join-card-qr:focus-visible{outline:2px solid var(--brand-300);outline-offset:3px}.mode-join-card-row{align-items:center;display:flex;gap:12px}.mode-join-card-code-col{display:grid;gap:6px;justify-items:start}.mode-join-card-code-col .eyebrow{color:rgba(255,255,255,.74);margin:0}.mode-join-card .muted{color:rgba(255,255,255,.68);font-size:.86rem;line-height:1.3;max-width:240px}@media (min-width:701px){.mode-join-card .muted{max-width:none}}.invoice-review-page{animation:page-enter .39s ease both;display:grid;gap:12px}.invoice-review-page .section-title{margin-bottom:6px}.participation-page{animation:page-enter .39s ease both;display:grid;min-height:calc(100vh - 170px);place-items:center}.participation-card{background:white;border-radius:var(--radius-lg);box-shadow:var(--soft-shadow);display:grid;gap:18px;max-width:720px;padding:clamp(22px,4vw,42px);width:100%}.participation-card h1{font-size:clamp(2rem,5vw,4rem)}.participation-card-header{align-items:center;display:flex;gap:10px}.participation-card-header .eyebrow{margin:0}.participation-login{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.participation-login>.button{grid-column:1/-1}.participation-field{display:grid;gap:6px}.participation-field span{color:var(--ink);font-size:.86rem;font-weight:800}.participation-field input{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-size:1rem;min-height:50px;padding:0 16px;width:100%}.participation-field input:hover:not(:focus){border-color:var(--neutral-300)}.participation-field input:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring-brand);outline:none}.participation-login input{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);min-height:42px;padding:0 12px}.signed-account-card{align-items:stretch;background:var(--soft-surface);border:1px solid var(--line);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:12px;padding:16px}.signed-account-card div{display:grid}.participation-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.participation-section{display:grid;gap:10px}.participation-section-title{color:var(--ink);font-size:1rem;font-weight:700;margin:0}.participation-section-caption{color:var(--muted);font-size:.88rem;margin:-4px 0 2px}.participation-section .button:not(.participation-guest-submit){width:100%}.participation-create-account-link{background:none;border:0;cursor:pointer;font-family:inherit;padding:0;color:var(--brand-600);font-size:.88rem;font-weight:700;justify-self:center;text-decoration:none}.participation-create-account-link:hover{text-decoration:underline}.participation-divider{align-items:center;color:var(--muted);display:grid;font-size:1rem;font-weight:900;gap:12px;grid-template-columns:1fr auto 1fr;margin:0}.participation-divider:after,.participation-divider:before{background:var(--line);content:"";height:1px}.participation-guest-form{align-items:start;display:grid;gap:10px;grid-template-columns:1fr auto}.participation-guest-field{display:grid;gap:6px}.participation-guest-field input{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-size:1rem;min-height:44px;padding:0 12px;transition:border-color .2s var(--ease-out),box-shadow .2s var(--ease-out);width:100%}.participation-guest-field input:hover:not(:focus){border-color:var(--neutral-300)}.participation-guest-field input:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring-brand);outline:none}.participation-guest-field.has-error input{border-color:var(--error-300);box-shadow:var(--focus-ring-error)}.participation-guest-field.has-error input:focus{border-color:var(--error-600);box-shadow:var(--focus-ring-error)}.participation-guest-field .portal-field-error{align-items:flex-start;color:var(--error-text);display:inline-flex;font-size:12px;gap:8px;line-height:1em;opacity:1;transform:translateY(0);transition:opacity .16s var(--ease-out),transform .16s var(--ease-out);@starting-style{opacity:0;transform:translateY(-4px)}}.participation-guest-submit{display:grid;min-height:44px;padding:0;place-items:center;width:44px}.participation-guest-submit svg{height:18px;width:18px}.invoice-review-header{align-items:end;border-bottom:1px solid var(--line);display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:4px 0 12px}.invoice-review-header .eyebrow,.invoice-review-header .lede{margin:0}.invoice-review-header .lede{line-height:1.35}.invoice-review-header-top{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:4px}.invoice-review-header h1{font-size:clamp(1.9rem,5vw,3.8rem);margin:8px 0 12px}.review-actions{align-items:center;display:flex;gap:12px;justify-content:flex-end;padding-bottom:6px}.choice-workspace .mode-selection-page{align-content:start;padding-top:0}.choice-workspace{margin-inline:auto;max-width:784px}.choice-workspace .join-card{gap:16px;padding:16px}.choice-workspace .join-qr{height:112px;width:112px}.choice-workspace .join-code{font-size:clamp(1.9rem,4vw,3.15rem);padding:10px 16px}.bill-workspace .bill-content{grid-template-columns:minmax(0,1fr) minmax(320px,.78fr)}.bill-workspace .active-mode-bar,.bill-workspace .bill-header,.bill-workspace .join-card,.bill-workspace .live-presence,.bill-workspace .mode-separator,.bill-workspace .payment-overview,.bill-workspace .payment-ready,.bill-workspace .summary-band{grid-column:1/-1}.join-card{align-items:center;background:var(--ink);border:none;border-radius:var(--radius-lg);box-shadow:var(--card-shadow);display:flex;gap:22px;justify-content:flex-start;padding:22px;text-align:left}.join-copy{display:grid;gap:8px;justify-items:start;max-width:440px;text-align:left}.bill-content>.join-card{justify-content:center}.join-copy .eyebrow{color:rgba(255,255,255,.74);margin:0}.join-copy .muted{color:rgba(255,255,255,.68);font-size:.86rem;line-height:1.3}.join-code{border:none;border-radius:var(--radius-md);color:var(--ink);display:inline-flex;font-size:clamp(2.2rem,4.4vw,3.15rem);font-variant-numeric:tabular-nums;font-weight:900;justify-content:center;letter-spacing:0;line-height:1;padding:14px 20px}.join-code,.join-qr{background:white;box-shadow:var(--card-shadow)}.join-qr{border:8px solid white;border-radius:var(--radius-xs);display:block;flex:0 0 auto;height:150px;-o-object-fit:contain;object-fit:contain;padding:7px;width:150px}.join-qr-placeholder{background:var(--brand-50)}.bill-workspace .bill-items{align-content:start}.bill-content>section,.invoice-review-page>section,.mode-selection-page>section{animation:page-enter .42s ease both}.bill-content>section:nth-child(2),.invoice-review-page>section:nth-child(2),.mode-selection-page>section:nth-child(2){animation-delay:52ms}.bill-content>section:nth-child(3),.invoice-review-page>section:nth-child(3){animation-delay:105ms}.mode-selection-hero{align-items:center;display:grid;gap:20px;justify-items:center;padding:14px 10px 24px;text-align:center}.mode-selection-hero .back-button{justify-self:start}.mode-selection-hero .eyebrow,.mode-selection-hero .lede{margin:0}.mode-selection-hero h1{font-size:clamp(2.25rem,5vw,4.15rem);max-width:920px}.leader-name{color:var(--mint-strong)}.animated-ellipsis{display:inline-block;min-width:1.05em;text-align:left}.mode-selection-buttons{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(260px,1fr));max-width:900px;width:100%}.mode-big-button{align-items:center;background:var(--soft-surface);border:none;border-radius:var(--radius-lg);color:var(--ink);display:flex;gap:16px;justify-content:flex-start;min-height:210px;padding:26px;text-align:left;transition:box-shadow var(--motion),transform var(--motion)}.mode-big-button-copy{display:grid;gap:2px}.mode-big-button:active,.mode-big-button:hover{box-shadow:var(--hover-shadow);transform:translateY(-3px)}.mode-big-button strong{font-size:1.5rem}.mode-big-button small{color:var(--muted);font-size:1rem;font-weight:700;line-height:1.45;max-width:260px}.mode-icon{align-items:center;background:var(--ink);border-radius:var(--radius-xs);display:grid;flex-shrink:0;height:82px;justify-items:center;padding:15px;width:82px}.mode-icon-items{gap:7px}.mode-icon-items span{background:white;border-radius:var(--radius-pill);height:8px;position:relative;width:42px}.mode-icon-items span:before{background:var(--mint);border-radius:var(--radius-pill);content:"";height:8px;left:-13px;position:absolute;top:0;width:8px}.mode-icon-equal{gap:7px;grid-template-columns:repeat(2,1fr)}.mode-big-button-wide{grid-column:1/-1;justify-self:center;max-width:441px;width:100%}.mode-icon-amount span{align-items:center;background:var(--mint);border-radius:50%;color:var(--ink);display:flex;font-size:30px;font-weight:900;height:46px;justify-content:center;line-height:1;width:46px}.mode-icon-amount span:before{content:"$"}.mode-icon-equal span{background:var(--mint);border-radius:6px;height:22px;width:22px}.active-mode-bar{align-items:flex-start;background:var(--soft-surface);border:none;border-radius:var(--radius-lg);box-shadow:var(--card-shadow);display:flex;flex-direction:column;gap:6px;padding:16px}.active-mode-bar>.mode-locked{align-self:flex-start}.active-mode-bar-top>.button,.active-mode-bar>.button{align-self:flex-start;font-size:.82rem;gap:4px;margin:-4px 0 0 -8px;min-height:0;padding:4px 8px}.active-mode-bar>div{align-items:baseline;display:flex;gap:8px}.mode-separator{border:0;border-top:1px solid var(--line);margin:0;width:100%}.active-mode-bar .eyebrow,.active-mode-bar .section-title{margin:0;white-space:nowrap}.active-mode-bar .section-title{font-size:.95rem}.account-total-card{align-items:center;background:var(--soft-surface);border:none;border-radius:var(--radius-lg);display:flex;gap:8px;justify-content:space-between;min-width:230px;padding:14px 18px}.account-total-card span{color:var(--muted);font-size:.85rem;font-weight:800}.account-total-card strong{color:var(--ink);font-size:1.35rem;font-variant-numeric:tabular-nums}.equal-panel-header{align-items:start;display:flex;gap:16px;justify-content:space-between}.equal-panel-header .eyebrow,.equal-panel-header .section-title{margin:0}.leader-card{align-items:stretch;background:var(--soft-surface);border:1px solid var(--line);border-radius:var(--radius-lg);display:grid;gap:16px;grid-template-columns:minmax(0,.82fr) minmax(360px,1fr);padding:18px}.mode-choice-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.mode-card{background:white;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);display:grid;gap:8px;min-height:120px;padding:18px;text-align:left}.mode-card strong{font-size:1.08rem}.mode-card span{color:var(--muted);line-height:1.45}.mode-card[data-active=true]{background:var(--ink);border-color:var(--ink);color:white}.mode-card[data-active=true] span{color:rgba(255,255,255,.78)}.selectable-bill-item[data-active=true]{background:var(--brand-100);border-color:var(--brand-300)}.items-selection-list{gap:0}.items-selection-list .bill-item{background:none;border:none;border-bottom:1px solid var(--line);border-radius:0;gap:6px;padding:10px 4px}.items-selection-list .item-take-controls,.items-selection-list .item-title-row,.items-selection-list .item-total-column{gap:6px}.items-selection-list .chip{background:var(--brand-100);border:none;color:var(--brand-800);font-size:.82rem;font-weight:700}.items-selection-list .chip:hover{background:var(--brand-200);border-color:transparent}.items-selection-list .chip[data-active=true]{background:var(--brand-500);color:white}.items-selection-list .chip[data-active=true]:hover{background:var(--brand-600)}.items-selection-list .quantity-picker{color:var(--brand-800);font-size:.8rem;font-weight:700;transform-origin:right center}.items-selection-list .quantity-picker-motion{max-height:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateY(-4px) scale(.98);transition:max-height .22s var(--ease-out),opacity .18s ease,transform .22s var(--ease-out)}.items-selection-list .quantity-picker-motion[data-visible=true]{max-height:36px;opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.items-selection-list .quantity-stepper{background:var(--brand-50);border-color:var(--brand-200);grid-template-columns:repeat(3,30px);height:32px;min-height:32px}.items-selection-list .quantity-stepper button{background:transparent;color:var(--brand-700);font-size:1rem;height:100%}.items-selection-list .quantity-stepper button:hover:not(:disabled){background:var(--brand-100)}.items-selection-list .quantity-stepper strong,.items-selection-list .quantity-stepper-input{background:white;border-color:var(--brand-200);color:var(--brand-800);font-size:.9rem;height:100%}@media (max-width:700px){.items-selection-list .bill-item{align-items:end;grid-template-columns:minmax(0,1fr) auto}.items-selection-list .item-total-column{display:contents}.items-selection-list .item-take-controls{grid-column:1/-1;justify-content:flex-start;margin-top:4px;width:100%}}.items-selection-list .bill-item:last-child{border-bottom:none}.items-selection-list .bill-item:hover{box-shadow:none;transform:none}.items-selection-list .selectable-bill-item[data-active=true]{background:var(--brand-50);border-radius:var(--radius-sm)}.item-total-column{align-items:end;display:grid;gap:8px;justify-items:end}.item-take-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.item-take-controls .quantity-picker{flex-basis:100%;justify-content:flex-end}.quantity-picker{align-items:center;color:var(--muted);display:flex;font-size:.88rem;font-weight:800;gap:8px}.quantity-stepper{background:white;border:1px solid var(--line);border-radius:var(--radius-sm);display:inline-grid;grid-template-columns:repeat(3,40px);min-height:40px;overflow:hidden;text-align:center;width:-moz-max-content;width:max-content}.quantity-stepper,.quantity-stepper button{align-items:center;color:var(--ink);font-weight:900}.quantity-stepper button{background:var(--neutral-50);border:0;display:flex;font-size:1.15rem;height:40px;justify-content:center;line-height:1;padding:0;transition:background-color .17s ease,color .17s ease,transform .17s var(--ease-out);width:100%}.quantity-stepper button:hover:not(:disabled){background:var(--neutral-100)}.quantity-stepper button:active:not(:disabled){background:var(--brand-100);transform:scale(.92);transition-duration:70ms}.quantity-stepper button:disabled{color:var(--neutral-300);opacity:.6}.quantity-stepper strong,.quantity-stepper-input{align-items:center;background:white;border-left:1px solid var(--line);border-right:1px solid var(--line);border-bottom:0;border-top:0;border-radius:0;color:var(--ink);display:flex;font-family:inherit;font-size:1rem;font-weight:900;height:40px;justify-content:center;min-width:0;padding:0;text-align:center;width:100%}.quantity-stepper strong{pointer-events:none}.quantity-stepper-input:focus{box-shadow:inset 0 0 0 2px rgba(47,143,91,.28);outline:0}.share-modal .quantity-stepper{background:var(--brand-50);border:1px solid var(--brand-200);flex:0 0 auto;grid-template-columns:repeat(3,34px);height:34px;min-height:34px;width:102px}.share-modal .quantity-stepper button,.share-modal .quantity-stepper strong,.share-modal .quantity-stepper-input{height:34px;min-width:34px;width:34px}.share-modal .quantity-stepper button{background:transparent;color:var(--brand-700)}.share-modal .quantity-stepper button:hover:not(:disabled){background:var(--brand-100)}.share-modal .quantity-stepper strong,.share-modal .quantity-stepper-input{background:white;border-bottom:0;border-left:1px solid var(--brand-200);border-right:1px solid var(--brand-200);border-top:0;color:var(--brand-800)}.quantity-stepper-symbol{height:14px;position:relative;display:block;width:14px}.quantity-stepper-symbol:after,.quantity-stepper-symbol:before{background:currentColor;border-radius:999px;content:"";left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.quantity-stepper-symbol:before{height:2px;width:14px}.quantity-stepper-symbol.is-plus:after{height:14px;width:2px}.portal-stepper button:hover:not(:disabled) .quantity-stepper-symbol,.quantity-stepper button:hover:not(:disabled) .quantity-stepper-symbol{color:var(--brand-800)}.empty-mode,.mode-panel{background:white;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--soft-shadow);display:grid;gap:12px;padding:16px}.empty-mode .eyebrow,.mode-panel .eyebrow{margin:0}.amount-mode-desktop-heading,.item-review-desktop-copy{display:grid;gap:12px}.item-review-mobile-title,.mobile-bill-shortcuts{display:none}.bill-invoice-preview{display:contents}.amount-roster-title-mobile,.amount-submit-mobile,.compact-flow-divider,.compact-flow-intro,.compact-review-heading{display:none}.equal-controls{display:grid;gap:12px;grid-template-columns:1fr}.equal-control-field,.equal-controls label{color:var(--muted);display:grid;font-weight:800;gap:8px}.equal-control-field.is-readonly .quantity-stepper{opacity:.58}.equal-controls>.equal-control-field:first-of-type{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.equal-control-title{display:block!important;letter-spacing:0;white-space:normal}.equal-control-title .equal-control-title-label{display:block}.equal-control-title .equal-control-context{display:block;margin-top:3px}.equal-control-title .equal-control-leader{display:inline}.equal-control-context{font-size:.82rem}.equal-control-title .equal-control-leader{color:var(--mint-strong)}.equal-control-field span,.equal-controls label span{display:grid;gap:3px}.equal-control-field small,.equal-controls label small{color:var(--muted);font-size:.82rem;font-weight:700}.equal-formula{color:var(--muted);font-size:.95rem;font-weight:800;margin:0}.equal-presence{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:4px 0}.equal-roster{background:var(--soft-surface);border:none;border-radius:var(--radius-md);color:var(--ink);display:flex;flex-direction:column;font-size:.9rem;font-weight:800;overflow:hidden;padding:4px 14px}.equal-roster-row{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:10px 0}.equal-roster-row:last-child{border-bottom:none}.equal-roster-row span{color:var(--muted);font-weight:700}.split-controls,.tip-controls{display:grid;gap:12px}.segmented{background:var(--neutral-50);border-radius:var(--radius-sm);display:grid;gap:2px;grid-template-columns:repeat(3,1fr);padding:3px}.segment{background:transparent;border:0;border-radius:var(--radius-xs);color:var(--muted);font-weight:600;min-height:42px;transition:background-color var(--motion),box-shadow var(--motion),color var(--motion)}.segment[data-active=true]{background:white;box-shadow:0 1px 2px rgba(0,0,0,.06);color:var(--ink);font-weight:700}.tip-mode .segment[data-active=true]{background:var(--brand-500);box-shadow:0 1px 2px rgba(0,0,0,.06);color:var(--panel)}.segment:hover{background:var(--neutral-100);color:var(--ink)}.segment[data-active=true]:hover{background:white}.tip-mode .segment[data-active=true]:hover{background:var(--brand-600)}.item-assignment{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:12px;grid-template-columns:1fr auto;padding:12px 0}.chip-group{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.chip{background:white;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);min-height:36px;padding:0 12px;transition:background-color var(--motion),border-color var(--motion),color var(--motion),transform .14s var(--ease-out)}.chip:active:not(:disabled){transform:scale(.97)}.chip:hover{border-color:var(--neutral-300)}.chip[data-active=true]{background:var(--brand-100);border-color:var(--brand-100);color:var(--brand-800);font-weight:700}.participants-form{display:grid;gap:10px;grid-template-columns:1fr auto}.person-row{grid-template-columns:1fr auto auto}.icon-button{align-items:center;background:var(--soft-surface);border:none;border-radius:var(--radius-pill);color:var(--muted);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:32px;justify-content:center;padding:0;position:relative;width:32px}.icon-button:after,.icon-button:before{background:currentColor;border-radius:999px;content:"";height:2px;left:50%;position:absolute;top:50%;width:13px}.icon-button:before{transform:translate(-50%,-50%) rotate(45deg)}.icon-button:after{transform:translate(-50%,-50%) rotate(-45deg)}.icon-button:hover{box-shadow:0 8px 20px rgba(34,44,39,.12);transform:translateY(-1px)}.tip-mode{display:grid;gap:8px;grid-template-columns:repeat(6,1fr)}.service-checkbox{align-items:center;background:white;border:none;border-radius:var(--radius-md);display:grid;gap:12px;grid-template-columns:1fr auto;padding:14px;transition:transform var(--motion)}.service-checkbox:hover{transform:translateY(-1px)}.service-copy{display:grid;gap:4px}.service-amount{color:var(--brand-600);font-size:.92rem}.service-toggle{align-items:center;background:var(--neutral-200);border:none;border-radius:var(--radius-pill);cursor:pointer;display:flex;flex:none;height:26px;padding:3px;transition:background-color .2s cubic-bezier(.33,1,.68,1);width:44px}.service-toggle.is-on{background:var(--brand-500)}.service-toggle-thumb{background:var(--panel);border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.25);height:20px;transition:transform .2s cubic-bezier(.33,1,.68,1);width:20px}.service-toggle.is-on .service-toggle-thumb{transform:translateX(18px)}.bill-closed-banner{background:rgba(227,182,75,.16);border-radius:var(--radius-sm);color:#8a6d1f;font-weight:700;margin:0;padding:12px 16px}.service-checkbox span{display:grid;font-weight:900;gap:4px;line-height:1.25}.service-checkbox small{color:var(--muted);font-size:.88rem;font-weight:700;line-height:1.3}.additional-tip-block{background:var(--soft-surface);border:none;border-radius:var(--radius-md);display:grid;gap:12px;padding:14px}.additional-tip-block .eyebrow,.additional-tip-block h3{margin:0}.additional-tip-block h3{font-size:clamp(1.14rem,1.8vw,1.36rem);font-weight:950;line-height:1.18}.tip-equivalent{align-items:center;background:white;border:none;border-radius:var(--radius-sm);display:flex;justify-content:flex-start;margin:0;padding:8px 12px}.tip-equivalent strong{color:var(--ink);font-size:1rem;font-variant-numeric:tabular-nums;font-weight:900}.tip-validation-error{color:var(--error-text);font-size:.88rem;font-weight:700;margin:0}.reconnect-overlay{align-items:center;background:rgba(15,23,19,.42);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1900}.reconnect-card{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 48px rgba(15,23,19,.18);display:flex;gap:16px;max-width:420px;padding:20px;width:100%}.reconnect-card p{color:var(--muted);margin:4px 0 0}.custom-tip-input{color:var(--muted);display:grid;font-weight:800;gap:8px}.currency-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.custom-tip-input .currency-row{flex-wrap:nowrap}.custom-tip-input .currency-row>.tip-input{flex:0 1 90px;min-width:0;width:auto}.custom-tip-input .currency-row>.tip-equivalent{flex:1;min-width:0}.tip-percent-ref{color:var(--ink);font-size:.9rem;font-weight:800}.currency-input{align-items:center;background:white;border:1px solid var(--line);border-radius:var(--radius-sm);display:inline-grid;grid-template-columns:minmax(96px,150px) auto;overflow:hidden;transition:border-color var(--motion),box-shadow var(--motion);width:-moz-max-content;width:max-content;max-width:100%}.currency-input:hover:not(:focus-within){border-color:var(--neutral-300)}.currency-input:focus-within{border-color:var(--brand-500);box-shadow:var(--focus-ring-brand)}.currency-input .tip-input{border:0;box-shadow:none}.currency-input .tip-input:focus{box-shadow:none}.currency-input>span{color:var(--muted);font-size:.9rem;font-weight:950;padding:0 12px 0 4px}.invoice-review-total{align-items:flex-end;display:flex;flex-direction:column;gap:10px}.invoice-review-logo{border-radius:10px;flex:0 0 auto;height:52px;max-width:140px;-o-object-fit:contain;object-fit:contain;width:auto}.number-card{background:var(--neutral-50);border:none;border-radius:var(--radius-md);padding:14px}.number-card.value-per-part-card{padding-left:0;padding-right:0}.number-card strong{display:block;font-size:1.4rem;font-variant-numeric:tabular-nums;margin-top:4px}.total-result-card{background:var(--mint);border:none}.total-result-card .muted{color:var(--ink)}.total-result-card strong{color:var(--mint-strong)}.summary-operator{background:var(--ink);border-radius:var(--radius-pill);height:30px;justify-self:center;margin-left:-21px;margin-right:-21px;position:relative;width:30px;z-index:2}.summary-operator:after,.summary-operator:before{background:var(--panel);border-radius:999px;content:"";height:2px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:12px}.summary-operator-plus:after{transform:translate(-50%,-50%) rotate(90deg)}.summary-operator-equals:before{transform:translate(-50%,calc(-50% - 3px))}.summary-operator-equals:after{transform:translate(-50%,calc(-50% + 3px))}.summary-grid{align-items:center;display:grid;gap:0;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr) 30px minmax(0,1fr) 30px minmax(0,1fr) 30px minmax(0,1fr)}.final-summary-title{grid-column:1/-1;margin:0 0 -8px}.status-line{color:var(--success-text);font-weight:800;margin:12px 0 0}.payment-overview{align-items:stretch;display:flex;gap:28px;min-width:0}.payment-summary-column{box-sizing:border-box;flex:1 1 100%;min-width:0;width:100%}.error-line{color:var(--error-text);font-weight:700;margin:12px 0 0}.scanner-backdrop{align-items:center;display:flex;inset:0;justify-content:center;padding:18px;position:fixed;transform:translateZ(0);z-index:50}.scanner-modal{background:white;border-radius:var(--radius-lg);box-shadow:var(--modal-shadow);display:grid;gap:16px;max-width:520px;padding:18px;width:min(100%,520px)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:1ms!important;scroll-behavior:auto!important;transition-duration:1ms!important}.diner-splash{animation-delay:.9s!important}.diner-splash-pie,.diner-splash-ring,.diner-splash-split line{animation-delay:0s!important}}.scanner-header{align-items:start;display:flex;justify-content:space-between;gap:16px}.scanner-view{aspect-ratio:1/1;background:var(--ink);border-radius:var(--radius-md);overflow:hidden;position:relative}.scanner-video{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.scanner-frame{border:3px solid var(--mint);border-radius:var(--radius-xs);box-shadow:0 0 0 999px rgba(0,0,0,.24);height:58%;left:21%;position:absolute;top:21%;width:58%}.scanner-message{color:var(--muted);font-weight:700;margin:0}@media (max-width:900px){.page-frame{padding:18px}.bill-workspace .bill-content,.equal-controls,.hero-grid,.invoice-review-header,.leader-card,.mode-choice-grid,.mode-selection-buttons,.participation-login{grid-template-columns:1fr}.intro{padding:22px 0}.intro,.workspace{min-height:auto}.segmented,.summary-grid{grid-template-columns:1fr}.tip-mode{grid-template-columns:repeat(3,1fr)}.payment-overview{display:grid;grid-template-columns:1fr}.payment-summary-column{flex-basis:auto;grid-column:auto;max-width:none;width:auto}.summary-operator{justify-self:start;margin:-15px 0 -15px 20px}}@media (max-width:560px){.diner-sticky-paybar{padding:8px 12px}.diner-sticky-paybar-inner{gap:10px}.diner-sticky-paybar-inner>div{display:flex;flex-direction:column;gap:1px}.diner-sticky-paybar-inner strong{font-size:1.15rem}.diner-sticky-paybar .button{min-width:118px;min-height:40px;padding-left:14px;padding-right:14px}.app-shell.has-sticky-paybar{padding-bottom:78px}.scroll-down-cue{bottom:86px}.diner-help-cue,.scroll-down-cue{height:40px;right:14px;width:40px}.diner-help-cue{bottom:138px}.bill-header,.equal-panel-header,.item-assignment,.lookup-panel form,.participants-form,.payment-ready,.person-row,.summary-band{grid-template-columns:1fr}.bill-header,.equal-panel-header,.payment-ready,.review-actions,.summary-band{display:grid}.participation-actions,.signed-account-card{align-items:stretch;display:grid;gap:10px;grid-template-columns:1fr;justify-items:stretch}.participation-card .button:not(.back-button):not(.participation-guest-submit){align-self:stretch;width:100%}.chip-group{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.diner-sticky-paybar{transition:none}}.account-link{align-items:center;background:var(--brand-500);border:0;border-radius:var(--radius-sm);color:white;display:inline-flex;font-size:.85rem;font-weight:700;gap:8px;padding:8px 14px;text-decoration:none;transition:background-color var(--motion),box-shadow var(--motion),transform .14s var(--ease-out)}.account-link:active{transform:scale(.97)}.account-link-icon{color:currentColor;flex-shrink:0}.account-link-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-link:hover{background:var(--brand-600)}.account-link:focus-visible{box-shadow:var(--focus-ring-brand);outline:none}.customer-auth-sheet{gap:14px;max-width:520px}.customer-auth-copy{display:grid;gap:6px}.customer-auth-copy h3{font-size:clamp(1.45rem,4vw,1.8rem);line-height:1.1;margin:0}.customer-auth-copy p{color:var(--muted);font-size:.9rem;line-height:1.5;margin:0}.customer-auth-form{display:grid;gap:12px}.customer-auth-form label{display:grid;gap:6px}.customer-auth-form label>span{color:var(--ink);font-size:.86rem;font-weight:800}.customer-auth-form input{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-size:1rem;min-height:44px;padding:0 12px;width:100%}.customer-auth-form input:focus{border-color:var(--brand-500);box-shadow:var(--focus-ring-brand);outline:none}.customer-auth-form .button{min-height:44px;width:100%}.customer-auth-switch{border-color:transparent}.social-sign-in{display:grid;gap:10px;justify-items:center}.social-sign-in.is-busy{opacity:.6;pointer-events:none}.social-sign-in-google{min-height:40px}.social-sign-in-apple,.social-sign-in-google{display:flex;justify-content:center;width:100%}.social-sign-in-apple{align-items:center;background:#ffffff;border:1px solid #dadce0;border-radius:4px;color:#000000;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;gap:8px;height:40px;max-width:400px}.social-sign-in-apple:hover{background:#f8f9fa}.social-sign-in-apple:focus-visible{box-shadow:var(--focus-ring-brand);outline:none}.social-sign-in-status{font-size:.86rem;margin:0}.customer-auth-divider,.social-sign-in-status{align-items:center;color:var(--muted);display:flex}.customer-auth-divider{font-size:.82rem;gap:12px;margin-top:4px;width:100%}.customer-auth-divider:after,.customer-auth-divider:before{background:var(--line);content:"";flex:1;height:1px}@media (max-width:700px){.customer-auth-sheet{max-height:calc(100dvh - 24px);max-width:none;overflow-y:auto;scroll-padding-block:20dvh}.customer-auth-sheet :is(input,textarea,select){scroll-margin-block:20dvh}}.balance-option{align-items:center;background:var(--soft-surface);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:12px;margin-top:12px;padding:12px 14px}.balance-option input{height:20px;width:20px;accent-color:var(--mint-strong)}.balance-option span{display:flex;flex-direction:column;font-weight:800}.balance-option small{color:var(--muted);font-weight:600}.guest-account-hint{align-items:center;background:var(--soft-surface);border:1px solid var(--line);border-radius:var(--radius-md);display:flex;gap:14px;justify-content:space-between;margin-top:18px;padding:12px}.guest-account-hint div{display:grid;gap:2px}.guest-account-hint strong{color:var(--ink);font-size:.95rem}.guest-account-hint span{color:var(--muted);font-size:.9rem}.shared-badge{align-items:center;background:var(--brand-100);border-radius:var(--radius-pill);color:var(--brand-800);display:inline-flex;font-size:.82rem;font-weight:700;gap:4px;padding:4px 10px}.share-overlay{align-items:center;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;transform:translateZ(0);z-index:60}.scanner-backdrop:before,.share-overlay:before,.tutorial-overlay:before{background:var(--overlay-dim);content:"";inset:0;position:absolute;z-index:0}.scanner-modal,.share-modal,.tutorial-modal{position:relative;z-index:1}.scanner-backdrop.is-closing,.share-overlay.is-closing,.tutorial-overlay.is-closing{animation:overlay-leave .22s var(--ease-in) both}@media (min-width:701px){.scanner-backdrop>.scanner-modal,.share-overlay>.share-modal{animation:page-enter .2s ease both}.scanner-backdrop.is-closing>.scanner-modal,.share-overlay.is-closing>.share-modal{animation:modal-leave .22s var(--ease-in) both}}.share-modal{background:var(--panel);border-radius:var(--radius-lg);box-shadow:var(--modal-shadow);display:flex;flex-direction:column;gap:10px;max-width:420px;padding:24px;width:100%}.share-modal:not(.mobile-bill-dialog){max-width:380px;padding:18px}.share-modal-head{align-items:center;display:flex;justify-content:space-between}.share-modal-head h2{font-size:1.15rem;margin:0;min-width:0;overflow-wrap:anywhere}.share-modal:not(.mobile-bill-dialog) .share-modal-head h2{font-size:1.02rem}.share-close{background:var(--soft-surface);border:none;border-radius:var(--radius-pill);color:var(--muted);cursor:pointer;flex-shrink:0;font-size:0;height:32px;padding:0;position:relative;width:32px}.share-close:after,.share-close:before{background:currentColor;border-radius:999px;content:"";height:2px;left:50%;position:absolute;top:50%;width:13px}.share-close:before{transform:translate(-50%,-50%) rotate(45deg)}.share-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.share-occurrences{display:flex;flex-direction:column;gap:8px;margin-top:8px}.share-occurrence-leader{color:var(--mint-strong);font-weight:800}.share-leader-badge{align-self:flex-start;background:var(--brand-100);border-radius:999px;color:var(--brand-800);font-size:.78rem;font-weight:700;margin-top:4px;padding:4px 12px;width:-moz-fit-content;width:fit-content}.share-occurrences{gap:0}.occurrence-row{align-items:flex-start;background:none;border:none;border-bottom:1px solid var(--line);border-radius:0;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:10px 4px;text-align:left;transition:background var(--motion)}.occurrence-row:last-child{border-bottom:none}.occurrence-row:hover:not(:disabled){background:var(--mint)}.occurrence-row:disabled{cursor:not-allowed;opacity:.55}.occurrence-row.has-join-action{align-items:center;cursor:default;flex-direction:row;gap:12px;justify-content:space-between}.occurrence-row-copy{display:grid;gap:2px;min-width:0}.occurrence-row-copy small{overflow-wrap:anywhere}.occurrence-join-action{background:var(--mint-strong);border:0;border-radius:var(--radius-sm);color:white;cursor:pointer;flex-shrink:0;font-size:.86rem;font-weight:900;padding:9px 14px}.occurrence-row.has-join-action:hover{background:var(--soft-surface)}.occurrence-row.has-join-action:hover:not(:disabled) .occurrence-join-action{background:var(--brand-600)}.item-title-row{flex-wrap:wrap;gap:8px}.item-title-row,.status-dots{align-items:center;display:flex}.status-dots{flex:0 1 auto;flex-wrap:wrap;gap:4px;max-width:100%;min-width:0}@media (min-width:901px){.bill-item{grid-template-columns:minmax(0,1fr) 280px}.item-title-row>strong,.item-total-column{min-width:0}}.bill-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.bill-merchant-logo{border-radius:10px;flex-shrink:0;height:112px;max-width:240px;-o-object-fit:contain;object-fit:contain;width:auto}.equal-parts-status{align-items:center;display:flex;flex-direction:row;gap:12px}.equal-parts-stats{display:flex;flex-direction:column;gap:4px}.equal-parts-tracking{display:grid;gap:12px;justify-items:center;margin-top:4px;min-width:0}.equal-parts-tracking .equal-roster{justify-content:center;width:100%}.items-status-summary{display:flex;flex-direction:column;gap:2px;margin-top:12px}.items-status-total{font-weight:700}.status-dot{display:inline-block;height:1em;width:1em}.status-dot-wrap{border-radius:50%;display:inline-flex;position:relative}.status-dot-wrap.is-hovered{box-shadow:0 0 0 2px #4f46e5}.status-dot-motion{animation:status-dot-settle .22s var(--ease-out) both;display:inline-flex;transform-origin:center}.status-dot-wrap svg{display:block}.status-dot-wrap svg circle,.status-dot-wrap svg path{transition:fill .28s var(--ease-out),stroke .28s var(--ease-out),opacity .28s var(--ease-out)}@keyframes status-dot-settle{0%{opacity:.58;transform:scale(.84)}to{opacity:1;transform:scale(1)}}.status-bubble{background:var(--ink);border-radius:8px;bottom:calc(100% + 6px);color:var(--panel);font-size:.72rem;font-weight:600;left:50%;line-height:1.2;max-width:min(280px,calc(100vw - 24px));overflow-wrap:anywhere;padding:5px 9px;pointer-events:none;position:absolute;text-align:left;transform:translateX(-50%);white-space:normal;width:-moz-max-content;width:max-content;z-index:20}.status-bubble.is-below{bottom:auto;top:calc(100% + 6px)}.share-field{align-items:center;border-top:none;display:flex;gap:12px;justify-content:space-between;padding:6px 0}.share-field span{color:var(--ink);font-weight:600}.share-field .share-parts-title{display:block}.share-field .share-parts-context{display:block;margin-top:3px}.share-field .share-parts-leader{display:inline}.share-parts-context{font-size:.78rem}.share-field .share-parts-leader{color:var(--mint-strong);font-weight:800}.share-modal .quantity-stepper.is-readonly{opacity:.58}.share-item-meta{display:grid;gap:2px;margin:0}.share-calculation{color:var(--muted);display:grid;font-size:.88rem;font-weight:700;gap:3px}.share-calculation small{color:var(--muted);font-size:.8rem}.share-result{background:var(--soft-surface);border-radius:var(--radius-sm);margin:4px 0 0;padding:8px 12px;font-size:.92rem}.share-result strong{color:var(--mint-strong);font-size:1.05rem}.share-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.share-actions .button{font-size:.88rem;min-height:38px;padding:0 16px}.payment-confirmation-modal,.payment-terminal{max-width:460px}.onboarding-sheet{align-content:start;grid-auto-rows:max-content;height:auto;min-height:0}.payment-waiting-message{align-items:flex-start;display:flex;justify-content:flex-start;min-height:150px;padding:20px 10px;text-align:left;width:100%}.payment-waiting-message .payment-waiting-text{align-self:stretch;font-size:clamp(1.55rem,4vw,2.15rem);line-height:1.2;margin:0;text-align:left;width:100%}.payment-waiting-message strong{color:var(--mint-strong)}.tutorial-overlay.is-closing>.tutorial-modal{animation:sheet-leave .22s var(--ease-in) both}.tutorial-overlay{align-items:center;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;transform:translateZ(0);z-index:90}.tutorial-modal{background:var(--panel);border-radius:var(--radius-lg);box-shadow:0 28px 80px rgba(21,23,22,.32);max-width:520px;padding:24px;width:100%}.tutorial-modal-head{align-items:center;display:flex;gap:16px;justify-content:space-between}.tutorial-copy h3,.tutorial-copy p,.tutorial-modal-head h2{margin:0}.tutorial-modal-head h2{font-size:1.35rem}.page-tutorial-modal{display:flex;flex-direction:column;gap:18px}.page-tutorial-body{color:var(--ink);line-height:1.5;margin:0}.page-tutorial-dismiss{width:100%}.tutorial-carousel{cursor:grab;display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.tutorial-carousel:active{cursor:grabbing}.tutorial-carousel::-webkit-scrollbar{display:none}.tutorial-carousel-slide{box-sizing:border-box;flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.tutorial-visual{background:linear-gradient(135deg,var(--brand-50),var(--neutral-50));border:1px solid var(--line);border-radius:var(--radius-md);margin:20px 0 18px;min-height:206px;padding:20px}.tutorial-visual picture{display:block}.tutorial-real-shots{display:grid;gap:8px}.tutorial-shot-frame{animation:tutorial-shot-skeleton 1.4s ease infinite;background:linear-gradient(90deg,var(--brand-50) 25%,var(--brand-100) 40%,var(--brand-50) 60%);background-size:400% 100%;border:1px solid var(--brand-100);border-radius:10px;display:block;min-height:150px;overflow:hidden}.tutorial-shot-frame.is-loaded{animation:none;background:none;border:0;min-height:0}.tutorial-shot-frame picture{display:block}.tutorial-shot-frame:not(.is-loaded) .tutorial-real-shot{opacity:0}@keyframes tutorial-shot-skeleton{0%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion:reduce){.tutorial-shot-frame{animation:none}.tutorial-real-shot{transition:none}}.tutorial-real-shot{border:1px solid var(--brand-100);border-radius:10px;display:block;height:auto;max-height:46dvh;-o-object-fit:contain;object-fit:contain;opacity:1;transition:opacity .22s ease;width:100%}.tutorial-mini-screen{background:var(--panel);border:1px solid var(--brand-100);border-radius:12px;box-shadow:0 10px 24px rgba(21,23,22,.08);display:grid;gap:10px;margin:0 auto;max-width:390px;padding:16px}.tutorial-mini-input-row,.tutorial-mini-quick,.tutorial-mini-roster,.tutorial-mini-row,.tutorial-mini-summary,.tutorial-mini-topline{align-items:center;display:flex;justify-content:space-between}.tutorial-mini-topline{border-bottom:1px solid var(--brand-100);padding-bottom:9px}.tutorial-mini-topline>span:first-child{background:var(--mint-strong);border-radius:999px;height:8px;width:72px}.tutorial-mini-formula,.tutorial-mini-input-row,.tutorial-mini-roster,.tutorial-mini-row,.tutorial-mini-summary,.tutorial-mini-total{color:var(--ink);font-size:.78rem}.tutorial-mini-input-row,.tutorial-mini-row,.tutorial-mini-summary{background:var(--brand-50);border:1px solid var(--brand-100);border-radius:8px;min-height:38px;padding:8px 10px}.tutorial-mini-row>span{align-items:center;display:flex;gap:8px;min-width:0}.tutorial-mini-input-row strong,.tutorial-mini-row strong,.tutorial-mini-summary strong{white-space:nowrap}.tutorial-mini-dot{background:var(--error-600);border-radius:50%;display:inline-block;flex:0 0 auto;height:12px;width:12px}.tutorial-mini-dot.is-selected,.tutorial-mini-dot.is-shared{background:var(--mint-strong)}.tutorial-mini-summary{gap:12px}.tutorial-mini-summary.muted{color:var(--muted)}.tutorial-mini-amount,.tutorial-mini-formula{color:var(--ink);font-size:1.2rem;font-weight:900;text-align:center}.tutorial-mini-circle-row{display:flex;gap:8px;justify-content:center}.tutorial-mini-circle-row i{background:var(--panel);border:4px solid var(--error-600);border-radius:50%;height:22px;width:22px}.tutorial-mini-circle-row i.is-mine{background:var(--mint-strong);border-color:var(--mint-strong)}.tutorial-mini-circle-row i.is-taken{background:#f1c75b;border-color:#f1c75b}.tutorial-mini-amount{background:var(--brand-50);border:1px solid var(--brand-100);border-radius:8px;padding:14px;text-align:left}.tutorial-mini-progress{background:var(--brand-100);border-radius:999px;height:12px;overflow:hidden}.tutorial-mini-progress span{background:var(--mint-strong);border-radius:inherit;display:block;height:100%;width:32%}.tutorial-mini-progress span.is-half{width:50%}.tutorial-mini-quick{gap:8px}.tutorial-mini-quick span{background:var(--brand-50);border:1px solid var(--brand-100);border-radius:999px;color:var(--mint-strong);flex:1;font-size:.72rem;font-weight:800;padding:7px 4px;text-align:center}.tutorial-mini-roster{color:var(--muted);flex-direction:column;gap:6px;align-items:flex-start}.tutorial-mini-pay{background:var(--mint-strong);border-radius:8px;color:var(--panel);font-weight:900;padding:12px;text-align:center}.tutorial-copy{display:grid;gap:7px}.tutorial-step{color:var(--mint-strong);font-size:.76rem;font-weight:900;text-transform:uppercase}.tutorial-copy h3{font-size:1.2rem}.tutorial-copy>p:last-child{color:var(--muted);line-height:1.45}.tutorial-dots{display:flex;gap:7px;justify-content:center;margin:20px 0 16px}.tutorial-dots span{background:var(--brand-200);border-radius:50%;display:block;height:8px;transition:background-color .18s ease,transform .18s ease;width:8px}.tutorial-dots span.is-active{background:var(--mint-strong);transform:scale(1.25)}.tutorial-actions{align-items:center;display:flex;gap:12px;justify-content:flex-end}.tutorial-actions-final{opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .2s var(--ease-out),transform .2s var(--ease-out)}.tutorial-actions-final.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.tutorial-actions.is-desktop{justify-content:space-between}.payment-status-icon{align-items:center;border:2px solid var(--gold);border-radius:var(--radius-pill);color:#9b7714;display:flex;height:52px;justify-content:center;width:52px}.payment-status-icon.is-confirmed{background:var(--mint);border-color:var(--mint-strong);color:var(--mint-strong)}.payment-status-clock{border:2px solid;border-radius:var(--radius-pill);display:block;height:22px;position:relative;width:22px}.payment-status-clock:after,.payment-status-clock:before{background:currentColor;border-radius:var(--radius-pill);content:"";left:50%;position:absolute;top:50%;transform-origin:left center}.payment-status-clock:before{height:2px;transform:translateY(-1px) rotate(-90deg);width:7px}.payment-status-clock:after{height:2px;transform:translateY(-1px) rotate(0deg);width:6px}.payment-status-check{font-size:30px;font-weight:900;line-height:1}.payment-status-transition{align-items:center;animation:payment-transition-backdrop 2.85s ease both;background:rgba(12,16,14,.64);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:75}.payment-status-transition-content{align-items:center;animation:payment-transition-content 2.85s cubic-bezier(.2,.8,.2,1) both;color:white;display:flex;flex-direction:column;font-size:1.1rem;gap:18px}.payment-status-transition-ring{align-items:center;background:#f7d977;border:3px solid var(--gold);border-radius:50%;box-shadow:0 0 0 0 rgba(227,182,75,.42);color:#765709;display:flex;height:92px;justify-content:center;position:relative;width:92px}.payment-status-transition.is-pending .payment-status-transition-ring{animation:payment-transition-pulse-gold 2.85s ease-out both}.payment-status-transition.is-confirmed .payment-status-transition-ring{animation:payment-transition-pulse-green 2.85s ease-out both;background:var(--mint-strong);border-color:var(--mint-strong);color:white}.payment-status-transition-clock{border:4px solid;border-radius:50%;display:block;height:42px;position:relative;width:42px}.payment-status-transition-clock:after,.payment-status-transition-clock:before{background:currentColor;border-radius:var(--radius-pill);content:"";left:50%;position:absolute;top:50%;transform-origin:left center}.payment-status-transition-clock:before{height:3px;transform:translateY(-1.5px) rotate(-90deg);width:13px}.payment-status-transition-clock:after{animation:payment-clock-tick 2.1s ease-in-out both;height:3px;transform:translateY(-1.5px) rotate(0deg);width:11px}.payment-status-transition-check{animation:payment-check-arrive 1.8s cubic-bezier(.2,.9,.25,1.25) both;font-size:52px;font-weight:900;line-height:1}.payment-confirmation-backdrop{animation:payment-modal-backdrop-in .22s ease-out both}.payment-confirmation-backdrop .payment-confirmation-modal{animation:payment-modal-arrive .34s cubic-bezier(.2,.8,.2,1) both}@keyframes payment-transition-backdrop{0%,to{opacity:0}18%,78%{opacity:1}}@keyframes payment-transition-content{0%{opacity:0;transform:translateY(12px) scale(.72)}28%,76%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-4px) scale(.96)}}@keyframes payment-transition-pulse-gold{0%{box-shadow:0 0 0 0 rgba(227,182,75,.48)}62%{box-shadow:0 0 0 24px rgba(227,182,75,0)}to{box-shadow:0 0 0 32px rgba(227,182,75,0)}}@keyframes payment-transition-pulse-green{0%{box-shadow:0 0 0 0 rgba(47,143,91,.52)}62%{box-shadow:0 0 0 24px rgba(47,143,91,0)}to{box-shadow:0 0 0 32px rgba(47,143,91,0)}}@keyframes payment-clock-tick{0%{transform:translateY(-1.5px) rotate(-45deg)}to{transform:translateY(-1.5px) rotate(225deg)}}@keyframes payment-check-arrive{0%{opacity:0;transform:scale(.35) rotate(-18deg)}70%{opacity:1;transform:scale(1.12) rotate(0deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}@keyframes payment-modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes payment-modal-arrive{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sheet-arrive{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-leave{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes modal-leave{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(12px) scale(.97)}}@keyframes overlay-leave{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.payment-confirmation-backdrop,.payment-confirmation-backdrop .payment-confirmation-modal,.payment-status-transition,.payment-status-transition-check,.payment-status-transition-clock:after,.payment-status-transition-content,.payment-status-transition-ring{animation:none!important;opacity:1;transform:none}}@media (min-width:901px){.share-overlay{align-items:flex-start;overflow-y:auto}.share-modal{margin:auto;max-height:calc(100dvh - 40px);overflow-y:auto}}.payment-confirmation-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:18px}.rating-stars{display:flex;gap:6px;justify-content:center;margin:14px 0 12px}.rating-star{background:none;border:none;color:var(--line,#dce3df);cursor:pointer;font-size:40px;line-height:1;padding:0 2px;transition:color .12s ease}.rating-star.is-on{color:var(--gold)}.rating-comment{border:1px solid var(--line,#dce3df);border-radius:8px;color:var(--ink,#151716);font:inherit;padding:10px 12px;resize:vertical;width:100%}.terminal-options{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.terminal-option{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:14px;cursor:pointer;display:flex;flex:1 1 110px;flex-direction:column;font-weight:700;gap:6px;padding:14px 10px;transition:border-color var(--motion),background-color var(--motion)}.terminal-option span{font-size:1.5rem}.terminal-option.is-active{background:var(--mint);border-color:var(--mint-strong);color:var(--mint-strong)}.terminal-detail{gap:14px;padding-top:16px}.terminal-account-picker,.terminal-detail{border-top:1px solid var(--line);display:flex;flex-direction:column}.terminal-account-picker{gap:10px;padding-top:14px}.terminal-account-picker-title{font-weight:700;margin:0}.terminal-account-options{display:grid;gap:8px}.terminal-account-option{align-items:center;background:var(--pale);border:1px solid var(--line);border-radius:10px;color:var(--ink);cursor:pointer;display:flex;font:inherit;font-weight:700;justify-content:space-between;min-height:46px;padding:10px 14px;text-align:left;transition:background-color var(--motion),border-color var(--motion),transform var(--motion)}.terminal-account-option:hover{background:var(--mint);border-color:var(--mint-strong);transform:translateY(-1px)}.terminal-fields{display:flex;flex-direction:column;gap:10px;margin:0}.terminal-payment-fields{display:flex;flex-direction:column;gap:8px}.copied-toast{align-items:center;display:flex;inset:0;justify-content:center;opacity:0;pointer-events:none;position:fixed;transition:opacity .32s ease;z-index:80}.copied-toast.is-visible{opacity:1;transition-duration:.14s}.copied-toast-pill{background:var(--ink,#151716);border:none;border-radius:var(--radius-pill);color:var(--panel);font-size:.95rem;font-weight:600;padding:12px 20px;white-space:nowrap}.terminal-fields>div{align-items:center;display:flex;gap:12px;justify-content:space-between}.terminal-fields dt{color:var(--muted)}.terminal-fields dd{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:8px;font-weight:800;margin:0;padding-right:40px;position:relative;text-align:right;white-space:nowrap;word-break:break-word}.payment-terminal .terminal-fields dd{padding-right:0}.payment-terminal .terminal-fields:has(.terminal-copy-button) dd{padding-right:40px}.terminal-fields dd .terminal-copy-button{position:absolute;right:0;top:50%;transform:translateY(-50%)}.terminal-field-value{overflow-wrap:anywhere}.payment-terminal .terminal-fields .terminal-amount-row dd{align-items:flex-end;flex-direction:column;gap:2px}.terminal-amount-primary{align-items:center;display:flex;gap:8px}.terminal-amount-row .terminal-field-value{font-size:1.22rem;font-weight:900}.terminal-fields .terminal-amount-row .terminal-copy-button{position:static;transform:none}.terminal-amount-bs{color:var(--muted);font-size:.78rem;font-weight:500}.terminal-igtf{margin-top:4px;padding-top:10px}.terminal-igtf-note{font-size:.82em;font-weight:400;opacity:.65}.terminal-igtf>div:last-child dd,.terminal-igtf>div:last-child dt,.terminal-total-row dd,.terminal-total-row dt{font-size:1.08rem;font-weight:900}.terminal-igtf>div:last-child dd,.terminal-total-row dd{font-size:1.22rem}.terminal-copy-button{align-items:center;background:var(--soft-surface);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;flex:0 0 auto;height:32px;justify-content:center;padding:6px;width:32px;transition:background-color var(--motion),border-color var(--motion),color var(--motion),transform var(--motion)}.terminal-copy-button:hover{background:var(--mint);border-color:var(--mint-strong);color:var(--ink);transform:translateY(-1px)}.terminal-copy-button:focus-visible{outline:2px solid var(--mint-strong);outline-offset:2px}.terminal-copy-icon{display:block;flex:0 0 auto;height:22px;-o-object-fit:contain;object-fit:contain;width:22px}.terminal-cash{font-size:.95rem;font-weight:800;padding:16px;text-align:center}.terminal-receipt{display:flex;flex-direction:column;gap:10px}.terminal-attach{align-items:center;background:var(--panel);border:1px dashed var(--line);border-radius:12px;cursor:pointer;display:flex;font-weight:700;gap:8px;justify-content:center;padding:12px}.terminal-attach:hover{border-color:var(--mint-strong)}.terminal-attach span{align-items:center;display:flex;gap:6px}.terminal-receipt-preview{align-items:center;display:flex;gap:12px}.terminal-receipt-thumb{height:64px;position:relative;width:64px}.terminal-receipt-thumb img{border:1px solid var(--line);border-radius:10px;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.terminal-receipt-remove{align-items:center;background:var(--ink,#151716);border:2px solid var(--panel);border-radius:var(--radius-pill);color:var(--panel);cursor:pointer;display:flex;height:22px;justify-content:center;padding:0;position:absolute;right:-8px;top:-8px;width:22px}.status-line-confirmed{color:var(--mint-strong);font-weight:800}.amount-progress{display:flex;flex-direction:column;gap:6px;margin:14px 0}.amount-progress-bar{background:var(--line,#dce3df);border-radius:999px;height:10px;overflow:hidden}.amount-progress-bar span{background:var(--mint-strong,#2f8f5b);display:block;height:100%;transition:transform .7s var(--ease-out);width:100%;will-change:transform}@media (prefers-reduced-motion:reduce){.amount-progress-bar span{transition:none}}.amount-own-contribution,.amount-progress-figures{display:flex;justify-content:space-between}.amount-own-contribution{align-items:center;background:var(--neutral-50);border:none;border-radius:var(--radius-md);margin:0 0 14px;min-height:58px;padding:10px 12px}.amount-own-contribution>div{display:grid;gap:2px}.amount-own-contribution span{color:var(--muted);font-size:.86rem;font-weight:800}.amount-own-contribution strong{color:var(--ink);font-size:1.08rem}.amount-contribution-remove{align-items:center;background:var(--error-50);border:1px solid var(--error-300);border-radius:10px;color:var(--error-text);cursor:pointer;display:flex;flex-shrink:0;height:34px;justify-content:center;padding:0;transition:background var(--motion),border-color var(--motion);width:34px}.amount-contribution-remove:hover{background:var(--error-100);border-color:var(--error-600)}.amount-contribution-remove:focus-visible{outline:2px solid var(--error-600);outline-offset:2px}.amount-own-contribution .amount-contribution-status{font-size:.82rem}.amount-field input{border:1px solid var(--line,#dce3df);border-radius:10px;font:inherit;padding:10px 12px;width:100%}.amount-field input:hover:not(:focus){border-color:var(--brand-300,#a7d3b5)}.amount-field input:focus{border-color:var(--brand-600);box-shadow:var(--focus-ring-brand);outline:none}.amount-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.amount-roster{border-top:1px solid var(--line,#dce3df);margin-top:14px;padding-top:10px}.amount-roster-row{display:flex;justify-content:space-between;padding:4px 0}.amount-status-dot{background:#f59e0b;border-radius:var(--radius-pill);display:inline-block;flex:0 0 auto;height:8px;margin-left:2px;width:8px}.amount-status-dot-paid{background:#22c55e}.mode-icon-amount{align-items:center;display:flex;font-size:1.5rem;font-weight:900;justify-content:center}.live-warning{background:#fdf1e7;border:1px solid #e9b782;border-radius:12px;color:#7a4a12;margin-bottom:14px;padding:10px 14px}.amount-quick{display:flex;flex-wrap:wrap;gap:8px;margin:0}.amount-quick .chip.is-on{background:var(--ink);color:white}.amount-custom-pct{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.amount-custom-pct input{border:1px solid var(--line,#dce3df);border-radius:10px;font:inherit;padding:8px 10px;width:90px}.amount-custom-pct input:hover:not(:focus){border-color:var(--brand-300,#a7d3b5)}.amount-custom-pct input:focus{border-color:var(--brand-600);box-shadow:var(--focus-ring-brand);outline:none}.amount-breakdown .bill-breakdown-row{font-size:.92rem}.amount-breakdown-total{border-top:1px solid var(--line,#dce3df);margin-top:6px;padding-top:8px}.amount-breakdown .amount-breakdown-total{font-size:1.15rem}.amount-breakdown-total strong{font-weight:900}.amount-quick-label{margin-top:12px}.live-presence{flex-wrap:wrap}.live-presence>span:not(.live-dot),.live-roster{min-width:0;overflow-wrap:anywhere}.live-presence-lead{flex:0 0 100%;font-weight:800;text-align:center}.live-roster{display:flex;flex-wrap:wrap;gap:5px;list-style:none;margin:0;max-width:100%;padding:0}.live-roster-pill{align-items:center;background:rgba(255,255,255,.75);border-radius:var(--radius-pill);display:inline-flex;font-size:.72rem;font-weight:700;gap:4px;max-width:100%;overflow-wrap:anywhere;padding:2px 8px;white-space:normal}.live-roster-pill.is-me{background:var(--mint-strong,#2f8f5b);color:white}.live-roster-pill.is-settled{background:rgba(255,255,255,.55);color:var(--muted)}.live-roster-pill.is-settled small{color:var(--muted)}.live-roster-pill small{font-weight:600;opacity:.8}@media (max-width:700px){.equal-control-context{font-size:.72rem}body{background:var(--paper)}input,select,textarea{font-size:16px!important}.app-shell{min-height:100dvh}.page-frame{max-width:none;padding:18px 18px 24px}.page-frame:has(.invoice-review-page),.page-frame:has(.participation-page){padding-bottom:18px}.topbar{gap:10px;padding-bottom:20px}.account-link,.bill-view-grid>*,.brand,.hero-grid>*,.intro,.topbar,.topbar>*,.workspace{min-width:0}.brand{flex:1 1 auto}.brand-logo{height:36px;width:auto}.home-brand-logo{height:49px;width:auto}.account-link{flex:0 1 auto;font-size:.75rem;gap:6px;margin-left:auto;max-width:180px;padding:7px 12px}.bill-view-grid,.hero-grid{display:grid;gap:0;grid-template-columns:minmax(0,1fr)}.intro{min-height:0;padding:20px 0 22px}.intro-eyebrow{font-size:1.025rem}.intro h1,.invoice-review-header h1,.mode-selection-hero h1,.participation-card h1{font-size:2.375rem;line-height:2.5rem}.intro h1{font-size:2.25rem;line-height:2.25rem}.lede{font-size:1rem;line-height:1.56;margin-top:18px}.workspace{border-radius:8px;gap:18px;min-height:0;padding:14px}.access-lookup{align-content:normal;min-height:0}.lookup-panel{border-radius:8px;gap:14px;padding:18px}.access-lookup .section-title{font-size:1.4rem}.access-lookup .qr-scan-button{min-height:auto;padding:0}.access-lookup .qr-scan-icon{height:56px;padding:8px;width:56px}.access-lookup .qr-scan-title{min-width:0;overflow-wrap:anywhere}.access-lookup .qr-scan-button small{font-size:.98rem;line-height:1.38}.access-lookup form{gap:10px;grid-template-columns:1fr auto;margin-top:0}.access-lookup form .button,.access-lookup form input{min-height:44px}.bill-content,.invoice-review-page,.mode-selection-page{gap:14px;padding-top:0}.bill-workspace .bill-content{grid-template-columns:minmax(0,1fr)}.mobile-bill-shortcuts{align-items:stretch;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.mobile-bill-shortcut{background:var(--ink);border:0;border-radius:14px;box-shadow:0 9px 22px rgba(21,23,22,.16);color:#fff;font:inherit;font-size:.76rem;font-weight:800;gap:7px;line-height:1.2;min-height:46px;padding:6px 10px;text-align:center;transition:transform .18s ease,box-shadow .18s ease}.mobile-bill-shortcut,.mobile-bill-shortcut-icon{align-items:center;display:flex;justify-content:center}.mobile-bill-shortcut-icon{flex-shrink:0}.mobile-bill-shortcut:active{box-shadow:0 12px 26px rgba(21,23,22,.18);transform:translateY(-3px)}.mobile-qr-icon{display:grid;gap:3px;grid-template-columns:repeat(2,8px)}.mobile-qr-icon i{border:2px solid #fff;border-radius:2px;height:8px;width:8px}.mobile-receipt-icon{background:#fff;border-radius:3px;display:grid;gap:3px;padding:5px;width:21px}.mobile-receipt-icon i{background:var(--ink);border-radius:999px;height:2px;width:100%}.bill-content>.join-card,.bill-detail-heading,.bill-detail-noninteractive,.bill-header-code,.bill-invoice-preview{display:none}.bill-detail .items-selection-title{border-top:0;margin-top:0;padding-top:0}.mobile-bill-dialog-overlay{padding:16px}.mobile-bill-dialog{border-radius:12px;max-height:calc(100dvh - 32px);max-width:480px;overflow:hidden;padding:18px}.mobile-bill-dialog-qr{align-items:center;display:flex;flex-direction:column;gap:18px;padding:12px 0 4px}.mobile-bill-dialog-qr .join-qr{height:190px;width:190px}.mobile-bill-dialog-qr .join-code{font-size:2rem}.mobile-bill-dialog-invoice{display:block;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 2px max(18px,env(safe-area-inset-bottom)) 0;touch-action:pan-y;-webkit-overflow-scrolling:touch}.mobile-bill-dialog-invoice .bill-breakdown{margin-bottom:0;min-height:auto}.mobile-bill-dialog-invoice .bill-items{gap:8px;margin-bottom:14px}.mobile-bill-dialog-invoice .bill-item{grid-template-columns:minmax(0,1fr) auto;padding:10px}.item-review-panel{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;border-top:1px solid var(--line);box-shadow:none;gap:14px;padding:22px 0}.item-review-desktop-copy{display:none}.item-review-mobile-title{display:block;margin:0}.amount-mode-panel,.equal-mode-panel{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}.compact-flow-intro,.compact-review-heading{display:grid;gap:18px}.compact-flow-intro .section-title,.compact-review-heading .section-title{margin:0}.compact-flow-divider{background:var(--line);display:block;height:1px;width:100%}.amount-mode-desktop-heading,.amount-roster-title-desktop,.amount-submit-desktop,.equal-mode-desktop-heading{display:none}.amount-roster-title-mobile,.amount-submit-mobile{display:flex}.amount-roster-title-mobile{display:block;margin:0 0 8px}.amount-mode-panel>.compact-flow-intro{order:0}.amount-mode-panel>.account-total-card{order:1}.amount-mode-panel>p.muted{order:2}.amount-mode-panel>.amount-roster{border-top:0;margin-top:0;order:3;padding-top:0}.amount-mode-panel>.amount-progress{order:4}.amount-mode-panel>.amount-own-contribution{order:5}.amount-mode-panel>.amount-field{order:6}.amount-mode-panel>.amount-quick-label{order:7}.amount-mode-panel>.amount-quick{order:8}.amount-mode-panel>.amount-custom-pct{order:9}.amount-mode-panel>.amount-actions{order:10}.amount-mode-panel>.amount-review-heading{order:11}.amount-mode-panel>.amount-breakdown{order:12}.equal-mode-panel .equal-panel-header{display:block}.amount-mode-panel .account-total-card,.equal-mode-panel .account-total-card{min-width:0;width:100%}.amount-review-heading,.equal-review-heading{margin-top:8px}.compact-after-mode,.compact-before-summary{margin:8px 0}.items-tip-controls{border-bottom:1px solid var(--line);padding-bottom:22px}.bill-header,.invoice-review-header,.summary-band{gap:12px;padding:14px 0}.bill-header{padding:4px 0 10px}.payment-ready{padding:14px 16px}.invoice-review-header{align-items:stretch;grid-template-columns:minmax(0,1fr)}.invoice-review-header h1{font-size:1.9rem;line-height:2.1rem;margin:6px 0 10px}.number-card{width:100%}.invoice-review-logo{height:44px;max-width:110px}.participation-actions,.payment-confirmation-actions,.review-actions{display:grid;gap:10px;grid-template-columns:minmax(0,1fr);justify-content:stretch}.participation-actions .button,.payment-confirmation-actions .button,.review-actions .button{width:100%}.participation-page{min-height:0;padding-top:20px;place-items:stretch}.participation-card{border-radius:8px;box-shadow:none;padding:18px}.participation-card h1{font-size:1.75rem;line-height:2.1rem}.participation-login{grid-template-columns:minmax(0,1fr)}.choice-workspace{min-height:0}.choice-workspace .mode-selection-page{padding-top:0}.choice-workspace .join-card,.join-card{align-items:center;border-radius:8px;gap:10px;padding:12px}.choice-workspace .join-qr,.join-qr{height:90px;width:90px}.choice-workspace .join-code,.join-code{font-size:1.15rem;padding:5px 10px}.join-copy{max-width:100%}.mode-selection-hero{gap:10px;padding:0 0 4px}.mode-selection-hero h1{font-size:1.7rem;line-height:2rem}.mode-selection-buttons{gap:10px}.mode-big-button{border-radius:8px;min-height:0;padding:14px}.mode-icon{margin:-20px;transform:scale(.5)}.mode-big-button strong{font-size:1.05rem}.mode-big-button small{font-size:.8rem}.bill-item,.person-row,.total-row{border-radius:8px;padding:12px}.bill-item{align-items:start;grid-template-columns:minmax(0,1fr);min-width:0}.invoice-review-page .bill-item{align-items:end;grid-template-columns:minmax(0,1fr) auto}.bill-item>:first-child,.item-title-row{min-width:0}.bill-item>:first-child{width:100%}.item-title-row>strong{min-width:0;overflow-wrap:anywhere}.item-total-column{align-items:stretch;justify-items:stretch}.item-total-column .item-take-controls{justify-content:flex-start;width:100%}.item-total-column>strong{justify-self:end}.item-take-controls,.item-take-controls .quantity-picker{min-width:0}.equal-controls,.item-assignment,.mode-choice-grid,.participants-form,.summary-grid{grid-template-columns:minmax(0,1fr)}.summary-grid{background:var(--neutral-50);border-radius:var(--radius-md);gap:0;overflow:hidden}.summary-operator{display:none}.number-card{align-items:center;background:none;border-bottom:1px solid var(--line);border-radius:0;display:flex;justify-content:space-between;padding:12px 14px}.number-card.value-per-part-card{padding-left:0;padding-right:0}.number-card.mi-total-card,.number-card:last-child{border-bottom:none}.number-card strong{font-size:1rem;margin-top:0}.total-result-card{background:var(--mint)}.tip-mode{gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.tip-mode .segment{min-width:0;padding:9px 4px}.tip-mode .segment span{font-size:.78rem}.payment-overview{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}.payment-summary-column{flex-basis:auto;max-width:none;width:100%}.payment-ready{align-items:center;display:flex;flex-wrap:nowrap;gap:12px}.payment-ready>div{min-width:0}.payment-total-label{font-size:.82rem;margin:0 0 2px}.payment-total-amount{font-size:1.5rem}.payment-proceed-button{flex:0 0 auto;min-width:0;width:auto}.summary-operator{justify-self:start;margin:-15px 0 -15px 20px}.share-modal{margin:0 auto;max-height:calc(100dvh - 24px);overflow-y:auto;scroll-padding-block:20dvh}.scanner-modal :is(input,textarea,select),.share-modal :is(input,textarea,select){scroll-margin-block:20dvh}.scanner-modal{border-radius:16px;max-height:calc(100dvh - 36px);overflow-y:auto;padding:18px;scroll-padding-block:20dvh}.payment-terminal{align-content:start;gap:10px;max-height:calc(100dvh - 24px);max-width:none;overflow-y:auto;padding:16px;width:calc(100vw - 24px)}.payment-terminal .scanner-header{gap:8px}.payment-terminal .scanner-header .eyebrow{font-size:.74rem;margin-bottom:2px}.payment-terminal .scanner-header .section-title{font-size:1.55rem;line-height:1.15;margin-bottom:0}.payment-terminal .icon-button{flex:0 0 34px;height:34px;width:34px}.payment-terminal .payment-total-label{font-size:1rem;font-weight:700;line-height:1.3}.payment-terminal .payment-total-label strong{display:block;font-size:1.9rem;letter-spacing:-.01em;line-height:1.15;margin-top:2px}.payment-terminal .terminal-options{display:grid;gap:8px;grid-auto-rows:1fr;grid-template-columns:repeat(2,minmax(0,1fr));margin:8px 0}.payment-terminal .terminal-option{border-radius:12px;flex:none;flex-direction:row;font-size:.92rem;gap:8px;height:auto;justify-content:center;min-height:48px;min-width:0;padding:10px 8px;text-align:center}.payment-terminal .terminal-option span{font-size:1.1rem;line-height:0}.payment-terminal .terminal-detail{gap:8px;min-height:0;overflow:hidden;padding-top:9px}.payment-terminal .terminal-fields,.payment-terminal .terminal-payment-fields,.payment-terminal .terminal-receipt{gap:5px}.payment-terminal .terminal-fields>div{gap:6px}.payment-terminal .terminal-fields dd,.payment-terminal .terminal-fields dt{font-size:.9rem}.payment-terminal .terminal-fields dd{max-width:68%;overflow-wrap:normal;padding-right:0;white-space:normal}.payment-terminal .terminal-igtf{margin-top:2px;padding-top:6px}.payment-terminal .terminal-igtf>div:last-child dd,.payment-terminal .terminal-igtf>div:last-child dt,.payment-terminal .terminal-total-row dd,.payment-terminal .terminal-total-row dt{font-size:1rem}.payment-terminal .terminal-igtf>div:last-child dd,.payment-terminal .terminal-total-row dd{font-size:1.12rem}.payment-terminal .terminal-copy-button{height:28px;padding:5px;width:28px}.payment-terminal .terminal-copy-icon{height:18px;width:18px}.payment-terminal .terminal-cash{font-size:.85rem;padding:11px}.payment-terminal .terminal-attach{border-radius:9px;font-size:.88rem;padding:9px}.payment-terminal .terminal-receipt>.muted{font-size:.82rem;line-height:1.3;margin:0}.payment-terminal .terminal-detail>.button,.payment-terminal .terminal-receipt .button{min-height:38px;padding:8px 12px}.scanner-backdrop,.share-overlay,.tutorial-overlay{align-items:flex-end;padding:0}.scanner-modal,.share-modal,.share-modal:not(.mobile-bill-dialog),.tutorial-modal{animation:sheet-arrive .26s var(--ease-out) both;border-radius:20px 20px 0 0;max-height:88dvh;max-width:100%;overflow-y:auto;padding-bottom:calc(18px + env(safe-area-inset-bottom))}.scanner-backdrop,.share-overlay,.tutorial-overlay{bottom:var(--keyboard-inset,0);top:var(--keyboard-top,0);transition:bottom .24s var(--ease-out),top .24s var(--ease-out)}:root.keyboard-open :is(.scanner-backdrop,.share-overlay,.tutorial-overlay)>:is(.scanner-modal,.share-modal,.tutorial-modal){max-height:calc(100% - 8px);padding-bottom:18px}.scanner-modal.payment-terminal.is-pago-movil{max-height:min(96dvh,calc(100dvh - env(safe-area-inset-top)))}.scanner-modal.payment-terminal.is-zelle{max-height:min(92dvh,calc(100dvh - env(safe-area-inset-top)))}.scanner-modal.onboarding-sheet{height:auto;max-height:min(88svh,calc(100dvh - env(safe-area-inset-top)));min-height:0;overflow-y:auto}.tutorial-modal{display:flex;flex-direction:column;height:min(88dvh,760px);overflow:hidden}.page-tutorial-modal{height:auto;max-height:min(88dvh,760px);overflow-y:auto}.tutorial-actions-final,.tutorial-dots,.tutorial-modal-head{flex:0 0 auto}.tutorial-carousel{flex:1 1 auto;min-height:0;touch-action:pan-x}.tutorial-carousel-slide{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100%;min-height:0;overflow:hidden}.tutorial-visual{display:flex;margin:12px 0 10px;min-height:0;overflow:hidden;padding:10px}.tutorial-real-shots{grid-auto-rows:minmax(0,1fr);height:100%;min-height:0;width:100%}.tutorial-real-shots picture{display:flex;min-height:0}.tutorial-real-shot{height:100%;max-height:none}.tutorial-copy{gap:4px}.tutorial-copy h3{font-size:1.08rem}.tutorial-copy>p:last-child{font-size:.9rem;line-height:1.35}.tutorial-dots{margin:10px 0}.tutorial-actions-final .button{width:100%}.share-modal.mobile-bill-dialog{overflow:hidden}.mobile-bill-dialog>.share-modal-head{flex:0 0 auto}.scanner-backdrop.is-closing>.scanner-modal,.share-overlay.is-closing>.share-modal{animation:sheet-leave .22s var(--ease-in) both}.scanner-backdrop>.scanner-modal[data-dragging],.share-overlay>.share-modal[data-dragging],.tutorial-overlay>.tutorial-modal[data-dragging]{animation:none}.scanner-modal,.share-modal,.tutorial-modal{overscroll-behavior:contain}.scanner-modal:before,.share-modal:before,.tutorial-modal:before{background:var(--line);border-radius:var(--radius-pill);content:"";display:block;flex-shrink:0;height:4px;margin:0 auto 10px;width:36px}}.onboarding-steps{color:var(--muted);display:flex;flex-direction:column;gap:8px;line-height:1.4;list-style:none;margin:4px 0 0;padding:0}.onboarding-steps li{padding-left:18px;position:relative}.onboarding-leader{color:var(--mint-strong);font-weight:800}.onboarding-steps li:before{color:var(--mint-strong);content:"•";font-weight:900;left:2px;position:absolute}.farewell{display:grid;position:relative}.farewell-content{display:grid;gap:9px;opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.farewell.is-finishing .farewell-content{opacity:0;pointer-events:none;transform:translateY(6px)}.farewell-thanks{align-items:center;display:flex;inset:0;justify-content:center;opacity:0;pointer-events:none;position:absolute;transform:scale(.96);transition:opacity .38s ease .28s,transform .38s ease .28s}.farewell.is-finishing .farewell-thanks{opacity:1;transform:scale(1)}.farewell-thanks h2{font-family:var(--font-display),sans-serif;font-size:clamp(2rem,8vw,2.8rem);margin:0}.farewell-success{display:grid;justify-items:center;text-align:center}.farewell-success .payment-status-icon{margin-bottom:5px}.farewell-success .muted{margin:4px 0 0;max-width:34ch}.farewell-rating{background:var(--soft-surface);border-radius:var(--radius-md);display:grid;gap:5px;padding:8px 12px}.farewell-rating-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.farewell-rating-who{min-width:0}.farewell-rating-who strong{font-size:.95rem}.farewell-stars{flex:0 0 auto;gap:2px;margin:0}.farewell-stars .rating-star{font-size:24px;padding:0 1px}.farewell-comment-toggle{background:none;border:0;color:var(--brand-600);cursor:pointer;font:inherit;font-size:.78rem;font-weight:700;justify-self:start;padding:0;text-align:left}.farewell-comment-toggle.has-comment{align-items:center;color:var(--ink);display:flex;font-weight:500;gap:10px;justify-self:stretch;max-width:100%;min-width:0}.farewell-comment-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.farewell-comment-edit{color:var(--brand-600);flex-shrink:0}.farewell-comment-editor{position:relative}.farewell-comment-editor .farewell-comment{padding-bottom:36px;resize:none;width:100%}.farewell-comment-done{align-items:center;background:none;border:0;bottom:5px;color:var(--brand-600);cursor:pointer;display:flex;font:inherit;font-size:.78rem;font-weight:700;gap:4px;min-height:30px;padding:0 8px;position:absolute;right:6px}.farewell-comment{margin:0}.farewell-actions{display:grid;gap:4px}@media (max-width:700px){.scanner-modal.farewell-modal{gap:10px;max-height:calc(100dvh - env(safe-area-inset-top));overflow:hidden;padding:14px 16px calc(14px + env(safe-area-inset-bottom))}}.active-mode-bar-top{align-items:center;display:flex;gap:10px;width:100%}.active-mode-bar-top>.button{white-space:nowrap}.active-mode-bar-top>.mode-bar-action:active:not(:disabled){background:var(--neutral-100);transform:translateY(-2px)}.leave-bill-button{color:var(--error-600)}.active-mode-bar-top>.leave-bill-button:active:not(:disabled){background:var(--error-50)}.active-mode-bar-top>.leave-bill-button{margin-left:auto}.portal-error{align-items:flex-start;margin:0;padding:10px 10px 10px 14px;border-radius:var(--radius-sm);background:var(--error-50);color:var(--error-text);display:flex;gap:10px;justify-content:space-between;opacity:1;transform:scale(1);transition:opacity .18s var(--ease-out),transform .18s var(--ease-out);@starting-style{opacity:0;transform:scale(.95)}}.portal-error.is-closing{opacity:0;transform:scale(.97);transition:opacity .14s var(--ease-out),transform .14s var(--ease-out)}.portal-error-body{display:flex;flex-direction:column;gap:2px}.portal-error-title{font-weight:700;font-size:.9rem}.portal-error-detail{font-weight:500;font-size:.8rem;opacity:.85}.portal-error-close{align-items:center;background:transparent;border:0;border-radius:var(--radius-xs);color:var(--error-text);cursor:pointer;display:inline-flex;flex-shrink:0;height:22px;justify-content:center;padding:0;width:22px}.portal-error-close:hover{background:var(--error-100)}@media (prefers-reduced-motion:reduce){.portal-error,.portal-error.is-closing{transform:none;transition-duration:1ms}}