@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-ext-400-normal-CiZNW1ec.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-400-normal-DYBYyMQr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-400-normal-bXgqVju9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-vietnamese-500-normal-DREgrEoJ.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-500-normal-CfdwVo8-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-ext-500-normal-h0Fp6aX0.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-500-normal-CK0UkkKf.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-500-normal-B6LVzGNe.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-500-normal-BJkVuMHw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-vietnamese-600-normal-nyU-ZL2p.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-600-normal-DkpCIyan.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-ext-600-normal-BNd8euf0.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-600-normal-BeUwKxhG.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-600-normal-BZDkUTrt.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-600-normal-5IO4e7bK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-vietnamese-700-normal-Csr0PCuG.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-700-normal-By_5yT39.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-latin-ext-700-normal-C8_gqRu2.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-700-normal-4Hjo2OtD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-latin-700-normal-DlW1Zbsh.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-700-normal-C2EtzaOi.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/be-vietnam-pro-vietnamese-800-normal-D4LFh2W4.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-800-normal-CA0HL1e4.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/be-vietnam-pro-latin-ext-800-normal-GEpNgheG.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-800-normal-BvOXQlBN.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/be-vietnam-pro-latin-800-normal-BpHZASpI.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-800-normal-Cwp5p0gU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-vietnamese-600-normal-DUi7WF5p.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-600-normal-D6zpsUhD.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-ext-600-normal-DxxdqCpr.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-600-normal-VcznFIpX.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2)format("woff2"),url(/assets/space-grotesk-latin-600-normal-BflQw4A9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-vietnamese-700-normal-DMty7AZE.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-700-normal-Duxec5Rn.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#111311;--ink-2:#1e201d;--ink-3:#2c2e2a;--paper:#f4f1e8;--surface:#fffef8;--surface-2:#ece9dd;--text:#111311;--text-soft:#3b3c37;--muted:#64645e;--on-ink:#f4f1e8;--on-ink-muted:#b9b8b0;--acid:#dfff32;--acid-strong:#cbe91d;--acid-soft:#f3ffd0;--ink-on-acid:#111311;--coral:#ff5b3d;--coral-strong:#e8482c;--coral-soft:#ffe4dd;--line:#b9b8b0;--line-strong:#111311;--line-soft:#d7d5cb;--line-ink:#f4f1e838;--radius:2px;--radius-sm:2px;--font:"Be Vietnam Pro", "Avenir Next", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Space Grotesk", "Be Vietnam Pro", system-ui, sans-serif;--focus:#111311;--bg:var(--paper);--surface-3:#e5e2d6;--border:var(--line);--border-strong:var(--line-strong);--text-muted:var(--text-soft);--text-faint:var(--muted);--primary:var(--acid);--primary-strong:var(--acid-strong);--primary-contrast:var(--ink-on-acid);--primary-tint:var(--acid-soft);--today:#f9702b;--today-strong:#e25c17;--today-tint:#ffe6d3;--today-ink:#7a2e05;--today-contrast:#1a1206;--danger:#b42318;--danger-tint:#fdecea;--warning:#b25e09;--warning-tint:#fbeed9;--info:#1d4ed8;--info-tint:#e5edfd;--focus-ring:var(--focus);--shadow-1:0 1px 2px #11131114, 0 1px 3px #1113110f;--shadow-2:0 14px 40px #11131138;--slot-h:22px;--axis-w:68px;--tap-min:32px;--font-ui:var(--font);--tone-rental-bg:#e2f2ef;--tone-rental-bd:#0f7b6c;--tone-rental-fg:#0a4a41;--tone-block-bg:#e3e8ee;--tone-block-bd:#64748b;--tone-block-fg:#33414f;--tone-maintenance-bg:#fbeed9;--tone-maintenance-bd:#b25e09;--tone-maintenance-fg:#7a4106;--tone-pickup-bg:#efe7fb;--tone-pickup-bd:#7c3aed;--tone-pickup-fg:#52259e;--tone-contract-bg:#e5edfd;--tone-contract-bd:#1d4ed8;--tone-contract-fg:#16389c;--tone-internal-bg:#e0f2f4;--tone-internal-bd:#0e7490;--tone-internal-fg:#0b586d}.app{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45}.app[data-layout=tablet]{--slot-h:30px;--axis-w:76px;--tap-min:44px;font-size:15px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--surface);color:var(--text);border-radius:var(--radius-sm);border:1px solid var(--border-strong);padding:8px 12px;transition:top .15s;position:absolute;top:-60px;left:8px}.skip-link:focus{top:8px}.btn{appearance:none;font:inherit;min-height:var(--tap-min);border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn--primary{background:var(--primary);border-color:var(--primary-strong);color:var(--primary-contrast);font-weight:600}.btn--ghost{background:0 0;border-color:#0000}.btn--ghost:hover{background:var(--surface-2)}.btn--danger{color:var(--danger);border-color:var(--danger);background:0 0}.btn:disabled{opacity:.5;cursor:not-allowed}.segmented{border:1px solid var(--border-strong);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.segmented button{appearance:none;font:inherit;background:var(--surface);color:var(--text);min-height:var(--tap-min);cursor:pointer;border:0;padding:6px 12px}.segmented button+button{border-left:1px solid var(--border)}.segmented button[aria-pressed=true],.segmented button[aria-selected=true]{background:var(--primary);color:var(--primary-contrast);font-weight:600}.area-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px 8px;margin:0 0 14px;display:flex}.area-tabs__tab{appearance:none;font:inherit;color:var(--text-muted);min-height:var(--tap-min);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 10px}.area-tabs__tab:hover{color:var(--text)}.area-tabs__tab[aria-selected=true]{color:var(--text);border-bottom-color:var(--primary);font-weight:600}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:3px}.shell{max-width:1400px;margin:0 auto;padding:12px 16px 40px}.legend{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;gap:6px 14px;margin:12px 0;padding:10px 12px;display:flex}.legend__item{color:var(--text-muted);align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.legend__swatch{border-left:4px solid var(--sw-bd,var(--border-strong));background:var(--sw-bg,var(--surface-2));border-radius:4px;width:16px;height:16px}.legend__swatch--held{background:repeating-linear-gradient(45deg, var(--surface-2), var(--surface-2) 3px, var(--surface-3) 3px, var(--surface-3) 6px);border-left:4px dashed var(--text-faint)}.badge{border:1px solid var(--sw-bd,var(--border-strong));background:var(--sw-bg,var(--surface-2));color:var(--sw-fg,var(--text));border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-size:11.5px;font-weight:600;line-height:1.6;display:inline-flex}.badge--status{background:var(--surface-2);color:var(--text-muted);border-color:var(--border)}.calendar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.day-grid{grid-template-columns:var(--axis-w) 1fr;display:grid}.day-grid__head{background:var(--surface);z-index:5;border-bottom:1px solid var(--border);grid-column:2;grid-template-columns:1fr 1fr;display:grid;position:sticky;top:0}.day-grid__corner{border-bottom:1px solid var(--border);border-right:1px solid var(--border);background:var(--surface);z-index:6;grid-area:1/1;position:sticky;top:0}.day-grid__colhead{text-align:center;border-left:1px solid var(--border);padding:8px 10px;font-size:13px;font-weight:600}.day-grid__colhead small{color:var(--text-faint);font-size:11px;font-weight:400;display:block}.day-grid__body{grid-column:1/-1;grid-template-columns:var(--axis-w) 1fr;max-height:68vh;display:grid;overflow:auto}.axis{border-right:1px solid var(--border);background:var(--surface);position:relative}.axis__label{height:calc(var(--slot-h) * 2);text-align:right;font-variant-numeric:tabular-nums;color:var(--text-muted);border-bottom:1px solid var(--surface-3);padding-right:8px;font-size:11.5px;transform:translateY(-8px)}.lanes{grid-template-columns:1fr 1fr;display:grid;position:relative}.lane-cell{height:var(--slot-h);border-bottom:1px solid var(--surface-3);border-left:1px solid var(--border);cursor:pointer}.lane-cell[data-half-hour=true]{border-bottom-color:var(--surface-2)}.lane-cell[data-hour=true]{border-bottom-color:var(--border)}.lane-cell[data-occupied=true]{cursor:default}.lane-cell[aria-disabled=true]{cursor:not-allowed}.selection{z-index:3;border:2px solid var(--today);background:color-mix(in srgb, var(--today) 16%, transparent);border-radius:var(--radius-sm);pointer-events:none;position:absolute}.res{z-index:4;border-radius:var(--radius-sm);border:1px solid var(--sw-bd);border-left:4px solid var(--sw-bd);background:var(--sw-bg);color:var(--sw-fg);text-align:left;cursor:pointer;font:inherit;flex-direction:column;gap:1px;padding:3px 6px;font-size:12px;display:flex;position:absolute;overflow:hidden}.res:hover{filter:brightness(.98);box-shadow:var(--shadow-1)}.res__time{font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:600}.res__title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.res__meta{color:var(--sw-fg);opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.res--rental{--sw-bg:var(--tone-rental-bg);--sw-bd:var(--tone-rental-bd);--sw-fg:var(--tone-rental-fg)}.res--block{--sw-bg:var(--tone-block-bg);--sw-bd:var(--tone-block-bd);--sw-fg:var(--tone-block-fg);background-image:repeating-linear-gradient(45deg, transparent, transparent 6px, color-mix(in srgb, var(--tone-block-bd) 14%, transparent) 6px, color-mix(in srgb, var(--tone-block-bd) 14%, transparent) 12px)}.res--maintenance{--sw-bg:var(--tone-maintenance-bg);--sw-bd:var(--tone-maintenance-bd);--sw-fg:var(--tone-maintenance-fg)}.res--pickup{--sw-bg:var(--tone-pickup-bg);--sw-bd:var(--tone-pickup-bd);--sw-fg:var(--tone-pickup-fg)}.res--contract{--sw-bg:var(--tone-contract-bg);--sw-bd:var(--tone-contract-bd);--sw-fg:var(--tone-contract-fg)}.res--internal{--sw-bg:var(--tone-internal-bg);--sw-bd:var(--tone-internal-bd);--sw-fg:var(--tone-internal-fg)}.res[data-held=true]{border-style:dashed dashed dashed solid}.res[data-lapsed=true]{opacity:.55;pointer-events:none}.res[data-released=true]{opacity:.4;text-decoration:line-through}.res__hold{font-size:10.5px;font-weight:600}.week{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.week__day{background:var(--surface);flex-direction:column;min-height:220px;display:flex}.week__dayhead{appearance:none;font:inherit;border:0;border-bottom:1px solid var(--border);background:var(--surface-2);text-align:left;cursor:pointer;padding:8px;font-size:12.5px;font-weight:600}.week__dayhead[aria-current=date]{background:var(--today-tint);color:var(--today-ink);box-shadow:inset 0 -3px 0 var(--today)}.week__list{flex-direction:column;gap:5px;padding:6px;display:flex;overflow:auto}.week__chip{appearance:none;font:inherit;text-align:left;border:1px solid var(--sw-bd);border-left:4px solid var(--sw-bd);background:var(--sw-bg);color:var(--sw-fg);border-radius:var(--radius-sm);cursor:pointer;padding:4px 6px;font-size:12px;line-height:1.3}.week__chip .res__time{font-size:11px}.week__empty{color:var(--text-faint);padding:8px;font-size:12px}@media (width<=720px){.week{grid-template-columns:1fr}.week__day{min-height:0}}.month{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.month__weekday{background:var(--surface-2);text-align:center;color:var(--text-muted);padding:6px 8px;font-size:12px;font-weight:600}.month__cell{appearance:none;min-width:0;font:inherit;text-align:left;background:var(--surface);color:var(--text);cursor:pointer;border:0;flex-direction:column;gap:4px;min-height:104px;padding:6px 6px 8px;display:flex}.month__cell.is-outside{background:var(--surface-2);color:var(--text-faint)}.month__cell.is-today{box-shadow:inset 0 0 0 2px var(--today)}.month__top{justify-content:space-between;align-items:center;gap:6px;display:flex}.month__daynum{border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:12.5px;font-weight:600;display:inline-flex}.month__cell.is-today .month__daynum{background:var(--today);color:var(--today-contrast)}.month__count{color:var(--text-muted);font-size:11px;font-weight:600}.month__chips{flex-direction:column;gap:3px;min-width:0;display:flex}.month__chip{border-left:3px solid var(--sw-bd);background:var(--sw-bg);color:var(--sw-fg);border-radius:var(--radius-sm);white-space:nowrap;text-overflow:ellipsis;padding:1px 6px;font-size:11px;line-height:1.35;overflow:hidden}.month__chiptime{font-weight:600}.month__more{color:var(--text-muted);padding-left:2px;font-size:11px}@media (width<=720px){.month__cell{min-height:64px}.month__chip{display:none}}.state-panel{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:48px 24px;display:flex}.state-panel h2{color:var(--text);margin:0;font-size:18px}.state-panel p{max-width:46ch;margin:0}.state-panel__icon{font-size:30px;line-height:1}.banner{border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-2);align-items:flex-start;gap:10px;margin:10px 0;padding:10px 14px;display:flex}.banner__body{flex:1}.banner__title{margin:0 0 2px;font-weight:700}.banner__actions{flex-shrink:0;gap:8px;display:flex}.banner--offline{background:var(--warning-tint);border-color:var(--warning);color:var(--text)}.banner--conflict{background:var(--danger-tint);border-color:var(--danger)}.banner--stale{background:var(--info-tint);border-color:var(--info)}.banner__list{margin:6px 0 0;padding-left:18px;font-size:13px}.banner__list li{font-variant-numeric:tabular-nums}.skeleton{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.skeleton__row{background:linear-gradient(90deg, var(--surface-2), var(--surface-3), var(--surface-2));background-size:200% 100%;border-radius:4px;height:18px;margin-bottom:10px;animation:1.3s linear infinite shimmer}.skeleton__row:nth-child(odd){width:82%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.drawer-scrim{z-index:50;background:#10202b6b;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--surface);width:min(460px,100vw);height:100%;box-shadow:var(--shadow-2);flex-direction:column;display:flex;overflow:hidden}.drawer__head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px;display:flex}.drawer__head h2{flex:1;margin:0;font-size:16px}.drawer__body{flex:1;padding:16px;overflow:auto}.drawer__foot{border-top:1px solid var(--border);background:var(--surface);justify-content:flex-end;gap:10px;padding:14px 16px;display:flex}.field{margin-bottom:14px}.field>label,.field>.field__label{margin-bottom:5px;font-size:13px;font-weight:600;display:block}.field input[type=text],.field input[type=date],.field input[type=number],.field input[type=tel],.field input[type=email],.field input[type=password],.field select,.field textarea{width:100%;font:inherit;min-height:var(--tap-min);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:8px 10px}.field textarea{resize:vertical;min-height:64px}.field__hint{color:var(--text-faint);margin-top:4px;font-size:12px}.field__error{color:var(--danger);margin-top:4px;font-size:12.5px;font-weight:600}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:var(--danger)}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.booking-context{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:14px;padding:12px}.booking-context .field-row{margin-bottom:2px}.booking-context .field__hint{color:var(--text);margin:6px 0 0;font-weight:600}.purpose-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (width>=520px){.purpose-grid{grid-template-columns:repeat(3,1fr)}}.purpose-option{appearance:none;font:inherit;text-align:center;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:48px;color:var(--text);cursor:pointer;padding:12px 10px;font-weight:600}.purpose-option:hover:not([disabled]){background:var(--primary-tint)}.purpose-option[aria-checked=true]{background:var(--primary);color:var(--primary-contrast);border-color:var(--line-strong);box-shadow:inset 0 0 0 1px var(--line-strong)}.purpose-option:focus-visible{outline:var(--focus-ring);outline-offset:2px}.purpose-option[disabled]{opacity:.5;cursor:not-allowed}.booking-qr{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);margin-top:14px;padding:14px}.booking-qr__title{margin:0 0 10px;font-size:14px;font-weight:700}.booking-qr__body{flex-wrap:wrap;align-items:flex-start;gap:14px;display:flex}.booking-qr__code{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;flex:none;place-items:center;width:160px;height:160px;padding:6px;display:grid}.booking-qr__img{object-fit:contain;width:100%;height:100%}.booking-qr__pending,.booking-qr__error{text-align:center;color:var(--text-muted);margin:0;padding:0 8px;font-size:13px}.booking-qr__error{color:var(--danger,#b42318)}.booking-qr__facts{flex:200px;grid-template-columns:auto 1fr;align-items:baseline;gap:4px 12px;margin:0;font-size:13px;display:grid}.booking-qr__facts dt{color:var(--text-muted)}.booking-qr__facts dd{margin:0;font-weight:600}.booking-qr__facts code{word-break:break-all;font-weight:700}.booking-qr__copy{margin-top:4px;font-size:12px}.booking-qr__hint{color:var(--text);margin:12px 0 0;font-size:13px}.booking-qr__note{color:var(--text-muted);margin:6px 0 0;font-size:12px}.price-summary{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:12px}.price-summary h3{color:var(--text-muted);justify-content:space-between;align-items:center;margin:0 0 8px;font-size:13px;display:flex}.price-summary dl{grid-template-columns:1fr auto;gap:4px 12px;margin:0;display:grid}.price-summary dt{color:var(--text-muted)}.price-summary dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.price-summary .price-total dt,.price-summary .price-total dd{color:var(--text);border-top:1px solid var(--border);margin-top:2px;padding-top:6px;font-size:15px;font-weight:700}.tag-preview{color:var(--text-faint);border:1px solid var(--border);border-radius:999px;padding:0 6px;font-size:11px;font-weight:600}.detail-list{grid-template-columns:auto 1fr;gap:8px 14px;margin:0;display:grid}.detail-list dt{color:var(--text-muted);font-size:13px}.detail-list dd{margin:0}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.staffbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 0 4px;display:flex}.staffbar__brand{letter-spacing:.02em;color:var(--text-muted);font-size:13px;font-weight:700}.staffbar__who{align-items:center;gap:10px;display:flex}.staffbar__name{font-size:14px;font-weight:600}.staffbar__preset{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);text-transform:capitalize;border-radius:999px;padding:1px 8px;font-size:12px}.toolbar__datepick{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;padding:5px 8px}.segmented--wrap{flex-wrap:wrap}.drawer__foot--wrap{flex-wrap:wrap;gap:8px}.login{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-ui);place-items:center;padding:24px 16px;font-size:14px;line-height:1.45;display:grid}.login__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:400px;box-shadow:var(--shadow-2);padding:28px 24px}.login__card--restoring{text-align:center;color:var(--text-muted)}.login__brand{letter-spacing:.04em;color:var(--primary);font-size:20px;font-weight:800}.login__title{margin:10px 0 4px;font-size:20px}.login__lede{color:var(--text-muted);margin:0 0 18px;font-size:14px}.login__form{flex-direction:column;gap:14px;display:flex}.login__submit{justify-content:center;margin-top:4px}.login__notice{border-radius:var(--radius-sm);background:var(--danger-tint);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 30%, transparent);margin:0;padding:10px 12px;font-size:14px}.login__notice--offline{background:var(--warning-tint);color:var(--warning);border-color:color-mix(in srgb, var(--warning) 30%, transparent)}.login__hint{color:var(--text-faint);margin:16px 0 0;font-size:12.5px;line-height:1.5}.banner--success{background:var(--primary-tint);border-color:var(--primary);color:var(--text)}.badge--move{background:var(--warning-tint);border-color:var(--warning);color:var(--text);animation:1.4s ease-in-out infinite pulse-move}@keyframes pulse-move{0%,to{opacity:1}50%{opacity:.55}}.refund-readback{background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--warning);border-radius:var(--radius);padding:12px}.refund-readback h3{color:var(--text-muted);justify-content:space-between;align-items:center;margin:0 0 8px;font-size:13px;display:flex}.findbox{flex-direction:column;gap:4px;display:flex}.findbox__label{color:var(--text-muted);font-size:12px;font-weight:600}.findbox__row{gap:6px;display:flex}.findbox__input{width:min(220px,60vw);min-height:var(--tap-min);border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;padding:6px 10px}.findbox__msg{margin:2px 0 0;font-size:12.5px}.findbox__msg--warn{color:var(--warning);font-weight:600}.findbox__results{flex-direction:column;gap:4px;max-height:260px;margin:6px 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.findbox__result{text-align:left;appearance:none;width:100%;font:inherit;cursor:pointer;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);flex-direction:column;gap:2px;padding:8px 10px;display:flex}.findbox__result:hover{border-color:var(--primary);background:var(--primary-tint)}.findbox__result-meta{color:var(--text-muted);font-size:12.5px}.staffbar{border:2px solid var(--ink);border-radius:var(--radius);background:var(--ink);color:var(--on-ink);box-shadow:var(--shadow-1);align-items:center;margin:0 0 10px;padding:11px 16px}.staffbar__brand{color:#fff;font-family:var(--font-display);letter-spacing:.01em;align-items:center;gap:9px;font-size:15px;font-weight:700;display:inline-flex}.staffbar__brand:before{content:"";background:var(--acid);width:12px;height:12px;box-shadow:0 0 0 3px color-mix(in srgb, var(--acid) 30%, transparent);border-radius:50%;flex:none}.staffbar__name{color:var(--on-ink)}.staffbar__preset{color:var(--on-ink);background:#ffffff1a;border-color:#ffffff38;font-weight:700}.staffbar .btn{color:var(--on-ink);background:#ffffff14;border-color:#ffffff3d}.staffbar .btn:hover{background:#ffffff29}.staffbar :where(a,button):focus-visible{outline-color:var(--acid)}.btn{border-radius:var(--radius);font-weight:700}.btn--primary{border-color:var(--ink);font-weight:800}.btn--danger{font-weight:700}.segmented{border-radius:var(--radius)}.calendar{box-shadow:var(--shadow-1)}.day-grid__colhead{letter-spacing:.01em}.lane-cell:hover:not([data-occupied=true]){background:color-mix(in srgb, var(--primary) 12%, transparent)}.badge--status{background:var(--surface-2);border-color:var(--border);color:var(--text-muted);padding-left:18px;font-weight:700;position:relative}.badge--status:before{content:"";background:var(--st,var(--text-faint));border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:7px;transform:translateY(-50%)}.badge--status[data-status=held]{--st:var(--warning)}.badge--status[data-status=awaiting_payment]{--st:#c2740b}.badge--status[data-status=confirmed]{--st:var(--primary)}.badge--status[data-status=checked_in]{--st:var(--info)}.badge--status[data-status=completed]{--st:#0f9d84}.badge--status[data-status=cancelled],.badge--status[data-status=no_show]{--st:var(--danger)}.badge--status[data-status=expired],.badge--status[data-status=draft]{--st:var(--text-faint)}.login__brand{border:2px solid var(--ink);border-radius:var(--radius);background:var(--acid);color:var(--ink-on-acid);font-family:var(--font-display);letter-spacing:.06em;place-items:center;padding:8px 14px;display:inline-grid}.login__logo{width:auto;height:22px;display:block}.drawer__head{background:linear-gradient(180deg, color-mix(in srgb, var(--primary) 5%, var(--surface)), var(--surface))}.drawer__head h2{letter-spacing:-.01em;font-weight:800}.login{background:radial-gradient(130% 95% at 85% 6%, color-mix(in srgb, var(--acid) 30%, transparent), transparent 55%), radial-gradient(120% 90% at 12% 100%, color-mix(in srgb, var(--coral) 22%, transparent), transparent 55%), linear-gradient(150deg, var(--ink), var(--ink-2))}.login__card{border:2px solid var(--ink);box-shadow:12px 12px 0 var(--acid)}.staffbar__nav{flex-wrap:wrap;gap:6px;display:flex}.staffbar__tab{appearance:none;cursor:pointer;font:inherit;color:var(--on-ink);background:#ffffff14;border:1px solid #ffffff38;border-radius:999px;padding:5px 14px;font-size:13px;font-weight:700;transition:background .12s,color .12s}.staffbar__tab:hover{background:#ffffff29}.staffbar__tab[aria-current=page]{background:var(--acid);border-color:var(--acid);color:var(--ink)}.staffbar__tab:focus-visible{outline:2px solid var(--acid);outline-offset:2px}.receivables__panel{gap:14px;display:grid}.receivables__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.receivables__head-right{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.receivables__title{font-family:var(--font-display);margin:0;font-size:20px}.receivables__total{color:var(--text-muted);margin:0;font-size:14px}.receivables__total strong{color:var(--text);font-size:16px}.receivables__msg{border:1px solid var(--border);border-left:4px solid var(--acid);border-radius:var(--radius);background:color-mix(in srgb, var(--acid) 10%, var(--surface));margin:0;padding:10px 12px;font-size:14px}.receivables__list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.receivables__cust{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.receivables__cust-row{cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.receivables__cust-row:hover{background:var(--surface-2)}.receivables__cust-name{font-weight:700}.receivables__cust-sum{color:var(--text-muted);font-size:14px}.receivables__cust-sum strong{color:var(--text)}.receivables__inv-list{gap:10px;margin:0;padding:0 14px 12px;list-style:none;display:grid}.receivables__inv{border-top:1px dashed var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.receivables__inv-meta{flex-wrap:wrap;align-items:baseline;gap:10px;font-size:14px;display:flex}.receivables__inv-code{font-weight:700}.receivables__inv-date{color:var(--text-muted);font-size:13px}.receivables__inv-balance{font-variant-numeric:tabular-nums}.receivables__pay{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.receivables__pay-amount{border:1px solid var(--border);width:120px;font:inherit;text-align:right;font-variant-numeric:tabular-nums;border-radius:8px;padding:6px 8px}.receivables__pay-note{border:1px solid var(--border);min-width:140px;font:inherit;border-radius:8px;flex:160px;padding:6px 8px}.admin-layout{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45}.admin-layout[data-layout=desktop]{grid-template-columns:256px minmax(0,1fr);align-items:start;display:grid}.admin-layout[data-layout=tablet]{--slot-h:30px;--axis-w:76px;--tap-min:44px;font-size:15px;display:block}.admin-sidebar{background:var(--ink);height:100vh;color:var(--on-ink);border-right:1px solid var(--line-ink);align-self:start;position:sticky;top:0;overflow-y:auto}.sidebar{flex-direction:column;gap:6px;min-height:100%;padding:18px 14px 16px;display:flex}.sidebar__brand{align-items:center;gap:10px;padding:4px 10px 16px;display:flex}.sidebar__mark{color:#fff;display:block}.sidebar__logo{width:auto;height:22px;display:block}.sidebar__brand-text{text-transform:uppercase;letter-spacing:.2em;color:var(--on-ink-muted);font-size:11px;font-weight:600}.sidebar__nav{flex-direction:column;flex:auto;gap:2px;display:flex}.sidebar__item{border-radius:var(--radius);width:100%;color:var(--on-ink-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;padding:9px 11px;font-size:14px;font-weight:500;transition:background .12s,color .12s;display:flex}.sidebar__item:hover{color:var(--on-ink);background:#f4f1e814}.sidebar__item[aria-current=page]{background:var(--acid);color:var(--ink-on-acid);font-weight:700}.sidebar__item:focus-visible{outline:2px solid var(--acid);outline-offset:-2px}.sidebar__item-icon{flex:none;font-size:18px;line-height:0;display:inline-flex}.sidebar__item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar__footer{border-top:1px solid var(--line-ink);flex-direction:column;gap:10px;margin-top:10px;padding-top:12px;display:flex}.sidebar__who{align-items:center;gap:10px;min-width:0;display:flex}.sidebar__avatar{background:var(--acid);width:34px;height:34px;color:var(--ink-on-acid);font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.sidebar__who-text{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar__name{color:var(--on-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.sidebar__preset{align-self:flex-start}.sidebar__logout{border-color:var(--line-ink);width:100%;color:var(--on-ink);background:#f4f1e80f;justify-content:center;font-weight:600}.sidebar__logout:hover{background:#f4f1e824}.sidebar__logout:focus-visible{outline:2px solid var(--acid);outline-offset:2px}.admin-main{background:var(--bg);min-width:0;padding:22px 26px 56px}.admin-topbar{z-index:40;background:var(--ink);height:54px;color:var(--on-ink);border-bottom:1px solid var(--line-ink);align-items:center;gap:12px;padding:0 14px;display:flex;position:sticky;top:0}.admin-topbar__menu{border:1px solid var(--line-ink);border-radius:var(--radius);width:40px;height:40px;color:var(--on-ink);cursor:pointer;background:#f4f1e80f;flex:none;justify-content:center;align-items:center;display:inline-flex}.admin-topbar__menu:focus-visible{outline:2px solid var(--acid);outline-offset:2px}.admin-topbar__brand{align-items:center;gap:9px;min-width:0;display:inline-flex}.admin-topbar__mark{color:#fff;flex:none;display:block}.admin-topbar__logo{width:auto;height:16px;display:block}.admin-topbar__area{color:var(--on-ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.admin-drawer{z-index:50;pointer-events:none;position:fixed;inset:0}.admin-drawer__scrim{opacity:0;background:#11131180;transition:opacity .2s;position:absolute;inset:0}.admin-sidebar--drawer{width:min(280px,84vw);height:100%;box-shadow:var(--shadow-2);transition:transform .22s;position:absolute;top:0;left:0;transform:translate(-100%)}.admin-drawer--open{pointer-events:auto}.admin-drawer--open .admin-drawer__scrim{opacity:1}.admin-drawer--open .admin-sidebar--drawer{transform:none}.admin-layout[data-layout=tablet] .admin-main{padding:16px}@media (prefers-reduced-motion:reduce){.sidebar__item,.admin-drawer__scrim,.admin-sidebar--drawer{transition:none}}.cal-page{flex-direction:column;min-width:0;display:flex}.cal{--r-pill:6px;--r-card:14px;--tl-col:38px;--tl-row:62px;--tl-head:40px;--tl-c-date:76px;--tl-c-group:34px;--tl-c-court:158px;--sky:#8fd0ff;--amber:#ffce3a;--line-hour:#c7c4b7;--line-cell:#e2dfd3;--edge:#4a4c46;flex-direction:column;gap:12px;min-width:0;display:flex}.cal .btn,.selbar .btn{border:2px solid var(--ink);border-radius:var(--r-pill);min-height:42px;font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;padding:9px 16px;font-size:13px;font-weight:700;transition:transform .12s,background .12s}.cal .btn:hover:not(:disabled),.selbar .btn:hover:not(:disabled){transform:translateY(-2px)}.cal .btn--primary,.selbar .btn--primary{background:var(--acid);color:var(--ink)}.cal .btn--primary:hover:not(:disabled),.selbar .btn--primary:hover:not(:disabled){background:var(--acid-strong)}.btn--coral{background:var(--coral);color:var(--ink)}.btn--coral:hover:not(:disabled){background:var(--coral-strong)}.selbar .btn--line{color:var(--on-ink);border-color:var(--edge);background:0 0}.selbar .btn--line:hover{border-color:var(--on-ink);background:0 0}.cal-bar{background:var(--ink-2);color:var(--on-ink);border:2px solid var(--ink);border-radius:var(--r-card);gap:12px;padding:14px 16px;display:grid}.cal-bar__top{flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.cal-bar__title{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:28px;font-weight:700;line-height:1}.cal-bar__today{border:2px solid var(--ink);border-radius:var(--r-pill);background:var(--today);color:var(--ink);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;padding:7px 10px;font-size:11.5px;font-weight:700;line-height:1}.cal-bar__cur{color:var(--on-ink-muted);font-size:14px;font-weight:600}.cal-bar__new{margin-left:auto}.cal-bar__ctl{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cal-bar__search{flex:260px;min-width:220px;position:relative}.cal-ctl{background:var(--ink-3);min-height:42px;color:var(--on-ink);border:1.5px solid var(--edge);border-radius:var(--r-pill);align-items:center;gap:8px;margin:0;padding:0 11px;font-size:13.5px;font-weight:600;display:inline-flex}.cal-ctl__lbl{color:var(--on-ink-muted);letter-spacing:.12em;text-transform:uppercase;font-size:10.5px;font-weight:700}.cal-ctl select,.cal-ctl input{min-height:38px;color:inherit;font:inherit;background:0 0;border:0;outline:none}.cal-ctl select option{color:var(--ink)}.cal-ctl input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.cal-ctl input[type=text]{width:110px}.cal-ctl:focus-within{border-color:var(--acid)}.cal-ctl--unit{background:0 0;border-style:dashed}.cal-nav,.cal-seg{border:1.5px solid var(--edge);border-radius:var(--r-pill);display:inline-flex;overflow:hidden}.cal-nav button,.cal-seg button{background:var(--ink-3);min-height:42px;color:var(--on-ink);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:0;padding:0 14px;font-size:12.5px;font-weight:700}.cal-nav button+button,.cal-seg button+button{border-left:1.5px solid var(--edge)}.cal-nav button:hover{background:#3b3d38}.cal-seg button{color:var(--on-ink-muted);background:0 0}.cal-seg button.is-on{background:var(--today);color:var(--ink)}.cal-nav button:focus-visible,.cal-seg button:focus-visible{outline:2px solid var(--acid);outline-offset:-3px}.findbox--compact{background:var(--ink-3);border:1.5px solid var(--edge);border-radius:var(--r-pill);flex-direction:row;align-items:center;gap:8px;min-height:42px;padding:0 4px 0 11px;display:flex}.findbox--compact:focus-within{border-color:var(--acid)}.findbox--compact .findbox__kicker{color:var(--on-ink-muted);letter-spacing:.12em;text-transform:uppercase;font-size:10.5px;font-weight:700}.findbox--compact .findbox__row{flex:1;gap:6px;min-width:0;display:flex}.findbox--compact .findbox__input{min-width:0;min-height:36px;color:var(--on-ink);font:inherit;background:0 0;border:0;outline:none;flex:1;font-size:14px}.findbox--compact .findbox__input::placeholder{color:var(--on-ink-muted)}.findbox--compact .btn{border-width:1.5px;border-color:var(--edge);background:var(--ink-2);min-height:34px;color:var(--on-ink);padding:4px 12px;font-size:12px}.findbox--compact .findbox__results,.findbox--compact .findbox__msg{z-index:30;background:var(--surface);color:var(--ink);border:2px solid var(--ink);box-shadow:var(--shadow-2);border-radius:10px;margin:0;position:absolute;top:calc(100% + 6px);left:0;right:0}.findbox--compact .findbox__msg{padding:10px 12px}.tl-legend{flex-wrap:wrap;align-items:center;gap:8px 16px;padding:0 2px;font-size:12.5px;display:flex}.tl-legend__k{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:10.5px;font-weight:700}.tl-legend__item{color:var(--ink-3);align-items:center;gap:6px;font-weight:600;display:inline-flex}.tl-legend__sw{border:1.5px solid var(--ink);border-radius:3px;width:20px;height:14px;display:inline-block}.tl-legend__sw--free{background:var(--surface)}.tl-legend__sw--closed{background:repeating-linear-gradient(135deg,#e6e3d7 0 4px,#f1eee4 4px 8px)}.tl-legend .tl__rib.tl-legend__tag{border:1.5px solid var(--ink);border-radius:4px;position:static}.tl-empty{border:2px dashed var(--ink);border-radius:var(--r-card);background:var(--acid-soft);margin:0;padding:10px 14px;font-weight:600}.tl{background:var(--surface);border:2px solid var(--ink);border-radius:var(--r-card);overscroll-behavior:contain;min-height:300px;max-height:calc(100vh - 250px);position:relative;overflow:auto}.tl__grid{grid-template-columns:var(--tl-c-date) var(--tl-c-group) var(--tl-c-court) repeat(36, var(--tl-col));grid-template-rows:var(--tl-head);grid-auto-rows:var(--tl-row);width:max-content;display:grid;position:relative}.tl__row{display:contents}.tl__h{z-index:6;background:var(--surface-2);border-bottom:2px solid var(--ink);color:var(--ink-3);font-family:var(--font-display);white-space:nowrap;align-items:center;padding-left:5px;font-size:11.5px;font-weight:700;display:flex;position:sticky;top:0}.tl__h--hour{box-shadow:inset 1px 0 0 var(--line-hour)}.tl__h--corner{z-index:9;color:var(--muted);font-family:var(--font);letter-spacing:.14em;text-transform:uppercase;justify-content:center;padding:0;font-size:10.5px}.tl__sticky-date{z-index:4;position:sticky;left:0}.tl__sticky-group{left:var(--tl-c-date);z-index:4;position:sticky}.tl__sticky-court{left:calc(var(--tl-c-date) + var(--tl-c-group));z-index:4;position:sticky}.tl__h.tl__sticky-date,.tl__h.tl__sticky-group,.tl__h.tl__sticky-court{z-index:9}.tl__date{background:var(--surface-2);border-right:1.5px solid var(--ink);border-bottom:2px solid var(--ink);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex}.tl__date-wd{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px;font-weight:700;line-height:1}.tl__date-dm{color:var(--muted);font-size:12px;font-weight:700}.tl__date.is-today{background:var(--today)}.tl__date.is-today .tl__date-dm{color:var(--ink)}.tl__date-past{color:var(--muted);font-size:11px;font-weight:700}.tl__group{background:var(--ink);color:var(--on-ink);border-bottom:2px solid var(--ink);justify-content:center;align-items:center;display:flex}.tl__group span{writing-mode:vertical-rl;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;font-size:10px;font-weight:700;transform:rotate(180deg)}.tl__court{background:var(--surface);border-right:2px solid var(--ink);border-bottom:1px solid var(--line-cell);flex-direction:column;justify-content:safe center;gap:4px;min-width:0;padding:6px 10px;display:flex}.tl__court-name{overflow-wrap:anywhere;font-family:var(--font-display);letter-spacing:-.01em;flex-shrink:0;font-size:14.5px;font-weight:700;line-height:1.15}.tl__court-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:5px;font-size:11px;display:flex}.tl__court-setting,.tl__court-day{display:none}.tl__court-warn{color:var(--today-ink);font-weight:700}.tl__pill{border:1.5px solid var(--ink);background:var(--surface);color:var(--ink);font-family:var(--font-display);border-radius:4px;padding:0 5px;font-size:10.5px;font-weight:700;line-height:1.55}.tl__pill--in{background:var(--acid-soft)}.tl__cell{border:0;border-bottom:1px solid var(--line-cell);background:var(--surface);min-width:0;box-shadow:inset 1px 0 0 var(--line-cell);font:inherit;border-radius:0;margin:0;padding:0;display:block}.tl__cell--hour{box-shadow:inset 1px 0 0 var(--line-hour)}button.tl__cell{cursor:copy}button.tl__cell:hover{background:var(--acid-soft)}button.tl__cell:focus-visible{outline:3px solid var(--today);outline-offset:-3px;border-radius:0}.tl__cell--closed{cursor:not-allowed;background:repeating-linear-gradient(135deg,#e6e3d7 0 6px,#f1eee4 6px 12px)}.tl__court.is-day-end,.tl__cell.is-day-end{border-bottom:2px solid var(--ink)}.tl__blk{z-index:2;border:1.5px solid var(--ink);border-radius:var(--r-pill);min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;flex-direction:column;justify-content:center;gap:2px;margin:5px 2px;padding:5px 7px;line-height:1.2;transition:transform .1s,box-shadow .1s;display:flex;position:relative;overflow:hidden}.tl__blk:hover{box-shadow:0 3px 0 var(--ink);transform:translateY(-1px)}.tl__blk:focus-visible{outline:3px solid var(--today);outline-offset:1px}.tl__blk--le{background:var(--sky)}.tl__blk--hd{background:var(--acid)}.tl__blk--sk{background:var(--coral)}.tl__blk--ve{background:var(--amber)}.tl__blk--khoa{background:repeating-linear-gradient(135deg,#d6d3c7 0 7px,#e7e4d9 7px 14px)}.tl__blk.is-pending{border-style:dashed;border-width:2px}.tl__blk.is-ghost{z-index:1;opacity:.55;pointer-events:none;background:0 0;border-style:dashed}.tl__blk.is-ghost .tl__blk-title{text-decoration:line-through}.tl__blk.has-ribbon{padding-top:17px;padding-bottom:3px}.tl__blk-title{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;padding-right:2px;font-size:12.5px;font-weight:700;line-height:1.15;overflow:hidden}.tl__blk-sub{color:#262824;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;overflow:hidden}.tl__blk.is-half{justify-content:center;margin-top:3px;margin-bottom:3px;padding:2px 6px}.tl__blk.is-half .tl__blk-sub{display:none}.tl__blk.is-half.has-ribbon{padding-top:2px}.tl__rib{border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-bottom-right-radius:5px;padding:3px 6px;font-size:9.5px;font-weight:700;line-height:1;position:absolute;top:0;left:0}.tl__blk.is-half .tl__rib{border-right:0;border-left:1.5px solid var(--ink);border-bottom-right-radius:0;border-bottom-left-radius:5px;left:auto;right:0}.tl__rib--cho{background:var(--today);color:var(--ink)}.tl__rib--giu{background:var(--surface);color:var(--ink)}.tl__rib--nhan{background:var(--ink);color:var(--acid)}.tl__sel{z-index:3;border:2.5px dashed var(--ink);border-radius:var(--r-pill);background:var(--acid-soft);box-shadow:0 0 0 3px var(--today);font-family:var(--font-display);white-space:nowrap;pointer-events:none;flex-direction:column;justify-content:center;margin:4px 1px;padding:4px 8px;font-size:12.5px;font-weight:700;line-height:1.15;display:flex;overflow:hidden}.tl__sel small{color:var(--ink-3);font-family:var(--font);font-size:11px;font-weight:600}.tl__sel.is-half{margin-top:3px;margin-bottom:3px;padding:2px 6px}.tl__now{z-index:1;background:var(--today);pointer-events:none;border-radius:2px;justify-self:start;width:3px}.tl__now-tag{z-index:10;border:1.5px solid var(--ink);background:var(--today);color:var(--ink);font-family:var(--font-display);white-space:nowrap;pointer-events:none;border-radius:4px;place-self:center start;padding:4px 6px;font-size:11px;font-weight:700;position:sticky;top:0}.selbar{z-index:20;background:var(--ink);color:var(--on-ink);border-top:3px solid var(--acid);flex-wrap:wrap;align-items:center;gap:12px;margin:0 -26px -56px;padding:12px 26px;display:flex;position:sticky;bottom:0}.selbar p{margin:0}.selbar__tip{flex:320px;align-items:flex-start;gap:10px;min-width:0;display:flex}.selbar__hint{min-width:0;color:var(--on-ink-muted);flex:auto;font-size:14px}.selbar__close{border:1.5px solid var(--edge);border-radius:var(--r-pill);width:40px;height:40px;color:var(--on-ink);cursor:pointer;background:0 0;flex:none;place-items:center;margin:-4px 0;padding:0;font-size:15px;line-height:1;display:grid}.selbar__close:hover{border-color:var(--on-ink)}.selbar__close:focus-visible{outline:3px solid var(--acid);outline-offset:2px}.selbar .selbar__help{flex:none;min-width:44px;padding:9px 0;font-size:16px}.selbar__hint b{color:var(--acid);font-weight:700}.selbar__what{font-family:var(--font-display);letter-spacing:-.01em;font-size:16.5px;font-weight:700}.selbar__what small{color:var(--on-ink-muted);font-family:var(--font);letter-spacing:0;font-size:12px;font-weight:600;display:block}.selbar__dur{border:1.5px solid var(--edge);border-radius:var(--r-pill);display:inline-flex;overflow:hidden}.selbar__dur button{background:var(--ink-3);min-height:40px;color:var(--on-ink);font-family:var(--font-display);cursor:pointer;border:0;padding:0 12px;font-size:13px;font-weight:700}.selbar__dur button:disabled{opacity:.3;cursor:not-allowed}.selbar__dur span{background:var(--ink-2);border-left:1.5px solid var(--edge);border-right:1.5px solid var(--edge);font-family:var(--font-display);align-items:center;padding:0 12px;font-size:13.5px;font-weight:700;display:flex}.selbar__price{border:2px solid var(--ink);border-radius:var(--r-pill);background:var(--acid);color:var(--ink);font-family:var(--font-display);padding:7px 10px;font-size:13.5px;font-weight:700}.selbar__policy{max-width:260px;color:var(--on-ink-muted);flex:150px;font-size:12px;font-weight:600}.selbar__policy.is-le{color:var(--amber)}.selbar__actions{gap:8px;margin-left:auto;display:flex}.admin-layout[data-layout=tablet] .selbar{margin:0 -16px -16px;padding:10px 16px}@media (width<=760px){.cal{--tl-c-date:0px;--tl-c-group:0px;--tl-c-court:124px;--tl-col:46px;--tl-row:64px;gap:10px}.cal-bar{gap:10px;padding:12px}.cal-bar__title{font-size:23px}.cal-bar__cur{order:3;width:100%}.cal-bar--bottom-actions .cal-bar__new,.cal-ctl--unit{display:none}.cal-bar__search{flex-basis:100%}.cal-bar__ctl .cal-ctl,.cal-nav{flex:auto}.cal-nav button{white-space:nowrap;flex:1;padding:0 8px}.cal-seg{width:100%}.cal-seg button{flex:1}.tl{max-height:calc(100vh - 190px)}.tl--week{--tl-row:72px}.tl__grid{grid-auto-rows:minmax(var(--tl-row), auto)}.tl__date,.tl__group,.tl__h.tl__sticky-date,.tl__h.tl__sticky-group{display:none}.tl__court{padding:6px 8px}.tl__court-name{font-size:13px}.tl__court-setting{display:inline}.tl--week .tl__court-day{color:var(--ink);font-weight:700;display:inline}.tl-legend{gap:6px 12px}.selbar{gap:9px}.selbar__what{width:100%;font-size:15px}.selbar__policy{width:100%;max-width:none}.selbar__actions{width:100%;margin-left:0}.selbar__actions .btn{flex:1;padding:9px 8px;font-size:12px}.selbar__actions .selbar__help{flex:0 0 44px;padding:9px 0;font-size:16px}}@media (prefers-reduced-motion:reduce){.cal .btn,.selbar .btn,.tl__blk{transition:none}}.cal .month{background:var(--ink);border:2px solid var(--ink);border-radius:14px;gap:0}.cal .month__weekday{background:var(--surface-2);border-bottom:2px solid var(--ink);color:var(--ink-3);font-family:var(--font-display);letter-spacing:.06em;padding:8px;font-size:12px;font-weight:700}.cal .month__cell{border-right:1px solid var(--line-cell);border-bottom:1px solid var(--line-cell)}.cal .month__cell:hover{background:var(--acid-soft)}.cal .month__cell.is-outside{background:repeating-linear-gradient(135deg,#ece9dd 0 6px,#f1eee4 6px 12px)}.cal .month__cell.is-today{box-shadow:inset 0 0 0 3px var(--today)}.cal .month__daynum{font-family:var(--font-display);font-weight:700}.cal .month__cell.is-today .month__daynum{color:var(--ink)}.cal .month__chip{border:1px solid var(--ink);color:var(--ink);border-radius:4px}.cal .month__chip--le{background:var(--sky)}.cal .month__chip--hd{background:var(--acid)}.cal .month__chip--sk{background:var(--coral)}.cal .month__chip--ve{background:var(--amber)}.cal .month__chip--khoa{background:#e0ddd2}.drawer-scrim{background:#11131173}.drawer{background:var(--paper);border-left:2px solid var(--ink);box-shadow:none}.drawer__head{background:var(--surface);border-bottom:2px solid var(--ink);padding:16px 18px}.drawer__head h2{font-family:var(--font-display);letter-spacing:-.03em;font-size:24px;font-weight:700}.drawer__head .btn--ghost{border:2px solid var(--ink);background:var(--surface);width:38px;min-height:38px;font-family:var(--font-display);border-radius:6px;padding:0;font-weight:700}.drawer__head .btn--ghost:hover{background:var(--acid-soft)}.drawer__body{padding:16px 18px}.drawer__foot{border-top:2px solid var(--ink);padding:14px 18px}.drawer__foot .btn,.drawer__body .btn{border:2px solid var(--ink);min-height:42px;font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;border-radius:6px;padding:9px 16px;font-size:13px;font-weight:700}.drawer .btn--primary{background:var(--acid);color:var(--ink)}.drawer .btn--primary:hover:not(:disabled){background:var(--acid-strong)}.drawer .btn--danger{color:var(--ink);background:var(--coral)}.drawer .field>label,.drawer .field>.field__label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:10.5px;font-weight:700}.drawer .field input[type=text],.drawer .field input[type=date],.drawer .field input[type=number],.drawer .field input[type=tel],.drawer .field select,.drawer .field textarea{border:2px solid var(--ink);background:var(--surface);border-radius:6px;font-size:15px}.drawer .field input:focus-visible,.drawer .field select:focus-visible,.drawer .field textarea:focus-visible{outline:3px solid var(--today);outline-offset:1px}.drawer .booking-context{background:var(--surface);border:2px solid var(--ink);border-radius:14px}.drawer .purpose-option{border:2px solid var(--ink);font-family:var(--font-display);border-radius:6px;font-weight:700}.drawer .purpose-option[aria-checked=true]{background:var(--acid);color:var(--ink);box-shadow:0 3px 0 var(--ink)}.drawer .segmented{border:2px solid var(--ink);border-radius:6px}.drawer .segmented button{font-family:var(--font-display);font-weight:700}.drawer .segmented button+button{border-left:2px solid var(--ink)}.drawer .price-summary{background:var(--surface);border:2px solid var(--ink);border-radius:14px}.drawer .price-summary .price-total dt,.drawer .price-summary .price-total dd{border-top:2px dashed var(--ink);font-family:var(--font-display);padding-top:8px;font-size:18px}.reason-chips{flex-wrap:wrap;gap:8px;margin:2px 0 8px;display:flex}.reason-chip{appearance:none;font:inherit;font-family:var(--font-display);min-height:var(--tap-min);border:2px solid var(--ink);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:4px 14px;font-size:13px;font-weight:700}.reason-chip:hover{background:var(--acid-soft)}.reason-chip[aria-pressed=true]{background:var(--acid);color:var(--ink-on-acid)}.banner--correction{background:var(--warning-tint);border-color:var(--warning);color:var(--text);margin-top:0}.early-confirm{background:var(--warning-tint);align-items:center}.early-confirm__text{flex:100%;margin:0;font-weight:600}.cancel-summary{overflow-wrap:anywhere;margin:0 0 14px;font-weight:600}.history-panel{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);margin-top:14px;padding:12px}.history-panel h3{color:var(--text-muted);margin:0 0 8px;font-size:13px}.history-panel__error{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.history-panel__error .field__hint{flex:200px;margin:0}.history-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.history-list__row{overflow-wrap:anywhere;font-size:13.5px}.history-list__row+.history-list__row{border-top:1px solid var(--border);padding-top:10px}.history-list__head{flex-wrap:wrap;align-items:baseline;gap:2px 10px;display:flex}.history-list__time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12.5px}.history-list__status{font-weight:700}.history-list__reason{color:var(--text-muted)}.pw-form{text-align:left;gap:.85rem;display:grid}.pw-form__show{align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.pw-form__submit{width:100%}.pw-screen__logout{margin-top:.75rem}.pw-dialog{z-index:60;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.pw-dialog__scrim{background:#1113118c;position:absolute;inset:0}.pw-dialog__card{background:var(--paper,#fffdf6);color:#111311;border:2px solid #111311;border-radius:14px;gap:.85rem;width:min(420px,100%);max-height:calc(100vh - 32px);padding:1.1rem 1.2rem 1.25rem;display:grid;position:relative;overflow-y:auto}.pw-dialog__head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.pw-dialog__title{margin:0;font-size:1.15rem}.pw-dialog__close{width:36px;height:36px;color:inherit;cursor:pointer;background:0 0;border:2px solid #111311;border-radius:6px;font-size:1.3rem;line-height:1}.pw-dialog__done{margin:0;font-weight:600}.online-orders,.online-orders__panel{flex-direction:column;gap:16px;padding:18px;display:flex}.online-orders__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.online-orders__intro{flex-direction:column;gap:6px;max-width:640px;display:flex}.online-orders__title{letter-spacing:-.01em;color:var(--text);align-items:center;gap:8px;margin:0;font-size:20px;font-weight:800;display:flex}.online-orders__hint{color:var(--text-muted);margin:0;font-size:12.5px;line-height:1.5}.online-orders__range{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.online-orders__range-field{color:var(--text-muted);flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;display:flex}.online-orders__range-field input{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;padding:8px 10px}.online-orders__action-error{border:1px solid color-mix(in srgb, var(--danger,#c0392b) 45%, var(--border));border-radius:var(--radius);background:color-mix(in srgb, var(--danger,#c0392b) 10%, var(--surface));color:var(--text);padding:10px 12px;font-size:13px}.online-orders__group{flex-direction:column;gap:8px;display:flex}.online-orders__group-title{color:var(--text);align-items:center;gap:8px;margin:4px 0 0;font-size:15px;font-weight:700;display:flex}.online-orders__badge{background:var(--primary-tint,var(--surface-3,var(--border)));min-width:22px;height:22px;color:var(--primary-strong,var(--primary));border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:12.5px;font-weight:700;display:inline-flex}.online-orders__empty{color:var(--text-muted);margin:0;font-size:13.5px}.online-orders__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.online-orders__row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-1);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;display:flex}.online-orders__cell{flex-direction:column;gap:2px;display:flex}.online-orders__cell--who{flex:180px;min-width:180px}.online-orders__cell--num{text-align:right;align-items:flex-end;margin-left:auto}.online-orders__customer{color:var(--text);font-weight:700}.online-orders__code{color:var(--text-faint);font-size:12px;font-family:var(--mono,ui-monospace, monospace)}.online-orders__court{color:var(--text);font-weight:600}.online-orders__when{color:var(--text-muted);font-size:12.5px}.online-orders__alloc{color:var(--text-faint);font-size:12px}.online-orders__price{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.online-orders__countdown{color:var(--primary-strong,var(--primary));font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:700}.online-orders__actions,.online-orders__confirm{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.online-orders__confirm-text{color:var(--text-muted);font-size:12.5px}@media (width<=640px){.online-orders__cell--num{text-align:left;align-items:flex-start;margin-left:0}.online-orders__actions{width:100%}}.contracts{gap:1rem;max-width:880px;padding:1rem;display:grid}.contracts__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.contracts__title{margin:0;font-size:1.25rem}.contracts__subnav{background:var(--surface-2,#f1f1f1);border-radius:999px;gap:.25rem;padding:.2rem;display:inline-flex}.contracts__subtab{cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;border-radius:999px;padding:.4rem .9rem}.contracts__subtab[aria-current=page]{background:var(--surface,#fff);font-weight:600;box-shadow:0 1px 2px #0000001f}.contracts__form{gap:.85rem;display:grid}.contracts__row{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.contracts__weekday-row{flex-wrap:wrap;gap:.4rem;display:flex}.contracts__weekdays{border:1px solid var(--line,#ddd);border-radius:10px;padding:.6rem .75rem}.contracts__code{color:var(--text-muted,#666);margin:0;font-size:.9rem}.contracts__actions{flex-wrap:wrap;gap:.6rem;margin-top:.35rem;display:flex}.contracts__counts{font-size:.95rem}.contracts__progress{font-weight:600}.contracts__error{color:var(--danger,#b00020);font-weight:600}.contracts__occurrences{border:1px solid var(--line,#ddd);border-radius:10px;gap:2px;max-height:340px;margin:.5rem 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.contracts__occ{border-bottom:1px solid var(--line-2,#eee);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2fr);align-items:center;gap:.5rem;padding:.4rem .7rem;font-size:.9rem;display:grid}.contracts__occ:last-child{border-bottom:0}.contracts__occ--conflict{background:var(--danger-surface,#fdecef)}.contracts__occ-conflict{color:var(--danger,#b00020);font-weight:600}.contracts__occ-ok{color:var(--success,#227a38)}.contracts__rows{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.contracts__row-item{border:1px solid var(--line,#ddd);border-radius:10px;overflow:hidden}.contracts__row-btn{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:.5rem;padding:.7rem .85rem;display:grid}.contracts__row-btn:hover{background:var(--surface-2,#f6f6f6)}.contracts__row-status--terminated{color:var(--text-muted,#777)}.contracts__detail{border-top:1px solid var(--line,#ddd);background:var(--surface-2,#fafafa);gap:.6rem;padding:.75rem .85rem;display:grid}.contracts__detail-title{margin:.2rem 0 0;font-size:1rem}.contracts__cancel{border:1px dashed var(--line,#ccc);border-radius:10px;gap:.6rem;padding:.7rem;display:grid}.contracts__msg{color:var(--success,#227a38);font-weight:600}.contracts .chip{appearance:none;font:inherit;font-family:var(--font-display,inherit);min-height:var(--tap-min,32px);border:2px solid var(--ink,#111311);background:var(--surface,#fff);color:var(--ink,#111311);cursor:pointer;border-radius:999px;padding:4px 14px;font-size:13px;font-weight:700}.contracts .chip:hover{background:var(--acid-soft,#f3ffc2)}.contracts .chip[aria-pressed=true]{background:var(--acid,#dfff32);color:var(--ink-on-acid,#111311)}.contracts__row-head{align-items:stretch;display:flex}.contracts__row-head .contracts__row-btn{flex:auto;min-width:0}.contracts__row-edit{flex:none;align-self:center;margin-right:.6rem}.contracts__edit{gap:.75rem;display:grid}.contracts__edit h3{margin:0;font-size:1.05rem}.contracts__edit-note{color:var(--text-muted,#666);margin:0;font-size:.9rem}.contracts__edit-list{gap:.25rem;display:grid}.contracts__edit-list-title{margin:.25rem 0 0;font-size:.95rem}.contracts__edit-list .contracts__occ{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1.5fr) minmax(0,1.5fr)}.contracts__occ--cancel{color:var(--text-muted,#777);text-decoration:line-through}.contracts__changes{gap:.15rem;margin:0;padding-left:1.1rem;font-size:.92rem;display:grid}.contracts__change-label{color:var(--text-muted,#666)}.contracts__history{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.contracts__history-item{border:1px solid var(--line,#ddd);background:var(--surface,#fff);border-radius:10px;gap:.3rem;padding:.5rem .7rem;display:grid}.contracts__history-head,.contracts__history-summary{margin:0;font-size:.9rem}.contracts__history-summary{color:var(--text-muted,#666)}.contracts__term-choices{flex-wrap:wrap;gap:.4rem;display:flex}.contracts__lines{gap:.75rem;display:grid}.contracts__line{border:2px solid var(--ink,#111311);border-radius:var(--radius,2px);background:var(--surface,#fff);gap:.7rem;min-width:0;margin:0;padding:.75rem;display:grid}.contracts__line legend{font-family:var(--font-display,inherit);padding:0 .35rem;font-weight:700}.contracts__line-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.5rem 1rem;display:flex}.contracts__line-tools{gap:.4rem;display:flex}.contracts__line-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:.7rem;display:grid}.contracts__weekdays-label{margin:0 0 .4rem;font-size:.9rem;font-weight:600}.contracts__line-quote{flex-wrap:wrap;grid-column:span 2;gap:.4rem;display:flex}.contracts__own-dates{align-items:center;gap:.4rem;font-size:.92rem;display:flex}.contracts__line-summary{margin:0;font-size:.92rem;font-weight:600}.contracts__lines-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.contracts__lines-total{margin:0;font-weight:700}.contracts .btn--sm{min-height:var(--tap-min,32px);padding:4px 10px;font-size:.85rem}.contracts__preview-rules{gap:.15rem;margin:.25rem 0;padding-left:1.1rem;font-size:.92rem;display:grid}.contracts__groups{gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.contracts__group{gap:.5rem;display:grid}.contracts__group-head{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.contracts__group-title{flex:14rem;min-width:0;display:grid}.contracts__group-term{color:var(--text-muted,#666);font-size:.9rem}.contracts__expiry{border:1px solid;padding:2px 8px;font-size:.85rem;font-weight:700}.contracts__expiry--within_30,.contracts__expiry--within_7{color:#8a5a00;background:#fff4d6}.contracts__expiry--within_3,.contracts__expiry--expired{color:var(--danger,#b00020);background:var(--danger-surface,#fdecef)}@media (width<=720px){.contracts__line-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contracts__line-wide{grid-column:span 2}}@media (width<=620px){.contracts__row,.contracts__occ,.contracts__row-btn{grid-template-columns:1fr}.contracts__edit-list .contracts__occ{grid-template-columns:1fr;gap:.15rem}.contracts__row-head{flex-direction:column}.contracts__row-edit{align-self:flex-start;margin:0 0 .6rem .85rem}}.pickup{gap:1rem;max-width:880px;padding:1rem;display:grid}.pickup__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.pickup__title{margin:0;font-size:1.25rem}.pickup__subnav{background:var(--surface-2,#f1f1f1);border-radius:999px;gap:.25rem;padding:.2rem;display:inline-flex}.pickup__subtab{cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;border-radius:999px;padding:.4rem .9rem}.pickup__subtab[aria-current=page]{background:var(--surface,#fff);font-weight:600;box-shadow:0 1px 2px #0000001f}.pickup__form,.pickup__sell-form,.pickup__cancel{gap:.85rem;display:grid}.pickup__row{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.pickup__code{color:var(--text-muted,#666);margin:0;font-size:.9rem}.pickup__actions{flex-wrap:wrap;gap:.6rem;margin-top:.35rem;display:flex}.pickup__error{color:var(--danger,#b00020);font-weight:600}.pickup__msg{color:var(--success,#227a38);font-weight:600}.pickup__paid{align-items:center;gap:.4rem;display:inline-flex}.pickup__rows{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.pickup__row-item{border:1px solid var(--line,#ddd);border-radius:10px;overflow:hidden}.pickup__row-btn{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr) minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:.5rem;padding:.7rem .85rem;display:grid}.pickup__row-btn:hover{background:var(--surface-2,#f6f6f6)}.pickup__row-status--cancelled{color:var(--text-muted,#777)}.pickup__detail{border-top:1px solid var(--line,#ddd);background:var(--surface-2,#fafafa);gap:.6rem;padding:.75rem .85rem;display:grid}.pickup__detail-title{margin:.2rem 0 0;font-size:1rem}.pickup__detail-sold{margin:0;font-weight:600}.pickup__soldout{color:var(--danger,#b00020);font-weight:600}.pickup__cancelled-note{color:var(--text-muted,#777)}.pickup__cancel{border:1px dashed var(--line,#ccc);border-radius:10px;padding:.7rem}.pickup__tickets{border:1px solid var(--line,#ddd);border-radius:10px;gap:2px;margin:.25rem 0 0;padding:0;list-style:none;display:grid}.pickup__ticket{border-bottom:1px solid var(--line-2,#eee);grid-template-columns:minmax(0,1.6fr) minmax(0,1.6fr) minmax(0,.8fr);align-items:center;gap:.5rem;padding:.45rem .7rem;font-size:.9rem;display:grid}.pickup__ticket:last-child{border-bottom:0}.pickup__ticket-in{color:var(--success,#227a38);font-weight:600}.pickup__online-note{color:var(--text-muted,#555);margin:0;font-size:.9rem}.pickup__online{border:1px solid var(--line,#ddd);border-left:4px solid var(--sky,#8fd0ff);background:var(--surface,#fff);border-radius:10px;gap:.4rem;margin-top:.4rem;padding:.6rem .75rem;display:grid}.pickup__online-src{color:var(--text-muted,#666);font-size:.85rem;font-weight:400}.pickup__online-list{margin:0;padding:0;list-style:none;display:grid}.pickup__online-order{border-bottom:1px solid var(--line-2,#eee);grid-template-columns:minmax(0,1.5fr) minmax(0,1.3fr) minmax(0,1.4fr) auto;align-items:center;gap:.5rem;padding:.45rem 0;font-size:.9rem;display:grid}.pickup__online-order:last-child{border-bottom:0}.pickup__online-order--confirmed .pickup__online-state b{color:var(--success,#227a38)}.pickup__online-order--awaiting_payment .pickup__online-state b{color:#8a5a00}.pickup__online-order--expired,.pickup__online-order--cancelled{color:var(--text-muted,#777)}.pickup__online-badge{background:var(--today,#f9702b);color:#111311;white-space:nowrap;border-radius:6px;margin-left:.4rem;padding:.05rem .4rem;font-size:.75rem;font-weight:700;display:inline-block}.pickup__online-code{color:var(--text-muted,#777);font-variant-numeric:tabular-nums;font-size:.8rem}@media (width<=620px){.pickup__row,.pickup__row-btn,.pickup__ticket,.pickup__online-order{grid-template-columns:1fr}.pickup__online-order{gap:.15rem}}.pricing{gap:1rem;max-width:960px;padding:1rem;display:grid}.pricing__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.pricing__title{margin:0;font-size:1.25rem}.pricing__subtitle{color:var(--text-muted,#666);max-width:640px;margin:.25rem 0 0;font-size:.9rem}.pricing__msg{color:var(--success,#227a38);margin:0;font-weight:600}.pricing__panel{gap:.6rem;display:grid}.pricing__list-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.pricing__list-head h2{margin:0;font-size:1.05rem}.pricing__rows{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.pricing__row{border:1px solid var(--line,#ddd);border-radius:10px;gap:.5rem;padding:.7rem .85rem;display:grid}.pricing__row--inactive{opacity:.62;background:var(--surface-2,#fafafa)}.pricing__row-main{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.pricing__scope{font-weight:700}.pricing__price{font-variant-numeric:tabular-nums;color:var(--text,#1a1a1a)}.pricing__status{border-radius:999px;margin-left:auto;padding:.1rem .55rem;font-size:.8rem;font-weight:600}.pricing__status--active{color:var(--success,#227a38);background:var(--success-surface,#e8f5ec)}.pricing__status--inactive{color:var(--text-muted,#777);background:var(--surface-2,#eee)}.pricing__row-meta{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.4rem .75rem;margin:0;display:grid}.pricing__row-meta div{gap:1px;display:grid}.pricing__row-meta dt{text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted,#888);font-size:.72rem}.pricing__row-meta dd{margin:0;font-size:.9rem}.pricing__row-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.pricing__confirm{align-items:center;gap:.5rem;font-size:.9rem;display:inline-flex}.pricing__inactive-note{color:var(--text-muted,#888);font-size:.85rem}.pricing__form{border:1px solid var(--line,#ddd);background:var(--surface-2,#fafafa);border-radius:12px;gap:.85rem;padding:.9rem 1rem;display:grid}.pricing__form-head h2{margin:0;font-size:1.05rem}.pricing__form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;display:grid}.pricing__weekdays{border:1px solid var(--line,#ddd);border-radius:10px;padding:.6rem .75rem}.pricing__weekday-row{flex-wrap:wrap;gap:.4rem;display:flex}.pricing__window,.pricing__mindur{gap:.5rem;display:grid}.pricing__row-fields{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.pricing__check{align-items:center;gap:.45rem;font-weight:600;display:inline-flex}.pricing__active{align-self:end}.pricing__actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.pricing__error{color:var(--danger,#b00020);margin:0;font-weight:600}@media (width<=620px){.pricing__row-fields{grid-template-columns:1fr}}.reports__panel{flex-direction:column;gap:16px;min-width:0;padding:18px;display:flex}.reports__head{flex-direction:column;gap:10px;display:flex}.reports__title{letter-spacing:-.01em;color:var(--text);margin:0;font-size:20px;font-weight:800}.reports__range{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.reports__range-field{min-width:0;color:var(--text-muted);flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;display:flex}.reports__range-field input,.reports__range-field select{min-height:var(--tap-min);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-width:100%;color:var(--text);font:inherit;padding:8px 10px}.reports__range-error{color:var(--danger);margin:0;font-size:13px;font-weight:600}.reports__quick{flex-wrap:wrap;gap:6px;display:flex}.reports__quick-button{min-height:var(--tap-min);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-muted);font:inherit;cursor:pointer;padding:4px 10px;font-size:12.5px;font-weight:600}.reports__quick-button[aria-pressed=true]{border-color:var(--border-strong);background:var(--surface-2);color:var(--text)}.reports__section{flex-direction:column;gap:8px;min-width:0;display:flex}.reports__section-title{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 0;font-size:15px;font-weight:700;display:flex}.reports__period{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:600}.reports__badge{background:var(--surface-2);min-width:22px;height:22px;color:var(--text);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:12.5px;font-weight:700;display:inline-flex}.reports__empty{color:var(--text-muted);margin:0;font-size:13.5px}.reports__note{color:var(--text-faint);margin:0;font-size:12px}.reports__inline-error{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sheet-wrap{border:1px solid var(--border);background:var(--surface);max-width:100%;max-height:70vh;overflow:auto}.sheet{border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;width:100%;color:var(--text);font-size:13px;line-height:1.35}.sheet th,.sheet td{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:middle;padding:4px 8px;font-weight:400}.sheet tr>:last-child{border-right:0}.sheet tbody:last-child tr:last-child>*{border-bottom:0}.sheet thead th{z-index:2;background:var(--surface-2);border-bottom-color:var(--border);color:var(--text-muted);white-space:nowrap;font-size:12px;font-weight:600;position:sticky;top:0}.sheet tfoot th,.sheet tfoot td{border-bottom:0;border-top:1px solid var(--border);background:var(--surface-2);font-weight:700}.sheet thead th.sheet__num,.sheet td.sheet__num{text-align:right;white-space:nowrap}.sheet__nowrap{white-space:nowrap}.sheet--first-sticky tbody th,.sheet--first-sticky tfoot th,.sheet--first-sticky thead th:first-child{z-index:1;white-space:nowrap;position:sticky;left:0}.sheet--first-sticky tbody th{background:var(--surface)}.sheet--first-sticky thead th:first-child{z-index:3}.sheet__wide{overflow-wrap:anywhere;min-width:220px;max-width:360px}.sheet__reason{min-width:140px}.sheet td.sheet__field{padding:0}.sheet__input{width:100%;min-height:30px;color:inherit;font:inherit;background:0 0;border:0;border-radius:0;padding:4px 8px;display:block}.sheet__input:hover{background:var(--surface-2)}.sheet__input:focus{outline:2px solid var(--focus-ring);outline-offset:-2px;background:var(--surface)}.sheet__input[aria-invalid=true]{outline:2px solid var(--danger);outline-offset:-2px}.sheet__input--code{min-width:170px}.sheet__input--note{min-width:200px}.sheet__input--status{min-width:116px}.sheet__who{min-width:150px}.sheet__save,.sheet__problem{color:var(--text-muted);font-size:11.5px;display:block}.sheet__problem{color:var(--danger);font-weight:600}.sheet__retry{color:var(--danger);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:11.5px;font-weight:600;text-decoration:underline;display:block}@media (width<=760px){.reports__panel{padding:0}.reports__range-field input,.reports__range-field select,.sheet__input{font-size:16px}.sheet__input{min-height:38px}}.reports__grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}@media (width<=960px){.reports__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.reports__grid{grid-template-columns:1fr}}.settings{gap:1rem;max-width:860px;padding:1rem;display:grid}.settings__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.settings__title{margin:0;font-size:1.25rem}.settings__subtitle{color:var(--text-muted,#666);max-width:640px;margin:.25rem 0 0;font-size:.9rem}.settings__msg{color:var(--success,#227a38);margin:0;font-weight:600}.settings__cloudflare{border:1px solid var(--border,#e2e2e2);background:var(--surface-muted,#f7f7f7);border-radius:10px;padding:.75rem 1rem}.settings__cf-list{flex-wrap:wrap;gap:1.25rem;margin:.4rem 0 0;padding:0;font-size:.9rem;list-style:none;display:flex}.settings__cf-ok{color:var(--success,#227a38)}.settings__cf-missing{color:var(--danger,#b23b3b)}.settings__group{gap:.5rem;display:grid}.settings__group-head{border-bottom:1px solid var(--border,#e2e2e2);padding-bottom:.3rem}.settings__group-title{margin:0;font-size:1.05rem}.settings__group-hint{color:var(--text-muted,#666);margin:.15rem 0 0;font-size:.82rem}.settings__rows{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.settings__row{border:1px solid var(--border,#e6e6e6);border-radius:10px;padding:.7rem .9rem}.settings__row[data-danger=golive],.settings__row[data-danger=test]{border-color:var(--warning,#d19a2a);background:var(--warning-surface,#fdf6e6)}.settings__row-main{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.settings__row-text{flex:18rem;gap:.15rem;min-width:14rem;display:grid}.settings__row-label{font-weight:600}.settings__row-helper{color:var(--text-muted,#666);font-size:.82rem}.settings__row-control{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.settings__toggle{cursor:pointer;align-items:center;gap:.4rem;display:inline-flex}.settings__toggle-state{color:var(--text-muted,#555);min-width:2.2rem;font-size:.85rem}.settings__number{align-items:center;gap:.4rem;display:inline-flex}.settings__number .field{width:6rem}.settings__number-suffix{color:var(--text-muted,#666);font-size:.85rem}.settings__row-current{font-variant-numeric:tabular-nums;color:var(--text-muted,#555);text-align:right;min-width:4rem;font-size:.85rem}.settings__warn{background:var(--warning-surface,#fdf6e6);color:var(--warning-strong,#8a5a00);border:1px solid var(--warning,#d19a2a);border-radius:8px;margin:.55rem 0 0;padding:.5rem .7rem;font-size:.85rem;font-weight:600}.pt-config__courts{gap:.9rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.pt-config__court{border:1px solid var(--border,#e2e2e2);border-radius:10px;gap:.7rem;padding:.9rem;display:grid}.pt-config__court-head{align-items:center;gap:.5rem;display:flex}.pt-config__badge{background:var(--surface-muted,#eef0f2);color:var(--text-muted,#555);border-radius:999px;padding:.1rem .45rem;font-size:.72rem;font-weight:600}.pt-config__badge--default{background:var(--warning-surface,#fdf6e6);color:var(--warning-strong,#8a5a00)}.pt-config__window{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.pt-config__row{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}@media (width<=560px){.pt-config__row{grid-template-columns:1fr}}.staff{gap:1rem;max-width:960px;padding:1rem;display:grid}.staff__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.staff__title{margin:0;font-size:1.25rem}.staff__subtitle{color:var(--text-muted,#666);max-width:640px;margin:.25rem 0 0;font-size:.9rem}.staff__msg{color:var(--success,#227a38);margin:0;font-weight:600}.staff__panel{gap:.6rem;display:grid}.staff__list-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.staff__list-head h2{margin:0;font-size:1.05rem}.staff__rows{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.staff__row{border:1px solid var(--line,#ddd);border-radius:10px;gap:.5rem;padding:.7rem .85rem;display:grid}.staff__row--inactive{opacity:.62;background:var(--surface-2,#fafafa)}.staff__row-main{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.staff__row-name{font-weight:700}.staff__row-role{color:var(--text-muted,#666);font-size:.85rem}.staff__status{border-radius:999px;margin-left:auto;padding:.1rem .55rem;font-size:.8rem;font-weight:600}.staff__status--active{color:var(--success,#227a38);background:var(--success-surface,#e8f5ec)}.staff__status--inactive{color:var(--text-muted,#777);background:var(--surface-2,#eee)}.staff__row-meta{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.4rem .75rem;margin:0;display:grid}.staff__row-meta div{gap:1px;display:grid}.staff__row-meta dt{text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted,#888);font-size:.72rem}.staff__row-meta dd{margin:0;font-size:.9rem}.staff__inert{color:var(--danger,#b00020);font-weight:600}.staff__row-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff__confirm{align-items:center;gap:.5rem;font-size:.9rem;display:inline-flex}.staff__protected,.staff__inactive-note{color:var(--text-muted,#888);font-size:.85rem}.staff__form{border:1px solid var(--line,#ddd);background:var(--surface-2,#fafafa);border-radius:12px;gap:.85rem;padding:.9rem 1rem;display:grid}.staff__form-title{margin:0;font-size:1.05rem}.staff__form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.staff__field{gap:.3rem;display:grid}.staff__field>input.field,.staff__field>select.field{width:100%;min-height:var(--tap-min,44px);border:1px solid var(--border-strong,#8a8a8a);border-radius:var(--radius-sm,6px);background:var(--surface,#fff);color:var(--text,#111311);font:inherit;padding:8px 10px}.staff__field>input.field:disabled{background:var(--surface-2,#f1f1f1);color:var(--text-muted,#666)}.staff__field--inline{align-self:end;align-items:center;gap:.45rem;display:flex}.staff__field--wide{grid-column:1/-1}.staff__field-label{font-size:.85rem;font-weight:600}.staff__field-hint{color:var(--text-muted,#777);font-size:.78rem}.staff__password-note{margin:0}.staff__confirm{flex-wrap:wrap}.staff__credential{background:var(--acid-soft,#f3ffd0);border:2px solid #111311;border-radius:14px;gap:.5rem;padding:.85rem 1rem;display:grid}.staff__credential p{margin:0}.staff__credential-lead{font-weight:700}.staff__temp{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff__temp-value{color:#111311;letter-spacing:.04em;background:#fff;border:2px solid #111311;border-radius:6px;flex:14rem;min-width:0;padding:.55rem .7rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.15rem;font-weight:700}.staff__temp-warn{color:var(--text-muted,#555);font-size:.85rem}.staff__credential-actions{justify-content:flex-end;display:flex}.staff__temp-badge{color:#111311;background:#ffce3a;border-radius:6px;padding:.05rem .45rem;font-size:.82rem;font-weight:700;display:inline-block}.staff__preview{border:1px dashed var(--line,#ccc);background:var(--surface,#fff);border-radius:10px;padding:.6rem .8rem}.staff__preview-title{margin:0 0 .4rem;font-size:.95rem}.staff__preview-list{gap:.15rem;margin:0;padding-left:1.1rem;font-size:.88rem;display:grid}.staff__field-error{color:var(--danger,#b00020);margin:0;font-weight:600}.staff__form-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.demo{--demo-ink:var(--ink);--demo-ink-2:var(--ink-2);--demo-ink-3:var(--ink-3);--demo-accent:var(--acid);--demo-accent-strong:var(--acid-strong);--demo-accent-soft:color-mix(in srgb, var(--acid) 22%, transparent);--demo-line:color-mix(in srgb, var(--acid) 16%, transparent);--demo-on-ink:var(--on-ink);--demo-on-ink-muted:var(--on-ink-muted);background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}.demo[data-layout=tablet]{--slot-h:30px;--tap-min:44px;font-size:15px}.demo-banner{z-index:40;background:linear-gradient(90deg, var(--demo-ink), var(--demo-ink-2));color:var(--demo-on-ink);border-bottom:2px solid var(--demo-accent);flex-wrap:wrap;align-items:center;gap:10px;padding:9px 20px;font-size:13.5px;display:flex;position:sticky;top:0}.demo-banner strong{color:#fff;letter-spacing:.01em}.demo-banner__sub{color:var(--demo-on-ink-muted)}.demo-banner__dot{background:var(--demo-accent);width:9px;height:9px;box-shadow:0 0 0 4px var(--demo-accent-soft);border-radius:999px;animation:1.8s ease-in-out infinite demo-blink}@keyframes demo-blink{0%,to{opacity:1}50%{opacity:.4}}.demo-hero{background:radial-gradient(1200px 240px at 82% -40%, color-mix(in srgb, var(--acid) 24%, transparent), transparent 60%), linear-gradient(120deg, var(--demo-ink), var(--demo-ink-2) 55%, var(--demo-ink-3));color:var(--demo-on-ink);padding:26px 20px 30px;position:relative;overflow:hidden}.demo-hero__lines{pointer-events:none;opacity:.5;background-image:linear-gradient(var(--demo-line), var(--demo-line)), linear-gradient(var(--demo-line), var(--demo-line)), radial-gradient(circle at 100% 50%, transparent 58px, var(--demo-line) 59px, var(--demo-line) 61px, transparent 62px);background-position:right 90px top 0,right 0 center,right -70px center;background-repeat:no-repeat;background-size:2px 100%,100% 2px,140px 140px;position:absolute;inset:0}.demo-hero__body{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1320px;margin:0 auto;display:flex;position:relative}.demo-hero__brand{align-items:center;gap:14px;display:flex}.demo-hero__mark{border:2px solid var(--ink);border-radius:var(--radius);background:var(--demo-accent);width:52px;height:52px;color:var(--ink-on-acid);font-family:var(--font-display);letter-spacing:.02em;box-shadow:0 8px 24px color-mix(in srgb, var(--acid) 35%, transparent);justify-content:center;align-items:center;font-size:15px;font-weight:700;display:inline-flex}.demo-hero__logo{width:36px;height:auto;display:block}.demo-hero__title{letter-spacing:-.02em;color:#fff;margin:0;font-size:26px;font-weight:800}.demo-hero__facility{color:var(--demo-on-ink-muted);margin:2px 0 0;font-size:13.5px}.demo-hero__who{align-items:center;gap:10px;display:flex}.demo-hero__name{color:var(--demo-on-ink);font-weight:600}.demo-hero .staffbar__preset{color:var(--demo-on-ink);background:#ffffff1a;border-color:#ffffff2e}.demo-main{max-width:1320px;margin:0 auto;padding:20px 20px 48px}.ov{margin-bottom:18px}.ov__grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.stat-tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);flex-direction:column;gap:4px;padding:16px 16px 14px;display:flex;position:relative;overflow:hidden}.stat-tile--accent{background:linear-gradient(160deg, var(--surface), var(--primary-tint));border-color:color-mix(in srgb, var(--primary) 40%, var(--border))}.stat-tile--accent:after{content:"";background:var(--primary);width:4px;position:absolute;top:0;bottom:0;left:0}.stat-tile__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:12.5px;font-weight:600}.stat-tile__value{letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums;font-size:26px;font-weight:800}.stat-tile__sub{color:var(--text-faint);font-size:12px}.meter{background:var(--surface-3);border-radius:999px;height:8px;margin-top:6px;overflow:hidden}.meter__fill{background:linear-gradient(90deg, var(--primary), var(--primary-strong));border-radius:999px;height:100%;transition:width .4s}.ov__alerts{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.ov__alert{border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.ov__alert--warn{background:var(--warning-tint);border-color:var(--warning);color:var(--text)}.ov__alert--info{background:var(--info-tint);border-color:var(--info);color:var(--text)}.ov__alert--ok{background:var(--primary-tint);border-color:var(--primary);color:var(--text)}.demo-controls{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;padding:14px 0 8px;display:flex}.demo-controls__nav{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.demo-facility{color:var(--text-muted);flex-direction:column;gap:4px;font-size:12px;font-weight:600;display:flex}.demo-facility select{font:inherit;min-height:var(--tap-min);border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:7px 10px}.demo-controls__actions{gap:8px;margin-left:auto;display:flex}.demo-filters{flex-wrap:wrap;gap:8px;margin:6px 0 14px;display:flex}.chip{appearance:none;font:inherit;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:999px;min-height:32px;padding:6px 12px;font-size:12.5px;font-weight:600}.chip:hover{background:var(--surface-2)}.chip[aria-pressed=true]{background:var(--primary);border-color:var(--primary-strong);color:var(--primary-contrast)}.demo-workspace{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;display:grid}.demo-calendar{min-width:0}.demo-rail{flex-direction:column;gap:16px;display:flex;position:sticky;top:56px}.recon{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);padding:16px}.recon__head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.recon__head h2{margin:0;font-size:15px}.recon__total{color:var(--text-muted);font-size:12.5px}.recon__total strong{color:var(--primary-strong);font-size:14px}.recon__table{border-collapse:collapse;width:100%;font-size:13px}.recon__table th,.recon__table td{text-align:left;border-bottom:1px solid var(--border);padding:7px 6px}.recon__table th{color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;font-size:11.5px}.recon__num{text-align:right;font-variant-numeric:tabular-nums}.recon__note{color:var(--text-faint);margin:10px 0 0;font-size:11.5px}.booking-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);padding:16px}.booking-list h2{margin:0 0 10px;font-size:15px}.booking-list ul{flex-direction:column;gap:6px;max-height:60vh;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.booking-list__empty{color:var(--text-faint);margin:4px 0;font-size:13px}.booking-row{appearance:none;width:100%;font:inherit;text-align:left;cursor:pointer;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);grid-template-columns:auto 1fr auto;grid-template-areas:"time badges price""meta meta meta";align-items:center;gap:2px 10px;padding:9px 10px;display:grid}.booking-row:hover{border-color:var(--primary);background:var(--primary-tint)}.booking-row__time{font-variant-numeric:tabular-nums;grid-area:time;font-size:12.5px;font-weight:700}.booking-row__badges{flex-wrap:wrap;grid-area:badges;gap:6px;display:inline-flex}.booking-row__price{font-variant-numeric:tabular-nums;grid-area:price;font-size:12.5px;font-weight:700}.booking-row__price--muted{color:var(--text-faint);font-weight:400}.booking-row__meta{color:var(--text-muted);grid-area:meta;font-size:12px}.demo-foot{max-width:1320px;color:var(--text-faint);margin:0 auto;padding:0 20px 40px;font-size:12px}.demo-foot code{background:var(--surface-2);border:1px solid var(--border);border-radius:4px;margin:0 3px;padding:0 5px}@media (width<=1040px){.demo-workspace{grid-template-columns:1fr}.demo-rail{position:static}.ov__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.ov__grid{grid-template-columns:1fr 1fr}.demo-controls__actions{width:100%;margin-left:0}.demo-hero__title,.stat-tile__value{font-size:22px}}@media (width<=380px){.ov__grid{grid-template-columns:1fr}}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-ext-400-normal-CiZNW1ec.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-400-normal-DYBYyMQr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-400-normal-bXgqVju9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-vietnamese-500-normal-DREgrEoJ.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-500-normal-CfdwVo8-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-ext-500-normal-h0Fp6aX0.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-500-normal-CK0UkkKf.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/be-vietnam-pro-latin-500-normal-B6LVzGNe.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-500-normal-BJkVuMHw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-vietnamese-600-normal-nyU-ZL2p.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-600-normal-DkpCIyan.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-ext-600-normal-BNd8euf0.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-600-normal-BeUwKxhG.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/be-vietnam-pro-latin-600-normal-BZDkUTrt.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-600-normal-5IO4e7bK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-vietnamese-700-normal-Csr0PCuG.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-700-normal-By_5yT39.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-latin-ext-700-normal-C8_gqRu2.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-700-normal-4Hjo2OtD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/be-vietnam-pro-latin-700-normal-DlW1Zbsh.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-700-normal-C2EtzaOi.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/be-vietnam-pro-vietnamese-800-normal-D4LFh2W4.woff2)format("woff2"),url(/assets/be-vietnam-pro-vietnamese-800-normal-CA0HL1e4.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/be-vietnam-pro-latin-ext-800-normal-GEpNgheG.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-ext-800-normal-BvOXQlBN.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/be-vietnam-pro-latin-800-normal-BpHZASpI.woff2)format("woff2"),url(/assets/be-vietnam-pro-latin-800-normal-Cwp5p0gU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-vietnamese-600-normal-DUi7WF5p.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-600-normal-D6zpsUhD.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-ext-600-normal-DxxdqCpr.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-600-normal-VcznFIpX.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2)format("woff2"),url(/assets/space-grotesk-latin-600-normal-BflQw4A9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-vietnamese-700-normal-DMty7AZE.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-700-normal-Duxec5Rn.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#111311;--ink-2:#1e201d;--ink-3:#2c2e2a;--paper:#f4f1e8;--surface:#fffef8;--surface-2:#ece9dd;--text:#111311;--text-soft:#3b3c37;--muted:#64645e;--on-ink:#f4f1e8;--on-ink-muted:#b9b8b0;--acid:#dfff32;--acid-strong:#cbe91d;--acid-soft:#f3ffd0;--ink-on-acid:#111311;--coral:#ff5b3d;--coral-strong:#e8482c;--coral-soft:#ffe4dd;--line:#b9b8b0;--line-strong:#111311;--line-soft:#d7d5cb;--line-ink:#f4f1e838;--radius:8px;--radius-sm:6px;--font:"Be Vietnam Pro", "Avenir Next", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Space Grotesk", "Be Vietnam Pro", system-ui, sans-serif;--focus:#111311;--pad:clamp(18px, 4vw, 72px);--maxw:1280px;--sec-pad-block:clamp(48px, 7vw, 104px);--radius-pill:6px;--radius-card:14px;--amber:#ffce3a;--fac-0:var(--acid);--fac-1:var(--amber);--fac-2:var(--coral);--fac-3:#8fd0ff}*{box-sizing:border-box}html.public-route{scroll-behavior:smooth}html.public-route body{background:var(--paper);margin:0}body.dialog-open{overflow:hidden}button,select,input{font:inherit}.public-site{background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.55;overflow-x:hidden}.public-site a:not(.btn):not(.header-cta):not(.link-cta){color:inherit}.public-site :where(a,button,input,select,[tabindex]):focus-visible{outline:3px solid var(--ink);outline-offset:2px}.locations-section :where(a,button,[tabindex]):focus-visible,.steps-section :where(a,button,[tabindex]):focus-visible,.final-cta :where(a,button,[tabindex]):focus-visible,.public-site footer :where(a,button,[tabindex]):focus-visible{outline-color:var(--ink)}.public-skip{z-index:100;background:var(--acid);border:2px solid var(--ink);border-radius:var(--radius-pill);padding:10px 14px;font-weight:700;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.public-skip:focus{transform:translateY(0)}.public-offline{padding:10px var(--pad);background:var(--coral);color:var(--ink);text-align:center;margin:0;font-size:14px;font-weight:700}.kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 16px;font-size:13px;font-weight:700}.public-site main{counter-reset:section}.public-site main .kicker{counter-increment:section}.public-site main .kicker:before{content:counter(section, decimal-leading-zero) "  ·  ";font-variant-numeric:tabular-nums;opacity:.6}.public-header{z-index:50;min-height:72px;padding:12px var(--pad);background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.brand{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:10px;font-size:26px;font-weight:700;text-decoration:none;display:inline-flex}.brand__logo{width:auto;height:clamp(24px,6vw,30px);display:block}.public-header nav{gap:clamp(16px,3vw,40px);margin-left:auto;display:flex}.public-header nav a{text-underline-offset:6px;font-size:14px;font-weight:600;text-decoration:none}.public-header nav a:hover{text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral)}.header-cta{background:var(--ink);border-radius:var(--radius-pill);min-height:44px;color:var(--on-ink);align-items:center;padding:10px 22px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .12s,background .12s;display:inline-flex}.header-cta:hover{background:var(--coral);color:var(--ink);transform:translateY(-1px)}.hero{max-width:calc(var(--maxw) + var(--pad) * 2);margin:0 auto var(--sec-pad-block);padding:clamp(48px, 8vw, 104px) var(--pad) 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(24px,4vw,56px);scroll-margin-top:72px;display:grid}.hero-eyebrow{letter-spacing:.01em;text-transform:none;color:var(--muted);margin:0 0 26px;font-size:13px;font-weight:800}.hero-main{container-type:inline-size}.hero h1{font-family:var(--font-display);letter-spacing:-.04em;white-space:nowrap;margin:0;font-size:min(128px,17.5cqi);font-weight:700;line-height:.94}.hero h1 .hero-accent{color:var(--coral)}.hero-lede{max-width:46ch;color:var(--text-soft);text-wrap:pretty;margin:clamp(24px,3vw,34px) 0 0;font-size:clamp(16px,1.3vw,19px);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:12px;margin:clamp(28px,3vw,40px) 0 0;display:flex}.btn{border-radius:var(--radius-pill);min-height:54px;font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:2px solid #0000;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .12s,background .12s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--acid);border-color:var(--ink);color:var(--ink)}.btn--primary:hover{background:var(--acid-strong)}.btn--dark{background:var(--ink);color:var(--on-ink)}.btn--dark:hover{background:var(--coral);color:var(--ink)}.btn--ghost{border-color:var(--ink);color:var(--ink);background:0 0}.btn--ghost:hover{background:var(--ink);color:var(--on-ink)}.btn--outline-ink{border-color:var(--ink);color:var(--ink);background:0 0}.btn--outline-ink:hover{background:var(--ink);color:var(--on-ink)}.btn-row{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.btn-row--center{justify-content:center}.link-cta{color:var(--ink);font-family:var(--font-display);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;margin-top:auto;padding:0;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.link-cta:hover{color:var(--coral-strong)}.link-cta span{transition:transform .12s}.link-cta:hover span{transform:translate(3px)}.hero-aside{place-items:center;width:clamp(190px,18vw,300px);height:clamp(190px,18vw,300px);display:grid;position:relative}.hero-numeral{font-family:var(--font-display);color:#0000;-webkit-text-stroke:2px var(--ink);font-size:clamp(220px,24vw,380px);font-weight:700;line-height:1}.hero-badge{background:var(--acid);width:clamp(128px,12vw,156px);height:clamp(128px,12vw,156px);color:var(--ink);font-family:var(--font-display);letter-spacing:.08em;text-align:center;text-transform:uppercase;cursor:pointer;border:none;border-radius:50%;place-content:center;gap:4px;padding:12px;font-size:13px;font-weight:700;transition:transform .14s;display:grid;position:absolute;bottom:6px;right:-6px}.hero-badge:hover,.hero-badge:focus-visible{transform:rotate(-6deg)scale(1.04)}.hero-badge__arrow{font-size:24px}.calendar-section{max-width:calc(var(--maxw) + var(--pad) * 2);padding-inline:calc(var(--pad) - 2px);margin-inline:auto;padding-block:clamp(22px,3vw,40px);scroll-margin-top:88px}.calendar-section>*{position:relative}.calendar-section{margin-block:var(--sec-pad-block);border:2px solid var(--ink);border-radius:var(--radius-card);background:var(--surface)}.section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.section-heading h2{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(34px,5vw,60px);font-weight:700;line-height:.98}.view-toggle{border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--paper);flex:none;padding:4px;display:inline-flex}.view-toggle button{border-radius:var(--radius-pill);min-width:76px;min-height:40px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:8px 18px;font-weight:700}.view-toggle button.is-active{background:var(--ink);color:var(--on-ink)}.location-pills,.court-pills{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.court-pills{margin-top:-4px}.pill{border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;align-items:center;gap:8px;padding:9px 20px;font-size:14px;font-weight:700;transition:background .12s;display:inline-flex}.pill:hover{background:var(--acid-soft)}.pill.is-active{background:var(--acid);border-color:var(--ink)}.pill--sm{min-height:38px;padding:6px 14px;font-size:13px}.court-size{border-radius:var(--radius-pill);background:var(--ink);color:var(--on-ink);padding:2px 8px;font-size:11px;font-weight:700}.pill.is-active .court-size{background:var(--ink);color:var(--acid)}.calendar-meta-line{color:var(--text-soft);flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:0 0 18px;font-size:14px;display:flex}.calendar-meta-line strong{font-family:var(--font-display);color:var(--ink);font-size:16px}.calendar-meta-line .meta-alloc{border:1.5px solid var(--ink);border-radius:var(--radius-pill);font-family:var(--font-display);color:var(--ink);padding:2px 10px;font-size:12px;font-weight:700}.calendar-nav{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.range-controls{align-items:center;gap:10px;display:inline-flex}.range-controls button{border:1.5px solid var(--ink);background:var(--surface);width:42px;height:42px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;font-size:18px;font-weight:700;display:grid}.range-controls button:hover{background:var(--acid)}.range-label{min-width:150px;font-family:var(--font-display);text-align:center;font-size:16px;font-weight:700}.today-pill{border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--surface);min-height:42px;color:var(--ink);cursor:pointer;padding:9px 20px;font-weight:700}.today-pill:hover{background:var(--acid)}.calendar-note{border:1.5px dashed var(--line);border-radius:var(--radius);color:var(--muted);margin:18px 0 0;padding:16px;font-size:14px}.calendar-note button{border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--acid);min-height:42px;color:var(--ink);cursor:pointer;margin-top:10px;padding:9px 18px;font-weight:700}.board-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:4px;display:flex}.board-toolbar .calendar-nav{flex-wrap:wrap;justify-content:flex-start;margin:0}.board-toolbar .meta-alloc{border:1.5px solid var(--ink);border-radius:var(--radius-pill);font-family:var(--font-display);color:var(--ink);padding:4px 12px;font-size:12px;font-weight:700}.date-pop{position:relative}.range-controls .range-label--btn{border-radius:var(--radius-pill);width:auto;min-width:180px;font-family:var(--font-display);white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:15px;display:inline-flex}.range-label__icon,.range-label__icon svg{width:18px;height:18px;display:block}.range-controls button:disabled{opacity:.35;cursor:default;background:var(--surface)}.date-picker{z-index:40;border:2px solid var(--ink);border-radius:var(--radius-card);background:var(--surface);width:304px;padding:14px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 18px 44px #11131133}.date-picker__head{font-family:var(--font-display);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:15px;display:flex}.date-picker__head button{border:1.5px solid var(--ink);background:var(--surface);width:34px;height:34px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;font-size:18px;font-weight:700;display:grid}.date-picker__head button:hover{background:var(--acid)}.date-picker__head button:disabled{opacity:.35;cursor:default;background:var(--surface)}.date-picker__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.date-picker__wd{text-align:center;color:var(--muted);padding:4px 0;font-size:11px;font-weight:700}.date-picker__day{aspect-ratio:1;color:var(--ink);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:1.5px solid #0000;border-radius:8px;font-weight:600}.date-picker__day:hover:not(:disabled){background:var(--acid-soft)}.date-picker__day.is-outside{color:var(--muted)}.date-picker__day.is-today{border-color:var(--ink)}.date-picker__day.is-selected{background:var(--ink);color:var(--on-ink)}.date-picker__day:disabled{opacity:.3;cursor:default}.tl-scroll{--tl-court-w:184px;--tl-date-w:92px;--tl-cell-min:30px;--tl-row-h:58px;border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface);overscroll-behavior-x:contain;max-height:min(76vh,820px);overflow:auto}.tl-scroll:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.tl-grid{grid-template-rows:42px;grid-auto-rows:minmax(var(--tl-row-h), auto);display:grid}.tl-grid--week{--tl-court-w:160px}.tl-corner,.tl-hour{z-index:3;background:var(--paper);border-bottom:1.5px solid var(--ink);font-family:var(--font-display);align-items:center;font-size:12px;font-weight:700;display:flex;position:sticky;top:0}.tl-hour{border-left:1px solid var(--line);color:var(--ink);font-variant-numeric:tabular-nums;padding-left:6px}.tl-corner{z-index:5;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 12px;left:0}.tl-grid--week .tl-corner--court{left:var(--tl-date-w)}.tl-court,.tl-date{z-index:2;flex-direction:column;justify-content:center;gap:2px;min-width:0;display:flex;position:sticky;left:0}.tl-court{background:var(--surface);border-top:1px solid var(--line);border-right:1.5px solid var(--ink);padding:8px 12px}.tl-grid--week .tl-court{left:var(--tl-date-w)}.tl-court strong{font-family:var(--font-display);color:var(--ink);font-size:14px;line-height:1.15}.tl-court span{color:var(--muted);font-size:11.5px;line-height:1.25}.tl-court.is-focus{background:var(--acid-soft);box-shadow:inset 5px 0 0 var(--coral)}.tl-date{background:var(--paper);border-right:1px solid var(--line);text-align:center;align-items:center;padding:8px 6px}.tl-date strong{font-family:var(--font-display);color:var(--ink);font-size:13px}.tl-date span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.tl-run{border-top:1px solid var(--line);min-width:0;padding:7px 1px}.tl-court.is-group-start,.tl-run.is-group-start{border-top:1.5px solid color-mix(in srgb, var(--ink) 40%, transparent)}.tl-court.is-day-start,.tl-run.is-day-start,.tl-date.is-day-start{border-top:2px solid var(--ink)}.tl-bar{border-radius:7px;height:100%;min-height:36px;position:relative;overflow:hidden}.tl-run--free .tl-bar{background:color-mix(in srgb, var(--acid) 64%, var(--surface));border:1.5px solid var(--ink)}.tl-run--free.is-sale .tl-bar{border-color:var(--coral-strong);box-shadow:inset 0 -4px 0 var(--coral)}.tl-price{z-index:1;pointer-events:none;font-family:var(--font-display);color:var(--ink);white-space:nowrap;justify-content:center;align-items:center;gap:1px;font-size:13px;font-weight:700;display:flex;position:absolute;inset:0}.tl-price small{opacity:.72;font-size:10.5px;font-weight:600}.tl-sale{background:var(--coral);color:var(--ink);letter-spacing:.04em;text-transform:uppercase;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:10px;font-style:normal;font-weight:800}.tl-run.is-narrow .tl-price,.tl-run--busy.is-narrow .tl-bar span{display:none}.tl-segs{display:flex;position:absolute;inset:0}.tl-seg{cursor:pointer;background:0 0;border:0;flex:1 1 0;min-width:0;padding:0}.tl-seg+.tl-seg{border-left:1px dashed color-mix(in srgb, var(--ink) 16%, transparent)}.tl-seg+.tl-seg.is-hour{border-left:1px solid color-mix(in srgb, var(--ink) 28%, transparent)}.tl-seg:hover,.tl-seg:focus-visible{background:color-mix(in srgb, var(--ink) 16%, transparent);outline:none}.tl-seg.is-selected{background:color-mix(in srgb, var(--ink) 32%, transparent)}.tl-run--busy .tl-bar{background:var(--ink);color:var(--on-ink);white-space:nowrap;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.tl-run--ticket .tl-bar,.tl-run--pickup .tl-bar{background:var(--amber);border:1.5px solid var(--ink);color:var(--ink);white-space:nowrap;flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex}.tl-ticket{width:100%;font:inherit;text-align:center;appearance:none;margin:0;padding:0 4px}button.tl-ticket{cursor:pointer}button.tl-ticket:hover,button.tl-ticket:focus-visible{box-shadow:inset 0 0 0 2px var(--ink);background:color-mix(in srgb, var(--amber) 82%, var(--ink));outline:none}.tl-ticket strong{font-family:var(--font-display);font-size:13px;line-height:1.1}.tl-ticket strong small{opacity:.72;font-size:10.5px;font-weight:600}.tl-ticket span{font-variant-numeric:tabular-nums;font-size:11px;font-weight:600;line-height:1.2}.tl-run--ticket.is-full .tl-bar{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--amber) 38%, var(--surface)) 0 7px, color-mix(in srgb, var(--amber) 22%, var(--surface)) 7px 8px);border-color:color-mix(in srgb, var(--ink) 40%, transparent);color:var(--muted)}.tl-run--pickup .tl-bar{font-size:12px;font-weight:700}.tl-run--pickup.is-narrow .tl-bar span{display:none}.tl-run--closed,.tl-run--past{background:repeating-linear-gradient(135deg, transparent 0 7px, color-mix(in srgb, var(--ink) 8%, transparent) 7px 8px)}.tl-run--past{background-color:color-mix(in srgb, var(--ink) 4%, transparent)}.tl-run--note{color:var(--muted);align-items:center;padding-left:14px;font-size:13px;display:flex}.tl-run--loading .tl-bar{color:var(--muted);background:linear-gradient(90deg, color-mix(in srgb, var(--ink) 5%, transparent) 25%, color-mix(in srgb, var(--ink) 11%, transparent) 37%, color-mix(in srgb, var(--ink) 5%, transparent) 63%);background-size:400% 100%;align-items:center;padding-left:14px;font-size:12px;animation:1.4s ease-in-out infinite tl-shimmer;display:flex}@keyframes tl-shimmer{0%{background-position:100%}to{background-position:0}}@media (prefers-reduced-motion:reduce){.tl-run--loading .tl-bar{animation:none}}.legend-dot--closed{background:repeating-linear-gradient(135deg, var(--surface) 0 2px, color-mix(in srgb, var(--ink) 34%, transparent) 2px 3px);border:1px solid var(--line)}.booking-summary__row .time-pick{color:var(--ink);align-items:center;gap:8px;font-size:15px;font-weight:700;display:inline-flex}.time-pick select{border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface);min-height:40px;color:var(--ink);font-variant-numeric:tabular-nums;cursor:pointer;padding:0 10px;font-weight:700}.booking-policy-hint{color:var(--muted);margin:-12px 0 18px;font-size:12.5px;line-height:1.5}@media (width<=720px){.tl-scroll{--tl-court-w:116px;--tl-date-w:60px;--tl-cell-min:40px;--tl-row-h:62px;max-height:72vh}.tl-court{padding:6px 8px}.tl-court strong{font-size:12.5px}.tl-court span{font-size:10.5px}.board-toolbar{justify-content:flex-start;gap:10px}.board-toolbar .calendar-nav{display:contents}.tl-grid--week{--tl-date-w:48px;--tl-court-w:100px}.tl-date{padding:8px 3px}.tl-date strong{font-size:12px}.tl-date span{font-size:11px}.range-controls .range-label--btn{min-width:0;padding:0 12px;font-size:14px}.date-picker{width:min(304px,100vw - 48px);left:50%;transform:translate(-50%)}}.calendar-scroll{border:1.5px solid var(--line);border-radius:var(--radius);-webkit-overflow-scrolling:touch;overflow:auto}.booking-grid{grid-template-columns:150px repeat(7,minmax(116px,1fr));min-width:900px;display:grid}.time-corner,.day-heading,.time-label,.slot-cell{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);min-width:0}.time-corner,.time-label{z-index:5;background:var(--paper);position:sticky;left:0}.time-corner{z-index:8;letter-spacing:.08em;height:54px;color:var(--muted);align-items:center;padding:10px 14px;font-size:11px;font-weight:700;display:flex;top:0}.day-heading{z-index:6;background:var(--surface);text-align:center;place-content:center;gap:2px;height:54px;display:grid;position:sticky;top:0}.day-heading.is-selected{background:var(--acid)}.day-heading strong{font-family:var(--font-display);text-transform:uppercase;font-size:16px}.day-heading span{color:var(--muted);font-size:12px}.day-heading.is-selected span{color:var(--ink)}.time-label{align-content:center;gap:3px;min-height:62px;padding:10px 14px;display:grid}.time-label strong{font-size:13px;font-weight:700}.time-label.is-sale{background:var(--acid-soft)}.time-label.is-pickup{background:color-mix(in srgb, var(--amber) 26%, var(--paper))}.pickup-tag{border-radius:var(--radius-pill);background:var(--amber);color:var(--ink);letter-spacing:.03em;text-transform:uppercase;justify-self:start;margin-top:2px;padding:1px 7px;font-size:10px;font-weight:800}.sale-chip{border-radius:var(--radius-pill);background:var(--acid);color:var(--ink);letter-spacing:.04em;text-transform:uppercase;justify-self:start;margin-top:2px;padding:2px 9px;font-size:11px;font-weight:800}.slot-cell{background:var(--surface);place-items:stretch stretch;min-height:62px;display:grid}.slot-cell.is-free{background:var(--acid-soft)}.slot-cell.is-sale{background:color-mix(in srgb, var(--acid) 45%, var(--surface))}.slot-cell.is-pickup{box-shadow:inset 3px 0 0 var(--amber)}.slot-cell button{width:100%;min-height:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:0;align-content:center;gap:3px;padding:8px 10px;transition:background .1s;display:grid}.slot-rate{font-family:var(--font-display);color:var(--ink);font-size:13px;font-weight:700;line-height:1.1}.slot-rate small{color:var(--muted);font-size:10px;font-weight:600}.slot-sale{border-radius:var(--radius-pill);background:var(--coral);color:var(--ink);text-transform:uppercase;justify-self:start;padding:2px 8px;font-size:11px;font-weight:800}.slot-cell button:hover,.slot-cell button:focus-visible{background:var(--acid);outline:2px solid var(--ink);outline-offset:-2px}.slot-cell.is-booked{background:var(--surface-2)}.unavailable{width:100%;height:100%;color:var(--muted);text-align:center;align-content:center;place-items:center;padding:12px;display:grid}.slot-cell.is-booked .unavailable{background:var(--surface-2)}.unavailable strong{font-size:13px;font-weight:700}.day-view{gap:14px;display:grid}.day-strip{-webkit-overflow-scrolling:touch;gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.day-pill{border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface);min-width:64px;color:var(--ink);cursor:pointer;text-align:center;flex:none;gap:2px;padding:10px 12px;display:grid}.day-pill span{color:var(--muted);font-size:12px}.day-pill strong{font-family:var(--font-display);font-size:15px}.day-pill.is-active{background:var(--acid)}.day-pill.is-active span{color:var(--ink)}.day-blocks{gap:10px;margin:0;padding:0;list-style:none;display:grid}.block-card{border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface);overflow:hidden}.block-card.is-sale{background:var(--acid-soft)}.block-card>button{width:100%;min-height:76px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.block-card.is-booked{background:var(--surface-2);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.block-time strong{font-family:var(--font-display);font-size:18px;display:block}.block-time span{color:var(--muted);font-size:12px}.block-meta{justify-items:end;gap:3px;display:grid}.block-price{font-family:var(--font-display);font-size:18px;font-weight:700}.block-meta .availability-label{font-size:12px}.unavailable-tag{border-radius:var(--radius-pill);background:var(--paper);padding:6px 12px;font-size:12px;font-weight:700}.month-view{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.month-weekday{color:var(--muted);text-align:center;padding:8px 4px;font-size:12px;font-weight:700}.month-day{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:84px;color:var(--ink);cursor:pointer;text-align:left;align-content:start;gap:6px;padding:10px;display:grid}.month-day strong{font-family:var(--font-display);font-size:16px}.month-day .month-price{color:var(--muted);align-items:center;gap:5px;font-size:11px;display:inline-flex}.month-dot{background:var(--coral);border-radius:50%;width:7px;height:7px}.month-day span:not(.month-price){color:var(--muted);font-size:11px}.month-day:hover,.month-day:focus-visible{background:var(--acid);outline:2px solid var(--ink);outline-offset:-2px}.month-day.is-outside{background:var(--paper);color:var(--muted);opacity:.7}.month-day.is-full{background:var(--surface-2);color:var(--muted)}.calendar-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;font-size:13px;display:flex}.legend-dot{border-radius:50%;width:10px;height:10px;margin-left:4px}.legend-dot--free{background:var(--acid);border:1px solid var(--ink)}.legend-dot--booked{background:var(--ink);border:1px solid var(--ink)}.legend-dot--pickup,.legend-dot--ticket{background:var(--amber);border:1px solid var(--ink)}.ticket-hint{color:var(--muted);margin:8px 0 0;font-size:13px}.link-button{color:var(--ink);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.link-button:hover,.link-button:focus-visible{color:var(--coral-strong)}.legend-sep{color:var(--line)}.control-label{letter-spacing:.1em;text-transform:uppercase;color:var(--coral);margin:16px 0 8px;font-size:12px;font-weight:700}.cal-selects{grid-template-columns:1fr;gap:12px;margin-bottom:6px;display:grid}@media (width>=480px){.cal-selects{grid-template-columns:1fr 1fr}}.cal-select{gap:6px;display:grid}.cal-select .control-label{margin:0}.cal-select select{appearance:none;border:1.5px solid var(--ink);border-radius:var(--radius);background-color:var(--surface);width:100%;min-height:48px;font:inherit;color:var(--ink);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23111311' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding:12px 40px 12px 14px;font-weight:600}.cal-select select:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.section-intro{max-width:52ch;color:var(--text-soft);text-wrap:pretty;margin:14px 0 0;font-size:15px;line-height:1.6}.alloc-pills{flex-wrap:wrap;gap:10px;margin-bottom:6px;display:flex}.pitch__label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:8px 0 0;font-size:13px;font-weight:700}.pitch__note{color:var(--muted);font-size:13px}.pitch__aside{background:var(--surface);color:var(--ink);border:2px solid var(--ink);border-radius:var(--radius-card);flex-direction:column;display:flex;overflow:hidden}.pitch--dark .pitch__aside{background:color-mix(in srgb, var(--on-ink) 7%, transparent);color:var(--on-ink);border-color:color-mix(in srgb, var(--on-ink) 42%, transparent)}.pitch__aside .ap-row{align-items:center;gap:12px;padding:13px 18px;font-size:14.5px;font-weight:500;line-height:1.35;display:flex}.pitch__aside .ap-row+.ap-row{border-top:1px solid color-mix(in srgb, currentColor 26%, transparent)}.pitch__aside .ap-ico{border:1.5px solid;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.pitch__aside .ap-ico svg{width:18px;height:18px;display:block}.services-section{max-width:calc(var(--maxw) + var(--pad) * 2);margin:var(--sec-pad-block) auto;scroll-margin-top:96px}.services-section>.section-heading{padding-inline:var(--pad)}.svc-card{background:var(--ink);border-radius:var(--radius-card);overflow:hidden;box-shadow:0 14px 34px #11131121}.svc-tabs{padding:10px var(--pad) 0;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:6px;display:grid;position:relative}.svc-tab{min-width:0;color:var(--on-ink-muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px 10px 0 0;align-content:start;gap:4px;padding:14px 16px 16px;transition:background .15s,color .15s;display:grid}.svc-tab:hover{background:color-mix(in srgb, var(--on-ink) 9%, transparent)}.svc-tab__num{font-family:var(--font-display);letter-spacing:.12em;color:var(--acid);font-size:12px;font-weight:700}.svc-tab__title{font-family:var(--font-display);color:var(--on-ink);text-wrap:balance;font-size:17px;font-weight:700;line-height:1.2}.svc-tab__hook{text-wrap:balance;font-size:13px;line-height:1.35}.svc-tab--lime[aria-selected=true]{background:var(--acid)}.svc-tab--coral[aria-selected=true]{background:var(--coral)}.svc-tab--paper[aria-selected=true]{background:var(--surface)}.svc-tab--dark[aria-selected=true]{background:var(--ink-2)}.svc-tab[aria-selected=true]:not(.svc-tab--dark),.svc-tab[aria-selected=true]:not(.svc-tab--dark) .svc-tab__num,.svc-tab[aria-selected=true]:not(.svc-tab--dark) .svc-tab__title{color:var(--ink)}.public-site .svc-tab:focus-visible{outline:3px solid var(--acid);outline-offset:-3px}.public-site .svc-tab[aria-selected=true]:not(.svc-tab--dark):focus-visible{outline-color:var(--ink)}.svc-viewport{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;align-items:flex-start;transition:height .3s;display:flex;overflow:auto hidden}.svc-viewport::-webkit-scrollbar{display:none}.svc{min-width:0;padding:clamp(32px, 4.5vw, 60px) var(--pad);scroll-snap-align:start;flex:0 0 100%;scroll-margin-top:180px}.svc--paper{background:var(--surface);color:var(--ink)}.svc.pitch--dark{background:var(--ink-2)}.svc__grid{max-width:var(--maxw);grid-template:"title title""body points""act points"1fr/minmax(0,1fr) minmax(0,.82fr);align-items:start;column-gap:clamp(28px,5vw,72px);margin-inline:auto;display:grid}.svc__grid--solo{grid-template-areas:"title title""body.""act."}.svc__title{font-family:var(--font-display);letter-spacing:-.03em;color:inherit;grid-area:title;margin:0 0 clamp(18px,2.2vw,28px);font-size:clamp(24px,3.6vw,48px);font-weight:700;line-height:1.04}.svc__clause{text-wrap:balance;display:inline-block}.svc__body{grid-area:body;gap:10px;max-width:60ch;display:grid}.svc__label{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;opacity:.72;margin:8px 0 0;font-size:12px;font-weight:700}.svc__text{text-wrap:pretty;margin:0;font-size:16px;line-height:1.7}.pitch--dark .svc__text{color:var(--on-ink-muted)}.svc .chip-row{flex-wrap:wrap;margin:0;overflow:visible}.svc__body .pitch__note{margin:0}.svc__points{grid-area:points;margin:0;padding:0;list-style:none}.svc__points .ap-row{text-wrap:pretty}.svc__act{grid-area:act;margin-top:24px}.svc__act .btn-row{margin-top:0}.pitch--dark .btn--ghost{border-color:var(--on-ink);color:var(--on-ink)}.svc-controls{padding-inline:var(--pad);justify-content:center;align-items:center;gap:16px;margin-top:20px;display:flex}.svc-count{min-width:7ch;font-family:var(--font-display);letter-spacing:.08em;text-align:center;font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.svc-arrow{width:48px;height:48px;color:var(--ink);background:var(--surface);border:2px solid var(--ink);cursor:pointer;box-shadow:0 3px 0 var(--ink);border-radius:50%;flex:none;place-items:center;font-size:28px;line-height:1;transition:transform .12s,background .12s,box-shadow .12s;display:grid}.svc-arrow>span{margin-top:-3px}.svc-arrow:hover{background:var(--acid)}.svc-arrow:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.svc-arrow:disabled{opacity:.32;cursor:default;box-shadow:none;background:var(--surface)}@media (width<=900px){.svc-tabs{overscroll-behavior-x:contain;scrollbar-width:none;gap:4px;padding-top:8px;display:flex;overflow-x:auto}.svc-tabs::-webkit-scrollbar{display:none}.svc-tab{flex:none;align-items:baseline;gap:8px;padding:12px 14px 13px;display:flex}.svc-tab__title{white-space:nowrap;font-size:15px}.svc-tab__hook{display:none}.svc__grid,.svc__grid--solo{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"title""body""points""act"}.svc__points{margin-top:22px}}@media (prefers-reduced-motion:reduce){.svc-viewport{scroll-behavior:auto;transition:none}.svc-tab,.svc-arrow{transition:none}}.news-section{max-width:calc(var(--maxw) + var(--pad) * 2);margin:var(--sec-pad-block) auto;padding-inline:var(--pad)}.news-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px;display:grid}.news-card{border:2px solid var(--ink);border-radius:var(--radius-card);background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.news-card .nc-top{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid var(--ink);justify-content:space-between;align-items:center;gap:8px;padding:12px 18px;font-size:13px;font-weight:700;display:flex}.news-card--tour .nc-top{background:var(--coral)}.news-card--pick .nc-top{background:var(--acid)}.news-card--other .nc-top{background:var(--amber)}.news-card .nc-count{background:var(--ink);color:var(--on-ink);border-radius:999px;padding:2px 9px;font-size:11px}.news-card .nc-body{flex-direction:column;flex:1;gap:14px;padding:16px 18px;display:flex}.news-item{align-items:flex-start;gap:12px;display:flex}.news-item .ni-date{text-align:center;border:1.5px solid var(--ink);width:52px;font-family:var(--font-display);border-radius:9px;flex:none;padding:6px 0;line-height:1}.news-item .ni-date b{font-size:19px;font-weight:700;display:block}.news-item .ni-date span{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:10.5px}.news-item .ni-main{flex-direction:column;gap:3px;display:flex}.news-item .ni-main strong{text-wrap:pretty;font-size:15px;font-weight:600;line-height:1.3}.news-item .ni-main span{color:var(--muted);font-size:12.5px}.news-item .ni-tag{background:var(--acid-soft);border:1px solid var(--line-soft);color:var(--ink);border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:11px;font-weight:700}.news-card .nc-cta{border-top:1px solid var(--line-soft);font-family:var(--font-display);color:var(--ink);align-items:center;gap:8px;margin-top:auto;padding:12px 18px;font-size:13px;font-weight:700;display:inline-flex}.news-note{color:var(--muted);margin-top:18px;font-size:12.5px}.nc-soon{text-align:center;text-wrap:balance;min-height:96px;color:var(--muted);place-items:center;margin:0;padding-inline:8px;font-size:15px;font-weight:600;line-height:1.5;display:grid}@media (width<=900px){.news-grid{grid-template-columns:1fr}}.pitch-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.pitch-list li{color:var(--text-soft);padding-left:30px;position:relative}.pitch-list li:before{content:"";background:var(--acid);border:1.5px solid var(--ink);border-radius:50%;width:16px;height:16px;position:absolute;top:7px;left:0}.chip-row{flex-wrap:wrap;gap:10px;margin:4px 0 8px;padding:0;list-style:none;display:flex}.chip{border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--surface);font-family:var(--font-display);color:var(--ink);padding:8px 16px;font-size:14px;font-weight:700}.pitch-subs{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:8px 0;display:grid}.pitch-sub{border:1.5px solid var(--line-ink);border-radius:var(--radius-card);padding:22px}.pitch-sub h3{font-family:var(--font-display);color:#fff;margin:0 0 10px;font-size:20px;font-weight:700}.pitch--dark{background:var(--ink);color:var(--on-ink)}.pitch--dark .svc__title,.pitch--dark .pitch__label{color:#fff}.pitch--dark .pitch-list li,.pitch--dark .pitch__note{color:var(--on-ink-muted)}.locations-section{padding:var(--sec-pad-block) var(--pad);background:var(--acid);color:var(--ink);scroll-margin-top:72px}.locations-section .section-heading{max-width:var(--maxw);margin-inline:auto}.locations-section .section-heading .kicker{color:var(--ink);opacity:.7}.locations-section .section-heading h2{color:var(--ink)}.section-heading.inverse{max-width:var(--maxw);align-items:end;margin-inline:auto}.section-heading.inverse h2{color:#fff}.section-heading .kicker{color:var(--muted)}.section-heading.inverse .kicker{color:var(--on-ink-muted)}.section-aside{max-width:42ch;color:var(--on-ink-muted);margin:0;font-size:15px;line-height:1.7}.facility-carousel{max-width:var(--maxw);margin:clamp(32px,4vw,48px) auto 0;position:relative}.facility-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.facility-card{border:2px solid var(--ink);border-radius:var(--radius-card);background:var(--surface);color:var(--ink);flex-direction:column;display:flex;overflow:hidden}.facility-photo{min-height:168px;color:var(--ink);align-content:end;gap:4px;padding:40px 18px 18px;display:grid;position:relative;overflow:hidden}.facility-photo:after{content:"";pointer-events:none;background:repeating-linear-gradient(135deg,#1113110f 0 10px,#0000 10px 22px);position:absolute;inset:0}.facility-photo--0{background:var(--fac-0)}.facility-photo--1{background:var(--fac-1)}.facility-photo--2{background:var(--fac-2)}.facility-photo--3{background:var(--fac-3)}.facility-photo__num{font-family:var(--font-display);font-size:20px;font-weight:700;position:absolute;top:14px;left:16px}.facility-photo__name{font-family:var(--font-display);margin:0;font-size:clamp(22px,2.6vw,30px);font-weight:700;line-height:1.02;position:relative}.facility-photo__hint{letter-spacing:.08em;text-transform:uppercase;opacity:.66;font-size:11px;font-weight:700;position:relative}.facility-body{flex-direction:column;flex:auto;gap:8px;padding:20px 20px 0;display:flex}.facility-tags{flex-wrap:wrap;gap:8px;display:flex}.facility-kind{border:1.5px solid var(--ink);border-radius:var(--radius-pill);color:var(--ink);padding:4px 11px;font-size:12.5px;font-weight:700}.facility-price{border-radius:var(--radius-pill);background:var(--ink);color:var(--acid);font-family:var(--font-display);padding:4px 11px;font-size:13px;font-weight:700}.facility-address{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.facility-blurb{color:var(--text-soft);margin:4px 0 0;font-size:14px;line-height:1.55}.facility-actions{flex-wrap:wrap;gap:10px;margin-top:auto;padding:18px 20px 20px;display:flex}.facility-actions .btn{min-height:46px;padding:11px 18px;font-size:13px}.carousel-arrow{display:none}.location-empty{color:color-mix(in srgb, var(--ink) 70%, transparent)}.steps-section{padding:var(--sec-pad-block) var(--pad);background:var(--ink-2);color:var(--on-ink)}.steps-section h2{font-family:var(--font-display);letter-spacing:-.03em;color:#fff;text-align:left;flex-direction:column;align-items:flex-start;gap:.06em;margin:0;font-size:clamp(34px,5vw,60px);font-weight:700;line-height:.98;display:flex}.steps-list{max-width:var(--maxw);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin:clamp(40px,5vw,64px) auto 0;padding:0;list-style:none;display:grid}.steps-list li{border:1.5px solid var(--line-ink);border-radius:var(--radius-card);align-content:start;gap:6px;min-height:200px;padding:24px;display:grid}.steps-list li>span{font-family:var(--font-display);color:var(--acid);margin-bottom:42px;font-size:15px;font-weight:700}.steps-list strong{color:#fff;font-size:22px}.steps-list p{color:var(--on-ink-muted);margin:6px 0 0;line-height:1.6}.steps-cta{max-width:var(--maxw);margin:32px auto 0}.about-section{max-width:calc(var(--maxw) + var(--pad) * 2);margin:var(--sec-pad-block) auto;padding-inline:var(--pad);scroll-margin-top:96px}.about-grid{grid-template-columns:minmax(0,1.65fr) minmax(240px,.55fr);align-items:start;gap:clamp(32px,6vw,88px);display:grid}.about-grid h2{font-family:var(--font-display);letter-spacing:-.035em;flex-direction:column;gap:.06em;margin:0;font-size:clamp(30px,4.6vw,62px);font-weight:700;line-height:1.03;display:flex}.about-grid h2 .ln{display:block}.about-grid h2 .ln--accent{color:var(--coral)}.about-grid h2 .big{font-size:1.18em}@media (width>=721px){.about-grid h2 .ln{white-space:nowrap}}.about-copy{color:var(--text-soft);gap:20px;font-size:16px;line-height:1.75;display:grid}.about-copy p{margin:0}.booking-policy a{color:var(--coral-strong);font-weight:700}.final-cta{padding:var(--sec-pad-block) var(--pad);background:var(--coral);color:var(--ink);text-align:center}.final-cta h2{max-width:16ch;font-family:var(--font-display);letter-spacing:-.04em;margin:0 auto 20px;font-size:clamp(40px,8vw,104px);font-weight:700;line-height:.94}.final-cta__lede{max-width:48ch;margin:0 auto 32px;font-size:clamp(16px,1.6vw,20px);line-height:1.6}.public-site footer{padding:48px var(--pad);background:var(--ink);color:var(--on-ink);flex-wrap:wrap;align-items:center;gap:20px 40px;display:flex}.brand-inverse{color:var(--on-ink)}.public-site footer>p:not(.footer-copy){max-width:520px;font-family:var(--font-display);flex:260px;margin:0;font-size:clamp(18px,2vw,26px);font-weight:700;line-height:1.25}.public-site footer nav{flex-wrap:wrap;gap:18px;display:flex}.public-site footer nav a{white-space:nowrap;letter-spacing:.06em;text-transform:uppercase;color:var(--on-ink-muted);font-size:13px;font-weight:700;text-decoration:none}.public-site footer nav a:hover{color:var(--acid)}.footer-copy{border-top:1px solid var(--line-ink);color:var(--on-ink-muted);flex-basis:100%;margin:0;padding-top:8px;font-size:13px}.booking-overlay{z-index:100;background:#111311b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.booking-dialog{border-radius:var(--radius-card);background:var(--paper);width:min(100%,620px);max-height:calc(100svh - 36px);padding:clamp(24px,5vw,48px);position:relative;overflow-y:auto;box-shadow:0 30px 60px #11131159}.booking-dialog h2{font-family:var(--font-display);letter-spacing:-.03em;margin:6px 0 24px;font-size:clamp(30px,5vw,44px);font-weight:700;line-height:1.02}.booking-dialog .kicker{color:var(--coral-strong);margin-bottom:0}.dialog-close{border:1.5px solid var(--ink);background:var(--surface);cursor:pointer;border-radius:50%;width:44px;height:44px;font-size:26px;line-height:1;position:absolute;top:16px;right:16px}.dialog-close:hover{background:var(--acid)}.booking-summary{border-radius:var(--radius);background:var(--surface);border:1.5px solid var(--line);margin-bottom:22px;padding:18px 20px}.booking-summary__row{justify-content:space-between;align-items:baseline;gap:20px;padding:6px 0;display:flex}.booking-summary__row span{color:var(--muted);font-size:13px}.booking-summary__row strong{text-align:right;font-weight:700}.booking-summary__total{border-top:1.5px solid var(--line);margin-top:6px;padding-top:12px}.booking-summary__total span{color:var(--text);font-size:14px;font-weight:700}.booking-summary__total strong{font-family:var(--font-display);font-size:22px}.location-select{gap:8px;margin-bottom:20px;font-size:13px;font-weight:700;display:grid}.location-select select{border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--surface);min-height:52px;color:var(--ink);cursor:pointer;padding:0 16px}.booking-promotion-note{border-radius:var(--radius);background:var(--coral-soft);color:var(--ink);margin:0 0 20px;padding:12px 16px;font-size:13px;font-weight:700}.booking-form{gap:14px;display:grid}.booking-form>label:not(.consent-field){gap:6px;font-size:13px;font-weight:700;display:grid}.booking-form input{border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface);width:100%;min-height:52px;color:var(--ink);padding:12px 16px}.consent-field{color:var(--text-soft);grid-template-columns:22px 1fr;align-items:start;gap:10px;margin:2px 0;font-size:14px;display:grid}.consent-field input{width:20px;min-height:20px;accent-color:var(--coral);margin:2px 0 0}.booking-policy{color:var(--muted);margin:2px 0 4px;font-size:13px;line-height:1.55}.bot-check{gap:8px;min-width:0;display:grid}.bot-check .booking-promotion-note{margin:0}.ticket-qty{border:0;min-width:0;margin:0;padding:0}.ticket-qty legend{margin-bottom:8px;padding:0;font-size:13px;font-weight:700}.ticket-qty__opts{gap:10px;display:flex}.ticket-qty__opts label{flex:1 1 0;position:relative}.booking-form .ticket-qty input{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;margin:0;position:absolute;inset:0}.ticket-qty__opts span{border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface);min-height:48px;font-family:var(--font-display);justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.ticket-qty__opts input:checked+span{background:var(--acid);box-shadow:inset 0 0 0 1.5px var(--ink)}.ticket-qty__opts input:focus-visible+span{outline:3px solid var(--ink);outline-offset:2px}.booking-form .ticket-qty input:disabled{cursor:not-allowed}.ticket-qty__opts input:disabled+span{opacity:.35}.ticket-qty__note{color:var(--muted);margin:8px 0 0;font-size:12.5px}.booking-form .booking-summary{margin:0}.ticket-discount{border-radius:var(--radius);background:var(--acid-soft);color:var(--ink);margin:0;padding:10px 14px;font-size:13px;line-height:1.5}.ticket-alt{color:var(--muted);text-align:center;margin:16px 0 0;font-size:13px}.primary-action{border-radius:var(--radius-pill);background:var(--acid);min-height:54px;color:var(--ink);font-family:var(--font-display);cursor:pointer;border:none;padding:14px 22px;font-size:16px;font-weight:700;transition:transform .12s,background .12s}.primary-action:hover:not(:disabled),.primary-action:focus-visible:not(:disabled){background:var(--acid-strong);transform:translateY(-1px)}.primary-action:disabled{opacity:.5;cursor:not-allowed}a.primary-action{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.payment-qr{border-radius:var(--radius-card);border:1.5px solid var(--line);background:#fff;place-items:center;width:100%;margin:4px 0 14px;padding:18px;display:grid}.payment-qr svg{width:min(240px,60vw);height:auto}.payment-qr__pending{color:var(--muted);padding:40px 0}.payment-qr-save{justify-content:center;margin:0 0 14px;display:flex}.payment-qr-save button{border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--surface);cursor:pointer;min-height:44px;padding:8px 20px;font-weight:700}.payment-qr-save button:hover{background:var(--acid)}.payment-note{color:var(--muted);margin:0 0 14px;font-size:12px}.payment-ref{border-radius:var(--radius);background:var(--surface);border:1.5px solid var(--line);gap:8px;margin-bottom:16px;padding:16px;display:grid}.payment-ref>span{color:var(--muted);font-size:12px;font-weight:700}.payment-ref>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.payment-ref code{font-family:var(--font-display);word-break:break-all;font-size:16px;font-weight:700}.payment-ref button{border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--surface);cursor:pointer;flex:none;min-height:40px;padding:8px 16px;font-weight:700}.payment-ref button:hover{background:var(--acid)}.payment-keep{color:var(--ink);margin:0 0 12px;font-size:14px;font-weight:700}.payment-countdown{color:var(--text-soft);margin:0 0 16px;font-size:14px}.payment-countdown strong{font-family:var(--font-display)}.payment-actions{gap:12px;display:grid}.payment-txn{gap:6px;font-size:13px;font-weight:700;display:grid}.payment-txn input{border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface);min-height:48px;color:var(--ink);padding:10px 14px}.booking-done p:not(.kicker){color:var(--text-soft);line-height:1.7}.booking-done a{font-weight:700}.booking-done .primary-action{margin-top:20px}@media (width<=900px){.public-header nav{display:none}.hero{grid-template-columns:1fr;gap:24px}.hero-aside{display:none}.about-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:flex-start;gap:18px}.section-heading.inverse{flex-direction:column}}@media (width<=720px){.calendar-section{border-radius:var(--radius-card);padding:18px}.calendar-nav{flex-wrap:wrap}.booking-grid{grid-template-columns:52px repeat(7,minmax(88px,1fr));min-width:680px}.time-corner,.day-heading{height:48px}.time-corner{padding:8px 6px;font-size:10px}.day-heading strong{font-size:14px}.time-label{min-height:54px;padding:8px 6px}.time-label strong{font-size:11px}.slot-cell{min-height:54px}.slot-cell button{padding:6px}.pickup-tag{padding:1px 5px;font-size:9px}.month-day{min-height:62px;padding:7px}.month-day strong{font-size:14px}.month-day .month-price{font-size:10px}.booking-overlay{align-items:end;padding:0}.booking-dialog{border-radius:var(--radius-card) var(--radius-card) 0 0;width:100%;max-height:94svh}}@media (width<=480px){.month-view{gap:3px}.month-day{gap:3px;min-height:54px}}@media (prefers-reduced-motion:reduce){html.public-route{scroll-behavior:auto}.hero-badge,.header-cta,.primary-action,.btn,.link-cta span{transition:none}}.policy-page{max-width:860px;padding:clamp(28px, 5vw, 64px) var(--pad) clamp(56px, 8vw, 96px);margin:0 auto}.policy-back{color:var(--coral-strong);align-items:center;gap:8px;margin-bottom:24px;font-weight:700;text-decoration:none;display:inline-flex}.policy-back:hover{text-decoration:underline}.policy-page h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(30px,5vw,48px);font-weight:700}.policy-page .policy-lede{color:var(--text-soft);margin:0 0 8px;font-size:17px}.policy-note{border-radius:var(--radius);background:var(--acid-soft);color:var(--text-soft);margin:16px 0 28px;padding:14px 16px;font-size:14px}.policy-page section{border-top:1px solid var(--line);padding:22px 0}.policy-page h2{font-family:var(--font-display);margin:0 0 10px;font-size:clamp(20px,2.6vw,26px);font-weight:700}.policy-page p,.policy-page li{color:var(--text-soft);line-height:1.7}.policy-page ul{margin:8px 0 0;padding-left:20px}.policy-page li{margin-bottom:6px}.public-site .hl{color:var(--coral)}.public-site .hl-lime{color:var(--acid)}.pitch--lime{background:var(--acid);color:var(--ink)}.pitch--lime .svc__title,.pitch--lime .pitch__label{color:var(--ink)}.pitch--lime .pitch__note{color:color-mix(in srgb, var(--ink) 66%, transparent)}.pitch--lime .pitch-list li{color:var(--ink)}.pitch--lime .pitch-list li:before,.pitch--lime .chip{border-color:var(--ink);background:#fff}.pitch--lime .btn--primary{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.pitch--lime .btn--primary:hover{background:var(--ink-2)}.pitch--lime .btn--ghost{border-color:var(--ink);color:var(--ink)}.pitch--lime .btn--ghost:hover{background:var(--ink);color:var(--on-ink)}.pitch--coral{background:var(--coral);color:var(--ink)}.pitch--coral .svc__title,.pitch--coral .pitch__label{color:var(--ink)}.pitch--coral .pitch__note{color:color-mix(in srgb, var(--ink) 84%, transparent)}.pitch--coral .pitch-list li{color:var(--ink)}.pitch--coral .pitch-list li:before{background:var(--acid);border-color:var(--ink)}.pitch--coral .btn--primary{border-color:var(--ink)}.pitch--coral .btn--ghost,.pitch--coral .btn--outline-ink{border-color:var(--ink);color:var(--ink)}.pitch--coral .btn--ghost:hover,.pitch--coral .btn--outline-ink:hover{background:var(--ink);color:#fff}.pitch--coral :where(a,button,[tabindex]):focus-visible{outline-color:var(--ink)}.final-cta,.final-cta h2{color:var(--ink)}.final-cta__lede{color:color-mix(in srgb, var(--ink) 82%, transparent)}.final-cta .btn--outline-ink{border-color:var(--ink);color:var(--ink)}.final-cta .btn--outline-ink:hover{background:var(--ink);color:#fff}.final-cta :where(a,button,[tabindex]):focus-visible{outline-color:var(--ink)}@media (width<=720px){.steps-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.steps-list li{min-height:0;padding:16px}.steps-list li>span{margin-bottom:20px}.steps-list strong{font-size:18px}.hero-actions,.btn-row{justify-content:center}.steps-cta,.about-section .steps-cta{text-align:center}.facility-carousel{padding-inline:44px}.facility-cards{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px;padding-bottom:4px;display:flex;overflow-x:auto}.facility-cards::-webkit-scrollbar{display:none}.facility-card{scroll-snap-align:center;flex:0 0 82%}.carousel-arrow{z-index:2;border:1.5px solid var(--ink);background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;font-size:18px;font-weight:700;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.carousel-arrow--prev{left:0}.carousel-arrow--next{right:0}.chip-row{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip{flex:none}}
