/* A compact third step inside the existing booking dialog. */
.booking-dialog.is-payment{width:820px}
.booking-dialog.is-payment .booking-body{display:block;background:#f7fafd}
.booking-dialog.is-payment .booking-fields{height:100%;padding:22px 29px 25px;overflow-y:auto}
.booking-dialog.is-payment .booking-aside{display:none}
.booking-dialog.is-payment .booking-step[data-step="3"]{width:100%}
.booking-dialog.is-payment .booking-footer{min-height:94px}
.booking-dialog.is-payment .booking-footer-price>span{font-size:10px}
.booking-dialog.is-payment #booking-next{font-size:12px;min-width:205px;opacity:.47;cursor:not-allowed;box-shadow:none;transform:none}
.booking-dialog.is-payment #booking-next>.icon{display:none}
.inline-payment{width:100%;max-width:735px;margin:0 auto;background:#fff;border:1px solid #d7e5ef;border-radius:17px;padding:25px 26px;color:#1b3750}
.inline-payment-order{display:flex;justify-content:space-between;gap:25px;padding-bottom:21px;border-bottom:1px solid #dce8f0}
.inline-payment-order>div{min-width:0}.inline-payment-order>div:last-child{flex-shrink:0;text-align:right}
.inline-payment-order>div>span{display:block;font-size:8px;font-weight:600;letter-spacing:.1em;color:#7797ad;line-height:1.7}
.inline-payment-order strong{display:block;line-height:1.5;margin-top:6px;font-size:12px;font-weight:600;overflow-wrap:anywhere}
.inline-payment-order>div:last-child>strong{font-size:25px;line-height:1.3;letter-spacing:-.055em;white-space:nowrap;margin-top:5px}
.inline-payment-order small{display:block;font-size:10px;color:#7b96aa;line-height:1.8;margin-top:5px}
.inline-payment-order>div:first-child>small{overflow-wrap:anywhere}
.inline-payment-title{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-block:23px 20px}
.inline-payment-title h3{font-size:20px;line-height:1.4;letter-spacing:-.035em}
.inline-payment-title>span{font-size:10px;padding:5px 9px;border:1px solid #cbdfea;border-radius:6px;background:#f3f8fc;color:#5a809d;white-space:nowrap}
.inline-bank-layout{display:grid;grid-template-columns:185px minmax(0,1fr);gap:26px;align-items:start}
.inline-qr-placeholder{width:185px;aspect-ratio:1;border:1px dashed #bfd4e5;border-radius:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;text-align:center;background:#f4f9fd;gap:11px}
.inline-qr-placeholder>.icon{width:39px;height:39px;color:#779cb7;margin-bottom:2px}
.inline-qr-placeholder strong{font-size:12px;font-weight:500;color:#6a8ca5;line-height:1.7}
.inline-qr-placeholder>span{font-size:9px;line-height:1.8;color:#9aafbd;max-width:130px}
.inline-bank-details{min-width:0}.inline-bank-details dl{margin:0;display:grid;gap:13px}
.inline-bank-details dl>div{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px;line-height:1.7}
.inline-bank-details dt{color:#6b8aa2;flex:1}.inline-bank-details dd{margin:0;font-weight:500;color:#315c7b;text-align:right;display:flex;align-items:center;gap:7px}
.inline-copy{display:grid;place-items:center;width:26px;height:27px;color:#7499b3;border:1px solid #d9e7f1;border-radius:5px;background:#fff;transition:border-color .2s,background .2s;flex-shrink:0;padding:0}
.inline-copy>.icon{width:13px;height:13px}.inline-copy:hover{border-color:#739ab5;background:#eef6fb}
.inline-bank-reference{border-top:1px solid #e0eaf2;margin-top:17px;padding-top:16px}
.inline-bank-reference>span{font-size:10px;color:#7794a9;display:block;margin-bottom:7px}
.inline-bank-reference>div{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f4f8fc;border:1px solid #d9e7f0;border-radius:7px;padding:8px 9px 8px 11px}
.inline-bank-reference output{font-size:10px;line-height:1.9;letter-spacing:.015em;overflow-wrap:anywhere;font-weight:500;color:#3b6380;min-width:0}
.inline-payment-status{display:flex;align-items:start;gap:10px;padding:13px 15px;border:1px solid #d9e7f0;background:#f0f6fb;border-radius:10px;font-size:11px;line-height:1.85;color:#62839b;margin-top:23px}
.inline-payment-status>.icon{width:16px;height:16px;margin-top:2px}
.inline-payment-bottom{display:flex;flex-direction:column;gap:4px;margin-top:15px}
.inline-payment-bottom>span{display:flex;align-items:start;gap:8px;color:#8a9fad;font-size:9px;line-height:1.9}
.inline-payment-bottom .icon{width:14px;height:14px;margin-top:2px}
#inline-payment-feedback{font-size:10px;line-height:1.8;color:#4c7694}
#inline-payment-feedback:empty{display:none}
.inline-visa-host{position:relative;border:1px solid #cfdfeb;border-radius:12px;background:#fff;padding:20px 22px}
.inline-visa-host-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}
.inline-visa-host-heading>.visa{font-size:24px}
.inline-visa-host-heading>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#7494aa}
.inline-visa-host-heading .icon{width:15px;height:15px}
.inline-card-skeleton>span,.inline-card-skeleton>section>div>span{display:block;color:#91a6b6;font-size:10px;margin-bottom:6px}
.inline-card-skeleton>div,.inline-card-skeleton>section>div>div{padding:11px 12px;border:1px solid #e0e9f1;background:#fafcfe;border-radius:7px;min-height:42px;font-size:11px;color:#b1bfca;margin-bottom:13px;letter-spacing:.035em}
.inline-card-skeleton>section{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.inline-card-skeleton>section>div>div{margin-bottom:0}
.inline-visa-lock{display:flex;gap:10px;align-items:start;background:#f1f7fb;border-radius:8px;padding:12px 14px;margin-top:18px}
.inline-visa-lock>.icon{width:17px;height:17px;color:#6f92ab;margin-top:2px}
.inline-visa-lock>p{font-size:10px;line-height:1.9;color:#839bad}
.inline-visa-lock strong{font-weight:500;color:#597d98}
.inline-payment-success{text-align:center;padding:30px}.inline-payment-success>span{width:54px;height:54px;display:grid;place-items:center;border:1px solid #bdd6e8;background:#eef7fc;border-radius:50%;margin:0 auto 20px;color:#486f8d}.inline-payment-success h3{font-size:27px}.inline-payment-success p{font-size:13px;line-height:1.8;margin-top:15px}
/* Four stops: route, contact, payment, completion. */
.road-labels{gap:12px}.road-stop.stop-two{left:33.333%}.road-stop.stop-three{left:66.667%}.road-stop.stop-four{left:100%;background:#d6e6f2}
[data-stage="1"] .road-stop:not(.stop-one){background:#d6e6f2}[data-stage="2"] .road-stop.stop-three,[data-stage="2"] .road-stop.stop-four{background:#d6e6f2}[data-stage="3"] .road-stop.stop-four{background:#d6e6f2}
@media(max-width:1023px){.booking-dialog.is-payment{max-width:calc(100% - 32px)}.booking-dialog.is-payment .booking-fields{padding:22px}.booking-dialog.is-payment .booking-body{overflow:hidden}.inline-payment{padding:23px}.booking-dialog.is-payment #booking-next{min-width:185px;font-size:11px}.inline-bank-layout{grid-template-columns:170px minmax(0,1fr);gap:22px}.inline-qr-placeholder{width:170px}}
@media(max-width:767px){.booking-dialog.is-payment{width:calc(100% - 16px);max-width:calc(100% - 16px)}.booking-dialog.is-payment .booking-fields{padding:15px 13px 21px}.inline-payment{padding:18px 16px;border-radius:12px}.inline-payment-order{gap:12px;padding-bottom:18px}.inline-payment-order>div>span{font-size:7px;letter-spacing:.06em}.inline-payment-order>div:first-child strong{font-size:9px;max-width:160px}.inline-payment-order>div:last-child strong{font-size:22px;margin-top:7px}.inline-payment-order small{font-size:9px}.inline-payment-title{padding-block:19px 17px;gap:10px}.inline-payment-title h3{font-size:19px;line-height:1.5}.inline-payment-title>span{font-size:8px;padding:4px 7px}.inline-bank-layout{display:block}.inline-qr-placeholder{width:145px;aspect-ratio:1;margin:0 auto 21px;padding:16px;gap:8px}.inline-qr-placeholder>.icon{width:31px;height:31px}.inline-qr-placeholder strong{font-size:11px}.inline-qr-placeholder>span{font-size:8px}.inline-bank-details dl{gap:12px}.inline-bank-details dl>div{font-size:12px}.inline-bank-reference output{font-size:10px}.inline-payment-status{font-size:10px;padding:12px 11px;gap:8px;margin-top:20px}.inline-payment-bottom>span{font-size:8px}.inline-visa-host{padding:17px 15px}.inline-visa-host-heading{gap:10px;margin-bottom:17px}.inline-visa-host-heading>span{font-size:9px;gap:5px}.inline-visa-host-heading>.visa{font-size:22px}.inline-card-skeleton>section{gap:11px}.inline-visa-lock{padding:11px 10px;gap:8px}.inline-visa-lock>p{font-size:9px}.booking-dialog.is-payment .booking-footer{min-height:92px;padding-inline:15px;gap:10px}.booking-dialog.is-payment .booking-footer-actions{gap:7px}.booking-dialog.is-payment #booking-next{min-width:0;width:151px;font-size:10px;white-space:normal;padding:11px 12px;min-height:47px;line-height:1.7}.booking-dialog.is-payment #booking-back{width:36px;min-width:36px;padding:8px}.booking-dialog.is-payment #booking-back>span{display:none}.booking-dialog.is-payment .booking-footer-price>strong{font-size:22px}.booking-dialog.is-payment .booking-footer-price>span{font-size:9px}.road-labels{gap:5px}.road-labels>li{font-size:9px;gap:4px}.road-labels b{width:18px;height:18px;font-size:7px}}
@media(max-width:359px){.inline-payment{padding:17px 13px}.inline-payment-order>div:first-child strong{max-width:135px;font-size:8px}.inline-payment-order>div:last-child strong{font-size:19px}.inline-payment-title h3{font-size:17px}.inline-payment-title>span{font-size:7px}.booking-dialog.is-payment #booking-next{width:130px;font-size:9px}.booking-dialog.is-payment .booking-footer-price>strong{font-size:20px}.road-labels>li{font-size:8px;gap:3px}.road-labels b{width:16px;height:16px;font-size:6px}}
@media(prefers-reduced-motion:reduce){.inline-copy{transition:none}}
