/* RUAAH BR — pop-up de pagamento (Stripe Elements). */
.rbr-pay{position:fixed;inset:0;z-index:2000;display:none;align-items:flex-end;justify-content:center;background:rgba(10,9,7,.72);padding:0}
.rbr-pay.on{display:flex}
.rbr-pay-box{position:relative;width:100%;max-width:440px;max-height:94vh;overflow:auto;background:#fffdf8;color:#1d1a14;border-radius:22px 22px 0 0;padding:26px 20px calc(20px + env(safe-area-inset-bottom));font-family:"DM Sans",system-ui,sans-serif;box-shadow:0 -10px 40px rgba(0,0,0,.4)}
@media(min-width:560px){.rbr-pay{align-items:center;padding:16px}.rbr-pay-box{border-radius:22px}}
.rbr-pay-x{position:absolute;top:10px;right:10px;width:36px;height:36px;border:0;border-radius:50%;background:#f1ece1;color:#3a3326;font-size:18px;cursor:pointer}
.rbr-pay h2{margin:0 0 4px;font-family:Lora,Georgia,serif;font-size:22px;line-height:1.2}
.rbr-pay-sub{margin:0 0 14px;color:#6b6252;font-size:14px}
.rbr-pay-sum{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;padding:12px 14px;border:1px solid #eadfc6;border-radius:14px;background:#fbf5e6;font-size:14px}
.rbr-pay-sum strong{font-size:18px;white-space:nowrap}
.rbr-pay-form{display:grid;gap:10px}
.rbr-pay-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rbr-field{display:block;width:100%;box-sizing:border-box;min-height:48px;padding:14px 12px;border:1px solid #d9d0bd;border-radius:12px;background:#fff;color:#111;font:16px "DM Sans",system-ui,sans-serif}
.rbr-field:focus,.rbr-field.StripeElement--focus{outline:2px solid #e8c56e;outline-offset:0;border-color:#c9a24a}
.rbr-field.is-invalid,.rbr-field.StripeElement--invalid{border-color:#dc2626}
.rbr-field .ph{color:#9ca3af}
.rbr-pay .checkout-submit{margin-top:6px}
.rbr-pay .checkout-submit:disabled{opacity:.6;cursor:wait}
.rbr-test-pay{margin-top:6px;width:100%;padding:10px;border:1px dashed #b45309;border-radius:30px;background:#fff7ed;color:#b45309;font-weight:700;cursor:pointer}
.rbr-status{min-height:20px;margin:4px 0 0;font-size:14px;color:#3a3326;text-align:center}
.rbr-status.is-error{color:#dc2626}
.rbr-secure{margin:10px 0 0;color:#6b6252;font-size:12px;text-align:center}

/* Escolha de plano na oferta (dentro de .br-access-price, tema escuro). */
.br-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:4px}
.br-plan{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 10px 16px;border:1.5px solid #dfc77c40;border-radius:14px;background:#1f1d18;color:#f1e6cf;font:inherit;cursor:pointer;transition:border-color .15s,background .15s}
.br-plan[aria-checked="true"]{border-color:#e8c56e;background:#2a2619;box-shadow:0 0 0 1px #e8c56e inset}
.br-plan:focus-visible{outline:2px solid #f1d58d;outline-offset:2px}
.br-plan-badge{position:absolute;top:-10px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:3px 9px;border-radius:20px;background:#e8c56e;color:#211b10;font-size:10px;font-weight:700;letter-spacing:1px}
.br-plan-name{font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#f0d784}
.br-plan-price{font-size:28px;font-weight:700;line-height:1.1;color:#f2d98b;letter-spacing:-1px}
.br-plan-price small{font-size:13px;letter-spacing:0;font-weight:600}
.br-plan-note{font-size:11.5px;line-height:1.4;color:#c7bcaa}
@media(max-width:360px){.br-plan-price{font-size:24px}}
.rbr-pay-sum small{display:block;margin-top:2px;color:#6b6252;font-size:12px}
