body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.customer-bottom-nav{position:fixed;inset:auto 0 0;z-index:40;display:flex;justify-content:center;background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid #e1e1e5;padding:10px max(12px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom));box-shadow:0 -4px 22px #00000005}.customer-bottom-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;flex:1;max-width:300px;min-height:48px;font-size:12px;font-weight:650;color:#767982;text-align:center;border-radius:10px}.customer-bottom-nav a[aria-current=page]{color:#111;background:#f4f4f4}.customer-bottom-nav svg{width:23px;height:23px}.customer-bottom-nav a:focus-visible{outline:2px solid #333;outline-offset:0}#customer-bookings-page[hidden],#booking-card[hidden],.booking-cancel-confirm[hidden]{display:none!important}#customer-toast{bottom:calc(94px + env(safe-area-inset-bottom))}
.has-confirmation .hero,.has-confirmation .shop-strip,.has-confirmation #booking-card>.card-heading,.has-confirmation #steps{display:none}.has-confirmation #booking-content{padding:0}.has-confirmation #booking-card{background:transparent;border:0;box-shadow:none;overflow:visible}.has-confirmation main{max-width:760px}.confirmation-context{display:flex;flex-wrap:wrap;gap:10px 18px;color:#777b85;font-size:12px;padding:0 4px 20px}.confirmation-context>span{display:flex;align-items:center;gap:6px}.confirmation-context svg{width:17px;height:17px;flex-shrink:0}.appointment-confirmation{background:#fff;border:1px solid #dedfe4;border-radius:24px;padding:38px 28px 28px}.confirmation-check{display:grid;place-items:center;width:94px;height:94px;background:linear-gradient(130deg,#20b866,#20bc96);border-radius:50%;margin:0 auto 28px;box-shadow:0 8px 35px #20b96933;color:#fff}.confirmation-check svg{width:52px;height:52px;stroke-width:3}.appointment-confirmation>h2{font-size:26px;color:#22a970;text-align:center;letter-spacing:-.6px;line-height:1.3;margin-bottom:20px}.confirmation-description{text-align:center;color:#82828f;font-size:14px;line-height:1.9;margin:0 auto 28px;max-width:490px}.appointment-reference{background:#151515;color:#fff;text-align:center;border-radius:19px;padding:24px 18px;margin-bottom:26px;box-shadow:0 12px 25px #0000000b}.appointment-reference>span{font-size:13px;display:block}.appointment-reference>strong{display:block;font-family:Manrope,sans-serif;font-size:27px;font-weight:650;letter-spacing:4px;margin:12px 0 6px;overflow-wrap:anywhere}.appointment-reference button{background:transparent;border:0;color:#d4d4d4;text-decoration:underline;text-underline-offset:4px;font-size:11px;min-height:32px;padding:6px 12px}
.appointment-ticket{border:1px solid #dedfe4;border-radius:21px;overflow:hidden;background:#fff}.appointment-when{background:#f3f3f4;padding:23px 25px;display:flex;flex-direction:column;gap:5px;border-bottom:1px solid #dedfe4}.appointment-when>strong{font-family:Manrope,sans-serif;font-size:36px;letter-spacing:-1.2px;line-height:1.2;color:#202126}.appointment-when>span{font-size:13px;color:#7e818c;font-weight:650;text-transform:capitalize;line-height:1.65}.appointment-place{padding:8px 24px}.appointment-person,.appointment-location{display:flex;gap:17px;padding:20px 0;align-items:center}.appointment-location{border-top:1px solid #dedfe4;align-items:flex-start}.appointment-person>div,.appointment-location>div{min-width:0;flex:1}.appointment-place small{display:block;color:#818592;font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:700;margin-bottom:5px}.appointment-place strong{display:block;font-size:14px;line-height:1.6;overflow-wrap:anywhere;color:#272832}.appointment-location p{color:#8b8e98;font-size:13px;line-height:1.7;margin:3px 0 0;overflow-wrap:anywhere}.appointment-avatar,.appointment-location-icon{width:52px;height:52px;border-radius:50%;overflow:hidden;background:#f2f2f3;flex-shrink:0;display:grid;place-items:center;color:#555}.appointment-avatar img{width:100%;height:100%;object-fit:cover;object-position:center 20%}.appointment-avatar svg,.appointment-location-icon svg{width:24px;height:24px}.appointment-services{padding:20px 24px 22px;border-top:1px solid #dedfe4}.appointment-services h4{text-transform:uppercase;letter-spacing:1px;font-size:10px;color:#818592;margin-bottom:18px}.appointment-service{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.appointment-service+.appointment-service{margin-top:20px}.appointment-service>div:first-child{min-width:0;flex:1}.appointment-service strong{display:block;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.appointment-service small{display:block;font-size:12px;color:#9698a1;margin-top:3px}.appointment-service-price{flex-shrink:0;text-align:right;max-width:50%}.appointment-service-price del{display:block;color:#9294a0;font-size:11px;margin-bottom:2px}.appointment-service-price .included{color:#22a970}.appointment-total{padding:21px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#202025;color:#fff}.appointment-total>div{min-width:0}.appointment-total>div strong{font-size:13px;line-height:1.5}.appointment-total small{display:block;font-size:12px;color:#c6c6cd;margin-top:4px}.appointment-total>strong{font-family:Manrope,sans-serif;font-size:25px;white-space:nowrap;letter-spacing:-.6px}.confirmation-note{display:flex;gap:12px;padding:18px;margin-top:25px;background:#f3f6f8;border:1px solid #d6dfe5;border-radius:12px;color:#527080;align-items:flex-start}.confirmation-note svg{flex-shrink:0;width:19px;height:19px;margin-top:2px}.confirmation-note p{font-size:12px;line-height:1.8;margin:0}.confirmation-actions{display:grid;gap:12px;margin-top:22px}.confirmation-actions button{min-height:48px}.confirmation-actions svg{width:18px;height:18px}
.bookings-page .hero{min-height:230px}.bookings-page .hero-content{padding-top:35px;padding-bottom:35px}.bookings-page .hero h1{font-size:36px;margin-bottom:12px}.bookings-page .hero p{font-size:14px;margin:0;max-width:500px}.bookings-page .open-pill,.bookings-page .hero-bottom,.bookings-page .hero-seal,.bookings-page .shop-strip,.bookings-page .trust-row,.bookings-page .customer-help{display:none}.bookings-page main{max-width:800px}.bookings-page-panel{background:#fff;border:1px solid #e2e3e8;border-radius:19px;padding:30px}.bookings-page-heading>span{font-size:11px;font-weight:700;color:#8b8e98}.bookings-page-heading h2{font-size:24px;letter-spacing:-.5px;margin:16px 0}.bookings-page-heading>p{font-size:13px;color:#92949f;line-height:1.9;margin-bottom:20px}.bookings-page-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:24px}.bookings-page-actions .outline{border-radius:25px;font-size:12px;min-height:44px;gap:7px}.bookings-page-actions svg{width:17px;height:17px}.refresh-bookings{font-size:11px;background:none;border:0;color:#737781;padding:10px 4px;min-height:44px}.bookings-tabs{display:flex;gap:6px;padding:6px;border:1px solid #dddfe5;border-radius:15px;margin-bottom:23px;background:#fff}.bookings-tabs button{flex:1;background:transparent;border:0;border-radius:10px;min-height:46px;color:#828692;font-size:13px;font-weight:700;display:flex;justify-content:center;align-items:center;gap:8px}.bookings-tabs button span{font-size:11px;border-radius:8px;background:#f2f3f6;color:#828692;padding:4px 7px}.bookings-tabs button[aria-selected=true]{background:#161616;color:#fff}.bookings-tabs button[aria-selected=true] span{background:#ffffff25;color:#fff}
.booking-history-card{border:1px solid #dedfe4;border-radius:22px;padding:23px 24px;margin-bottom:22px;box-shadow:0 10px 25px #00000004}.booking-history-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.booking-history-card-head>span:first-child{display:flex;align-items:flex-start;gap:7px;color:#858996;font-size:12px;font-weight:650;min-width:0;overflow-wrap:anywhere;line-height:1.7}.booking-history-card svg{width:17px;height:17px;flex-shrink:0}.booking-history-card-head>span:first-child svg{margin-top:2px}.booking-state{font-size:10px;font-weight:650;padding:7px 10px;border-radius:8px;flex-shrink:0;background:#181818;color:#fff}.booking-state.completed{background:#eef5f1;color:#27865e}.booking-state.cancelled{background:#fceeee;color:#b65d5d}.booking-history-card h3{font-size:16px;line-height:1.55;letter-spacing:-.2px;text-transform:capitalize;margin:0 0 7px}.booking-history-time{display:flex;align-items:center;gap:5px;font-size:14px;font-weight:750;color:#222;margin-bottom:22px}.booking-history-info{background:#f4f5f7;border-radius:14px;padding:17px 18px}.booking-history-info p{display:flex;align-items:flex-start;gap:10px;color:#818592;font-size:12px;line-height:1.7;margin:0}.booking-history-info p+p{margin-top:9px}.booking-history-info svg{margin-top:2px}.booking-history-info span,.booking-history-info strong{min-width:0;overflow-wrap:anywhere}.booking-history-info strong{color:#626875;font-size:13px}.booking-history-reference{margin-top:20px;border-top:1px solid #dedfe4;padding-top:17px;font-size:11px;color:#9295a0}.booking-history-reference strong{font-weight:500;letter-spacing:1px}.booking-history-details{margin-top:15px}.booking-history-details summary{font-size:11px;color:#666b77;cursor:pointer;padding:8px 0;min-height:32px}.booking-history-details .appointment-ticket{margin-top:12px}.booking-history-details .appointment-when{display:none}.cancel-booking-button{background:#db354d;color:#fff;border:0;border-radius:10px;min-height:46px;padding:12px 19px;font-size:12px;font-weight:700;margin-top:14px;max-width:100%;cursor:pointer}.cancel-booking-button:disabled{opacity:.55;cursor:wait}.booking-cancel-confirm{margin-top:14px;border:1px solid #eed0d5;border-radius:11px;padding:15px;background:#fff8f9}.booking-cancel-confirm p{font-size:12px;line-height:1.8;margin-bottom:12px;color:#8d5960}.booking-cancel-confirm>div{display:flex;gap:10px;flex-wrap:wrap}.booking-cancel-confirm button{margin:0}.booking-cancel-confirm .outline{font-size:12px}.bookings-empty{text-align:center;padding:32px 12px}.bookings-empty>svg{width:38px;height:38px;color:#aaaeb8;margin-bottom:14px}.bookings-empty h3{font-size:17px}.bookings-empty p{font-size:12px;color:#8c909b;line-height:1.8}.bookings-empty .primary{display:inline-flex;margin-top:12px}.bookings-login .primary{width:100%;min-height:48px}.legacy-booking-lookup{border-top:1px solid #e1e3e8;margin-top:23px;padding-top:18px}.legacy-booking-lookup summary{color:#8a8e9a;font-size:11px;line-height:1.8;cursor:pointer;padding:7px 0}.legacy-booking-lookup .token-form{border:0;margin-top:0;padding-top:18px}.legacy-booking-lookup p{font-size:11px;color:#9094a0;line-height:1.8}.legacy-booking-lookup input{max-width:100%;min-height:46px}
@media(max-width:600px){.has-confirmation main{padding-top:15px}.appointment-confirmation{padding:31px 17px 20px;border-radius:21px}.confirmation-check{width:86px;height:86px;margin-bottom:26px}.appointment-confirmation>h2{font-size:23px}.confirmation-description{font-size:13px;margin-bottom:25px}.appointment-reference{padding:22px 15px}.appointment-reference>strong{font-size:25px}.appointment-when{padding:20px}.appointment-when>strong{font-size:33px}.appointment-when>span{font-size:12px}.appointment-place{padding:6px 18px}.appointment-person,.appointment-location{gap:12px;padding:18px 0}.appointment-place strong{font-size:13px}.appointment-location p{font-size:12px}.appointment-avatar,.appointment-location-icon{width:45px;height:45px}.appointment-services{padding:20px 18px}.appointment-service{gap:10px}.appointment-service strong{font-size:11px}.appointment-service-price{max-width:48%}.appointment-total{padding:19px 18px}.appointment-total>strong{font-size:23px}.confirmation-note{padding:15px;gap:9px}.confirmation-context{font-size:11px;gap:10px 14px}.bookings-page .hero{min-height:185px}.bookings-page .hero-content{padding:30px 23px}.bookings-page .hero h1{font-size:29px}.bookings-page .hero p{font-size:12px}.bookings-page-panel{padding:24px 17px;border-radius:16px}.bookings-page-heading h2{font-size:22px}.bookings-page-heading>p{font-size:12px}.bookings-page-actions .outline{font-size:11px;padding:10px 12px}.booking-history-card{padding:21px 17px;border-radius:19px}.booking-history-card h3{font-size:15px}.booking-history-card-head>span:first-child{font-size:11px}.booking-history-info{padding:16px 14px}.booking-history-info p{font-size:12px}.booking-history-card .appointment-place{padding-left:13px;padding-right:13px}.booking-history-card .appointment-services{padding-left:13px;padding-right:13px}.booking-history-card .appointment-total{padding:17px 13px}.booking-history-card .appointment-total>strong{font-size:21px}.bookings-tabs button{font-size:12px}.cancel-booking-button{width:100%}.booking-cancel-confirm>div{display:grid}.booking-cancel-confirm button{width:100%}.customer-bottom-nav a{font-size:11px}.customer-bottom-nav{padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}}

#confirmation-title:focus,#bookings-title:focus{outline:none}
