/* 3.7: explicit currency, illustrated methods, green selection, brand-colour CTA. */
body .bto-checkout.bto-checkout--journey { width:min(100%,800px); }
body .bto-checkout.bto-checkout--journey .bto-checkout__head { text-align:center; margin-bottom:20px; }
body .bto-checkout.bto-checkout--journey .bto-form--single { padding:24px; background:#fff; }
body .bto-checkout.bto-checkout--journey .bto-selected-package { background:#f8f9fa; }
body .bto-checkout.bto-checkout--journey .bto-selected-package__total { background:#eff9f3; }
body .bto-checkout.bto-checkout--journey .bto-selected-package__total strong { color:#09643e; font-size:22px; }
body .bto-checkout.bto-checkout--journey .bto-change-package { color:#ac2145; }
body .bto-checkout.bto-checkout--journey .bto-currency-picker { padding:8px 0 0; border:0; background:transparent; }
body .bto-checkout.bto-checkout--journey :is(.bto-currency-picker,.bto-payment-routes)>legend { padding:0; font-size:19px; }
body .bto-checkout.bto-checkout--journey .bto-currency-options { max-width:none; gap:12px; }
body .bto-checkout.bto-checkout--journey .bto-currency-choice { position:relative; min-height:76px; padding:12px; gap:10px; border:2px solid #d5d9df; border-radius:13px; box-shadow:none; background:#fff; }
body .bto-checkout.bto-checkout--journey .bto-currency-choice>span:not(.bto-choice-check) { display:grid; flex:1; gap:0; font-size:15px; line-height:1.6; }
body .bto-checkout.bto-checkout--journey .bto-currency-choice bdi { color:#525f6d; font-weight:500; }
body .bto-checkout.bto-checkout--journey .bto-currency-flag { width:30px; height:21px; object-fit:contain; flex:none; border-radius:3px; }
body .bto-checkout.bto-checkout--journey :is(.bto-currency-choice,.bto-payment-route)>input { position:absolute; width:1px; height:1px; opacity:0; overflow:hidden; clip-path:inset(50%); }
body .bto-checkout.bto-checkout--journey :is(.bto-currency-choice,.bto-payment-route):focus-within { outline:3px solid #087783; outline-offset:3px; }
body .bto-checkout.bto-checkout--journey :is(.bto-currency-choice,.bto-payment-route).is-selected,
body .bto-checkout.bto-checkout--journey :is(.bto-currency-choice,.bto-payment-route):has(>input:checked) { background:#f0faf5; border-color:#137a54; box-shadow:none; }
body .bto-checkout.bto-checkout--journey .bto-choice-check { display:flex; align-items:center; justify-content:center; width:25px; height:25px; min-width:25px; flex:none; border:2px solid #a6afbb; border-radius:50%; color:transparent; background:#fff; font-size:17px; font-weight:800; line-height:1; }
body .bto-checkout.bto-checkout--journey :is(.bto-currency-choice,.bto-payment-route):has(>input:checked)>.bto-choice-check { color:#fff; background:#137a54; border-color:#137a54; }
body .bto-checkout.bto-checkout--journey .bto-payment-routes { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:22px; }
body .bto-checkout.bto-checkout--journey .bto-payment-route { position:relative; flex-direction:column; justify-content:flex-start; text-align:center; gap:6px; padding:42px 16px 18px; border:2px solid #d5d9df; border-radius:15px; }
body .bto-checkout.bto-checkout--journey .bto-payment-route>.bto-choice-check { position:absolute; top:12px; inset-inline-start:12px; }
body .bto-checkout.bto-checkout--journey .bto-payment-route>.bto-choice-badge { position:absolute; top:12px; inset-inline-end:12px; display:none; padding:3px 8px; border-radius:20px; background:#daf0e5; color:#09643e; font-size:11px; line-height:1.7; font-weight:700; }
body .bto-checkout.bto-checkout--journey .bto-payment-route:has(>input:checked)>.bto-choice-badge { display:block; }
body .bto-checkout.bto-checkout--journey .bto-payment-art { display:block; width:180px; max-width:100%; height:112px; object-fit:contain; }
body .bto-checkout.bto-checkout--journey .bto-payment-route>.bto-method-copy { display:grid; justify-items:center; align-content:start; gap:6px; }
body .bto-checkout.bto-checkout--journey .bto-payment-route strong { font-size:21px; line-height:1.5; color:#17202b; }
body .bto-checkout.bto-checkout--journey .bto-method-subtitle { font-size:15px; color:#455363; }
body .bto-checkout.bto-checkout--journey .bto-payment-brands { display:flex; align-items:center; justify-content:center; gap:10px; max-width:100%; margin:5px 0; }
body .bto-checkout.bto-checkout--journey .bto-payment-brands img { display:block; max-width:29%; height:32px; object-fit:contain; }
body .bto-checkout.bto-checkout--journey .bto-payment-route small { color:#536071; font-size:12px; }
body .bto-checkout.bto-checkout--journey .bto-payment-route--usd,
body .bto-checkout.bto-checkout--journey .bto-payment-route--usd:has(>input:checked) { grid-column:1/-1; flex-direction:row-reverse; align-items:center; justify-content:center; gap:32px; padding:20px; background:#f8fafb; border-color:#d5d9df; cursor:default; }
body .bto-checkout.bto-checkout--journey .bto-payment-route--usd>.bto-choice-check,
body .bto-checkout.bto-checkout--journey .bto-payment-route--usd:has(>input:checked)>.bto-choice-badge { display:none; }
body .bto-checkout.bto-checkout--journey .bto-payment-hint { grid-column:1/-1; margin:0; padding:11px 14px; border:1px solid #dbe3eb; border-radius:10px; background:#f5f7fa; color:#455363; font-size:13px; line-height:1.8; }
body .bto-checkout.bto-checkout--journey .bto-wallet-help { grid-column:1/-1; background:#f5f7fa; border-color:#97a6b6; }
body .bto-checkout.bto-checkout--journey .bto-payment-route.is-unavailable { background:#f3f4f6; border-color:#cbd0d7; border-style:dashed; cursor:not-allowed; }
body .bto-checkout.bto-checkout--journey .bto-checkout-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
body .bto-checkout.bto-checkout--journey .bto-order-summary { position:static; padding:16px; background:#fafbfc; }
body .bto-checkout.bto-checkout--journey .bto-order-summary>.bto-section-heading { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
body .bto-checkout.bto-checkout--journey .bto-order-summary .bto-summary>div:not(.bto-summary__total) { display:none; }
body .bto-checkout.bto-checkout--journey .bto-summary { border:0; }
body .bto-checkout.bto-checkout--journey .bto-summary--compact>.bto-summary__total { grid-template-columns:minmax(0,1fr) auto; align-items:center; background:#eff9f3 !important; }
/* The legacy inline brand stylesheet marks totals important; scope this override. */
body .bto-checkout.bto-checkout--journey .bto-summary__total strong { color:#09643e !important; white-space:nowrap; }
body .bto-checkout.bto-checkout--journey .bto-button--kashier-direct { background:#b12448; color:#fff; box-shadow:0 5px 15px rgb(177 36 72 / 13%); }
body .bto-checkout.bto-checkout--journey .bto-button--kashier-direct:hover:not(:disabled) { background:#951c3c; }
body .bto-checkout.bto-checkout--journey .bto-button--kashier-direct strong { color:#fff; background:rgb(255 255 255 / 12%); }
body .bto-checkout.bto-checkout--journey :is(.bto-service-choice,.bto-audience-choice).is-selected,
body .bto-checkout.bto-checkout--journey .bto-package:has(input:checked) { background:#f0faf5 !important; border-color:#137a54 !important; box-shadow:inset 0 0 0 1px #137a54 !important; }
body .bto-checkout.bto-checkout--journey :is(.bto-service-choice,.bto-audience-choice).is-selected>span:last-child,
body .bto-checkout.bto-checkout--journey .bto-package:has(input:checked) .bto-package__check { background:#137a54; border-color:#137a54; color:#fff; }
body .bto-checkout.bto-checkout--journey .bto-consent input { accent-color:#137a54; }
@media(max-width:600px) {
 body .bto-checkout.bto-checkout--journey .bto-form--single { padding:12px; }
 body .bto-checkout.bto-checkout--journey .bto-currency-options,
 body .bto-checkout.bto-checkout--journey .bto-payment-routes { gap:9px; }
 body .bto-checkout.bto-checkout--journey .bto-currency-choice { gap:6px; min-height:74px; padding:9px 7px; }
 body .bto-checkout.bto-checkout--journey .bto-currency-choice>span:not(.bto-choice-check) { font-size:13px; }
 body .bto-checkout.bto-checkout--journey .bto-currency-flag { width:23px; height:17px; }
 body .bto-checkout.bto-checkout--journey .bto-choice-check { width:22px; height:22px; min-width:22px; font-size:14px; }
 body .bto-checkout.bto-checkout--journey .bto-selected-package__total strong { font-size:18px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route { padding:39px 8px 12px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route>.bto-choice-badge { inset-inline-end:7px; font-size:10px; padding:3px 6px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route>.bto-choice-check { inset-inline-start:7px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-art { height:88px; width:132px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route strong { font-size:18px; }
 body .bto-checkout.bto-checkout--journey .bto-method-subtitle { font-size:12px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route small { font-size:11px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-brands { gap:5px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-brands img { height:25px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route--usd,
 body .bto-checkout.bto-checkout--journey .bto-payment-route--usd:has(>input:checked) { gap:12px; padding:16px 10px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route--usd .bto-payment-art { width:108px; height:85px; }
}
@media(max-width:359px) {
 body .bto-checkout.bto-checkout--journey .bto-currency-flag { display:none; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route>.bto-choice-badge { font-size:9px; padding-inline:4px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route strong { font-size:16px; }
 body .bto-checkout.bto-checkout--journey .bto-payment-route--usd .bto-payment-art { width:76px; }
}
