body.payment-open{overflow:hidden}
.payment-screen{position:fixed;inset:0;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;margin:0;padding:28px 24px 48px;border:0;box-sizing:border-box;background:#100e0a;color:#eee8dc;overflow-y:auto;overscroll-behavior:contain}
.payment-screen::backdrop{background:#100e0a}
.payment-shell{max-width:650px;margin:auto}
.payment-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:32px}
.payment-header>strong{font:600 22px Georgia,serif;letter-spacing:.12em}
.payment-back{padding:12px 16px;border:1px solid #a28b64;background:transparent;color:#ead9ba;font:600 16px/1.4 Manrope,system-ui;cursor:pointer;border-radius:6px}
.payment-screen h1{font:500 clamp(32px,5vw,46px)/1.15 Georgia,serif;margin:0 0 18px}
.payment-intro,.payment-help{font-size:17px;line-height:1.6;color:#d0c4b0}
.payment-screen .pix-result{padding:24px;border-radius:12px;margin:24px 0}
.payment-screen .pix-title{font-size:21px}
.payment-screen .pix-qr{max-width:240px}
.payment-screen .payment-status{font-size:17px}
.payment-screen .copy-pix,.payment-screen .access-button{border-radius:6px;min-height:56px}
.payment-screen .pix-payment textarea{box-sizing:border-box;font-size:16px}
.payment-screen button:focus-visible,.payment-screen a:focus-visible{outline:3px solid #f4cd83;outline-offset:4px}
@media(max-width:480px){.payment-screen{padding:20px 16px 32px}.payment-header{gap:10px;margin-bottom:24px}.payment-header>strong{font-size:18px}.payment-back{padding:10px;font-size:16px}.payment-screen .pix-result{padding:18px}}
