.payment-method-picker { padding:0; margin:4px 0 8px; border:0; min-width:0; }
.payment-method-picker legend { padding:0; margin-bottom:12px; color:#f7f7fa; font-size:14px; font-weight:600; }
.payment-method-options { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.account-form .payment-method-option { display:flex; flex-direction:row; align-items:center; gap:10px; min-height:88px; padding:14px; margin:0; border:1px solid rgba(255,255,255,.18); border-radius:16px; background:rgba(255,255,255,.025); cursor:pointer; transition:border-color .15s,background .15s; }
.account-form .payment-method-option:has(input:checked) { border-color:#edb778; background:rgba(237,183,120,.12); box-shadow:inset 0 0 0 1px rgba(237,183,120,.25); }
.account-form .payment-method-option:focus-within { outline:2px solid #ffdaad; outline-offset:3px; }
.account-form .payment-method-options .payment-method-option input[type="radio"] { appearance:auto; accent-color:#edb778; width:18px; height:18px; min-width:18px; min-height:18px; max-height:18px; flex:0 0 18px; border-radius:50%; box-shadow:none; padding:0; margin:0; }
.payment-method-option-copy { display:flex; flex-direction:column; gap:5px; min-width:0; }
.payment-method-icon { display:block; width:22px; height:22px; flex:0 0 22px; object-fit:contain; }
.payment-method-icon-card { color:#f6c78f; }
.payment-method-option-copy strong { display:flex; flex-wrap:wrap; align-items:center; gap:5px; font-size:14px; line-height:1.4; color:#fff; }
.account-form .payment-method-option-copy small { margin:0; font-size:12px; line-height:1.5; color:#aeb0c0; }
.payment-method-badge { font-size:9px; font-weight:500; color:#f6c78f; border-radius:5px; padding:2px 5px; background:rgba(237,183,120,.1); }
.payment-method-note { margin:12px 0 0; color:#d3c2ad; font-size:12px; line-height:1.6; }
[data-sbp-legal][hidden], [data-card-recurring][hidden], [data-sbp-note][hidden], [data-one-time-legal][hidden], [data-recurring-legal][hidden], [data-recurring-summary][hidden] { display:none !important; }
.sbp-panel { max-width:540px; margin:40px auto; padding:32px; text-align:center; border:1px solid rgba(255,255,255,.12); border-radius:24px; background:#151517; }
.sbp-panel h1 { font-size:30px; line-height:1.2; margin:12px 0; }
.sbp-panel .sbp-amount { font-size:28px; font-weight:650; color:#fff; margin:18px 0; }
.sbp-qr { display:block; width:240px; height:240px; object-fit:contain; padding:14px; background:#fff; border-radius:16px; margin:24px auto; }
.sbp-panel .btn { width:100%; margin-top:12px; }
.sbp-status { color:#d3c2ad; font-size:14px; line-height:1.6; margin:18px 0; }
.sbp-back { display:inline-block; margin-top:20px; color:#c7c4d4; font-size:13px; }
@media(max-width:480px) { .payment-method-options { grid-template-columns:1fr; } .account-form .payment-method-option { min-height:70px; padding:12px 14px; } .sbp-panel { margin:16px auto; padding:24px 18px; } .sbp-panel h1 { font-size:26px; } }
@media(prefers-reduced-motion:reduce) { .account-form .payment-method-option { transition:none; } }

.account-form .payment-method-options .payment-method-option input[type="radio"]:focus { outline:none; box-shadow:none; }
