/* Área central de conversão com largura limitada para reduzir esforço de leitura. */
.agendamento-layout { max-width: 830px; }
.abas { display: grid; grid-template-columns: 1fr 1fr; padding: .3rem; margin-bottom: 1.3rem; background: var(--primaria-clara); border-radius: 12px; }
.abas button { min-height: 48px; border: 0; border-radius: 9px; color: var(--texto-suave); background: transparent; font-weight: 800; cursor: pointer; }
.abas button[aria-selected="true"] { color: var(--primaria-escura); background: var(--branco); box-shadow: 0 3px 12px rgba(17,66,72,.1); }
.painel-formulario { padding: clamp(1.3rem, 4vw, 2.8rem); border: 1px solid var(--borda); border-radius: var(--raio); box-shadow: var(--sombra); }
.form-intro { margin-bottom: 1.8rem; }
.form-intro p { color: var(--texto-suave); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.15rem; }
.campo { display: flex; flex-direction: column; gap: .35rem; }
.campo-largo { grid-column: 1 / -1; }
.campo label { font-weight: 700; }
.campo small { color: var(--texto-suave); }
.campo input, .campo select { width: 100%; min-height: 48px; padding: .7rem .8rem; border: 1px solid #aabfc2; border-radius: 8px; color: var(--texto); background: var(--branco); }
.campo input[aria-invalid="true"], .campo select[aria-invalid="true"] { border-color: #b42318; background: #fff8f7; }
.checkbox { display: grid; grid-template-columns: auto 1fr; align-items: start; }
.checkbox input { width: 20px; min-height: 20px; margin-top: .2rem; }
.checkbox label { font-weight: 400; }
.checkbox a { color: var(--primaria-escura); }
.campo-armadilha { position: absolute; left: -9999px; }
.aviso-seguranca { margin: 1.3rem 0; padding: .8rem 1rem; color: #72500c; background: #fff7e5; border-radius: 8px; font-size: .9rem; }
.mensagem-form { display: none; margin-top: 1rem; padding: .8rem 1rem; border-radius: 8px; }
.mensagem-form.ativa { display: block; }
.mensagem-form.sucesso { color: #115d39; background: #e9f8ef; }
.mensagem-form.erro { color: #912018; background: #fff0ef; }
/* Separa a ação dos campos, especialmente no painel de consulta. */
.form-grid + .botao { margin-top: 1.5rem; }

@media (max-width: 600px) {
    .form-grid { grid-template-columns: 1fr; }
    .campo-largo { grid-column: auto; }
    .abas button { padding: .5rem; font-size: .88rem; }
    .painel-formulario .botao { width: 100%; }
}
