.book-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.book-actions .btn{font:inherit;font-weight:800;cursor:pointer}.book-actions [hidden]{display:none!important}.book-preorder-open{background:#a8792c;color:#fff;border-color:#a8792c}.book-preorder-open:hover{background:#88601f;border-color:#88601f}.book-payment-open{overflow:hidden}
.book-payment-dialog{box-sizing:border-box;width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:36px;border:1px solid #c5a773;border-radius:22px;background:#fffcf6;color:#101b30;box-shadow:0 24px 90px #050c23b3;overflow:auto}.book-payment-dialog::backdrop{background:#050b20b8;backdrop-filter:blur(5px)}.book-payment-dialog .book-dialog-close{display:grid;place-items:center;position:absolute;top:12px;right:14px;width:36px;height:36px;font:28px/1 system-ui;border:0;border-radius:50%;background:#ede6d8;color:#102039;cursor:pointer}.book-payment-dialog h2{font-size:32px;line-height:1.15;margin:8px 0 12px;color:#101b30;letter-spacing:-.03em}.book-payment-dialog .book-order-intro{font-size:15px;color:#536076;line-height:1.65;margin:0 0 10px}.book-payment-dialog .book-order-price{font-size:18px;font-weight:800;color:#75501d;margin:0 0 24px}.book-payment-dialog fieldset{border:0;padding:0;margin:0;min-width:0}.book-payment-dialog legend{font-size:14px;font-weight:750;padding:0;margin-bottom:12px}.book-payment-dialog .book-payment-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.book-payment-dialog .book-pay-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px 8px;background:#fff;border:1px solid #d5c9b3;border-radius:12px;cursor:pointer;min-width:0;font-size:17px;font-weight:800}.book-payment-dialog .book-pay-choice:has(input:checked){border:2px solid #a8792c;padding:19px 7px;background:#f7edda}.book-payment-dialog .book-pay-choice:focus-within{outline:2px solid #173a67;outline-offset:3px}.book-payment-dialog input{width:18px;height:18px;accent-color:#a8792c;margin:0}.book-payment-dialog .book-wallet-bkash{color:#bb1356}.book-payment-dialog .book-wallet-nagad{color:#b5321c}.book-payment-dialog .book-wallet-rocket{color:#772675}.book-payment-dialog .book-payment-status{font-size:14px;color:#536076;min-height:48px;line-height:1.6;margin:18px 0}.book-payment-dialog .book-pay-submit{width:100%;cursor:pointer;font:inherit;font-weight:800}.book-payment-dialog .book-pay-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.book-payment-dialog .book-pay-help{font-size:12px;color:#657084;line-height:1.6;margin:16px 0 0}.book-payment-dialog button:focus-visible{outline:2px solid #173a67;outline-offset:3px}@media(max-width:550px){.book-actions .btn{flex:1 1 180px}.book-payment-dialog{padding:30px 20px 24px}.book-payment-dialog h2{font-size:28px}.book-payment-dialog .book-pay-choice{font-size:15px;padding:18px 5px}.book-payment-dialog .book-pay-choice:has(input:checked){padding:17px 4px}.book-payment-dialog .book-payment-options{gap:8px}}@media(prefers-reduced-motion:reduce){.book-actions .btn{transition:none}}

/* Logos are normal image elements in the HTML, with embedded artwork. */
.book-payment-dialog .book-pay-choice{gap:14px;justify-content:center}
.book-payment-dialog .book-pay-choice .book-payment-logo{display:block;width:100%;max-width:130px;height:74px;flex:0 0 74px;object-fit:contain;object-position:center;margin:0 auto}
.book-payment-dialog .book-pay-choice input{margin:0}
@media(max-width:550px){.book-payment-dialog .book-pay-choice .book-payment-logo{height:60px;flex-basis:60px;max-width:110px}}
.book-payment-dialog .book-payment-options{grid-template-columns:repeat(2,minmax(0,1fr))}
.book-payment-dialog .book-pay-choice{flex-direction:row;padding:14px 10px;gap:8px}
.book-payment-dialog .book-pay-choice:has(input:checked){padding:13px 9px}
.book-payment-dialog .book-pay-choice .book-payment-logo{width:calc(100% - 30px);height:52px;flex:1 1 auto;min-width:0}
.book-payment-dialog [hidden]{display:none!important}
.book-payment-dialog .payment-field{display:block;margin:16px 0;font-size:14px;font-weight:700}
.book-payment-dialog .payment-field input{display:block;box-sizing:border-box;width:100%;height:auto;margin:7px 0 0;padding:12px;background:white;border:1px solid #c8cbd0;border-radius:8px;font:inherit}
.book-payment-dialog #payment-instructions{padding:14px;background:#f7edda;border-radius:10px;line-height:1.7;overflow-wrap:anywhere}
