@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/courier-prime-latin-ext-400-normal-B-EsvyE4.woff2) format("woff2"),url(/assets/courier-prime-latin-ext-400-normal-CKOCNFvK.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/courier-prime-latin-400-normal-BbyBr73r.woff2) format("woff2"),url(/assets/courier-prime-latin-400-normal-BAlbUm6l.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/courier-prime-latin-ext-700-normal-ByMJlNdM.woff2) format("woff2"),url(/assets/courier-prime-latin-ext-700-normal-BIFoAzHx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/courier-prime-latin-700-normal-D1YCjmaD.woff2) format("woff2"),url(/assets/courier-prime-latin-700-normal-CVvp4Sof.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #16110b;--bg-glow: #2a1c08;--surface: #221a11;--surface-raised: #2b2115;--line: #3d2f1d;--ink: #f4ecdd;--muted: #b0a088;--accent: #f5a623;--accent-bright: #ffc14d;--accent-ink: #1d1305;--danger: #ff6f61;--danger-ink: #2b0d09;--paper: #f7f1e2;--paper-ink: #2c2317;--paper-faint: #8a7d66;--font-display: "Bricolage Grotesque Variable", system-ui, sans-serif;--font-mono: "Courier Prime", "Courier New", monospace;--radius: 10px;--shadow-pop: 4px 4px 0 rgba(0, 0, 0, .55);--ring: 0 0 0 3px rgba(245, 166, 35, .45)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;background-color:var(--bg);background-image:radial-gradient(60rem 40rem at 50% -12rem,var(--bg-glow),transparent 70%);background-repeat:no-repeat;color:var(--ink);font-family:var(--font-display);font-size:16px;line-height:1.45}#root{min-height:100dvh;display:flex;flex-direction:column}.app-shell{flex:1;display:flex;flex-direction:column;width:100%;max-width:30rem;margin:0 auto;padding:0 1.25rem calc(1.25rem + env(safe-area-inset-bottom))}.app-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 0 .75rem}.wordmark{font-weight:800;font-size:1.1rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);text-decoration:none}.steps{display:flex;gap:.4rem}.steps i{width:1.4rem;height:.3rem;border-radius:99px;background:var(--line)}.steps i.on{background:var(--accent)}.app-loading{min-height:100dvh;display:grid;place-items:center;color:var(--muted);font-family:var(--font-display)}main[class$=-screen]{flex:1;display:flex;flex-direction:column;gap:1.1rem;padding-top:.5rem}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}main[class$=-screen]>*{animation:rise .45s cubic-bezier(.2,.7,.2,1) backwards}main[class$=-screen]>*:nth-child(2){animation-delay:.06s}main[class$=-screen]>*:nth-child(3){animation-delay:.12s}main[class$=-screen]>*:nth-child(4){animation-delay:.18s}main[class$=-screen]>*:nth-child(5){animation-delay:.24s}@media(prefers-reduced-motion:reduce){main[class$=-screen]>*{animation:none}}h1{margin:0;font-size:clamp(1.9rem,8vw,2.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.05}h2{margin:0;font-size:.85rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}section{display:flex;flex-direction:column;gap:.75rem}form{display:flex;flex-direction:column;gap:.75rem}label{font-weight:600;font-size:.95rem}input[type=text],input[type=email],input:not([type]){width:100%;padding:.9rem 1rem;font:inherit;font-size:1rem;color:var(--ink);background:var(--surface);border:2px solid var(--line);border-radius:var(--radius);outline:none;transition:border-color .15s,box-shadow .15s}input::placeholder{color:var(--muted);opacity:.7}input:focus-visible{border-color:var(--accent);box-shadow:var(--ring)}input:disabled{opacity:.55}fieldset{margin:0;padding:0;border:0;display:flex;flex-wrap:wrap;gap:.5rem}legend{padding:0;margin-bottom:.6rem;font-weight:600;font-size:.95rem;color:var(--ink)}button{font:inherit;cursor:pointer;border:0;border-radius:var(--radius);transition:transform .12s,box-shadow .12s,background-color .15s}button:disabled{opacity:.55;cursor:not-allowed}.btn-primary{padding:1rem 1.25rem;width:100%;font-size:1.05rem;font-weight:800;letter-spacing:.01em;color:var(--accent-ink);background:var(--accent);border:2px solid var(--accent-ink);box-shadow:var(--shadow-pop)}.btn-primary:not(:disabled):hover{background:var(--accent-bright)}.btn-primary:not(:disabled):active{transform:translate(3px,3px);box-shadow:1px 1px #0000008c}.btn-secondary{padding:.8rem 1.1rem;font-weight:700;color:var(--ink);background:var(--surface-raised);border:2px solid var(--line)}.app-header .btn-secondary{padding:.35rem .75rem;font-size:.8rem;white-space:nowrap}.btn-secondary:not(:disabled):hover{border-color:var(--accent);color:var(--accent-bright)}.btn-danger{padding:.8rem 1.1rem;font-weight:800;color:var(--danger-ink);background:var(--danger);border:2px solid var(--danger-ink)}.btn-danger:disabled{opacity:.6}.header-actions{display:flex;gap:.5rem}button:focus-visible{outline:none;box-shadow:var(--ring)}.cta-bar{position:sticky;bottom:0;margin-top:auto;display:flex;flex-direction:column;gap:.5rem;padding:.9rem 0 .25rem;background:linear-gradient(to top,var(--bg) 65%,transparent)}.cta-bar .btn-secondary{width:100%}.quota-hint{margin:0;font-size:.82rem;color:var(--accent);text-align:center;opacity:.85}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{padding:.45rem .9rem;font-size:.9rem;font-weight:700;border-radius:99px;background:transparent;border:1.5px dashed var(--line);color:var(--muted)}.chip:not(:disabled):hover{border-color:var(--accent);color:var(--accent-bright)}.pill{position:relative;display:inline-flex}.pill input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.pill span{padding:.6rem 1.05rem;font-weight:700;font-size:.95rem;border:2px solid var(--line);border-radius:99px;background:var(--surface);color:var(--ink);transition:background-color .15s,border-color .15s,color .15s}.pill input:checked+span{background:var(--accent);border-color:var(--accent-ink);color:var(--accent-ink)}.pill input:focus-visible+span{box-shadow:var(--ring)}.pill input:disabled+span{opacity:.55}[role=alert]{display:block;padding:.7rem .9rem;font-size:.92rem;font-weight:600;color:var(--danger);background:#ff6f6117;border:1.5px solid rgba(255,111,97,.45);border-radius:var(--radius)}.login-screen{justify-content:center;gap:.5rem;padding-bottom:14vh}.login-screen h1{font-size:clamp(3rem,17vw,4.2rem);color:var(--accent);text-transform:uppercase;letter-spacing:.04em}.login-screen>p{margin:0 0 1.4rem;font-size:1.15rem;color:var(--muted)}ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}ul:empty{display:none}main[class$=-screen] li{padding:.75rem 1rem;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius);font-weight:600}.row-with-action{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.row-with-action span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-with-action .btn-secondary{padding:.5rem .85rem;font-size:.85rem;white-space:nowrap}.inline-form{flex-direction:row;align-items:stretch}.drinks-inline{border-left:3px solid var(--line);padding-left:.75rem;margin:.25rem 0}.drinks-inline-label{margin:0 0 .4rem;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.drinks-inline ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.3rem}.tally-screen details summary,.breakdown details summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.75rem;list-style:none;-webkit-user-select:none;user-select:none;transition:color .15s ease}.tally-screen details summary::-webkit-details-marker,.breakdown details summary::-webkit-details-marker{display:none}.tally-screen details summary:after,.breakdown details summary:after{content:"";flex:none;width:.5rem;height:.5rem;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg) translate(-1px,-1px);transition:transform .2s cubic-bezier(.2,.7,.2,1),border-color .15s ease}.tally-screen details[open] summary:after,.breakdown details[open] summary:after{transform:rotate(-135deg)}.tally-screen details summary:hover,.tally-screen details[open] summary,.breakdown details summary:hover,.breakdown details[open] summary{color:var(--accent-bright)}.tally-screen details summary:hover:after,.tally-screen details[open] summary:after,.breakdown details summary:hover:after,.breakdown details[open] summary:after{border-color:var(--accent-bright)}.tally-screen details summary:focus-visible,.breakdown details summary:focus-visible{outline:none;box-shadow:var(--ring);border-radius:6px}.tally-screen li:has(details[open]),.breakdown li:has(details[open]){border-color:var(--accent)}.tally-screen .drinks-inline,.breakdown .drinks-inline{margin:.65rem 0 .1rem;border-left:2px solid var(--accent)}.tally-screen .drinks-inline li,.breakdown .drinks-inline li{padding:.1rem 0;background:none;border:none;border-radius:0;font-family:var(--font-mono);font-weight:500;color:var(--muted)}@media(prefers-reduced-motion:no-preference){.tally-screen details[open] .drinks-inline,.breakdown details[open] .drinks-inline{animation:reveal .22s cubic-bezier(.2,.7,.2,1)}}.breakdown{margin-top:1.5rem}.breakdown h2{margin-bottom:.75rem}@keyframes reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.inline-form input{flex:1;min-width:0}.inline-form .btn-secondary{white-space:nowrap}.group-list-screen .group-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.group-card-name{flex:1;min-width:0;padding:0;text-align:left;font:inherit;font-weight:700;color:var(--ink);background:none;border:0;border-radius:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.group-card-name:hover{color:var(--accent-bright)}.group-card .btn-secondary{padding:.5rem .85rem;font-size:.85rem;white-space:nowrap}.group-card.archived .group-card-name{color:var(--muted)}.toggle-archived{align-self:flex-start;padding:0;font-weight:700;font-size:.9rem;color:var(--muted);background:none;border:0;border-radius:0;text-decoration:underline;text-underline-offset:.25em}.toggle-archived:hover{color:var(--accent-bright)}.empty-state{margin:0;color:var(--muted)}.drink-price-row{display:flex;align-items:center;gap:.75rem}.drink-price-row label{flex:1;font-weight:700}.drink-price-row input{width:7.5rem;text-align:right;font-family:var(--font-mono);font-weight:700;font-size:1.05rem}.drink-price-row span{color:var(--muted);font-weight:700}.account-screen{display:flex;flex-direction:column;gap:1.25rem}.danger-zone{display:flex;flex-direction:column;gap:.85rem;padding:1.1rem;border:2px solid var(--danger)}.danger-zone h2{margin:0;color:var(--danger)}.danger-zone p{margin:0;color:var(--muted)}.confirm-row{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.confirm-row span{flex:1 1 100%;font-weight:700}.ticket-wrap{gap:0}.ticket{--zig: 10px;margin-top:.25rem;background:var(--paper);color:var(--paper-ink);font-family:var(--font-mono);border-radius:3px 3px 0 0;padding:1.4rem 1.2rem 1.6rem;box-shadow:6px 8px #00000073;transform:rotate(-.6deg)}.ticket-edge{height:var(--zig, 10px);margin-top:-1px;transform:rotate(-.6deg);background:linear-gradient(-45deg,transparent 70.7%,var(--paper) 0) 0 0 / 14px 100%,linear-gradient(45deg,transparent 70.7%,var(--paper) 0) 7px 0 / 14px 100%;background-repeat:repeat-x;filter:drop-shadow(6px 8px 0 rgba(0,0,0,.45))}.ticket-head{text-align:center;text-transform:uppercase;letter-spacing:.18em;font-weight:700;font-size:.85rem;color:var(--paper-faint)}.ticket hr{border:0;border-top:2px dashed var(--paper-faint);margin:.9rem 0}.ticket ul{gap:.55rem}.ticket ul li{padding:0;background:none;border:0;border-radius:0;font-family:var(--font-mono);font-weight:700;font-size:1.02rem;color:var(--paper-ink)}.ticket .all-settled{margin:0;font-weight:700;text-align:center}.result-screen h1{color:var(--accent)}
