:root{--lux-bg: #09090b;--lux-surface: #121214;--lux-surface-card: #18181b;--lux-surface-hover: #222226;--lux-border: #26262a;--lux-border-subtle: #323238;--lux-gold: #ff98a2;--lux-gold-light: #ffb3bc;--lux-gold-glow: rgba(255, 152, 162, .25);--lux-gold-bg: rgba(255, 152, 162, .12);--lux-text-primary: #efefef;--lux-text-secondary: #d4d4d8;--lux-text-muted: #a1a1aa;--lux-text-dim: #71717a;--lux-error: #f87171;--lux-error-bg: rgba(239, 68, 68, .12)}body{background-color:var(--lux-bg);color:var(--lux-text-primary);font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,sans-serif;margin:0;padding:0;min-height:100vh}.luxury-header{background-color:#09090bf0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--lux-border);padding:var(--space-3) 0 0 0;position:sticky;top:0;z-index:100;transition:all .3s ease}.btn-luxury-back{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px 14px;border-radius:var(--radius-sm);border:1px solid var(--lux-border-subtle);background:#ffffff0a;color:var(--lux-text-secondary);font-size:var(--font-size-xs);font-weight:500;text-decoration:none;transition:all .2s ease}.btn-luxury-back:hover{border-color:var(--lux-gold);color:var(--lux-gold);background:var(--lux-gold-bg)}.btn-luxury-back .back-arrow{font-size:14px;transition:transform .2s ease}.btn-luxury-back:hover .back-arrow{transform:translate(-3px)}.luxury-brand-logo{display:flex;align-items:center;gap:var(--space-2)}.luxury-brand-logo .logo-mark{width:30px;height:30px;border-radius:var(--radius-sm);background:var(--lux-gold-bg);border:1px solid rgba(255,152,162,.4);display:flex;align-items:center;justify-content:center;color:var(--lux-gold);font-family:"Noto Serif",serif;font-size:13px;font-weight:700}.luxury-brand-logo .logo-text{font-family:"Noto Serif",serif;font-size:18px;letter-spacing:.15em;color:var(--lux-text-primary);text-transform:uppercase;font-weight:600}.btn-lang-toggle{padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--lux-border-subtle);background:transparent;color:var(--lux-text-muted);font-size:11px;font-weight:600;font-family:monospace;cursor:pointer;transition:all .2s ease}.btn-lang-toggle:hover{color:var(--lux-gold);border-color:var(--lux-gold)}.btn-lang-toggle.is-active{background:var(--lux-gold);color:#09090b;border-color:var(--lux-gold)}.booking-progress-strip{border-top:1px solid rgba(255,255,255,.05);margin-top:var(--space-3);padding:8px 0;background:#09090b99}.progress-steps-bar{display:flex;align-items:center;justify-content:space-between;max-width:680px;margin:0 auto}.progress-step{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--lux-text-dim);transition:all .25s ease;-webkit-user-select:none;user-select:none}.progress-step .step-idx{font-family:monospace;font-size:10px;padding:2px 5px;border-radius:var(--radius-sm);background:#ffffff0d;border:1px solid var(--lux-border)}.progress-step.is-active{color:var(--lux-gold);font-weight:600}.progress-step.is-active .step-idx{background:var(--lux-gold-bg);border-color:var(--lux-gold);color:var(--lux-gold)}.progress-step.is-done{color:var(--lux-text-secondary)}.progress-step.is-done .step-idx{background:#ff98a233;border-color:var(--lux-gold);color:var(--lux-gold)}.progress-line{flex:1;height:1px;background:var(--lux-border);margin:0 8px;transition:background .3s ease}.progress-line.is-done{background:var(--lux-gold)}.booking-main-container{padding-top:var(--space-8);padding-bottom:var(--space-12)}.booking-layout{display:grid;grid-template-columns:1fr 380px;gap:var(--space-8);align-items:start}@media (max-width: 992px){.booking-layout{grid-template-columns:1fr;gap:var(--space-6)}}.booking-step{background:var(--lux-surface);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);border:1px solid var(--lux-border);box-shadow:0 10px 30px #00000073;transition:border-color .25s ease}.booking-step:hover{border-color:var(--lux-border-subtle)}.booking-step-title{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);font-family:"Noto Serif",serif;font-size:var(--font-size-xl);color:var(--lux-text-primary);font-weight:600;letter-spacing:.02em}.step-number{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--lux-gold-bg);border:1px solid rgba(255,152,162,.35);color:var(--lux-gold);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-family:monospace;font-weight:700;flex-shrink:0}.category-filter-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6)}.category-tab-btn{padding:7px 16px;border-radius:var(--radius-sm);border:1px solid var(--lux-border);font-size:var(--font-size-xs);font-weight:500;background:#ffffff08;color:var(--lux-text-muted);cursor:pointer;transition:all .2s ease}.category-tab-btn:hover{border-color:var(--lux-gold);color:var(--lux-text-primary);background:#ff98a214}.category-tab-btn.is-active{background:var(--lux-gold);color:#09090b;border-color:var(--lux-gold);font-weight:600;box-shadow:0 4px 14px #ff98a240}.service-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4)}.service-card{border:1px solid var(--lux-border);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);background-color:var(--lux-surface-card);display:flex;flex-direction:column;justify-content:space-between;position:relative}.service-card:hover{border-color:var(--lux-gold);transform:translateY(-2px);background-color:var(--lux-surface-hover);box-shadow:0 8px 24px #0006,0 0 12px #ff98a21a}.service-card.is-selected{border-color:var(--lux-gold);background-color:#ff98a214;box-shadow:0 0 0 1px var(--lux-gold),0 8px 20px #00000080}.service-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-2);gap:var(--space-2)}.service-card-title{font-size:var(--font-size-sm);font-weight:600;color:var(--lux-text-primary);line-height:1.4}.service-checkbox{width:18px;height:18px;accent-color:var(--lux-gold);cursor:pointer;border-radius:4px}.service-card-desc{font-size:12px;color:var(--lux-text-muted);line-height:1.5;margin-bottom:var(--space-3);flex-grow:1}.service-card-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.06);padding-top:var(--space-3);margin-top:auto}.service-duration-badge,.service-card .badge,.service-card .badge-confirmed{font-size:11px;color:var(--lux-text-secondary)!important;background:#ffffff0f!important;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--lux-border)!important;font-weight:500}.service-card-price{font-weight:700;color:var(--lux-gold);font-size:var(--font-size-sm);letter-spacing:.02em}.staff-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.staff-card{border:1px solid var(--lux-border);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;transition:all .25s ease;background:var(--lux-surface-card);text-align:center}.staff-card:hover{border-color:var(--lux-gold);background-color:var(--lux-surface-hover);transform:translateY(-2px)}.staff-card.is-selected{border-color:var(--lux-gold);background-color:#ff98a214;box-shadow:0 0 0 1px var(--lux-gold)}.staff-avatar{width:50px;height:50px;border-radius:var(--radius-sm);background:var(--lux-gold-bg);border:1px solid rgba(255,152,162,.4);color:var(--lux-gold);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-3) auto;font-weight:700;font-family:"Noto Serif",serif;font-size:16px}.staff-name{font-size:var(--font-size-sm);font-weight:600;color:var(--lux-text-primary);margin-bottom:2px}.staff-role{font-size:11px;color:var(--lux-text-muted)}.time-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--space-2);margin-top:var(--space-3)}.time-slot-btn{padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--lux-border);background:var(--lux-surface-card);color:var(--lux-text-secondary);font-size:var(--font-size-xs);font-weight:600;font-family:monospace;text-align:center;cursor:pointer;transition:all .2s ease}.time-slot-btn:hover:not(:disabled){border-color:var(--lux-gold);background:var(--lux-surface-hover);color:var(--lux-gold)}.time-slot-btn.is-selected{background-color:var(--lux-gold);color:#09090b;border-color:var(--lux-gold);box-shadow:0 4px 12px #ff98a24d}.time-slot-btn:disabled{background-color:#ffffff05;color:var(--lux-text-dim);border-color:#ffffff0a;cursor:not-allowed;opacity:.4;text-decoration:line-through}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;font-size:var(--font-size-xs);font-weight:600;color:var(--lux-text-secondary);margin-bottom:6px;letter-spacing:.02em}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--lux-border);background-color:var(--lux-surface-card);color:var(--lux-text-primary);font-size:var(--font-size-sm);font-family:inherit;box-sizing:border-box;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--lux-gold);outline:none;background-color:var(--lux-surface-hover);box-shadow:0 0 0 2px var(--lux-gold-glow)}.form-input.is-invalid{border-color:var(--lux-error);background-color:var(--lux-error-bg)}.form-error-msg{color:var(--lux-error);font-size:11px;margin-top:4px;display:block}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8) sepia(.3) saturate(2) hue-rotate(5deg);cursor:pointer}.booking-summary-card{background:var(--lux-surface);border-radius:var(--radius-lg);padding:var(--space-6);border:1px solid var(--lux-border);box-shadow:0 14px 40px #0000008c;position:sticky;top:130px}.summary-card-title{font-family:"Noto Serif",serif;font-size:var(--font-size-lg);color:var(--lux-text-primary);margin-bottom:var(--space-4);font-weight:600;padding-bottom:var(--space-3);border-bottom:1px solid var(--lux-border)}.selected-services-summary-list{max-height:220px;overflow-y:auto;margin-bottom:var(--space-4)}.summary-service-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px dashed rgba(255,255,255,.07);font-size:var(--font-size-xs);color:var(--lux-text-secondary)}.summary-details-block{border-top:1px solid var(--lux-border);padding:var(--space-3) 0}.summary-row{font-size:12px;margin-bottom:6px}.summary-label{color:var(--lux-text-muted)}.summary-value{color:var(--lux-text-primary);font-weight:500}.summary-totals-block{border-top:1px solid var(--lux-border);padding:var(--space-3) 0 var(--space-2) 0}.summary-total-row{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid rgba(255,255,255,.05)}.summary-total-label{font-size:var(--font-size-sm);color:var(--lux-text-secondary);font-weight:600}.summary-total-price{color:var(--lux-gold);font-size:var(--font-size-xl);font-weight:700;font-family:Be Vietnam Pro,sans-serif;letter-spacing:.02em}.btn-luxury-gold{background-color:var(--lux-gold);color:#09090b;border:1px solid var(--lux-gold);border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 16px #ff98a233}.btn-luxury-gold:hover:not(:disabled){background-color:var(--lux-gold-light);border-color:var(--lux-gold-light);box-shadow:0 6px 20px #ff98a259;transform:translateY(-1px)}.btn-luxury-gold:disabled{background-color:#ffffff14;border-color:transparent;color:var(--lux-text-dim);cursor:not-allowed;box-shadow:none;transform:none}.btn-block{width:100%}.mobile-sticky-summary{display:none}@media (max-width: 992px){.mobile-sticky-summary{display:block;position:fixed;bottom:0;left:0;right:0;z-index:120;background:#121214f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,152,162,.35);padding:10px 16px;padding-bottom:max(10px,env(safe-area-inset-bottom,14px));box-shadow:0 -8px 30px #000000b3;transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .25s ease}.mobile-summary-content{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);max-width:600px;margin:0 auto}.mobile-summary-info{display:flex;flex-direction:column;min-width:0}.mobile-summary-status-line{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--lux-gold);font-weight:600;margin-bottom:2px}.mobile-summary-values{display:flex;align-items:baseline;gap:6px}.mobile-summary-price{font-size:16px;color:var(--lux-text-primary);font-weight:700}.mobile-summary-duration{font-size:11px;color:var(--lux-text-muted)}.mobile-action-btn{padding:8px 18px;font-size:12px;border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0;min-height:44px;display:flex;align-items:center;justify-content:center}body{padding-bottom:calc(85px + env(safe-area-inset-bottom,16px))}.booking-summary-column{display:none}.booking-step{padding:var(--space-4);margin-bottom:var(--space-4)}.service-cards-grid{grid-template-columns:1fr}.staff-cards-grid{grid-template-columns:repeat(2,1fr)}.luxury-header .container{flex-wrap:wrap;gap:8px}.header-actions-wrap{gap:6px;flex-wrap:wrap;justify-content:flex-end}}@media (max-width: 480px){.staff-cards-grid{grid-template-columns:1fr}.btn-luxury-back{padding:5px 10px;font-size:11px;white-space:nowrap}.luxury-header .container{flex-wrap:wrap;gap:8px}.header-actions-wrap{gap:4px;flex-wrap:wrap;justify-content:flex-end}#btn-open-lookup{padding:4px 8px;font-size:11px}.luxury-brand-logo .logo-text{font-size:16px}.progress-step .step-name{display:none}.progress-step .step-idx{font-size:11px;padding:3px 6px}}@media (max-height: 480px){.booking-progress-strip{display:none}.mobile-sticky-summary{padding:6px 12px}}.auth-dialog{color:var(--color-charcoal, #27272a)}.auth-dialog .form-label{color:var(--color-gray-600, #52525b);font-weight:500}.auth-dialog .form-input{background:#fff;color:var(--color-charcoal, #27272a);border:1px solid var(--color-gray-300, #d4d4d8)}.auth-dialog .form-input:focus{border-color:var(--lux-gold);box-shadow:0 0 0 3px var(--lux-gold-glow);outline:none}.auth-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.auth-tab{padding:6px 16px;border-radius:var(--radius-md);border:1px solid var(--color-gray-300, #d4d4d8);background:#fff;color:var(--color-charcoal, #27272a);font-size:var(--font-size-sm);font-family:inherit;cursor:pointer}.auth-tab.is-active{background:var(--lux-gold);border-color:var(--lux-gold);color:#09090b;font-weight:600}.service-card-media{height:160px;border-radius:var(--radius-md, 8px);background:linear-gradient(135deg,#2b1f24,#8a5b67) center / cover no-repeat;margin-bottom:var(--space-3)}.service-card-media.is-empty{background:linear-gradient(135deg,#3a2430,#ff98a2);opacity:.85}.service-card-kind{display:inline-block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--lux-gold);margin-bottom:4px}.staff-photo{width:84px;height:84px;border-radius:50%;background:var(--lux-surface-hover) center top / cover no-repeat;margin:0 auto var(--space-2);border:1px solid var(--lux-border-subtle)}.staff-bio{margin:4px 0 0;font-size:11px;line-height:1.45;color:var(--lux-text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.service-card-title{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.02em;font-size:22px;line-height:1.1}.staff-card>strong{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:18px!important;letter-spacing:.02em}.booking-hero{text-align:center;padding:var(--space-6) var(--space-4) var(--space-4)}.booking-hero-title{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(44px,9vw,96px);line-height:1.05;letter-spacing:.01em;color:var(--lux-text-primary);margin:0}.booking-hero-sub{font-size:clamp(13px,2.2vw,18px);text-transform:uppercase;letter-spacing:.04em;color:var(--lux-text-secondary);margin:var(--space-2) auto 0;max-width:720px}.service-search{width:100%;height:40px;margin-bottom:var(--space-3);padding:0 14px;background:transparent;color:var(--lux-text-primary);border:1px solid var(--lux-border-subtle);border-radius:32px;font:inherit;font-size:var(--font-size-sm)}.service-search::placeholder{color:var(--lux-text-dim)}.service-search:focus{outline:2px solid var(--lux-gold);outline-offset:1px}.service-cards-grid{grid-template-columns:minmax(0,1fr);gap:0}.service-card{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:var(--space-3);row-gap:2px;align-items:center;padding:var(--space-3) var(--space-2);border:0;border-top:1px solid var(--lux-border);border-radius:0;background:transparent;box-shadow:none}.service-card:hover{transform:none;box-shadow:none;background:var(--lux-surface-hover)}.service-card.is-selected{box-shadow:inset 3px 0 0 var(--lux-gold);background:#ff98a214}.service-card-media{grid-row:1 / span 4;grid-column:1;height:72px;margin:0;border-radius:8px}.service-card-kind,.service-card-header,.service-card-desc,.service-card-footer{grid-column:2}.service-card-desc{margin-bottom:0}.service-card-footer{border-top:0;padding-top:0;margin-top:0;gap:var(--space-3);justify-content:flex-start}.service-card-price{margin-left:auto}.staff-cards-grid{display:flex;gap:var(--space-4);overflow-x:auto;padding-bottom:var(--space-2);scroll-snap-type:x proximity}.staff-card{flex:none;width:132px;border:0;background:transparent;padding:var(--space-2);scroll-snap-align:start}.staff-card:hover{transform:none;background:transparent}.staff-card.is-selected{box-shadow:none;background:transparent}.staff-photo,.staff-avatar{width:68px;height:68px;border-radius:50%;border:1px solid var(--lux-border);outline:2px solid var(--lux-border);outline-offset:3px}.staff-card.is-selected .staff-photo,.staff-card.is-selected .staff-avatar{outline-color:var(--lux-gold)}.staff-card.is-selected strong{color:var(--lux-gold)}@media (max-width: 600px){.service-card{grid-template-columns:72px minmax(0,1fr)}.service-card-media{height:60px}}@media (prefers-reduced-motion: reduce){.service-card,.staff-card{transition:none}}.staff-card>strong{font-family:inherit;text-transform:none;letter-spacing:0;font-weight:600;font-size:13px!important;line-height:1.3}.booking-step-title [data-i18n]{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:26px;line-height:1.15;letter-spacing:.01em}.time-slot-btn{display:flex;flex-direction:column;align-items:center;gap:1px}.time-slot-btn small{font-family:var(--font-sans, inherit);font-size:10px;font-weight:500;letter-spacing:0}.time-slot-btn:not(:disabled):not(.is-selected){border-color:var(--lux-gold);color:var(--lux-text-primary)}.time-slot-btn.is-booked:disabled{opacity:1;text-decoration:none;background:var(--lux-error-bg);border-color:var(--lux-error);color:var(--lux-error)}.time-slot-btn.is-off:disabled,.time-slot-btn.is-past:disabled{opacity:.55;text-decoration:none;border-style:dashed}.slot-legend{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-3);font-size:12px;color:var(--lux-text-muted)}.slot-legend .lg:before{content:"";display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-2px;border-radius:3px;border:1px solid var(--lux-border-subtle)}.slot-legend .lg-free:before{border-color:var(--lux-gold)}.slot-legend .lg-picked:before{background:var(--lux-gold);border-color:var(--lux-gold)}.slot-legend .lg-booked:before{background:var(--lux-error-bg);border-color:var(--lux-error)}.slot-legend .lg-off:before{border-style:dashed}:root[data-theme=light]{--lux-bg: #faf7f6;--lux-surface: #ffffff;--lux-surface-card: #ffffff;--lux-surface-hover: #f6efee;--lux-border: #e6dedc;--lux-border-subtle: #d9cfcc;--lux-gold: #c2415a;--lux-gold-light: #d9566a;--lux-gold-glow: rgba(194, 65, 90, .2);--lux-gold-bg: rgba(194, 65, 90, .08);--lux-text-primary: #1f1b1b;--lux-text-secondary: #4a4343;--lux-text-muted: #6b6361;--lux-text-dim: #8a8280;--lux-error: #b42318;--lux-error-bg: rgba(180, 35, 24, .08)}:root[data-theme=light] .time-slot-btn.is-selected{color:#fff}:root[data-theme=light] .service-card-footer{border-top-color:#00000014}:root[data-theme=light] .luxury-header{background-color:#faf7f6f0}:root[data-theme=light] .booking-progress-strip{background:#ffffffb3}:root[data-theme=light] .mobile-sticky-summary{background:#fffffff5}.cal{max-width:340px;padding:12px;border:1px solid var(--lux-border);border-radius:var(--radius-lg, 12px);background:var(--lux-surface-card)}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal-title{font-size:var(--font-size-sm);font-weight:600;text-transform:capitalize;color:var(--lux-text-primary)}.cal-nav{width:32px;height:32px;border-radius:50%;cursor:pointer;border:1px solid var(--lux-border-subtle);background:transparent;color:var(--lux-text-primary)}.cal-nav:hover:not(:disabled){border-color:var(--lux-gold);color:var(--lux-gold)}.cal-nav:disabled{opacity:.35;cursor:not-allowed}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-wd{text-align:center;font-size:11px;color:var(--lux-text-muted);padding:4px 0}.cal-day{aspect-ratio:1 / 1;border-radius:50%;border:1px solid transparent;cursor:pointer;background:transparent;color:var(--lux-text-primary);font:inherit;font-size:var(--font-size-sm)}.cal-day:hover:not(:disabled){border-color:var(--lux-gold);background:var(--lux-surface-hover)}.cal-day.is-today{border-color:var(--lux-border-subtle)}.cal-day.is-selected{background:var(--lux-gold);border-color:var(--lux-gold);color:#09090b;font-weight:700}.cal-day:disabled{opacity:.3;cursor:not-allowed}.cal-day:focus-visible,.cal-nav:focus-visible{outline:2px solid var(--lux-gold);outline-offset:2px}:root[data-theme=light] .cal-day.is-selected{color:#fff}.cal{max-width:none;width:100%;padding:0;overflow:hidden}.cal-head{margin:0;padding:10px 12px;background:var(--lux-gold-bg);border-bottom:1px solid var(--lux-border)}.cal-title{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:20px;text-transform:uppercase;letter-spacing:.02em;color:var(--lux-gold)}.cal-grid{gap:0}.cal-wd{padding:8px 0;background:var(--lux-gold-bg);color:var(--lux-gold);font-size:12px;font-weight:600;text-transform:uppercase;border-right:1px solid var(--lux-border)}.cal-wd:last-child{border-right:0}.cal-blank{min-height:64px;background:var(--lux-surface);border-right:1px solid var(--lux-border);border-top:1px solid var(--lux-border)}.cal-day{aspect-ratio:auto;min-height:64px;border-radius:0;text-align:left;vertical-align:top;padding:8px 10px;font-size:16px;font-weight:700;border:0;border-top:1px solid var(--lux-border);border-right:1px solid var(--lux-border);background:var(--lux-surface-card)}.cal-day:hover:not(:disabled){background:var(--lux-surface-hover);box-shadow:inset 0 0 0 1px var(--lux-gold)}.cal-day.is-today{box-shadow:inset 0 0 0 2px var(--lux-border-subtle)}.cal-day.is-today:after{content:"Hôm nay";display:block;margin-top:4px;font-size:10px;font-weight:500;color:var(--lux-gold)}.cal-day.is-selected{background:var(--lux-gold);color:#09090b;box-shadow:none}.cal-day.is-selected:after{color:inherit}.cal-day:disabled{opacity:1;color:var(--lux-text-dim);background:var(--lux-surface);cursor:not-allowed;text-decoration:line-through;font-weight:400}.cal-day:focus-visible{outline-offset:-3px}@media (max-width: 600px){.cal-blank,.cal-day{min-height:48px;padding:6px;font-size:14px}.cal-day.is-today:after{display:none}.cal-title{font-size:17px}}.cal-day.is-selected:hover:not(:disabled){background:var(--lux-gold);box-shadow:none;color:#09090b;cursor:default}.time-slot-btn.is-selected:hover:not(:disabled){background:var(--lux-gold);color:#09090b;border-color:var(--lux-gold);box-shadow:0 4px 12px #ff98a24d;cursor:default}.service-card.is-selected:hover{background:#ff98a214;transform:none;box-shadow:inset 3px 0 0 var(--lux-gold);cursor:default}.staff-card.is-selected:hover{background:transparent;transform:none;cursor:default}:root[data-theme=light] .cal-day.is-selected:hover:not(:disabled),:root[data-theme=light] .time-slot-btn.is-selected:hover:not(:disabled){color:#fff}
