#customer-orders{position:fixed;right:16px;bottom:16px;z-index:25;background:#253e32;color:#eee3c7;border:1px solid #a99b73;border-radius:30px;padding:10px 17px;font:13px/1.5 sans-serif;cursor:pointer;box-shadow:0 3px 15px #0003}.commerce-dialog{width:min(520px,calc(100% - 28px));max-height:88dvh;padding:22px;background:#f9f6ed;color:#27392d;border:1px solid #c4b995;border-radius:12px;font:14px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.commerce-dialog::backdrop{background:#081a16bb;backdrop-filter:blur(3px)}.commerce-dialog h2{font-size:23px;margin:0 0 13px;padding-right:25px}.commerce-dialog button,.commerce-dialog input,.commerce-dialog textarea{font:inherit}.commerce-dialog button{border:1px solid #c7c6ac;border-radius:6px;background:#e9e9dc;color:#27392d;padding:10px 15px;cursor:pointer;min-height:43px}.commerce-dialog button.primary{background:#244f3a;color:white;border-color:#244f3a}.commerce-dialog button:disabled{opacity:.5}.commerce-dialog .close-commerce{float:right;min-height:30px;padding:3px 10px}.commerce-dialog label{display:block;font-size:13px;margin:13px 0}.commerce-dialog input:not([type=checkbox]),.commerce-dialog textarea{display:block;width:100%;padding:10px;margin-top:7px;border:1px solid #b7bda9;border-radius:5px;background:white;color:#283a2d}.commerce-dialog input[type=checkbox]{margin-right:7px}.commerce-dialog small{display:block;color:#707968;font-size:12px}.commerce-dialog img{max-width:240px;width:65%;display:block;margin:15px auto;max-height:270px;object-fit:contain}.commerce-dialog .pay-summary{padding:14px;background:#e8eddf;border-radius:7px}.commerce-dialog .pay-summary strong{font-size:24px;display:block}.commerce-dialog .pay-order{padding:14px 0;border-bottom:1px solid #d2d8c6}.commerce-dialog .pay-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.commerce-dialog .pay-message{color:#8c5a32;padding:10px 0;white-space:pre-wrap}.commerce-dialog code{font-size:12px;overflow-wrap:anywhere;user-select:all;display:block;padding:12px;background:white}.site-announcement{margin:12px auto;padding:12px 18px;max-width:1000px;background:#d7c09522;color:inherit;font-size:13px;border:1px solid #a99c6e44}.commerce-loading{padding:90px 25px;text-align:center}.commerce-dialog a{color:#526d46;text-decoration:underline}@media(max-width:600px){#customer-orders{right:10px;bottom:10px;padding:8px 13px;font-size:12px}.commerce-dialog{padding:18px}.commerce-dialog h2{font-size:21px}}

/* Keep the order shortcut above the persistent language selector. */
#customer-orders{right:14px;bottom:calc(70px + env(safe-area-inset-bottom,0px));min-height:44px;background:#211a14;color:#e8d5b4;border-color:#b7966566}
.language-switch{bottom:calc(14px + env(safe-area-inset-bottom,0px))}

