/* V34: solo Pago + portal móvil. No modifica otras páginas. */
.payment-modal-v34{padding:12px;align-items:center!important;justify-content:center!important;overflow:auto!important}
.payment-v34-box{width:min(500px,94vw)!important;max-height:calc(100vh - 24px)!important;padding:0!important;overflow:auto!important;border-radius:22px!important}
.payment-v34-head{padding:14px 16px 8px!important;margin:0!important}
.payment-v34-sub{font-size:11px;color:#74839a;margin-top:2px}
.payment-v34-body{padding:0 16px 16px}
.payment-v34-total{font-size:25px!important;margin:2px 0 8px!important;line-height:1.05!important}
.payment-v34-select{display:grid;gap:4px;font-size:10px;font-weight:800;margin-bottom:8px}
.payment-v34-select select{width:100%;padding:7px 9px;border:1px solid #cfdaea;border-radius:9px;font-size:11px;background:#fff}
.payment-v34-options{grid-template-columns:1fr 1fr!important;gap:7px!important;margin:0!important}
.payment-v34-options .pay-option{padding:9px 10px!important;min-height:72px!important;border-radius:12px!important}
.payment-v34-options .pay-option b{font-size:11px!important;line-height:1.2}
.payment-v34-options .pay-option div{font-size:9px!important;line-height:1.2;margin-top:3px!important}
.payment-v34-options .discount,.payment-v34-options .nodiscount{font-size:8px!important;padding:2px 6px!important;margin-top:4px!important}
.payment-v34-custom{padding:8px 10px!important;margin:7px 0!important;border-radius:11px!important}
.payment-v34-custom .custom-pay-row{gap:8px!important}
.payment-v34-custom .custom-pay-row b{font-size:10px!important}
.payment-v34-custom .custom-pay-row div div{font-size:8px!important}
.payment-v34-custom input{width:84px!important;height:34px!important;padding:5px 8px!important}
.payment-v34-breakdown{margin:0!important;padding:8px 10px!important;border-radius:12px!important}
.payment-v34-breakdown .money-row{padding:2px 0!important;font-size:9px!important}
.payment-v34-breakdown .pay-due{font-size:13px!important;padding-top:6px!important;margin-top:4px!important}
.payment-v34-continue{width:100%;height:40px;margin-top:9px!important;font-size:12px!important;border-radius:11px!important}
.payment-v34-linkbox{padding:18px 18px 20px;text-align:center}
.payment-v34-back{display:block;border:0;background:transparent;color:#58708f;font-size:10px;font-weight:800;margin-bottom:8px;cursor:pointer}
.payment-v34-check{width:44px;height:44px;border-radius:50%;background:#e9f7ef;color:#14884a;display:grid;place-items:center;font-size:22px;font-weight:900;margin:4px auto 10px}
.payment-v34-linkbox h3{margin:0;color:#102a52;font-size:18px}.payment-v34-linkbox p{color:#718099;font-size:10px;line-height:1.5;margin:7px auto 12px;max-width:390px}
.payment-v34-link{border:1px solid #d9e5f2;background:#f7fbff;border-radius:10px;padding:9px;font-size:9px;word-break:break-all;color:#465d7b;text-align:left}
.payment-v34-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.payment-v34-actions button{width:100%}
.client-pay-shell{display:none;position:fixed;inset:0;z-index:9999;background:#f3f7fb;overflow:auto;padding:14px}.client-pay-shell.show{display:block}
.client-pay-phone{width:min(440px,100%);margin:0 auto;background:#fff;border:1px solid #dce6f2;border-radius:24px;min-height:calc(100vh - 28px);overflow:hidden;box-shadow:0 18px 50px rgba(19,45,80,.08)}
.client-pay-loading{padding:80px 20px;text-align:center;color:#6c7e96;font-weight:800}
.client-pay-brand{display:flex;justify-content:space-between;align-items:center;padding:18px 18px 12px;border-bottom:1px solid #edf2f7}.client-pay-brand img{width:145px;max-width:55%}.client-pay-brand span{font-size:8px;font-weight:900;letter-spacing:1px;color:#1267e8}
.client-pay-section{padding:18px}.client-pay-kicker{font-size:8px;font-weight:900;letter-spacing:1px;color:#1267e8;margin-bottom:5px}.client-pay-section h1,.client-pay-section h2{margin:0;color:#0f2749}.client-pay-section h1{font-size:24px}.client-pay-section h2{font-size:20px}.client-pay-section>p{margin:5px 0 14px;color:#718198;font-size:11px}
.client-pay-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.client-pay-summary-grid>div{background:#f7f9fc;border:1px solid #e1e8f1;border-radius:12px;padding:10px}.client-pay-summary-grid span,.client-bank-copy span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.05em;color:#7d899a;margin-bottom:3px}.client-pay-summary-grid b{font-size:12px;color:#152a48}
.client-pay-due{margin:10px 0;background:#12366a;color:#fff;border-radius:14px;padding:13px;display:flex;justify-content:space-between;align-items:center}.client-pay-due span{font-size:10px}.client-pay-due strong{font-size:22px}
.client-pay-primary{width:100%;border:0;border-radius:12px;background:#1267e8;color:#fff;font-weight:900;padding:13px;cursor:pointer}.client-pay-back{border:0;background:transparent;color:#58708f;font-size:10px;font-weight:800;padding:0;margin-bottom:10px;cursor:pointer}
.client-bank-image{display:block;width:100%;height:auto;max-height:245px;object-fit:contain;border:1px solid #dce8df;border-radius:14px;background:#fff;margin:12px 0 10px}
.client-bank-copy{display:grid;grid-template-columns:1fr 1fr;gap:8px}.client-bank-copy>div{position:relative;background:#f7fbf8;border:1px solid #dce9df;border-radius:11px;padding:9px;min-width:0}.client-bank-copy>div.full{grid-column:1/-1}.client-bank-copy b{display:block;font-size:12px;color:#103a2c;overflow-wrap:anywhere;padding-right:52px}.client-bank-copy button{position:absolute;right:7px;bottom:7px;border:0;background:#e6f6eb;color:#0c7543;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:900}
.client-pay-upload{margin-top:12px;border-top:1px solid #e7edf4;padding-top:12px}.client-pay-upload h3{font-size:14px;margin:0 0 3px;color:#132b4d}.client-pay-upload p{font-size:9px;color:#75849a;margin:0 0 8px;line-height:1.45}.client-pay-upload label{display:grid;border:1px dashed #b9cde7;border-radius:11px;padding:10px;text-align:center;background:#f8fbff;cursor:pointer}.client-pay-upload label input{display:none}.client-pay-upload label span{font-weight:900;color:#1267e8;font-size:10px}.client-pay-upload label small{font-size:8px;color:#7a899d;margin-top:3px}.client-pay-upload>input{width:100%;margin:8px 0;padding:10px;border:1px solid #d9e4f0;border-radius:10px;font-size:10px}.client-pay-status{font-size:10px;margin-top:8px;line-height:1.4}.client-pay-status.ok{color:#14884a;font-weight:800}.client-pay-status.err{color:#b63232;font-weight:800}
@media(max-width:560px){.payment-v34-box{width:95vw!important}.payment-modal-v34{padding:6px}.payment-v34-head{padding:10px 12px 6px!important}.payment-v34-body{padding:0 12px 12px}.payment-v34-total{font-size:21px!important}.payment-v34-options .pay-option{min-height:66px!important;padding:7px 8px!important}.client-pay-shell{padding:0;background:#fff}.client-pay-phone{border:0;border-radius:0;min-height:100vh;box-shadow:none}.client-bank-image{max-height:none}}
