
.pdg-booking{max-width:1000px;margin:24px auto;background:white;border:1px solid #e2e7ec;border-radius:24px;padding:26px 34px 0;color:#182b3a;font:15px/1.45 system-ui,sans-serif;box-shadow:0 16px 50px #233e4a08;scroll-margin-top:100px}.pdg-booking *{box-sizing:border-box}.pdg-booking [hidden]{display:none!important}.pdg-booking h2{font-size:29px;line-height:1.15;letter-spacing:-.8px;margin:24px 0 8px;padding:0}.pdg-booking h3{font-size:15px;margin:0;padding:0}.pdg-booking p{margin:0;padding:0;color:#6a7985}.pdg-booking button,.pdg-booking input{font:inherit}.pdg-booking button{cursor:pointer}.pdg-booking button:disabled{cursor:default;opacity:.4}.pdg-booking :focus-visible{outline:3px solid #edac39;outline-offset:3px}.pb-product{display:flex;justify-content:space-between;align-items:center;gap:10px}.pb-product span{font-size:13px;color:#627280}.pb-product strong{font-size:22px;white-space:nowrap}.pb-steps{display:flex;gap:28px;list-style:none!important;padding:0!important;margin:24px 0 0!important;border-bottom:1px solid #e7ebef;counter-reset:step}.pb-steps li{counter-increment:step;display:flex;align-items:center;gap:8px;padding-bottom:16px;color:#8a969e;font-size:13px}.pb-steps li:before{content:counter(step);width:23px;height:23px;background:#f0f3f5;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700}.pb-steps .is-current{color:#086fb8;border-bottom:2px solid #087ac8;font-weight:650}.pb-steps .is-current:before,.pb-steps .is-done:before{background:#087ac8;color:white}.pdg-booking .pb-message{font-size:12px;min-height:18px;margin-top:10px}.pb-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:36px;margin:22px 0}.pb-layout>div{min-width:0}.pdg-booking .pb-label{font-size:13px;font-weight:650;color:#182b3a;margin-bottom:10px}.pb-filters{display:flex;gap:5px;padding:4px;background:#f2f5f7;border-radius:12px}.pb-filters button{flex:1;border:0;border-radius:8px;padding:10px 4px;background:none;color:#617382;font-size:13px;min-height:44px}.pb-filters button[aria-pressed=true]{background:white;box-shadow:0 2px 5px #1a344012;color:#152e40;font-weight:650}.pb-month-nav{display:flex;align-items:center;justify-content:space-between;margin:18px 0 10px}.pb-month-nav strong{font-size:14px;text-transform:capitalize}.pb-month-nav button{border:1px solid #dfe6ed;background:white;border-radius:10px;padding:8px 14px;min-height:40px;color:#34536a}.pb-calendar{display:flex;gap:7px;overflow-x:auto;padding:3px 2px 10px;scroll-snap-type:x proximity}.pb-day{flex:0 0 62px;scroll-snap-align:start;border:1px solid #dfe6ed;background:white;border-radius:12px;padding:9px 4px;color:#5e7180;font-size:11px}.pb-day strong{display:block;font-size:21px;margin:2px}.pb-day small{display:block}.pb-day[aria-pressed=true]{border-color:#087ac8;background:#edf7ff;color:#087ac8}.pb-times{display:grid;grid-template-columns:1fr 1fr;gap:9px;max-height:290px;overflow:auto;padding:2px}.pb-times h3{grid-column:1/-1;font-size:12px;font-weight:500;color:#71818d;margin:4px 0}.pb-slot{border:1px solid #e0e6ec;border-radius:11px;padding:12px;background:white;text-align:left;color:#203c50;position:relative;min-width:0;min-height:78px}.pb-slot strong{font-size:15px;display:block;white-space:nowrap}.pb-slot small{display:block;color:#71818d;font-size:12px;margin-top:7px;padding-right:20px}.pb-slot[aria-pressed=true]{background:#eef8ff;border:1.5px solid #087ac8}.pb-slot[aria-pressed=true]:after{content:'✓';position:absolute;bottom:11px;right:10px;color:#087ac8;font-size:17px;font-weight:800}.pb-summary{background:#f7f9fb;border-radius:16px;padding:20px;align-self:start}.pb-progress{display:flex;gap:4px;margin:14px 0 8px}.pb-progress i{height:6px;flex:1;border-radius:4px;background:#e1e8ed}.pb-progress .pb-filled{background:#087ac8}.pdg-booking .pb-total{font-size:12px;color:#647787}.pb-selected{padding:14px 0;border-bottom:1px solid #e3e9ed;display:flex;align-items:center;justify-content:space-between;gap:6px}.pb-selected p{font-size:12px;white-space:pre-line}.pb-selected button{border:0;background:none;color:#738693;font-size:11px;padding:4px;min-height:44px}.pb-summary.pb-complete{background:#eef8f1;box-shadow:inset 0 0 0 1px #b9dec7}.pb-complete h3,.pdg-booking .pb-complete .pb-total{color:#217345}.pb-complete .pb-filled{background:#2c965c}.pb-complete .pb-selected{border-color:#cfe7d8}.pb-footer{display:flex;align-items:center;gap:12px;padding:18px 0;border-top:1px solid #edf0f3;background:white;position:sticky;bottom:0;z-index:3}.pb-footer-total{margin-right:auto;font-size:13px;color:#6c7d89}.pb-footer button{border:1px solid #dce4ea;background:white;color:#34536a;border-radius:12px;min-height:48px;padding:12px 18px}.pdg-booking .pb-pay{border:0;background:#087ac8;color:white;border-radius:12px;min-height:48px;padding:12px 24px;font-weight:650}.pb-form{max-width:560px;margin:24px auto;display:grid;grid-template-columns:1fr 1fr;gap:18px}.pb-form label{font-size:13px;font-weight:600;min-width:0}.pb-form label:nth-child(3),.pb-form label:nth-child(4),.pb-form>p{grid-column:1/-1}.pb-form input{display:block;width:100%;border:1px solid #d7e1e8;border-radius:10px;padding:12px;margin-top:7px;background:white;color:#1b3547;min-height:48px}.pb-form>p{font-size:12px}.pb-trap{position:absolute!important;left:-10000px!important}.pb-payment{max-width:570px;margin:24px auto}.pb-pay-summary p{padding:15px 0;border-bottom:1px solid #e5ebef;font-size:14px;color:#294353}.pb-consent{display:flex;gap:10px;font-size:12px;align-items:start;margin:20px 0 10px;color:#607483}.pb-consent input{width:18px;height:18px;margin:0;flex-shrink:0}.pb-payment>p{font-size:12px}.pb-payment a{color:#087ac8;text-decoration:underline}.pdg-booking .pb-info{background:#f2f7fb;border-radius:10px;padding:12px 14px;font-size:12px;color:#537087;margin:18px 0}.pb-refresh{background:none;border:0;color:#6a7d8a;text-decoration:underline;font-size:11px!important;margin-top:12px;padding:8px 0}.pb-receipt{padding:24px 0}.pb-receipt p{margin:12px 0}.pb-receipt button{padding:12px;border:1px solid #dce4ea;background:white;border-radius:10px}
body:has(.pdg-booking) #sidebar,body:has(.pdg-booking) #pdg-desk{display:none!important}body:has(.pdg-booking) #left-area{width:100%;padding-right:0}body:has(.pdg-booking) #main-content .container:before{display:none}article:has(.pdg-booking)>h1{display:none}body:has(.pdg-booking) #main-content .container{padding-top:18px}
@media(max-width:700px){.pdg-booking{padding:18px 16px 0;margin:12px 0;border-radius:16px;scroll-margin-top:75px}.pdg-booking h2{font-size:26px;margin-top:20px}.pdg-booking>p{font-size:13px}.pb-product span{font-size:12px}.pb-product strong{font-size:18px}.pb-steps{gap:8px;justify-content:space-between;margin-top:20px!important}.pb-steps li{font-size:11px;gap:5px;padding-bottom:12px}.pb-layout{grid-template-columns:1fr;gap:14px;margin:18px 0}.pb-calendar{gap:5px}.pb-day{flex-basis:53px;padding:7px 3px}.pb-day strong{font-size:19px}.pb-times{max-height:none;overflow:visible;padding:0;gap:8px}.pb-slot{min-height:82px;padding:12px}.pb-slot strong{font-size:clamp(12px,3.5vw,16px);letter-spacing:-.2px}.pb-summary{padding:12px 14px}.pb-summary h3,.pb-progress{display:none}.pb-selected{padding:8px 0}.pb-footer{padding:12px 0 max(12px,env(safe-area-inset-bottom));gap:8px}.pb-footer-total{font-size:12px;min-width:0}.pb-footer button{padding:12px}.pb-form{gap:14px}.pb-form input{font-size:16px}.pb-pay-summary p{font-size:13px}.pb-payment{margin:18px auto}body:has(.pdg-booking) #main-content .container{width:96%;padding-top:8px}}
@media(max-width:359px){.pb-times,.pb-form{grid-template-columns:1fr}.pb-slot strong{font-size:16px}.pb-form label{grid-column:1/-1}.pb-steps li{font-size:10px}.pb-steps li:before{width:20px;height:20px}.pb-product span{max-width:160px}.pb-footer-total{font-size:11px}}

body:has(.pdg-booking) #pdg-mob-card{display:none!important}.pb-footer button{white-space:nowrap}.pdg-booking .pb-footer .pb-pay{flex-shrink:0}@media(max-width:700px){.pdg-booking[data-step="3"] .pb-footer-total{display:none}.pdg-booking[data-step="3"] .pb-footer .pb-pay{margin-left:auto}.pdg-booking h2{font-size:24px}.pb-footer-total{font-size:11px}.pb-footer button{font-size:13px;padding:12px}.pdg-booking .pb-footer .pb-pay{padding:12px 16px}}

.pdg-booking .pb-message.pb-error{color:#a31515!important;background:#fff1f1;border:1px solid #e5abab;border-radius:8px;padding:12px 14px;font-size:15px!important;font-weight:600;line-height:1.5;}

.pb-secure-return{max-width:900px;margin:24px auto;padding:16px;font-family:system-ui,sans-serif}.pb-secure-return a{color:#0868b1}