/* Mobile bank checkout: short controls and readable transfer details. */
.commerce-dialog{box-sizing:border-box;overflow-wrap:anywhere}.commerce-dialog *{box-sizing:border-box}.commerce-dialog .pay-qr{width:224px;max-width:85%;height:auto;max-height:none;background:#fff}.commerce-dialog .pay-download{display:block;text-align:center;padding:10px;min-height:44px}.pay-steps{padding-left:20px;margin:16px 0;font-size:14px}.pay-steps li+li{margin-top:6px}.pay-bank{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:18px 0}.pay-bank dt{color:#56614d}.pay-bank dd{margin:0;text-align:right;overflow-wrap:anywhere}.pay-recovery{margin:12px 0}.pay-recovery summary{cursor:pointer;padding:8px 0}.commerce-dialog small{color:#59634f}.commerce-dialog .close-commerce{min-height:44px;min-width:44px}.commerce-dialog :focus-visible{outline:2px solid #7b541d;outline-offset:3px}.pay-wait{padding:12px 0;border-top:1px solid #c4cbb6}

/* Keep the bank task short and its close control reachable after any stage change. */
.commerce-dialog .close-commerce{position:sticky;top:0;z-index:3;float:right;background:#f9f6ed}
.commerce-dialog input:not([type=checkbox]),.commerce-dialog textarea{font-size:16px}
.pay-package-summary{margin:10px 0;color:#56614d;font-size:14px}.pay-package-summary summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.pay-package-summary p{margin:0 0 10px}

/* Keep the transfer reference warning next to the bank details. */
.pay-memo-notice{margin:12px 0;padding:12px 14px;background:#e8eddf;border-radius:6px;color:#27392d}.pay-memo-notice strong{display:block;font-size:16px;line-height:1.4}.pay-memo-notice p{margin:5px 0 0;font-size:14px;line-height:1.6}.pay-memo-help{margin:12px 0;font-size:14px;line-height:1.6}.pay-memo-help summary{min-height:44px;padding:10px 0;cursor:pointer;color:#3b513c}.pay-memo-help p{margin:0 0 10px}.pay-bank{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}

/* Compact checkout: keep pricing and the form ahead of optional book previews. */
.commerce-dialog .senan-checkout-brand img{width:30px;height:30px;max-height:30px;margin:0}
.commerce-dialog .pay-message:empty{display:none}
.commerce-dialog:has([data-pay-form="create"]){line-height:1.5;padding:16px}
.commerce-dialog:has([data-pay-form="create"]) .senan-checkout-brand{margin-bottom:6px}
.commerce-dialog:has([data-pay-form="create"]) h2{font-size:21px;line-height:1.3;margin-bottom:8px}
.commerce-dialog:has([data-pay-form="create"]) .pay-summary{padding:8px 10px}
.commerce-dialog .pay-includes{margin:6px 0}.commerce-dialog .pay-includes>summary{display:list-item;cursor:pointer;min-height:40px;padding:9px 0;font-size:13px;color:#526044}.commerce-dialog .pay-includes[open]{margin-bottom:12px}.commerce-dialog .pay-includes .bundle-library{margin-top:10px!important}
.commerce-dialog:has([data-pay-form="create"]) .bundle-price{padding:12px 14px;margin:8px 0 10px}.commerce-dialog:has([data-pay-form="create"]) .bundle-price>div{gap:2px 10px}.commerce-dialog:has([data-pay-form="create"]) .bundle-price strong{font-size:29px;line-height:1.2}.commerce-dialog:has([data-pay-form="create"]) .bundle-saving{font-size:14px!important;margin:5px 0!important}.commerce-dialog:has([data-pay-form="create"]) .bundle-saving small{margin-top:2px!important;line-height:1.4}.commerce-dialog:has([data-pay-form="create"]) .bundle-once{margin:7px 0 0!important;font-size:12px!important;line-height:1.5}
.commerce-dialog .pay-instructions{margin:6px 0 8px;font-size:14px;line-height:1.5}
.commerce-dialog [data-pay-form="create"] label{margin:8px 0;font-size:13px;line-height:1.5}.commerce-dialog [data-pay-form="create"] input:not([type=checkbox]){padding:8px 10px;min-height:42px;margin-top:4px}.commerce-dialog [data-pay-form="create"] .pay-consent{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;margin:8px 0 6px}.commerce-dialog .pay-consent input{width:18px;height:18px;margin:2px 0 0}.commerce-dialog [data-pay-form="create"]>small{font-size:12px;line-height:1.5}.commerce-dialog [data-pay-form="create"] .pay-actions{margin-top:10px}.commerce-dialog [data-pay-form="create"] .primary{width:100%;min-height:44px;padding:10px 14px}
.commerce-dialog .pay-contact{margin:4px 0}.commerce-dialog .pay-contact>summary{cursor:pointer;min-height:32px;padding:5px 0;font-size:13px;color:#526044}.commerce-dialog .pay-contact[open]{margin-bottom:8px}

/* Compact QR payment, with an explicit Photos flow instead of a misleading download. */
.commerce-dialog:has(.pay-qr){padding:16px;line-height:1.45}.commerce-dialog:has(.pay-qr) h2{font-size:21px;line-height:1.3;margin-bottom:8px}.commerce-dialog:has(.pay-qr) .senan-checkout-brand{margin-bottom:6px}.commerce-dialog:has(.pay-qr) .pay-summary{padding:8px 10px}.commerce-dialog:has(.pay-qr) .pay-summary strong{font-size:25px;line-height:1.2}.commerce-dialog:has(.pay-qr) .pay-summary small{font-size:11px;line-height:1.4}
.commerce-dialog:has(.pay-qr) :is(.pay-package-summary,.pay-recovery){margin:3px 0}.commerce-dialog:has(.pay-qr) :is(.pay-package-summary,.pay-recovery)>summary{min-height:32px;padding:6px 0;font-size:13px}
.commerce-dialog .pay-qr{width:208px;max-width:80%;margin:8px auto 6px;-webkit-touch-callout:default;user-select:auto}.commerce-dialog .pay-save-qr{display:block;width:100%;min-height:44px;padding:9px 12px;background:#244f3a;border-color:#244f3a;color:#fff}.commerce-dialog .pay-save-status{font-size:12px;line-height:1.45;color:#526044;margin:5px 0;text-align:center}.commerce-dialog .pay-save-fallback{font-size:12px;line-height:1.45;margin:3px 0}.pay-save-fallback>summary{cursor:pointer;min-height:32px;padding:7px 0}.pay-save-fallback p{margin:5px 0}.commerce-dialog .pay-download-file{display:inline-flex;align-items:center;min-height:36px;font-size:12px}
.commerce-dialog:has(.pay-qr) .pay-steps{margin:6px 0;padding-left:19px;font-size:13px;line-height:1.45}.commerce-dialog:has(.pay-qr) .pay-steps li+li{margin-top:2px}.commerce-dialog:has(.pay-qr) .pay-memo-notice{margin:6px 0;padding:9px 10px}.commerce-dialog:has(.pay-qr) .pay-memo-notice strong{font-size:14px;line-height:1.4}.commerce-dialog:has(.pay-qr) .pay-memo-notice p{font-size:12px;line-height:1.45;margin-top:3px}.commerce-dialog:has(.pay-qr) .pay-bank{gap:4px 10px;margin:8px 0;font-size:13px;line-height:1.45}.commerce-dialog:has(.pay-qr) .pay-memo-help{font-size:12px;line-height:1.45;margin:3px 0}.commerce-dialog:has(.pay-qr) .pay-memo-help>summary{min-height:32px;padding:7px 0}.commerce-dialog:has(.pay-qr) .pay-wait{margin:6px 0;padding:7px 0;font-size:13px;line-height:1.45}.commerce-dialog:has(.pay-qr) .pay-actions{gap:8px;margin-top:8px}.commerce-dialog:has(.pay-qr) .pay-actions>button{flex:1;padding:9px 10px;font-size:13px;min-height:44px}

.commerce-dialog .pay-summary-sms{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 8px}.commerce-dialog .pay-summary-sms>span{font-size:12px}.commerce-dialog .pay-summary-sms>small{grid-column:1/-1}.commerce-dialog .pay-order-details{margin:3px 0;font-size:13px;line-height:1.45}.commerce-dialog .pay-order-details>summary{min-height:32px;padding:7px 0;cursor:pointer}.commerce-dialog .pay-order-details p{margin:6px 0}
