*{box-sizing:border-box}:root{--sidebar-width:71px}.booking-page{min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:clamp(28px,28px + 36*(100cqw - 390px)/1338,64px) clamp(16px,16px + 16*(100cqw - 390px)/1338,32px);background:radial-gradient(52% 38% at 18% 8%,#3520f457 0,#3520f400 100%),radial-gradient(46% 34% at 86% 90%,#8643ff3d 0,#8643ff00 100%),#100c33;color:#fafafa;font-family:Figtree,sans-serif}.booking-page *{margin:0;box-sizing:border-box}.booking-page .bp-panel{width:100%;max-width:720px;display:flex;flex-direction:column;gap:clamp(20px,20px + 10*(100cqw - 390px)/1338,30px);padding:clamp(24px,24px + 20*(100cqw - 390px)/1338,44px);border-radius:20px;border:1px solid #8643ff52;background:linear-gradient(180deg,#3520f42e,#3520f405 60%),#1b1454;box-shadow:0 30px 80px #00000080}.booking-page .bp-kicker{color:#15e5a6;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(10px,10px + 2*(100cqw - 390px)/1338,12px);font-weight:600}.booking-page .bp-meta{display:flex;gap:clamp(8px,8px + 4*(100cqw - 390px)/1338,12px);flex-wrap:wrap}.booking-page .bp-meta span{padding:clamp(4px,4px + 2*(100cqw - 390px)/1338,6px) clamp(10px,10px + 4*(100cqw - 390px)/1338,14px);border:1px solid #fafafa2e;border-radius:999px;color:#fafafacc;font-size:clamp(11px,11px + 2*(100cqw - 390px)/1338,13px)}.booking-page .bp-description{color:#fafafab8;max-width:62ch;font-size:clamp(13px,13px + 3*(100cqw - 390px)/1338,16px);line-height:1.55}.booking-page .bp-layout{display:flex;flex-direction:column;gap:clamp(18px,18px + 8*(100cqw - 390px)/1338,26px);min-width:0}.booking-page .bp-host{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(10px,10px + 6*(100cqw - 390px)/1338,16px);padding-bottom:clamp(14px,14px + 6*(100cqw - 390px)/1338,20px);border-bottom:1px solid #fafafa1a}.booking-page .bp-host h1{font-family:Prompt,sans-serif;font-weight:600;font-size:clamp(20px,20px + 6*(100cqw - 390px)/1338,26px);line-height:1.15}.booking-page .bp-host .bp-meta{margin-left:auto}.booking-page .bp-host .bp-description{flex-basis:100%}@media(max-width:560px){.booking-page .bp-host .bp-meta{margin-left:0;flex-basis:100%}}.booking-page .bp-host-text{display:flex;flex-direction:column;gap:clamp(2px,2px + 2*(100cqw - 390px)/1338,4px);min-width:0}.booking-page .bp-avatar{width:clamp(46px,46px + 10*(100cqw - 390px)/1338,56px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#3520f4,#6519ef);color:#fff;font-family:Prompt,sans-serif;font-weight:600;font-size:clamp(18px,18px + 4*(100cqw - 390px)/1338,22px);box-shadow:0 10px 26px #3520f473}.booking-page .bp-host-name{color:#fafafa;font-size:clamp(14px,14px + 2*(100cqw - 390px)/1338,16px);font-weight:600}.booking-page .bp-host-org{color:#fafafa99;font-size:clamp(12px,12px + 2*(100cqw - 390px)/1338,14px)}.booking-page .bp-flow{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(14px,14px + 6*(100cqw - 390px)/1338,20px);min-width:0}.booking-page .bp-step-title{font-family:Prompt,sans-serif;font-weight:500;font-size:clamp(17px,17px + 5*(100cqw - 390px)/1338,22px);color:#fafafa}.booking-page .bp-back{border:none;background:#0000;cursor:pointer;padding:0;color:#fafafa99;font-size:clamp(12px,12px + 1*(100cqw - 390px)/1338,13px);font-weight:600;font-family:Figtree,sans-serif}.booking-page .bp-back:hover{color:#fafafa}.booking-page .bp-back:before{content:"← "}.booking-page .bp-picker{display:flex;align-items:flex-start;gap:clamp(14px,14px + 12*(100cqw - 390px)/1338,26px);width:100%;min-width:0}@media(max-width:640px){.booking-page .bp-picker{flex-direction:column;align-items:stretch;gap:clamp(14px,14px + 6*(100cqw - 390px)/1338,20px)}}.booking-page .bp-cal-side{display:flex;flex-direction:column;gap:clamp(10px,10px + 4*(100cqw - 390px)/1338,14px);flex:0 0 auto;width:100%;max-width:348px;min-width:0}@media(max-width:640px){.booking-page .bp-cal-side{max-width:100%}}.booking-page .bp-times{flex:1 1 auto;min-width:clamp(160px,160px + 30*(100cqw - 390px)/1338,190px);display:flex;flex-direction:column;gap:clamp(8px,8px + 4*(100cqw - 390px)/1338,12px);min-width:0;padding-left:clamp(14px,14px + 10*(100cqw - 390px)/1338,24px);border-left:1px solid #fafafa1a}@media(max-width:640px){.booking-page .bp-times{flex:1 1 auto;width:100%;padding-left:0;border-left:none}}.booking-page .bp-times-title{font-family:Prompt,sans-serif;font-weight:500;font-size:clamp(13px,13px + 2*(100cqw - 390px)/1338,15px);color:#fafafa;line-height:1.3}.booking-page .bp-cal-head{display:flex;align-items:center;justify-content:space-between;width:100%;gap:clamp(10px,10px + 6*(100cqw - 390px)/1338,16px)}.booking-page .bp-cal-nav{display:flex;gap:clamp(6px,6px + 2*(100cqw - 390px)/1338,8px)}.booking-page .bp-cal-nav button{width:clamp(30px,30px + 4*(100cqw - 390px)/1338,34px);aspect-ratio:1;border-radius:50%;cursor:pointer;display:grid;place-items:center;border:1px solid #8643ff73;background:#8643ff1f;color:#fafafa;transition:background .16s ease,opacity .16s ease}.booking-page .bp-cal-nav button:hover:not(:disabled){background:#8643ff47}.booking-page .bp-cal-nav button:disabled{opacity:.3;cursor:default}.booking-page .bp-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:clamp(4px,4px + 2*(100cqw - 390px)/1338,6px);width:100%;max-width:348px}@media(max-width:640px){.booking-page .bp-cal{max-width:100%}}.booking-page .bp-cal-dow{display:grid;place-items:center;color:#fafafa73;font-size:clamp(10px,10px + 2*(100cqw - 390px)/1338,12px);font-weight:700;padding-bottom:clamp(2px,2px + 2*(100cqw - 390px)/1338,4px)}.booking-page .bp-cal-day{aspect-ratio:1;border-radius:50%;display:grid;place-items:center;cursor:default;border:1px solid #0000;background:#0000;color:#fafafa52;font-size:clamp(13px,13px + 2*(100cqw - 390px)/1338,15px);font-family:Figtree,sans-serif;font-weight:500;transition:transform .14s ease,background .16s ease,border-color .16s ease}.booking-page .bp-cal-day.bookable{cursor:pointer;color:#fafafa;font-weight:600;background:#8643ff29;border-color:#8643ff73}.booking-page .bp-cal-day.bookable:hover{background:#8643ff57;transform:scale(1.06)}.booking-page .bp-cal-day.bookable:active{transform:scale(.96)}.booking-page .bp-cal-day.selected.bookable{background:linear-gradient(180deg,#3520f4,#6519ef);border-color:#0000;color:#fff;box-shadow:0 8px 20px #3520f473}.booking-page .bp-cal-hint{color:#fafafa80;font-size:clamp(11px,11px + 2*(100cqw - 390px)/1338,13px)}.booking-page .bp-empty{display:flex;flex-direction:column;gap:clamp(8px,8px + 4*(100cqw - 390px)/1338,12px);align-items:flex-start}.booking-page .bp-empty p{color:#fafafab3;font-size:clamp(13px,13px + 2*(100cqw - 390px)/1338,15px);max-width:46ch}.booking-page .bp-slots{display:flex;flex-direction:column;gap:clamp(7px,7px + 2*(100cqw - 390px)/1338,9px);max-height:clamp(250px,250px + 80*(100cqw - 390px)/1338,330px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8643ff80 #0000}.booking-page .bp-slot{cursor:pointer;border:1px solid #8643ff66;border-radius:10px;background:#8643ff1a;color:#fafafa;width:100%;white-space:nowrap;text-align:center;padding:clamp(9px,9px + 3*(100cqw - 390px)/1338,12px) clamp(10px,10px + 4*(100cqw - 390px)/1338,14px);font-size:clamp(13px,13px + 2*(100cqw - 390px)/1338,15px);font-weight:500;font-family:Figtree,sans-serif;transition:transform .14s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.booking-page .bp-slot:hover{background:#8643ff38;transform:translateY(-1px)}.booking-page .bp-slot:active{transform:scale(.97)}.booking-page .bp-slot.active{background:linear-gradient(180deg,#3520f4,#6519ef);border-color:#0000;box-shadow:0 8px 22px #3520f473}.booking-page .bp-form{display:flex;flex-direction:column;gap:clamp(12px,12px + 4*(100cqw - 390px)/1338,16px);width:100%;max-width:520px}.booking-page .bp-form label{display:flex;flex-direction:column;gap:clamp(5px,5px + 2*(100cqw - 390px)/1338,7px);font-size:clamp(12px,12px + 2*(100cqw - 390px)/1338,14px);color:#fafafacc}.booking-page .bp-form input,.booking-page .bp-form textarea{padding:clamp(11px,11px + 3*(100cqw - 390px)/1338,14px) clamp(12px,12px + 4*(100cqw - 390px)/1338,16px);border-radius:10px;border:1px solid #fafafa2e;background:#00000047;color:#fafafa;font-size:clamp(14px,14px + 1*(100cqw - 390px)/1338,15px);font-family:Figtree,sans-serif}.booking-page .bp-form input::placeholder,.booking-page .bp-form textarea::placeholder{color:#fafafa66}.booking-page .bp-form input:focus,.booking-page .bp-form textarea:focus{outline:none;border-color:#8643ffb3;box-shadow:0 0 0 3px #8643ff38}.booking-page .bp-form textarea{min-height:clamp(64px,64px + 20*(100cqw - 390px)/1338,84px);resize:vertical}.booking-page .bp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,10px + 4*(100cqw - 390px)/1338,14px)}@media(max-width:640px){.booking-page .bp-form-row{grid-template-columns:1fr}}.booking-page .bp-confirm{align-self:flex-start;cursor:pointer;border:none;padding:clamp(12px,12px + 3*(100cqw - 390px)/1338,15px) clamp(24px,24px + 12*(100cqw - 390px)/1338,36px);border-radius:10px;background:linear-gradient(180deg,#3520f4,#6519ef);color:#fff;font-size:clamp(14px,14px + 2*(100cqw - 390px)/1338,16px);font-weight:700;font-family:Figtree,sans-serif;box-shadow:0 10px 26px #3520f473;transition:transform .14s ease,box-shadow .18s ease,opacity .16s ease}.booking-page .bp-confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 32px #3520f48c}.booking-page .bp-confirm:active:not(:disabled){transform:scale(.98)}.booking-page .bp-confirm:disabled{opacity:.45;cursor:default;box-shadow:none}.booking-page .bp-error{color:#ff8da0;font-size:clamp(13px,13px + 1*(100cqw - 390px)/1338,14px)}.booking-page .bp-loading{color:#fafafa99;padding:clamp(20px,20px + 12*(100cqw - 390px)/1338,32px) 0}.booking-page .bp-done{display:flex;flex-direction:column;gap:clamp(12px,12px + 6*(100cqw - 390px)/1338,18px);align-items:flex-start}.booking-page .bp-done h2{font-family:Prompt,sans-serif;font-weight:600;font-size:clamp(24px,24px + 10*(100cqw - 390px)/1338,34px)}.booking-page .bp-done .bp-done-check{width:clamp(44px,44px + 10*(100cqw - 390px)/1338,54px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:#15e5a624;border:1px solid #15e5a680;color:#15e5a6}.booking-page .bp-done p{color:#fafafad9;font-size:clamp(15px,15px + 3*(100cqw - 390px)/1338,18px)}.booking-page .bp-done a{color:#15e5a6;font-weight:600;text-decoration:none;border-bottom:1px solid #15e5a680}.booking-page .bp-done a:hover{border-bottom-color:#15e5a6}.booking-page .bp-footer{padding-top:clamp(10px,10px + 6*(100cqw - 390px)/1338,16px);color:#fafafa66;font-size:clamp(11px,11px + 1*(100cqw - 390px)/1338,12px);text-align:center}