/* Estilos específicos da página auth; componentes compartilhados em app.css. */

/* PraVer 2.8.0 — cadastro ampliado e documentos legais. */
.auth-register-card { width: min(100%, 640px); }
.auth-recovery-card { width: min(100%, 480px); }
.auth-forgot-link { margin-top: -5px; text-align: right; }
.auth-forgot-link a, .auth-switch a { color: #c4b5fd; }
.password-reset-code { font-size: 24px; font-weight: 800; letter-spacing: .28em; text-align: center; }
.register-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 13px; }
.register-grid .register-wide { grid-column: 1 / -1; }
.consent-fieldset { display: grid; gap: 9px; margin: 2px 0 0; padding: 13px; border: 1px solid rgba(255,255,255,.11); border-radius: 12px; }
.consent-fieldset legend { padding: 0 6px; color: #d9dce5; font-size: 11px; font-weight: 800; }
.auth-form .consent-check, .consent-check { display: flex; align-items: flex-start; gap: 9px; font-size: 11px; font-weight: 600; line-height: 1.4; }
.auth-form .consent-check input, .consent-check input { width: 16px; min-height: 16px; height: 16px; margin-top: 1px; flex: 0 0 auto; accent-color: var(--gold); }
.consent-check button { padding: 0; border: 0; color: #c4b5fd; background: transparent; text-decoration: underline; cursor: pointer; font: inherit; }
.legal-dialog { width: min(900px, calc(100vw - 28px)); max-height: 86vh; padding: 0; border: 1px solid var(--line-strong); border-radius: 16px; color: #fff; background: #121522; box-shadow: var(--shadow); }
.legal-dialog::backdrop { background: rgba(3,5,13,.78); backdrop-filter: blur(5px); }
.legal-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; border-bottom: 1px solid var(--line); }
.legal-dialog-header h2 { margin: 0; font-size: 18px; }
.legal-dialog-header button { width: 32px; height: 32px; display: grid; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 8px; color: #fff; background: transparent; cursor: pointer; }
.legal-dialog-header svg { width: 16px; height: 16px; }
.legal-dialog-scroll { max-height: calc(86vh - 126px); overflow: auto; padding: 18px 20px; }
.legal-dialog footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; border-top: 1px solid var(--line); }
.legal-dialog footer a { color: #c4b5fd; font-size: 11px; }
@media (max-width: 620px) {
    .register-grid { grid-template-columns: 1fr; }
    .register-grid .register-wide { grid-column: auto; }
    .legal-dialog-scroll { padding: 15px; }
    .legal-dialog footer { align-items: stretch; flex-direction: column; }
}
