@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-400-latin-ext.woff2) format("woff2");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:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-400-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-500-latin-ext.woff2) format("woff2");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:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-500-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600-latin-ext.woff2) format("woff2");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:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/poppins-700-latin-ext.woff2) format("woff2");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:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/poppins-700-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--c-bg:#f8f8fc;--c-bg-2:#f1f0fa;--c-surface:#ffffff;--c-surface-raised:#ffffff;--c-surface-sunken:#f1f0fa;--c-border:#e6e4f3;--c-border-strong:#d3d0ea;--c-ink:#182449;--c-ink-muted:#5b6478;--c-ink-faint:#666e87;--c-accent:#5b57ea;--c-accent-2:#8b5cf6;--c-accent-ink:#ffffff;--c-success:#16a34a;--c-warning:#d97706;--c-danger:#e0384a;--c-info:#0891b2;--c-overlay:rgba(24,36,73,.46);--c-accent-soft:rgba(91,87,234,.10);--c-warning-soft:rgba(217,119,6,.12);--c-danger-soft:rgba(224,56,74,.10);--c-danger-border:rgba(224,56,74,.22);--c-grad-brand:linear-gradient(135deg,var(--c-accent),var(--c-accent-2));--c-grad-mesh:radial-gradient(48% 60% at 12% 8%,rgba(139,92,246,.20),transparent 60%),radial-gradient(50% 55% at 88% 4%,rgba(91,87,234,.16),transparent 60%),radial-gradient(55% 60% at 90% 92%,rgba(250,204,148,.24),transparent 60%),radial-gradient(45% 55% at 6% 96%,rgba(153,230,199,.24),transparent 60%),var(--c-bg);--c-tile-1-bg:#fdefd0;--c-tile-2-bg:#d9f2e3;--c-tile-3-bg:#fbe1ea;--c-tile-4-bg:#dcebfc;--c-tile-5-bg:#fbe3d3;--c-tile-6-bg:#e7f5cd;--c-tile-7-bg:#e8e4fb;--c-tile-ink:var(--c-ink);--c-status-pending-bg:rgba(217,119,6,.13);--c-status-pending-ink:#92400e;--c-status-pending-verification-bg:rgba(8,145,178,.13);--c-status-pending-verification-ink:#155e75;--c-status-confirmed-bg:rgba(22,163,74,.13);--c-status-confirmed-ink:#166534;--c-status-completed-bg:rgba(91,87,234,.12);--c-status-completed-ink:#4338ca;--c-status-cancelled-bg:rgba(91,100,120,.13);--c-status-cancelled-ink:var(--c-ink-muted);--c-status-noshow-bg:rgba(224,56,74,.13);--c-status-noshow-ink:#b4232f;--font-display:"Poppins";--font-family:var(--font-display),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-landing-display:var(--font-display);--font-landing-sans:var(--font-display);--fs-xs:12px;--fs-sm:13px;--fs-base:15px;--fs-md:16px;--fs-lg:18px;--fs-xl:22px;--fs-2xl:28px;--fs-3xl:36px;--fs-4xl:44px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.15;--lh-snug:1.3;--lh-normal:1.5;--lh-relaxed:1.65;--sp-0:0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:28px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--sp-24:96px;--r-sm:10px;--r-md:16px;--r-lg:22px;--r-xl:28px;--r-full:999px;--shadow-sm:0 1px 2px rgba(24,36,73,.05);--shadow-md:0 12px 28px rgba(45,40,130,.10);--shadow-lg:0 24px 56px rgba(45,40,130,.16);--shadow-focus:0 0 0 3px rgba(91,87,234,.28);--shadow-up:0 -10px 30px rgba(24,36,73,.10);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--ease-standard:cubic-bezier(.2,.7,.3,1);color-scheme:light}:root[data-theme=dark]{--c-bg:#12142b;--c-bg-2:#181b36;--c-surface:#1b1e3c;--c-surface-raised:#212446;--c-surface-sunken:#0e1026;--c-border:#2c2f52;--c-border-strong:#3c4066;--c-ink:#eef0fb;--c-ink-muted:#a3a9c9;--c-ink-faint:#767ca3;--c-accent:#8b85ff;--c-accent-2:#a78bfa;--c-accent-ink:#12142b;--c-success:#4ade80;--c-warning:#fbbf24;--c-danger:#fb7185;--c-info:#38bdf8;--c-overlay:rgba(6,7,18,.66);--c-accent-soft:rgba(139,133,255,.16);--c-warning-soft:rgba(251,191,36,.16);--c-danger-soft:rgba(251,113,133,.16);--c-danger-border:rgba(251,113,133,.32);--c-status-pending-bg:rgba(251,191,36,.16);--c-status-pending-verification-bg:rgba(56,189,248,.16);--c-status-confirmed-bg:rgba(74,222,128,.16);--c-status-completed-bg:rgba(139,133,255,.16);--c-status-cancelled-bg:rgba(163,169,201,.16);--c-status-noshow-bg:rgba(251,113,133,.16);--c-status-pending-ink:var(--c-warning);--c-status-pending-verification-ink:var(--c-info);--c-status-confirmed-ink:var(--c-success);--c-status-completed-ink:var(--c-accent);--c-status-noshow-ink:var(--c-danger);--c-grad-mesh:radial-gradient(48% 60% at 12% 8%,rgba(139,92,246,.20),transparent 60%),radial-gradient(50% 55% at 88% 4%,rgba(91,87,234,.18),transparent 60%),radial-gradient(55% 60% at 90% 92%,rgba(167,139,250,.14),transparent 60%),radial-gradient(45% 55% at 6% 96%,rgba(56,189,248,.12),transparent 60%),var(--c-bg);--c-tile-1-bg:#3a3320;--c-tile-2-bg:#1f3327;--c-tile-3-bg:#3a2230;--c-tile-4-bg:#1f2c3d;--c-tile-5-bg:#392a1d;--c-tile-6-bg:#2a3320;--c-tile-7-bg:#292640;--c-tile-ink:var(--c-ink);--shadow-sm:0 1px 2px rgba(0,0,0,.28);--shadow-md:0 12px 28px rgba(0,0,0,.32);--shadow-lg:0 24px 60px rgba(0,0,0,.42);--shadow-focus:0 0 0 3px rgba(139,133,255,.38);--shadow-up:0 -10px 30px rgba(0,0,0,.32);color-scheme:dark}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-family);font-size:var(--fs-base);color:var(--c-ink);line-height:var(--lh-normal);scroll-padding-bottom:var(--cookie-bar-height,0)}body,html{background:var(--c-bg)}body{min-height:100vh;padding-bottom:var(--cookie-bar-height,0)}a{color:var(--c-accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}.booking-shell{max-width:480px;margin-inline:auto;min-height:100vh;display:flex;flex-direction:column;padding:var(--sp-4);padding-bottom:var(--sp-10);background:var(--c-bg)}.booking-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-4)}.back-btn{background:none;border:none;color:var(--c-ink-muted);font-size:var(--fs-lg);padding:6px;border-radius:var(--r-sm);transition:color var(--dur-fast)}.back-btn:hover{color:var(--c-ink)}.back-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.back-btn:disabled{visibility:hidden;pointer-events:none}.ovio-logo-link{color:inherit}.ovio-logo-link,.ovio-logo-link:hover{text-decoration:none}.ovio-logo{font-family:var(--font-landing-display),-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:600;letter-spacing:-.02em;line-height:1;color:inherit}.ovio-logo-dot{color:var(--c-accent)}.ovio-logo--nav{font-size:1.35rem}.ovio-logo--hero{font-size:clamp(3.4rem,9vw,5.6rem);line-height:.92;display:block;margin:0 0 1rem}.ovio-logo--auth{font-size:2rem}.ovio-logo--sm{font-size:1.1rem}.booking-head .ovio-logo{margin-inline:auto 0;font-size:var(--fs-md);letter-spacing:.02em}.controls{display:flex;gap:6px;align-items:center}.lang-switch{display:flex;gap:2px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-full);padding:2px}.lang-switch button{background:none;border:none;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--c-ink-muted);padding:4px 10px;border-radius:var(--r-full);transition:background var(--dur-fast),color var(--dur-fast)}.lang-switch button.is-active,.lang-switch button[data-active=true]{background:var(--c-accent);color:var(--c-accent-ink)}.lang-switch button:hover:not([data-active=true]){color:var(--c-ink)}.theme-btn{background:none;border:1px solid var(--c-border);color:var(--c-ink-muted);border-radius:var(--r-full);padding:5px 10px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);transition:border-color var(--dur-fast),color var(--dur-fast)}.theme-btn:hover{border-color:var(--c-accent);color:var(--c-ink)}.account-menu{position:relative}.account-menu-trigger{display:flex;align-items:center;gap:8px;background:none;border:1px solid var(--c-border);border-radius:var(--r-full);padding:4px 12px 4px 4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--c-ink);transition:border-color var(--dur-fast),background var(--dur-fast)}.account-menu-trigger:hover{border-color:var(--c-accent);background:var(--c-surface-raised)}.account-menu-avatar{width:22px;height:22px;border-radius:50%;flex-shrink:0;background:var(--c-grad-brand);color:var(--c-accent-ink);font-weight:var(--fw-bold);font-size:11px;display:flex;align-items:center;justify-content:center}.account-menu-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:30;min-width:200px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);box-shadow:var(--shadow-md);padding:var(--sp-2);display:flex;flex-direction:column;gap:var(--sp-1)}.account-menu-email{padding:6px 8px;font-size:var(--fs-xs);color:var(--c-ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-item{display:block;text-align:left;padding:8px;border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-ink);background:none;border:none;transition:background var(--dur-fast);width:100%}.account-menu-item:hover{background:var(--c-surface-raised);text-decoration:none}.account-menu-item:disabled{opacity:.6;cursor:default}.profile-card{gap:var(--sp-3);margin-bottom:var(--sp-6)}.profile-card,.success-icon{display:flex;align-items:center}.success-icon{width:56px;height:56px;margin:0 auto var(--sp-4);justify-content:center;border-radius:50%;font-size:26px;line-height:1;font-weight:var(--fw-bold);background:var(--c-status-confirmed-bg);color:var(--c-status-confirmed-ink)}.success-icon.is-waiting{background:var(--c-surface-sunken);color:var(--c-ink-faint)}.avatar{width:52px;height:52px;border-radius:50%;background:var(--c-grad-brand);display:flex;align-items:center;justify-content:center;font-size:var(--fs-md);color:var(--c-accent-ink);flex-shrink:0}.avatar,.profile-name{font-weight:var(--fw-bold)}.profile-name{font-size:var(--fs-lg);line-height:var(--lh-tight)}.profile-tag{margin-top:2px}.profile-bio,.profile-tag{font-size:var(--fs-sm);color:var(--c-ink-muted)}.profile-bio{margin:0 0 var(--sp-4);line-height:var(--lh-relaxed);text-wrap:pretty}.venue-facts{display:flex;flex-direction:column;gap:var(--sp-5);margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--c-border)}.venue-heading{margin:0 0 var(--sp-2);font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.02em;text-transform:uppercase;color:var(--c-ink-muted)}.hours-list{margin:0;display:flex;flex-direction:column;gap:2px}.hours-row{display:flex;justify-content:space-between;gap:var(--sp-4);padding:3px 0}.hours-day{font-size:var(--fs-sm);color:var(--c-ink);text-transform:capitalize}.hours-time{margin:0;font-size:var(--fs-sm);color:var(--c-ink-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.venue-address{margin:0 0 var(--sp-2);font-size:var(--fs-sm);color:var(--c-ink);text-wrap:pretty}.venue-map-link{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-accent);text-decoration:underline;text-underline-offset:2px}.stepper{display:flex;align-items:center;gap:4px;margin-bottom:4px}.step-dot{width:8px;height:8px;border-radius:50%;background:var(--c-border);transition:background var(--dur-base)}.step-dot.is-active{background:var(--c-accent);transform:scale(1.25)}.step-dot.is-done{background:var(--c-success)}.step-connector{flex:1 1;height:2px;background:var(--c-border);border-radius:1px}.step-connector.is-done{background:var(--c-success)}.stepper-labels{display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--c-ink-faint);margin-bottom:var(--sp-6)}.stepper-labels .is-active{color:var(--c-accent);font-weight:var(--fw-semibold)}.step-panel{display:none;flex:1 1}.step-panel.is-active{display:flex;flex-direction:column;gap:var(--sp-4);animation:fadein var(--dur-slow) var(--ease-standard)}@keyframes fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.service-card{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);width:100%;background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4);text-align:left;transition:border-color var(--dur-fast),background var(--dur-fast);cursor:pointer}.service-card:hover{border-color:var(--c-accent);background:var(--c-surface-raised)}.service-card:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.service-card.is-selected{border-color:var(--c-accent);background:var(--c-accent-soft)}.svc-info{display:flex;flex-direction:column;gap:3px;min-width:0}.svc-name{font-weight:var(--fw-semibold);font-size:var(--fs-base)}.svc-desc{font-size:var(--fs-sm);line-height:var(--lh-normal);white-space:normal;text-wrap:pretty}.svc-desc,.svc-meta{color:var(--c-ink-muted)}.svc-meta{font-size:var(--fs-xs)}.svc-price{font-weight:var(--fw-bold);font-size:var(--fs-base);white-space:nowrap;color:var(--c-ink)}.day-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.day-tabs::-webkit-scrollbar{display:none}.day-tab{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:46px;padding:8px 6px;border-radius:var(--r-md);border:1.5px solid var(--c-border);background:var(--c-surface);cursor:pointer;transition:border-color var(--dur-fast),background var(--dur-fast);flex-shrink:0}.day-tab.is-active,.day-tab:hover:not([aria-disabled=true]){border-color:var(--c-accent)}.day-tab.is-active{background:var(--c-accent-soft)}.day-tab:disabled,.day-tab[aria-disabled=true]{opacity:.35;cursor:default}.day-tab.is-closed,.day-tab.is-full{background:var(--c-surface-sunken);border-style:dashed}.day-tab.is-closed .day-num,.day-tab.is-full .day-num{color:var(--c-ink-muted)}.day-note{font-size:10px;line-height:1;color:var(--c-ink-faint);text-transform:lowercase}.week-range{margin:calc(-1 * var(--sp-2)) 0 var(--sp-2);font-size:var(--fs-sm);color:var(--c-ink-muted)}.slot-empty{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3)}.day-dow{font-size:var(--fs-xs);color:var(--c-ink-muted);text-transform:uppercase;font-weight:var(--fw-semibold)}.day-num{font-size:var(--fs-md);font-weight:var(--fw-bold)}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));grid-gap:8px;gap:8px}.slot-btn{padding:10px 6px;border-radius:var(--r-sm);border:1.5px solid var(--c-border);background:var(--c-surface);font-size:var(--fs-sm);font-weight:var(--fw-semibold);transition:border-color var(--dur-fast),background var(--dur-fast)}.slot-btn:hover{border-color:var(--c-accent);background:var(--c-surface-raised)}.slot-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.slot-btn.is-selected{border-color:var(--c-accent);background:var(--c-accent-soft);color:var(--c-accent)}.week-nav{display:flex;justify-content:space-between;gap:var(--sp-2)}.week-nav-btn{background:none;border:1px solid var(--c-border);color:var(--c-ink-muted);padding:6px 12px;border-radius:var(--r-sm);font-size:var(--fs-sm);transition:border-color var(--dur-fast),color var(--dur-fast)}.week-nav-btn:hover{border-color:var(--c-accent);color:var(--c-ink)}.week-nav-btn:disabled{opacity:.35;cursor:default}.form-group{display:flex;flex-direction:column;gap:var(--sp-2)}.form-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-ink-muted)}.form-input{width:100%;padding:12px 14px;background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--r-md);color:var(--c-ink);font-size:var(--fs-base);transition:border-color var(--dur-fast);outline:none}.form-input:focus{border-color:var(--c-accent)}.form-input:focus-visible{box-shadow:var(--shadow-focus)}.form-input::placeholder{color:var(--c-ink-faint)}.label-optional{font-weight:var(--fw-regular);color:var(--c-ink-faint)}.btn-primary{width:100%;padding:14px 20px;border:none;border-radius:var(--r-md);background:var(--c-grad-brand);color:var(--c-accent-ink);font-size:var(--fs-base);font-weight:var(--fw-semibold);transition:opacity var(--dur-fast)}.btn-primary:hover{opacity:.88}.btn-primary:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-outline{width:100%;padding:12px 20px;border:1.5px solid var(--c-border);border-radius:var(--r-md);background:none;color:var(--c-ink-muted);font-size:var(--fs-sm);font-weight:var(--fw-semibold);transition:border-color var(--dur-fast),color var(--dur-fast)}.btn-outline:hover{border-color:var(--c-accent);color:var(--c-ink)}.btn-oauth{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);width:100%;padding:12px 20px;border:1.5px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-ink);font-size:var(--fs-base);font-weight:var(--fw-semibold);transition:border-color var(--dur-fast),background var(--dur-fast)}.btn-oauth:hover{border-color:var(--c-accent);background:var(--c-surface-raised)}.btn-oauth:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.summary-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-3)}.summary-row{display:flex;justify-content:space-between;gap:var(--sp-4);font-size:var(--fs-sm)}.summary-key{color:var(--c-ink-muted)}.summary-val{text-align:right}.summary-val,.timer-pill{font-weight:var(--fw-semibold)}.timer-pill{align-self:center;font-size:var(--fs-xs);color:var(--c-warning);border-radius:var(--r-full);padding:6px 12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hold-expired,.timer-pill{background:var(--c-warning-soft)}.hold-expired{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);margin-bottom:var(--sp-4);border:1px solid var(--c-warning);border-radius:var(--r-lg);text-align:center}.hold-expired-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--c-ink)}.hold-expired-text{margin:0;font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--c-ink-muted)}.booking-summary-bar{position:-webkit-sticky;position:sticky;bottom:var(--cookie-bar-height,0);z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);margin-top:var(--sp-5);padding:var(--sp-3) var(--sp-4);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);box-shadow:var(--shadow-md)}.summary-bar-facts{display:flex;flex-direction:column;gap:2px;min-width:0}.summary-bar-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-bar-meta{font-size:var(--fs-xs);color:var(--c-ink-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.summary-bar-price{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--c-ink);white-space:nowrap}.slot-notice{margin-bottom:var(--sp-3);padding:var(--sp-3);border:1px solid var(--c-warning);border-radius:var(--r-sm);background:var(--c-warning-soft);font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--c-ink)}.status-badge{display:inline-block;font-size:var(--fs-xs);font-weight:var(--fw-semibold);padding:3px 10px;border-radius:var(--r-full)}.status-PENDING_VERIFICATION{background:var(--c-status-pending-verification-bg);color:var(--c-status-pending-verification-ink)}.status-CONFIRMED{background:var(--c-status-confirmed-bg);color:var(--c-status-confirmed-ink)}.status-COMPLETED{background:var(--c-status-completed-bg);color:var(--c-status-completed-ink)}.status-CANCELLED{background:var(--c-status-cancelled-bg);color:var(--c-status-cancelled-ink)}.status-NO_SHOW{background:var(--c-status-noshow-bg);color:var(--c-status-noshow-ink)}.booking-item{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-2)}.booking-item-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-2)}.booking-item-service{font-weight:var(--fw-semibold);font-size:var(--fs-base)}.booking-item-client,.booking-item-time{font-size:var(--fs-sm);color:var(--c-ink-muted)}.terms-text{font-size:var(--fs-xs);color:var(--c-ink-faint);line-height:var(--lh-relaxed)}.error-msg{color:var(--c-danger);background:var(--c-danger-soft);border-radius:var(--r-sm);padding:10px 14px}.error-msg,.hint-text{font-size:var(--fs-sm)}.hint-text{color:var(--c-ink-muted);line-height:var(--lh-relaxed)}.page-title{font-size:var(--fs-xl)}.h3,.page-title{font-weight:var(--fw-bold);line-height:var(--lh-tight)}.h3{font-size:var(--fs-lg)}.stack-3{gap:var(--sp-3)}.stack-3,.stack-4{display:flex;flex-direction:column}.stack-4{gap:var(--sp-4)}.mt-auto{margin-top:auto}.spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid var(--c-border);border-top-color:var(--c-accent);animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(1turn)}}.spinner-center{display:flex;justify-content:center;align-items:center;padding:var(--sp-10) 0}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.toolbar-btns{display:flex;gap:var(--sp-2);flex-shrink:0}.toolbar-btns .btn-outline{width:auto;white-space:nowrap;padding:10px 14px;font-size:var(--fs-xs)}.timeline-wrap{position:relative;display:flex;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface);overflow:hidden}.timeline-hours{flex-shrink:0;width:44px;position:relative}.timeline-hour-label{position:absolute;left:0;right:4px;top:-7px;text-align:right;font-size:var(--fs-xs);color:var(--c-ink-faint)}.timeline-track{position:relative;flex:1 1;border-left:1px solid var(--c-border)}.timeline-hour-line{position:absolute;left:0;right:0;height:1px;background:var(--c-border)}.timeline-block{position:absolute;left:4px;right:4px;border-radius:var(--r-sm);padding:3px 8px;font-size:var(--fs-xs);overflow:hidden;cursor:pointer;border:1px solid transparent;line-height:1.3;text-align:left}.timeline-block-booking{background:var(--c-status-confirmed-bg);color:var(--c-status-confirmed-ink)}.timeline-block-booking[data-status=PENDING_VERIFICATION]{background:var(--c-status-pending-verification-bg);color:var(--c-status-pending-verification-ink)}.timeline-block-booking[data-status=CANCELLED],.timeline-block-booking[data-status=NO_SHOW]{opacity:.5;text-decoration:line-through}.timeline-block-timeoff{background:repeating-linear-gradient(135deg,var(--c-surface-sunken),var(--c-surface-sunken) 6px,var(--c-border) 6px,var(--c-border) 7px);color:var(--c-ink-muted);border:1px dashed var(--c-border-strong)}.timeline-block-title{font-weight:var(--fw-semibold)}.timeline-block-sub,.timeline-block-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-block-sub{opacity:.85}.timeline-empty{padding:var(--sp-8) var(--sp-4);text-align:center}.month-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.month-nav-btn{background:none;border:1px solid var(--c-border);color:var(--c-ink-muted);width:36px;height:36px;flex-shrink:0;border-radius:var(--r-sm);font-size:var(--fs-md);transition:border-color var(--dur-fast),color var(--dur-fast)}.month-nav-btn:hover{border-color:var(--c-accent);color:var(--c-ink)}.month-nav-title{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.month-title{font-size:var(--fs-md);text-transform:capitalize;white-space:nowrap}.month-title,.month-today-btn{font-weight:var(--fw-semibold)}.month-today-btn{background:none;border:1px solid var(--c-border);color:var(--c-ink-muted);padding:5px 10px;border-radius:var(--r-sm);font-size:var(--fs-xs);flex-shrink:0}.month-today-btn:hover{border-color:var(--c-accent);color:var(--c-ink)}.month-weekday-header{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:2px;gap:2px}.month-weekday-header span{text-align:center;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--c-ink-faint);text-transform:uppercase;padding-bottom:2px}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:2px;gap:2px}.month-cell{min-height:60px;padding:3px;border-radius:var(--r-sm);border:1px solid transparent;background:var(--c-surface);cursor:pointer;display:flex;flex-direction:column;gap:2px;min-width:0;transition:border-color var(--dur-fast),background var(--dur-fast);font:inherit;color:inherit;text-align:left;width:100%}.month-cell:hover{border-color:var(--c-border)}.month-cell:focus-visible{outline:none;box-shadow:var(--shadow-focus)}[data-step-heading]:focus{outline:none}.month-cell.is-outside{background:none}.month-cell.is-outside .month-cell-num{color:var(--c-ink-faint)}.month-cell.is-selected{border-color:var(--c-accent);background:var(--c-accent-soft)}.month-cell-num{font-size:var(--fs-xs);font-weight:var(--fw-semibold);width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:var(--r-full);flex-shrink:0}.month-cell.is-today .month-cell-num{background:var(--c-accent);color:var(--c-accent-ink)}.month-cell-items{display:flex;flex-direction:column;gap:1px;min-width:0}.month-chip{font-size:9px;line-height:1.3;padding:1px 3px;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-chip-booking{background:var(--c-status-confirmed-bg);color:var(--c-status-confirmed-ink)}.month-chip-timeoff{background:var(--c-surface-sunken);color:var(--c-ink-muted)}.month-chip-more{font-size:9px;color:var(--c-ink-faint);padding:0 3px}.block-time-form{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.block-time-row{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:flex-end}.block-time-row .form-group{flex:1 1 7rem;min-width:0}.status-actions{display:flex;gap:var(--sp-2)}.status-actions button{flex:1 1;padding:10px 8px;border-radius:var(--r-md);border:1.5px solid var(--c-border);background:none;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--c-ink-muted);transition:border-color var(--dur-fast),background var(--dur-fast),color var(--dur-fast)}.status-actions button:disabled{opacity:.5;cursor:not-allowed}.act-complete:hover:not(:disabled){border-color:var(--c-success);background:var(--c-status-completed-bg);color:var(--c-status-completed-ink)}.act-cancel:hover:not(:disabled),.act-noshow:hover:not(:disabled){border-color:var(--c-danger);background:var(--c-status-noshow-bg);color:var(--c-status-noshow-ink)}.field-row{display:flex;gap:var(--sp-3)}.field-row .form-group{flex:1 1;min-width:0}.weekday-grid{display:flex;gap:6px;flex-wrap:wrap}.weekday-chip{width:42px;height:42px;border-radius:var(--r-full);flex-shrink:0;border:1.5px solid var(--c-border);background:var(--c-surface);color:var(--c-ink-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);transition:border-color var(--dur-fast),background var(--dur-fast),color var(--dur-fast)}.weekday-chip:hover{border-color:var(--c-accent)}.weekday-chip:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.weekday-chip.is-active{border-color:var(--c-accent);background:var(--c-accent);color:var(--c-accent-ink)}.schedule-rows{display:flex;flex-direction:column;gap:var(--sp-2)}.schedule-row{display:flex;align-items:center;gap:var(--sp-3);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4)}.schedule-row-day{font-weight:var(--fw-semibold);width:28px;flex-shrink:0}.schedule-row-times{display:flex;align-items:center;gap:var(--sp-2);flex:1 1;min-width:0}.schedule-row-times input[type=time]{flex:1 1;min-width:0;padding:8px 10px;border:1.5px solid var(--c-border);border-radius:var(--r-sm);background:var(--c-surface);color:var(--c-ink);font-size:var(--fs-sm)}.schedule-row-times span{color:var(--c-ink-faint);font-size:var(--fs-xs)}.service-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4)}.service-row.is-inactive{opacity:.55}.service-row-info{min-width:0}.service-row-name{font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-row-meta{font-size:var(--fs-sm);color:var(--c-ink-muted)}.service-row-actions{display:flex;gap:var(--sp-2);flex-shrink:0}.service-row-actions button{background:none;border:1px solid var(--c-border);color:var(--c-ink-muted);padding:6px 12px;border-radius:var(--r-sm);font-size:var(--fs-xs);font-weight:var(--fw-semibold);transition:border-color var(--dur-fast),color var(--dur-fast)}.service-row-actions button:hover{border-color:var(--c-accent);color:var(--c-ink)}.slug-input-row{display:flex;align-items:stretch;border:1.5px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;transition:border-color var(--dur-fast)}.slug-input-row:focus-within{border-color:var(--c-accent)}.slug-prefix{display:flex;align-items:center;padding-left:14px;background:var(--c-surface-sunken);color:var(--c-ink-faint);font-size:var(--fs-sm);white-space:nowrap;flex-shrink:0}.slug-input-row .form-input{border:none;border-radius:0}.slug-input-row .form-input:focus{border:none;box-shadow:none}.link-pill{display:flex;align-items:center;gap:var(--sp-2);background:var(--c-surface-sunken);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);color:var(--c-accent);word-break:break-all}.divider{height:1px;background:var(--c-border);margin:var(--sp-2) 0}.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:80;padding:clamp(.75rem,2vw,1rem) clamp(1rem,3vw,1.5rem);background:var(--c-surface);color:var(--c-ink);border-top:1px solid var(--c-border);box-shadow:var(--shadow-up)}.cookie-bar-inner{max-width:1100px;margin-inline:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.cookie-bar-copy{flex:1 1 16rem;min-width:0}.cookie-bar-title{margin:0 0 .25rem;font-size:.95rem;font-weight:var(--fw-bold);letter-spacing:.01em}.cookie-bar-text{margin:0;font-size:.85rem;line-height:1.45;color:var(--c-ink-muted)}.cookie-bar-link{color:var(--c-accent);font-weight:var(--fw-semibold);text-decoration:underline;text-underline-offset:2px}.cookie-bar-link:hover{color:var(--c-accent-2)}.cookie-bar-actions{display:flex;flex-wrap:wrap;gap:.55rem;flex:0 0 auto}.cookie-bar-btn{min-height:2.6rem;padding:.6rem 1.2rem;border-radius:var(--r-full);font-size:.85rem;font-weight:var(--fw-bold);cursor:pointer;border:1.5px solid transparent;transition:opacity var(--dur-fast),border-color var(--dur-fast),background var(--dur-fast)}.cookie-bar-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.cookie-bar-btn-primary{background:var(--c-grad-brand);color:var(--c-accent-ink)}.cookie-bar-btn-primary:hover{opacity:.9}.cookie-bar-btn-ghost{background:var(--c-surface);color:var(--c-ink);border-color:var(--c-border)}.cookie-bar-btn-ghost:hover{border-color:var(--c-accent);background:var(--c-surface-sunken)}@media(max-width:640px){.cookie-bar-actions{width:100%}.cookie-bar-btn{flex:1 1 auto}}.eyebrow{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.09em;text-transform:uppercase;color:var(--c-accent)}.mesh-bg{background:var(--c-grad-mesh)}.icon-tile{width:56px;height:56px;border-radius:var(--r-lg);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--c-tile-ink)}.icon-tile svg{width:26px;height:26px;stroke-width:1.8}.icon-tile-1{background:var(--c-tile-1-bg)}.icon-tile-2{background:var(--c-tile-2-bg)}.icon-tile-3{background:var(--c-tile-3-bg)}.icon-tile-4{background:var(--c-tile-4-bg)}.icon-tile-5{background:var(--c-tile-5-bg)}.icon-tile-6{background:var(--c-tile-6-bg)}.icon-tile-7{background:var(--c-tile-7-bg)}