body.package-payment-open{overflow:hidden}
dialog.package-payment{box-sizing:border-box;width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:1px solid #4d4479;border-radius:18px;padding:22px;background:linear-gradient(150deg,#1b1b38,#0c1429);color:#eef0ff;box-shadow:0 30px 110px #0009;font-family:Inter,system-ui,sans-serif}
dialog.package-payment::backdrop{background:#050918bd;backdrop-filter:blur(6px)}
.package-payment .package-payment-close{position:absolute;right:16px;top:16px;width:30px;height:30px;border:1px solid #424363;border-radius:50%;background:#ffffff08;color:#b9bfdc;font-size:24px;cursor:pointer;padding:0;line-height:1}
.package-payment .package-payment-kicker{font-size:10px;font-weight:700;letter-spacing:.18em;color:#ad91ff}
.package-payment h2{font-size:22px;line-height:1.25;margin:0 30px 16px 0;color:#f5f3ff}
.package-payment>p{font-size:13px;line-height:1.6;color:#a4aed0;margin:0 0 20px}
.package-payment-selected{border:1px solid #36365e;border-radius:12px;background:#29214266;padding:11px 13px;margin-bottom:14px}
.package-payment-selected strong,.package-payment-selected span{display:block}.package-payment-selected strong{font-size:14px;color:#dfd3ff}.package-payment-selected span{font-size:11px;line-height:1.5;color:#aaacc9;margin-top:3px}
.package-payment-methods{padding:0;border:0;margin:0;min-width:0}.package-payment-methods legend{font-size:12px;font-weight:600;color:#bac2dd;margin-bottom:8px}
.package-payment-method{display:flex;align-items:center;gap:10px;padding:10px 11px;border:1px solid #313c5d;border-radius:12px;margin-bottom:7px;background:#101b32;cursor:pointer}.package-payment-method:has(input:checked){border-color:#9b7bef;background:#31234f70;box-shadow:0 0 0 1px #9671e933}.package-payment-method:has(input:disabled){opacity:.5;cursor:not-allowed}
.package-payment-method input{accent-color:#aa85ff;width:16px;height:16px;flex:none;margin:0}.package-payment-method>span{flex:1;min-width:0}.package-payment-method strong{display:block;font-size:13px;color:#eceeff}.package-payment-method small{display:block;font-size:11px;color:#99a8c9;line-height:1.5;margin-top:2px}.package-payment-method b{display:grid;place-items:center;width:28px;height:28px;flex:none;border:1px solid #4b436b;border-radius:9px;color:#bca4ee;font-size:12px;background:#242341}.package-payment [hidden]{display:none!important}
.package-payment-quote{padding:0;margin-top:12px}.package-payment-quote p{display:flex;justify-content:space-between;gap:16px;margin:8px 0;font-size:12px;color:#9caacc}.package-payment-quote strong{font-size:13px;color:#dde5ff;text-align:right}.package-payment-quote .package-payment-total{border-top:1px solid #333959;padding-top:10px;margin-top:10px;color:#eee}.package-payment-total strong{font-size:18px;color:#c2a7ff}
.package-payment .package-payment-note{color:#8e9bbd;line-height:1.5;font-size:11px;margin:10px 0}.package-payment .package-payment-submit{box-sizing:border-box;display:block;width:100%;padding:12px;border:0;border-radius:11px;background:linear-gradient(110deg,#8357ec,#6960e6);color:white;font:600 14px Inter,system-ui,sans-serif;text-decoration:none;text-align:center;cursor:pointer}.package-payment .package-payment-submit:disabled{opacity:.45;cursor:not-allowed}.package-payment :focus-visible{outline:2px solid #7eeaff;outline-offset:4px}.package-payment .package-payment-notice{padding:16px;border-radius:10px;background:#332342;color:#e1cbe9}
@media(max-width:520px){dialog.package-payment{padding:18px 16px;border-radius:16px;max-height:calc(100dvh - 24px)}.package-payment h2{font-size:21px}.package-payment-method{padding:9px 10px}.package-payment-selected{padding:10px 12px}}

.package-payment .package-payment-description{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.package-payment .package-payment-methods legend{background:transparent;padding:0;color:#bac2dd}
.bank-payment-dialog{width:min(510px,calc(100vw - 24px));max-height:calc(100dvh - 30px);padding:24px;border:1px solid #605591;border-radius:18px;background:linear-gradient(145deg,#1b1936,#0a1429);color:#edf2ff;box-sizing:border-box;font:13px Inter,Arial,sans-serif}.bank-payment-dialog::backdrop{background:#030718c9;backdrop-filter:blur(5px)}.bank-payment-dialog #bankPaymentContent{width:100%;padding:0;max-width:none}.bank-payment-dialog h1{font-size:24px;margin:0 30px 8px 0;color:#fff}.bank-payment-dialog h2{font-size:16px;margin:0 0 12px}.bank-payment-dialog p{font-size:12px;line-height:1.5;color:#bac7e2;margin:10px 0}.bank-payment-dialog .package-summary{border:0;padding:0;margin:16px 0}.bank-payment-dialog dl{display:grid;grid-template-columns:1fr 1.3fr;gap:11px;padding:16px;background:#0e1b35;border:1px solid #30436b;border-radius:12px}.bank-payment-dialog dt{color:#a6b9d8;font-size:12px}.bank-payment-dialog dd{margin:0;color:white;overflow-wrap:anywhere;font-size:12px}.bank-close{position:absolute;right:15px;top:12px;border:0;background:none;color:#d1dcf3;font-size:28px;cursor:pointer}.bank-payment-dialog input{width:100%;box-sizing:border-box;padding:10px;margin-top:6px;border:1px solid #3c4c74;background:#0c1630;border-radius:8px;color:white;font-size:12px}.bank-payment-dialog .cf-button{display:block;text-align:center;padding:12px;border:0;border-radius:9px;background:linear-gradient(110deg,#803af5,#316cdd);color:white;font-size:13px;text-decoration:none;cursor:pointer}.bank-payment-dialog form .cf-button{width:100%}.bank-payment-dialog a{color:#bd9aff}.bank-payment-dialog [role=alert]{color:#ffa9b2}.bank-payment-dialog [role=status]{color:#7fe3c6}.bank-payment-dialog button:disabled{opacity:.6;cursor:wait}
/* Isolated bank checkout styling, including narrow screens. */
html body dialog.bank-payment-dialog{width:min(1040px,calc(100vw - 32px))!important;max-width:1040px!important;height:auto!important;max-height:calc(100dvh - 32px)!important;margin:auto!important;padding:26px!important;border:1px solid #2962a0!important;border-radius:18px!important;background:linear-gradient(135deg,#08152f,#070e23)!important;color:#edf3ff!important;overflow:auto!important;box-shadow:0 24px 100px #0009;font:13px Arial,sans-serif;box-sizing:border-box}.bank-payment-dialog *{box-sizing:border-box}.bank-payment-dialog #bankPaymentContent{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.bank-payment-dialog .bank-heading{display:flex;align-items:center;gap:16px;padding-right:32px;margin-bottom:22px}.bank-heading>span{display:grid;place-items:center;flex:0 0 56px;height:56px;background:#0b2a50;border:1px solid #285c99;border-radius:14px;font-size:29px}.bank-payment-dialog .bank-heading h1{font:700 29px/1.2 Arial,sans-serif;margin:0 0 7px!important}.bank-heading em{font-style:normal;color:#bf78ff}.bank-payment-dialog .bank-heading p{margin:0;font-size:12px}.bank-payment-dialog .bank-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.bank-panel{padding:18px;border:1px solid #28446c;border-radius:12px;background:#09172e;min-width:0}.bank-payment-dialog .bank-panel h2{font:700 16px Arial,sans-serif;margin:0 0 17px}.bank-package{padding:18px 20px;border:1px solid #7950df;border-radius:12px;margin-bottom:15px;background:linear-gradient(115deg,#241952,#0c1937)}.bank-package small{font-size:14px}.bank-package strong{display:block;font-size:29px;color:#b08aff;margin-top:7px}.bank-payment-dialog .bank-package p{font-size:10px;margin-bottom:0}.bank-payment-dialog dl.bank-details{display:block;margin:0;padding:0;border:1px solid #253c60;background:#0b1b34;border-radius:9px;overflow:hidden}.bank-details>div{display:grid;grid-template-columns:1fr 1.25fr auto;align-items:center;gap:10px;padding:12px;border-bottom:1px solid #263b5a}.bank-details>div:last-child{border:0}.bank-payment-dialog .bank-details dt,.bank-payment-dialog .bank-details dd{font-size:11px;margin:0;line-height:1.5;overflow-wrap:anywhere}.bank-details dd{font-weight:700}.bank-details button{padding:7px;border:1px solid #36568b;border-radius:7px;background:#112749;color:#bddeff;font-size:10px;cursor:pointer}.bank-payment-dialog .bank-note{padding:12px;background:#261750;border:1px solid #50328b;border-radius:8px;font-size:11px}.bank-steps{counter-reset:steps;list-style:none;padding:0;margin:0 0 18px;border-bottom:1px solid #293c5f}.bank-steps li{position:relative;padding:0 0 17px 39px;counter-increment:steps}.bank-steps li:before{content:counter(steps);position:absolute;left:0;top:0;width:27px;height:27px;display:grid;place-items:center;border:1px solid #6652cc;border-radius:50%;background:#202559;color:#d6c2ff}.bank-steps strong{font-size:12px}.bank-steps span{display:block;font-size:11px;color:#acc2e3;line-height:1.5;margin-top:5px;overflow-wrap:anywhere}.bank-upload{display:block;padding:13px;border:1px dashed #5381c1;border-radius:10px;background:#0d203e;font-size:13px;font-weight:600}.bank-upload small{display:block;font-size:10px;color:#a5bcdb;margin:6px 0 10px;font-weight:400}.bank-payment-dialog .bank-upload input{padding:8px 0;border:0;background:transparent;max-width:100%;font-size:11px}.bank-or{text-align:center;color:#9eb5d7;font-size:11px;margin:12px 0}.bank-id{font-size:12px}.bank-payment-dialog .bank-submit{width:100%;padding:13px;border:0;border-radius:9px;background:linear-gradient(100deg,#08b5e9,#6334fa,#972cf3);color:white;font-weight:700;cursor:pointer}.bank-status{display:flex;align-items:center;gap:15px;padding:16px;border:1px solid #314c7d;border-radius:12px;margin-top:18px;background:linear-gradient(100deg,#0d213e,#15102e)}.bank-status>span{font-size:30px;color:#a2caff}.bank-status strong{font-size:12px;color:#f4cf80}.bank-payment-dialog .bank-status p{margin:6px 0 0;font-size:11px}.bank-payment-dialog .bank-close{position:sticky;float:right;top:0;z-index:2;width:30px;height:30px;border:1px solid #3b5683;border-radius:8px;background:#0b1c37;color:white;font-size:23px;line-height:1;padding:0;cursor:pointer}.bank-payment-dialog input:focus-visible,.bank-payment-dialog button:focus-visible{outline:2px solid #37d5fa;outline-offset:2px}body.package-payment-open{overflow:hidden}@media(max-width:640px){html body dialog.bank-payment-dialog{width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;padding:16px!important;border-radius:13px!important}.bank-payment-dialog .bank-layout{grid-template-columns:1fr;gap:12px}.bank-payment-dialog .bank-heading{gap:10px;padding-right:16px;margin-bottom:16px}.bank-payment-dialog .bank-heading h1{font-size:22px}.bank-heading>span{flex-basis:40px;height:44px;font-size:23px}.bank-panel{padding:13px}.bank-package{padding:14px;margin-bottom:12px}.bank-details>div{grid-template-columns:1fr auto;padding:10px;gap:4px 10px}.bank-details dt{grid-column:1}.bank-details dd{grid-column:1}.bank-details button{grid-column:2;grid-row:span 2;min-height:34px}.bank-status{padding:12px}.bank-status>span{display:none}}
