/* Complemento do fluxo de pagamento. Não altera o CSS aprovado do Journal. */
.journal-payment-return[hidden],.journal-payment-stage[hidden],.journal-payment-pix[hidden],.journal-payment-card[hidden],.journal-payment-alert[hidden],.journal-form[hidden],.journal-payment-switch[hidden]{display:none!important}
.journal-pay-fieldset{border:0;padding:0;margin:18px 0 4px}
.journal-pay-fieldset legend{font-size:.8rem;font-weight:800;color:#5a3c59;margin-bottom:12px}
.journal-pay-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.journal-pay-option{position:relative;display:flex;align-items:flex-start;gap:10px;min-width:0;padding:17px 14px;border:1px solid rgba(146,38,143,.2);border-radius:14px;background:#fffaf8;cursor:pointer}
.journal-pay-option:has(input:checked){border:2px solid var(--jr-purple,#92268f);padding:16px 13px;box-shadow:0 8px 20px rgba(146,38,143,.08);background:#fff6ff}
.journal-pay-option input{accent-color:#92268f;margin-top:4px}
.journal-pay-option strong,.journal-pay-option small{display:block}
.journal-pay-option strong{font-size:1rem;color:#55207a}
.journal-pay-option small{color:#806b76;font-size:.75rem;line-height:1.5;margin-top:4px}
.journal-pay-recommended{display:inline-block;color:#92268f;font-size:.69rem;font-weight:800;letter-spacing:.03em;margin:0 0 4px}
.journal-payment-stage{background:#fff;border:1px solid rgba(146,38,143,.2);padding:32px;box-shadow:0 25px 70px rgba(81,42,69,.10);position:relative;min-width:0;max-width:100%;overflow-wrap:anywhere}
.journal-payment-head h3{font-family:var(--display,Georgia,serif);font-weight:400;letter-spacing:-.025em;color:#55207a;font-size:clamp(2rem,3.5vw,3.15rem);line-height:1.05;margin:8px 0 12px}
.journal-payment-head>p{color:#65515b;font-size:.94rem;line-height:1.6;margin-bottom:22px}
.journal-payment-eyebrow{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#92268f}
.journal-payment-pix,.journal-payment-card{border:1px solid rgba(146,38,143,.12);border-radius:16px;background:#fffafc;padding:20px;margin-bottom:18px}
.journal-payment-title{font-size:1.05rem;color:#55207a;font-weight:800;margin:0 0 16px}
.journal-payment-qr-wrap{background:#fff;display:flex;align-items:center;justify-content:center;max-width:240px;margin:0 auto 16px;border:1px solid #f0e4ec;padding:10px;border-radius:8px}
.journal-payment-qr-wrap img{width:100%;height:auto;display:block;image-rendering:auto}
.journal-payment-pix label{display:block;font-size:.82rem;font-weight:800;color:#55207a;margin:10px 0 7px}
#journal-pix-code{display:block;width:100%;resize:none;background:#fff;border:1px solid rgba(146,38,143,.18);border-radius:10px;padding:11px;color:#5c465a;font-family:monospace;font-size:.75rem;line-height:1.5}
.journal-payment-action{display:flex;align-items:center;justify-content:center;text-align:center;min-height:50px;width:100%;padding:12px 16px;border:0;border-radius:999px;background:#92268f;color:#fff!important;font:inherit;font-size:.92rem;font-weight:800;text-decoration:none;cursor:pointer;margin-top:12px}
.journal-payment-action:hover{background:#742075}
.journal-payment-help{color:#78646f;font-size:.84rem;line-height:1.6;margin:14px 0 0}
.journal-payment-monitor{display:grid;grid-template-columns:26px minmax(0,1fr);gap:14px;align-items:start;background:#f8f0fa;border:1px solid #e8d5f0;border-radius:14px;padding:18px 16px;margin-top:16px}
.journal-payment-monitor strong{display:block;color:#55207a;font-size:.96rem;line-height:1.4}
.journal-payment-monitor p{color:#65515b;font-size:.84rem;line-height:1.6;margin:6px 0 0}
.journal-payment-spinner{height:23px;width:23px;border:3px solid #e6ceee;border-top-color:#92268f;border-radius:50%;animation:jr-spin 1s linear infinite}
@keyframes jr-spin{to{transform:rotate(360deg)}}
.journal-payment-alert{background:#fff1e6;color:#6c4156;font-size:.88rem;line-height:1.6;border:1px solid #edc9a7;border-radius:12px;padding:13px 15px;margin:14px 0}
.journal-payment-switch{background:none;border:0;display:block;padding:12px 0;color:#92268f;text-decoration:underline;cursor:pointer;font:inherit;font-size:.84rem;font-weight:800;margin:10px auto 0}
@media(max-width:760px){
 .journal-pay-options{grid-template-columns:1fr 1fr;gap:8px}
 .journal-pay-option{padding:13px 10px;gap:7px}
 .journal-pay-option:has(input:checked){padding:12px 9px}
 .journal-pay-option strong{font-size:.92rem}
 .journal-pay-option small{font-size:.7rem}
 .journal-payment-stage{padding:24px 18px}
 .journal-payment-pix,.journal-payment-card{padding:14px}
 .journal-payment-head h3{font-size:2.2rem}
 .journal-payment-monitor{gap:10px;padding:15px 12px}
}
