:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f2f2f7;--ink:#1c1c1e;--muted:#636366;--line:#d1d1d6;--primary:#007aff;--primary-dark:#0066d6;--accent:#007aff;--danger:#ff3b30;--success:#34c759;--panel:#fff;--shadow:0 10px 30px #0000000f}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Segoe UI,system-ui,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}:focus-visible{outline-offset:2px;outline:3px solid #007aff47}.page-shell{min-height:100vh}.nav{justify-content:space-between;align-items:center;gap:18px;max-width:1180px;margin:0 auto;padding:18px 24px;display:flex}.brand{align-items:center;gap:10px;font-weight:800;display:flex}.brand-mark{background:var(--primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.nav-links{align-items:center;gap:16px;display:flex}.hero{grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);gap:38px;max-width:1180px;margin:0 auto;padding:56px 24px 42px;display:grid}.hero h1{letter-spacing:0;margin:0 0 22px;font-size:clamp(42px,6vw,76px);line-height:.96}.hero p{color:var(--muted);max-width:680px;font-size:20px;line-height:1.6}.hero-actions,.button-row{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.sb-button,.button-link{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:9px;min-height:44px;padding:11px 16px;font-weight:750;display:inline-flex}.sb-button-primary,.button-link.primary{background:var(--primary);color:#fff}.sb-button-secondary,.button-link.secondary{border-color:var(--line);color:var(--ink);background:0 0}.sb-button-danger{background:var(--danger);color:#fff}.product-shot{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;min-height:430px;overflow:hidden}.product-shot-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px;display:flex}.calendar-grid{grid-template-columns:.8fr repeat(3,1fr);gap:10px;padding:18px;display:grid}.calendar-cell{background:color-mix(in oklab, var(--primary), white 92%);border:1px solid color-mix(in oklab, var(--primary), white 75%);border-radius:8px;min-height:62px;padding:10px}.calendar-cell.busy{background:color-mix(in oklab, var(--accent), white 82%);border-color:color-mix(in oklab, var(--accent), white 68%)}.calendar-cell strong,.calendar-cell span{display:block}.section{max-width:1180px;margin:0 auto;padding:42px 24px}.section h2{letter-spacing:0;margin:0 0 14px;font-size:34px}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:20px}.card p,.panel p,.legal p,.muted{color:var(--muted);line-height:1.6}.booking-layout{grid-template-columns:320px minmax(0,1fr);gap:24px;display:grid}.business-summary{align-self:start}.booking-flow{gap:18px;display:grid}.field{gap:7px;display:grid}.field input,.field textarea,.field select{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:8px;min-height:44px;padding:10px 12px}.choice-grid,.slot-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.choice,.slot{background:var(--panel);border:1px solid var(--line);cursor:pointer;text-align:left;border-radius:8px;min-height:58px;padding:12px}.choice[aria-pressed=true],.slot[aria-pressed=true]{border-color:var(--primary);box-shadow:inset 0 0 0 2px var(--primary)}.dashboard-grid{grid-template-columns:1.2fr .8fr;gap:18px;display:grid}.sb-badge{border-radius:999px;padding:5px 9px;font-size:13px;font-weight:750;display:inline-flex}.sb-badge-neutral{background:color-mix(in oklab, var(--muted), transparent 86%)}.sb-badge-success{background:color-mix(in oklab, var(--success), transparent 82%);color:var(--success)}.sb-badge-warning{background:color-mix(in oklab, var(--accent), transparent 82%);color:var(--accent)}.sb-stat{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:8px;padding:16px;display:grid}.sb-stat span{color:var(--muted)}.sb-stat strong{font-size:28px}.legal{max-width:860px;margin:0 auto;padding:36px 24px 72px}.manage-appointment{gap:14px;display:grid}.manage-appointment h2,.manage-appointment p{margin:0}.manage-actions{gap:16px;margin-top:8px;display:grid}.manage-actions label{gap:7px;max-width:280px;display:grid}.manage-actions input{border:1px solid var(--line);border-radius:8px;min-height:44px;padding:8px 10px}.manage-slots{flex-wrap:wrap;gap:8px;display:flex}.footer{border-top:1px solid var(--line);color:var(--muted);text-align:center;margin-top:42px;padding:28px 24px}[dir=rtl] .choice,[dir=rtl] .slot{text-align:right}@media (max-width:860px){.hero,.booking-layout,.dashboard-grid,.grid{grid-template-columns:1fr}.nav,.nav-links{flex-direction:column;align-items:flex-start}}.booking-page{min-height:100vh}.booking-header{background:var(--panel);border-bottom:1px solid var(--line)}.booking-header-inner{justify-content:space-between;align-items:center;max-width:992px;min-height:62px;margin:0 auto;padding:0 24px;display:flex}.booking-header-inner strong{color:#000;letter-spacing:-.25px;font-size:20px;font-weight:700}.booking-header-inner>span{color:var(--muted);align-items:center;gap:8px;font-size:15px;display:inline-flex}.booking-content{max-width:992px;margin:0 auto;padding:42px 24px 72px}.customer-booking-flow>h1,.booking-success h1{color:#000;letter-spacing:-1.35px;margin:0 0 20px;font-size:clamp(36px,5vw,46px);font-weight:750;line-height:1.08}.booking-section{border-bottom:1px solid var(--line);padding:18px 0}.booking-section-heading{align-items:center;gap:14px;margin-bottom:16px;display:flex}.booking-section-heading>span{background:var(--primary);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:17px;font-weight:700;display:inline-flex}.booking-section-heading h2,.details-heading h2{color:#1c1c1e;letter-spacing:-.25px;margin:0;font-size:20px;font-weight:700}.barber-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.barber-option,.service-option,.date-option,.date-arrow,.time-option{-webkit-tap-highlight-color:transparent;background:var(--panel);color:#1c1c1e;cursor:pointer;border:1px solid #c7c7cc;transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s,transform .16s}.barber-option:hover,.service-option:hover,.date-option:hover,.time-option:hover{border-color:#8e8e93}.barber-option:active,.service-option:active,.date-option:active,.time-option:active{transform:scale(.985)}.barber-option{text-align:left;border-radius:14px;grid-template-columns:48px 1fr 24px;align-items:center;gap:14px;min-height:76px;padding:12px 14px;font-size:17px;font-weight:600;display:grid}.barber-option[aria-pressed=true],.service-option[aria-pressed=true],.date-option[aria-pressed=true],.time-option[aria-pressed=true]{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary);color:var(--primary);background:#e5f1ff}.barber-avatar{color:#3a3a3c;background:#e5e5ea;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:17px;font-weight:700;display:inline-flex}.barber-option[aria-pressed=true] .barber-avatar{color:var(--primary);background:#d6e9ff}.selection-mark{color:#fff;border:1px solid #c7c7cc;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;display:inline-flex}[aria-pressed=true]>.selection-mark{background:var(--primary);border-color:var(--primary)}.service-options{gap:10px;display:grid}.service-option{text-align:left;border-radius:13px;grid-template-columns:28px minmax(180px,1fr) 130px 76px 24px;align-items:center;gap:14px;width:100%;min-height:58px;padding:10px 14px;font-size:16px;display:grid}.service-option>svg{color:var(--muted)}.service-option strong{color:#1c1c1e;font-weight:600}.service-duration{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.service-price{color:#1c1c1e;font-variant-numeric:tabular-nums;text-align:right}.date-rail{grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:12px;display:grid}.date-options{grid-template-columns:repeat(7,minmax(72px,1fr));gap:10px;display:grid}.date-arrow{border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:inline-flex}.date-arrow:disabled{color:#c7c7cc;cursor:not-allowed;opacity:.7}.date-option{text-align:center;border-radius:12px;gap:4px;min-height:72px;padding:10px 6px;display:grid}.date-option span{color:var(--muted);font-size:13px;font-weight:500}.date-option strong{white-space:nowrap;font-size:15px;font-weight:650}.date-option[aria-pressed=true] span{color:var(--primary)}.time-options{scrollbar-width:none;scroll-snap-type:x mandatory;gap:12px;padding:1px 1px 5px;display:flex;overflow-x:auto}.time-options::-webkit-scrollbar{display:none}.time-option{font-variant-numeric:tabular-nums;scroll-snap-align:start;text-align:center;border-radius:12px;flex:0 0 130px;min-height:48px;padding:9px 8px;font-size:16px}.time-option-loading{cursor:wait;background:#e5e5ea;border-color:#0000;animation:1.2s ease-in-out infinite alternate booking-pulse}.booking-empty-state{color:var(--muted);margin:4px 0 0;padding:10px 0 2px;font-size:15px}.customer-details-section{padding:22px 0 0}.details-heading{color:var(--muted);align-items:center;gap:12px;margin-bottom:16px;display:flex}.customer-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.customer-fields label{gap:7px;display:grid}.customer-fields label>span{color:var(--muted);font-size:13px;font-weight:500}.customer-fields input{background:var(--panel);color:#1c1c1e;border:1px solid #c7c7cc;border-radius:10px;width:100%;min-height:46px;padding:10px 12px;font-size:16px}.customer-fields input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #007aff24}.booking-primary-action{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:54px;margin-top:20px;padding:12px 18px;font-size:17px;font-weight:650;transition:background-color .16s,transform .16s;display:flex}.booking-primary-action:hover:not(:disabled){background:var(--primary-dark)}.booking-primary-action:active:not(:disabled){transform:scale(.992)}.booking-primary-action:disabled{cursor:not-allowed;background:#aeaeb2}.booking-legal-copy{color:#8e8e93;text-align:center;margin:10px 0 0;font-size:12px;line-height:1.45}.booking-error{color:var(--danger);text-align:center;margin:10px 0 0;font-size:14px;line-height:1.45}.booking-success{text-align:center;flex-direction:column;align-items:center;max-width:560px;margin:72px auto 0;display:flex}.booking-success-icon{color:var(--success);background:#e8f8ed;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:20px;display:inline-flex}.booking-success h1{margin-bottom:12px}.booking-success p{color:var(--muted);margin:0;font-size:17px;line-height:1.55}.booking-success .booking-primary-action{max-width:360px}@keyframes booking-pulse{0%{opacity:.45}to{opacity:.9}}@media (max-width:760px){.booking-header-inner{min-height:58px;padding:0 18px}.booking-header-inner strong{font-size:18px}.booking-header-inner>span{font-size:0}.booking-content{padding:30px 18px 52px}.customer-booking-flow>h1,.booking-success h1{letter-spacing:-.85px;font-size:34px}.barber-options{gap:9px}.barber-option{text-align:center;grid-template-columns:1fr;align-content:center;justify-items:center;gap:8px;min-height:112px;padding:10px 6px;position:relative}.barber-option .selection-mark{position:absolute;top:8px;right:8px}.service-option{grid-template-columns:24px minmax(0,1fr) 58px 23px;gap:9px 12px;padding:11px 12px}.service-duration{grid-area:2/2;font-size:13px}.service-price{grid-area:1/3/span 2}.service-option>.selection-mark{grid-area:1/4/span 2}.date-rail{grid-template-columns:36px minmax(0,1fr) 36px;gap:8px}.date-arrow{width:36px;height:36px}.date-options{scrollbar-width:none;scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.date-options::-webkit-scrollbar{display:none}.date-option{scroll-snap-align:start;flex:0 0 78px}.time-option{flex-basis:104px}.customer-fields{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.barber-option,.service-option,.date-option,.time-option,.booking-primary-action{transition:none}.time-option-loading{animation:none}}
