@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-ext-wght-normal-B5bTHO_g.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-vietnamese-wght-normal-Czsa-EzN.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-ext-wght-normal-C-3rgBeH.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-display: "Newsreader Variable", "Newsreader", Georgia, "Times New Roman", serif;--font-ui: "Instrument Sans Variable", "Instrument Sans", -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, monospace;--text-display: 3rem;--text-h1: 2.25rem;--text-h2: 1.75rem;--text-h3: 1.25rem;--text-lg: 1.125rem;--text-md: 1rem;--text-sm: .875rem;--text-xs: .75rem;--tracking-display: -.035em;--tracking-heading: -.02em;--tracking-eyebrow: .09em;--leading-tight: 1.1;--leading-snug: 1.3;--leading-body: 1.55;--canvas: #faf8f3;--surface: #ffffff;--surface-sunken: #f3efe6;--surface-raised: #ffffff;--border: #e7e1d3;--border-strong: #d6cebb;--ink: #0b2236;--ink-muted: #5b6573;--ink-subtle: #8a909a;--ink-inverse: #faf8f3;--sun: #f2b33d;--sun-hover: #e3a22a;--sun-tint: #fcefd2;--on-sun: #0b2236;--ocean: #1f6f8b;--ocean-hover: #175a71;--ocean-tint: #e1eef2;--on-ocean: #ffffff;--focus-ring: 0 0 0 2px var(--surface), 0 0 0 4px var(--ocean);--dom-surf: #2b7fb8;--dom-surf-tint: #e3eff8;--dom-wellness: #5f9474;--dom-wellness-tint: #e5f0e9;--dom-treatment: #c0705f;--dom-treatment-tint: #f7e6e1;--dom-class: #8467b5;--dom-class-tint: #eee8f6;--dom-rental: #c98a1c;--dom-rental-tint: #f8ecd3;--dom-partner: #4e5d73;--dom-partner-tint: #e6e9ee;--st-held: #8a6314;--st-held-bg: #fcf0d9;--st-awaiting: #985707;--st-awaiting-bg: #fde8cf;--st-confirmed: #2d764c;--st-confirmed-bg: #e2f2e8;--st-checked-in: #1f6f8b;--st-checked-in-bg: #e1eef2;--st-expired: #5b6573;--st-expired-bg: #eeeeec;--st-no-show: #b42318;--st-no-show-bg: #fbe4e1;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 72px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgb(11 34 54 / .05);--shadow-md: 0 1px 2px rgb(11 34 54 / .04), 0 8px 24px -12px rgb(11 34 54 / .12);--shadow-lg: 0 2px 4px rgb(11 34 54 / .04), 0 24px 48px -20px rgb(11 34 54 / .22);--touch-min: 44px;--row-compact: 40px;--row-comfy: 56px;--ease: cubic-bezier(.2, .7, .2, 1);--dur-fast: .12s;--dur: .2s;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--canvas: #0d1823;--surface: #132331;--surface-sunken: #0f1d29;--surface-raised: #183041;--border: #233a4c;--border-strong: #2f4a5f;--ink: #eef1f3;--ink-muted: #a3afba;--ink-subtle: #75828e;--ink-inverse: #0b2236;--sun-tint: #3a2f17;--ocean: #4fa6c4;--ocean-hover: #6bb8d2;--ocean-tint: #16364a;--on-ocean: #0b2236;--dom-surf-tint: #15324a;--dom-wellness-tint: #1a3328;--dom-treatment-tint: #3a2420;--dom-class-tint: #2a2340;--dom-rental-tint: #3a2c12;--dom-partner-tint: #232c38;--st-held-bg: #3a2c12;--st-awaiting-bg: #3b2610;--st-confirmed-bg: #163325;--st-checked-in-bg: #16364a;--st-expired-bg: #252b31;--st-no-show-bg: #3d1a17;--st-held: #e9b45a;--st-awaiting: #f0a457;--st-confirmed: #6fcf97;--st-checked-in: #6bb8d2;--st-expired: #9aa3ad;--st-no-show: #f28b82;--shadow-sm: 0 1px 2px rgb(0 0 0 / .3);--shadow-md: 0 1px 2px rgb(0 0 0 / .3), 0 8px 24px -12px rgb(0 0 0 / .5);--shadow-lg: 0 24px 48px -20px rgb(0 0 0 / .6);color-scheme:dark}}:root[data-theme=dark]{--canvas: #0d1823;--surface: #132331;--surface-sunken: #0f1d29;--surface-raised: #183041;--border: #233a4c;--border-strong: #2f4a5f;--ink: #eef1f3;--ink-muted: #a3afba;--ink-subtle: #75828e;--ink-inverse: #0b2236;--sun-tint: #3a2f17;--ocean: #4fa6c4;--ocean-hover: #6bb8d2;--ocean-tint: #16364a;--on-ocean: #0b2236;--dom-surf-tint: #15324a;--dom-wellness-tint: #1a3328;--dom-treatment-tint: #3a2420;--dom-class-tint: #2a2340;--dom-rental-tint: #3a2c12;--dom-partner-tint: #232c38;--st-held-bg: #3a2c12;--st-awaiting-bg: #3b2610;--st-confirmed-bg: #163325;--st-checked-in-bg: #16364a;--st-expired-bg: #252b31;--st-no-show-bg: #3d1a17;--st-held: #e9b45a;--st-awaiting: #f0a457;--st-confirmed: #6fcf97;--st-checked-in: #6bb8d2;--st-expired: #9aa3ad;--st-no-show: #f28b82;--shadow-sm: 0 1px 2px rgb(0 0 0 / .3);--shadow-md: 0 1px 2px rgb(0 0 0 / .3), 0 8px 24px -12px rgb(0 0 0 / .5);--shadow-lg: 0 24px 48px -20px rgb(0 0 0 / .6);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-md);line-height:var(--leading-body);-webkit-font-smoothing:antialiased}h1,h2,h3,.serif{font-family:var(--font-display);font-weight:500;letter-spacing:var(--tracking-heading);line-height:var(--leading-tight);margin:0}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3);letter-spacing:-.01em;line-height:var(--leading-snug)}.display{font-size:var(--text-display);letter-spacing:var(--tracking-display)}.muted-tail{color:var(--ink-subtle)}.eyebrow{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--ink-muted)}.num{font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-5);border:1px solid transparent;border-radius:var(--radius-md);font:500 var(--text-md) / 1 var(--font-ui);cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn-primary{background:var(--sun);color:var(--on-sun)}.btn-primary:hover{background:var(--sun-hover)}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--border-strong)}.btn-secondary:hover{background:var(--surface-sunken)}.btn-ghost{background:transparent;color:var(--ocean)}.btn-ghost:hover{background:var(--ocean-tint)}.btn-danger{background:var(--st-no-show);color:#fff}.btn-sm{min-height:var(--touch-min);padding:0 var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-sm)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-muted);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.date-pill{display:inline-flex;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-4);border:1.5px solid var(--sun);border-radius:var(--radius-pill);background:var(--surface);font-weight:600;font-size:var(--text-sm)}.badge{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge.held{color:var(--st-held);background:var(--st-held-bg)}.badge.awaiting{color:var(--st-awaiting);background:var(--st-awaiting-bg)}.badge.confirmed{color:var(--st-confirmed);background:var(--st-confirmed-bg)}.badge.checked-in{color:var(--st-checked-in);background:var(--st-checked-in-bg)}.badge.expired{color:var(--st-expired);background:var(--st-expired-bg)}.badge.no-show{color:var(--st-no-show);background:var(--st-no-show-bg)}.dot{width:10px;height:10px;border-radius:50%;flex:none;display:inline-block}.dot.surf{background:var(--dom-surf)}.dot.wellness{background:var(--dom-wellness)}.dot.treatment{background:var(--dom-treatment)}.dot.class{background:var(--dom-class)}.dot.rental{background:var(--dom-rental)}.dot.partner{background:var(--dom-partner)}.field{display:grid;gap:6px}.field label{font-size:var(--text-sm);font-weight:500}.input{min-height:var(--touch-min);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:inherit}.input:focus{outline:none;border-color:var(--ocean);box-shadow:var(--focus-ring)}.hint{font-size:var(--text-xs);color:var(--ink-muted)}@media(forced-colors:active){.btn:focus-visible,.input:focus{outline:2px solid CanvasText;outline-offset:2px}}.skip-link{position:absolute;left:var(--space-4);top:-100px;z-index:10;display:inline-flex;align-items:center;min-height:var(--touch-min);padding:var(--space-2) var(--space-4);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--ink)}.skip-link:focus{top:var(--space-4);box-shadow:var(--focus-ring);outline:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.env-banner{padding:var(--space-1) var(--space-4);background:var(--sun-tint);color:var(--ink);font-size:var(--text-xs);font-weight:600;text-align:center}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface)}.topbar .brand{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--text-h3);color:var(--ink);text-decoration:none}.page{max-width:720px;margin:0 auto;padding:var(--space-6) var(--space-4) var(--space-8)}.page.wide{max-width:1120px}.stack{display:grid;gap:var(--space-4)}.stack-lg{display:grid;gap:var(--space-6)}.lead{font-size:var(--text-lg);color:var(--ink-muted);margin:0}.notice{padding:var(--space-5)}.inline-field{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--ink-muted)}a{color:var(--ocean)}a:focus-visible,select:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:0ms!important;animation-duration:0ms!important}}.topbar-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}.nav-links{display:flex;flex-wrap:wrap;gap:var(--space-1)}.nav-links a{display:inline-flex;align-items:center;min-height:var(--touch-min);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--ink-muted);font-size:var(--text-sm);font-weight:500;text-decoration:none}.nav-links a[aria-current=page]{background:var(--ocean-tint);color:var(--ink)}.form{display:grid;gap:var(--space-4);max-width:420px}.form .input{width:100%}.form-row{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border);font-size:var(--text-sm)}.alert-error{background:var(--st-no-show-bg);color:var(--ink);border-color:var(--st-no-show)}.alert-success{background:var(--st-confirmed-bg);color:var(--ink);border-color:var(--st-confirmed)}.qr{width:200px;height:200px;padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.secret{font-family:var(--font-mono);font-size:var(--text-sm);word-break:break-all;user-select:all}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th{text-align:left;font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--ink-muted);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}.table td{height:var(--row-compact);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}.product-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.product-card{display:flex;align-items:center;gap:var(--space-4);min-height:var(--row-comfy);padding:var(--space-4) var(--space-5);color:var(--ink);text-decoration:none}.product-card:hover{border-color:var(--border-strong)}.product-card:focus-visible{outline:none;box-shadow:var(--focus-ring)}.product-main{display:grid;gap:2px;flex:1}.product-name{font-family:var(--font-display);font-size:var(--text-h3)}.product-price{font-weight:600;white-space:nowrap}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.btn.is-selected{border-color:var(--ocean);background:var(--ocean-tint)}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:var(--space-2)}.slot{display:grid;gap:2px;justify-items:start;min-height:var(--row-comfy);padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.slot:hover:not(:disabled){background:var(--surface-sunken)}.slot.is-selected{border-color:var(--ocean);background:var(--ocean-tint)}.slot:focus-visible{outline:none;box-shadow:var(--focus-ring)}.slot:disabled{color:var(--ink-subtle);background:var(--surface-sunken);cursor:not-allowed}.slot-time{font-size:var(--text-lg);font-weight:600}.summary-row{display:flex;justify-content:space-between;gap:var(--space-4)}.summary-total{padding-top:var(--space-3);border-top:1px solid var(--border);font-weight:600}.order-lines{list-style:none;margin:0;padding:0}.reference{margin:0;font-family:var(--font-mono);font-size:var(--text-h2);letter-spacing:.08em}.action-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}#no-more-time:focus{outline:none}.btn:disabled:not([aria-busy=true]),.btn[aria-disabled=true]:not([aria-busy=true]){opacity:.55;cursor:not-allowed}.btn[aria-busy=true]{cursor:progress}h1[tabindex="-1"]:focus{outline:none}.field-error{margin:0;font-size:var(--text-sm);color:var(--st-no-show)}.input[aria-invalid=true]{border-color:var(--st-no-show)}.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)}.toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.search-field{max-width:360px}.alert-info{background:var(--ocean-tint);color:var(--ink);border-color:var(--ocean)}.alert-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.alert-actions p{margin:0}.row-actions{display:grid;gap:var(--space-1);justify-items:start}.row-actions .field-error{max-width:32ch}h2[tabindex="-1"]:focus,.field-error[tabindex="-1"]:focus{outline:none}@media(forced-colors:active){.skip-link:focus,a:focus-visible,select:focus-visible,.product-card:focus-visible,.slot:focus-visible{outline:2px solid CanvasText;outline-offset:2px}.btn.is-selected{border-width:3px;margin-inline:-2px}.slot.is-selected{border-width:3px;margin:-2px}.nav-links a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}}
