@font-face{font-family:Archivo Narrow;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/archivo-narrow-vietnamese-500-normal.e114c091.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-vietnamese-500-normal.781e4677.woff) format("woff");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:Archivo Narrow;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/archivo-narrow-latin-ext-500-normal.3198fd9d.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-latin-ext-500-normal.cfd62b2b.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:Archivo Narrow;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/archivo-narrow-latin-500-normal.1ae3a541.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-latin-500-normal.f5f723f0.woff) format("woff");unicode-range:u+00??,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:Archivo Narrow;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/archivo-narrow-vietnamese-600-normal.aa122409.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-vietnamese-600-normal.5efe7f18.woff) format("woff");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:Archivo Narrow;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/archivo-narrow-latin-ext-600-normal.6b870941.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-latin-ext-600-normal.1332c5cb.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:Archivo Narrow;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/archivo-narrow-latin-600-normal.dddad857.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-latin-600-normal.bc7a3297.woff) format("woff");unicode-range:u+00??,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:Archivo Narrow;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/archivo-narrow-vietnamese-700-normal.c3993cba.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-vietnamese-700-normal.2962b917.woff) format("woff");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:Archivo Narrow;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/archivo-narrow-latin-ext-700-normal.f62bfdd0.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-latin-ext-700-normal.11a54ebd.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:Archivo Narrow;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/archivo-narrow-latin-700-normal.31f26dcc.woff2) format("woff2"),url(/_next/static/media/archivo-narrow-latin-700-normal.cd4af718.woff) format("woff");unicode-range:u+00??,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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-cyrillic-ext-400-normal.1397077e.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-ext-400-normal.5ad6f34b.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-cyrillic-400-normal.dbd38377.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-400-normal.cb4dea3a.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-greek-ext-400-normal.4c16a1b8.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-ext-400-normal.3277bd1e.woff) format("woff");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-greek-400-normal.422877fb.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-400-normal.97bd8d87.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-vietnamese-400-normal.00ae44f2.woff2) format("woff2"),url(/_next/static/media/source-sans-3-vietnamese-400-normal.479294c9.woff) format("woff");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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-latin-ext-400-normal.73a02de5.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-ext-400-normal.b0bbf0e5.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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-latin-400-normal.827817a6.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-400-normal.c134a0b8.woff) format("woff");unicode-range:u+00??,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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-cyrillic-ext-500-normal.85f3dc51.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-ext-500-normal.23321702.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-cyrillic-500-normal.c0c27766.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-500-normal.2b81a897.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-greek-ext-500-normal.64d934bb.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-ext-500-normal.9ff16e33.woff) format("woff");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-greek-500-normal.5079fda7.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-500-normal.eab52b15.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-vietnamese-500-normal.191f5eb9.woff2) format("woff2"),url(/_next/static/media/source-sans-3-vietnamese-500-normal.a2c40d12.woff) format("woff");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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-latin-ext-500-normal.eed3e4fe.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-ext-500-normal.d7a8caab.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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-latin-500-normal.f8d8377b.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-500-normal.783fe4ca.woff) format("woff");unicode-range:u+00??,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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-cyrillic-ext-600-normal.a7e7323b.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-ext-600-normal.ac21dc86.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-cyrillic-600-normal.b6ec5816.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-600-normal.71d66706.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-greek-ext-600-normal.d0a4bcdd.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-ext-600-normal.23144076.woff) format("woff");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-greek-600-normal.24f8e653.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-600-normal.40dc593f.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-vietnamese-600-normal.b019ee49.woff2) format("woff2"),url(/_next/static/media/source-sans-3-vietnamese-600-normal.43b3b950.woff) format("woff");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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-latin-ext-600-normal.8cf9eac4.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-ext-600-normal.2b69b537.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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-latin-600-normal.580e937f.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-600-normal.d14b3261.woff) format("woff");unicode-range:u+00??,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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-cyrillic-ext-700-normal.e2e9f21f.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-ext-700-normal.bdde9047.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-cyrillic-700-normal.c018c8b5.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-700-normal.64b16654.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-greek-ext-700-normal.cba4e04d.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-ext-700-normal.7255e9ea.woff) format("woff");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-greek-700-normal.d5a3c307.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-700-normal.2e79fc83.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-vietnamese-700-normal.8a8bca1e.woff2) format("woff2"),url(/_next/static/media/source-sans-3-vietnamese-700-normal.0aa8a165.woff) format("woff");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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-latin-ext-700-normal.34a8fab1.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-ext-700-normal.6219be81.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:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-latin-700-normal.86e95c1a.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-700-normal.8c7ea46d.woff) format("woff");unicode-range:u+00??,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{--ink:#12140f;--ink-soft:#2a2e24;--paper:#f3ecda;--paper-dim:#e7dfc8;--chili:#c44b16;--chili-deep:#9a3610;--mint:#2a6f5f;--mint-bright:#3d9a84;--free:#3d9a84;--occupied:#c44b16;--reserved:#b8892a;--blocked:#5c5f56;--line:rgba(18,20,15,0.12);--shadow:0 18px 40px rgba(18,20,15,0.18);color-scheme:light}*{box-sizing:border-box}.pos-shell{--font-display:"Archivo Narrow","Arial Narrow",sans-serif;--font-body:"Source Sans 3","Source Sans Pro",system-ui,sans-serif;margin:0;min-height:100dvh;background:radial-gradient(ellipse 80% 50% at 10% -10%,rgba(61,154,132,.18),transparent),radial-gradient(ellipse 60% 40% at 100% 0,rgba(196,75,22,.12),transparent),linear-gradient(165deg,#1a1d16 0,var(--ink) 45%,#0e100c 100%);color:var(--paper);font-family:var(--font-body),system-ui,sans-serif}.pos-shell:has(.admin-login){background:#fbfbf7;color:#243c35}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100dvh;display:flex;flex-direction:column;overflow-x:clip}.topbar{justify-content:space-between;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid rgba(243,236,218,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand-lockup,.topbar{display:flex;align-items:center}.brand-lockup{gap:.75rem}.brand-lockup img{width:36px;height:36px;object-fit:contain}.brand-lockup strong{font-family:var(--font-display),sans-serif;font-size:1.35rem;letter-spacing:.04em;text-transform:uppercase}.brand-lockup span{display:block;font-size:.75rem;opacity:.65}.main{flex:1 1;width:min(1100px,100%);margin:0 auto}.main,.panel{padding:1.25rem}.panel{background:var(--paper);color:var(--ink);border-radius:4px;box-shadow:var(--shadow)}.panel h1,.panel h2{font-family:var(--font-display),sans-serif;letter-spacing:.03em;margin:0 0 .75rem}.muted{opacity:.7;font-size:.92rem}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem}.field label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.field input,.field textarea{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:3px;padding:.7rem .8rem;font:inherit;width:100%;resize:vertical}.btn{border:none;border-radius:3px;padding:.7rem 1rem;font-weight:600;letter-spacing:.02em}.btn-primary{background:var(--chili);color:#fff}.btn-primary:hover{background:var(--chili-deep)}.btn-secondary{background:var(--ink);color:var(--paper)}.btn-ghost{background:transparent;color:var(--paper);border:1px solid rgba(243,236,218,.25)}.btn-danger{background:transparent;color:var(--chili-deep);border:1px solid rgba(154,54,16,.35)}.btn-danger:hover:not(:disabled){background:#f8d7cb}.btn-void{background:var(--chili);color:#fff;border:none;padding:.45rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:2.1rem;min-height:2.1rem}.btn-void:hover:not(:disabled){background:var(--chili-deep)}.pricing-box{margin-top:.85rem;padding:.75rem;border:1px dashed var(--line);border-radius:4px;background:rgba(255,255,255,.55)}.pricing-box__title{margin:0 0 .5rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.pricing-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.pricing-row label{font-size:.78rem;font-weight:600;min-width:4.2rem}.pricing-row input,.pricing-row select{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:3px;padding:.45rem .55rem;font:inherit}.pricing-row input{width:5.5rem}.pay-methods{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}.pay-chip{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:3px;padding:.45rem .75rem;font-weight:700;letter-spacing:.06em;font-size:.78rem}.pay-chip.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn:disabled{opacity:.5;cursor:not-allowed}.error{color:#8b1e0e;background:#f8d7cb;border-radius:3px;padding:.65rem .75rem;margin-bottom:.85rem;font-size:.92rem}.floor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:.85rem;gap:.85rem}.table-tile{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;border:none;border-radius:4px;padding:1rem .9rem;min-height:120px;background:var(--paper);color:var(--ink);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.35rem;transition:transform .12s ease,box-shadow .12s ease}.table-tile:hover:not(:disabled){transform:translateY(-2px)}.table-tile:disabled{opacity:.55;cursor:not-allowed}.table-tile .code{font-family:var(--font-display),sans-serif;font-size:1.6rem;letter-spacing:.04em}.table-tile .status{margin-top:auto;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.table-tile[data-status=free] .status{color:var(--free)}.table-tile[data-status=occupied] .status{color:var(--occupied)}.table-tile[data-status=reserved] .status{color:var(--reserved)}.table-tile[data-status=pending] .status{color:#b8892a}.table-tile[data-status=blocked] .status{color:var(--blocked)}.ticket-layout{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:1rem;gap:1rem}.main--ticket{width:min(1440px,100%);max-width:100%;padding-top:.85rem;overflow-x:clip}.ticket-layout--browse{grid-template-columns:5.25rem minmax(0,1fr) minmax(17rem,22rem);align-items:start;gap:.75rem;width:100%;max-width:100%}.cat-rail{gap:.4rem;max-height:calc(100dvh - 5.5rem);overflow:auto;padding:.15rem 0;position:-webkit-sticky;position:sticky;top:.5rem;min-width:0;z-index:1}.cat-rail,.cat-rail__item{display:flex;flex-direction:column}.cat-rail__item{align-items:center;gap:.3rem;padding:.45rem .25rem;border:1px solid transparent;border-radius:4px;background:rgba(243,236,218,.08);color:var(--paper);min-height:4.4rem;width:100%}.cat-rail__item:hover:not(:disabled){background:rgba(243,236,218,.14)}.cat-rail__item.is-active{background:var(--paper);color:var(--ink);border-color:var(--mint);box-shadow:inset 3px 0 0 var(--mint)}.cat-rail__item:disabled{opacity:.45}.cat-rail__thumb{width:2.5rem;height:2.5rem;border-radius:4px;object-fit:cover;flex-shrink:0;max-width:100%}.cat-rail__thumb--all,.cat-rail__thumb--fallback{display:grid;place-items:center;background:rgba(61,154,132,.35);color:var(--paper);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.cat-rail__item.is-active .cat-rail__thumb--all,.cat-rail__item.is-active .cat-rail__thumb--fallback{background:var(--mint);color:#fff}.cat-rail__label{font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:center;line-height:1.15;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ticket-browse{min-width:0;min-height:calc(100dvh - 5.5rem);display:flex;flex-direction:column;padding:.9rem;overflow:hidden}.ticket-browse__toolbar{display:flex;flex-direction:column;gap:.55rem;margin-bottom:.75rem;position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--paper);padding-bottom:.35rem;flex-shrink:0}.ticket-search input{width:100%;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:3px;padding:.65rem .8rem;font:inherit}.pay-methods--seats{margin-top:0}.menu-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.55rem;gap:.55rem;flex:1 1;align-content:start;overflow-x:hidden;overflow-y:auto;max-height:calc(100dvh - 11rem);padding-bottom:.25rem}.menu-grid,.menu-tile{display:grid;min-width:0}.menu-tile{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);padding:.5rem .55rem;min-height:0;max-width:100%;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;grid-column-gap:.45rem;column-gap:.45rem;grid-row-gap:.2rem;row-gap:.2rem;align-items:start;overflow:hidden;transition:border-color .12s ease,transform .12s ease}.menu-tile:hover:not(:disabled){border-color:var(--mint);transform:translateY(-1px)}.menu-tile:disabled{opacity:.5;cursor:not-allowed}.menu-tile__img{display:block;grid-column:2;grid-row:1/span 2;width:2.85rem;height:2.85rem;margin:0;object-fit:contain;object-position:center;border-radius:3px;flex-shrink:0;align-self:center;background:#f7f3e8}.menu-tile__img--fallback{display:grid;place-items:center;font-size:.95rem;font-weight:800;color:var(--mint);background:#e8f6f1;width:2.85rem;height:2.85rem;margin:0}.menu-tile__name{grid-row:1;font-size:.88rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.menu-tile__meta,.menu-tile__name{grid-column:1;font-weight:700;overflow:hidden;min-width:0}.menu-tile__meta{grid-row:2;margin-top:0;font-size:.75rem;color:var(--mint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;align-self:end}.ticket-check{position:-webkit-sticky;position:sticky;top:.5rem;max-height:calc(100dvh - 5.5rem);overflow-x:hidden;overflow-y:auto;padding:.95rem;min-width:0}.ticket-check .lines li{flex-wrap:wrap;row-gap:.35rem;align-items:flex-start}.ticket-check .ticket-line-main{flex:1 1 100%;max-width:100%}.ticket-check .ticket-line-actions{flex:1 1 100%;justify-content:flex-end;max-width:100%}.ticket-check .ticket-line-price{min-width:3.75rem;flex:0 0 auto}.ticket-check .qty-row--ticket{width:auto;min-width:5.75rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:1200px){.ticket-layout--browse{grid-template-columns:5rem minmax(0,1fr) minmax(16rem,20rem)}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:980px){.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.ticket-layout,.ticket-layout--browse{grid-template-columns:1fr}.cat-rail{flex-direction:row;max-height:none;overflow-x:auto;position:static;padding-bottom:.25rem}.cat-rail__item{min-width:4.6rem;flex:0 0 auto}.cat-rail__item.is-active{box-shadow:inset 0 -3px 0 var(--mint)}.ticket-browse{min-height:0}.menu-grid{max-height:none;grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-check{position:static;max-height:none}}.menu-list{display:flex;flex-direction:column;gap:.45rem;max-height:60vh;overflow:auto}.menu-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .7rem;border:1px solid var(--line);border-radius:3px;background:#fff}.menu-row button{background:var(--mint);color:#fff;border:none;border-radius:3px;padding:.4rem .7rem;font-weight:600}.variant-sheet-backdrop{position:fixed;inset:0;z-index:40;display:flex;align-items:flex-end;justify-content:center;padding:1rem;background:rgba(14,16,12,.55)}.variant-sheet{width:min(28rem,100%);margin:0;border-radius:10px 10px 4px 4px}.variant-choices{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.variant-choice{display:flex;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.85rem 1rem;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);font-weight:600;text-align:left}.variant-choice:hover:not(:disabled){border-color:var(--mint)}.variant-choice.is-selected{border-color:var(--mint);background:#e8f6f1;box-shadow:inset 0 0 0 1px var(--mint)}.variant-qty-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;border:1px solid var(--line);border-radius:4px;background:#fff}.variant-qty-meta{display:flex;flex-direction:column;gap:.15rem;min-width:0;font-weight:600}.variant-qty-meta strong{font-size:.95rem}.qty-row{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}.qty-row--inline{margin-top:0;gap:.55rem;flex-shrink:0}.qty-row--inline .qty-step{min-height:2.35rem;padding:.4rem .7rem;font-size:.85rem}.qty-row--inline .qty-value{min-width:1.75rem;font-size:1.35rem}.qty-row--ticket{margin:0;flex:0 0 auto;width:6.5rem;justify-content:center}.qty-row--ticket .qty-step{min-width:2.15rem;min-height:2.15rem;padding:.2rem .4rem;font-size:1.15rem}.qty-row--ticket .qty-value{min-width:1.35rem;font-size:1rem}.qty-step{min-width:2.75rem;min-height:2.75rem;padding:.35rem .55rem;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);font-size:1.35rem;font-weight:700;line-height:1}.qty-step:hover:not(:disabled){border-color:var(--mint)}.qty-step:disabled{opacity:.4}.qty-value{min-width:2.5rem;text-align:center;font-family:var(--font-display),sans-serif;font-size:1.75rem;font-weight:700}.qty-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-top:.75rem}.qty-chip{min-width:2.4rem;padding:.45rem .55rem;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);font-weight:600}.qty-chip.is-active{border-color:var(--mint);background:var(--mint);color:#fff}.qty-chip:disabled{opacity:.45}.lines{list-style:none;margin:0;padding:0}.lines li{justify-content:space-between;gap:.65rem;padding:.55rem 0;border-bottom:1px dashed var(--line)}.lines li,.ticket-line-main{display:flex;align-items:center;min-width:0}.ticket-line-main{gap:.5rem;flex:1 1 auto}.ticket-line-check{flex:0 0 1rem;width:1rem;display:inline-flex;align-items:center;justify-content:center}.ticket-line-copy{min-width:0;flex:1 1 auto}.ticket-line-name{font-weight:600}.ticket-line-meta,.ticket-line-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-line-meta{font-size:.82rem;color:var(--muted);margin-top:.1rem}.ticket-line-actions{display:flex;align-items:center;gap:.4rem;flex:0 0 auto;margin-left:auto}.ticket-line-price{min-width:4.5rem;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ticket-line-qty-fallback{min-width:6.5rem;text-align:center;color:var(--muted)}.ticket-line-actions .btn-void{min-width:2.15rem;padding:0}.ticket-line-actions .btn-void,.ticket-line-void-spacer{flex:0 0 2.15rem;width:2.15rem;height:2.15rem}.actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.login-stage{min-height:100dvh;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(420px,100%)}.login-card .logo-row{display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem}.login-card .logo-row img{width:48px;height:48px}.login-card .logo-row h1{margin:0;font-family:var(--font-display),sans-serif;letter-spacing:.06em;text-transform:uppercase;font-size:1.7rem}.receipt-page{min-height:100dvh;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.receipt-toolbar{display:flex;gap:.5rem;width:min(360px,100%);justify-content:space-between}.receipt-slip{width:min(320px,100%);background:#fff;color:#111;padding:1rem .9rem 1.25rem;border-radius:2px;box-shadow:var(--shadow);font-family:Courier New,Courier,monospace;font-size:.85rem}.receipt-slip h1{margin:0;font-size:1.15rem;text-align:center;text-transform:uppercase;letter-spacing:.04em}.receipt-slip header p{margin:.2rem 0 0;text-align:center;opacity:.7}.receipt-slip .meta{margin:.85rem 0;padding:.55rem 0;border-top:1px dashed #999;border-bottom:1px dashed #999;line-height:1.45}.receipt-slip table{width:100%;border-collapse:collapse}.receipt-slip td,.receipt-slip th{text-align:left;padding:.3rem 0;vertical-align:top}.receipt-slip td:last-child,.receipt-slip th:last-child{text-align:right}.receipt-slip td:nth-child(2),.receipt-slip th:nth-child(2){text-align:center;width:2.5rem}.receipt-slip .unit{font-size:.75rem;opacity:.65}.receipt-slip .totals{margin-top:.65rem;border-top:1px dashed #999;padding-top:.5rem}.receipt-slip .totals>div{display:flex;justify-content:space-between;margin:.2rem 0}.receipt-slip .grand{font-weight:700;font-size:1.05rem;margin-top:.35rem}.receipt-slip .pays{margin-top:.65rem;border-top:1px dashed #999;padding-top:.5rem}.receipt-slip footer{margin-top:1rem;text-align:center;opacity:.75}@media print{body{background:#fff!important;color:#000!important}.app-shell>.topbar,.no-print,.topbar{display:none!important}.receipt-page{padding:0}.receipt-slip{box-shadow:none;width:80mm}}@media (prefers-reduced-motion:reduce){.table-tile{transition:none}}