/* Ajustes do Gestalter sobre o AdminLTE 4 */
.logo-entrada { max-height: 90px; max-width: 220px; }
.logo-menu { background: #fff; padding: 2px; border-radius: 4px; }
.qr-totp { max-width: 220px; background: #fff; padding: 8px; border-radius: 4px; }

/* Agenda: cores por situação da sessão */
.ec-event.ev-agendada, .legenda.ev-agendada { background-color: #0d6efd; }
.ec-event.ev-realizada, .legenda.ev-realizada { background-color: #198754; }
.ec-event.ev-falta_paciente, .legenda.ev-falta_paciente { background-color: #fd7e14; }
.ec-event.ev-falta_profissional, .legenda.ev-falta_profissional { background-color: #dc3545; }
.ec-event.ev-feriado, .legenda.ev-feriado { background-color: #6c757d; }
.ec-event.ev-misto, .legenda.ev-misto { background-color: #6f42c1; }
.ec-event.ev-grupo { border-left: 4px solid #ffc107; }
.ec-event { cursor: pointer; white-space: pre-line; color: #fff; }
.ec-event .ec-event-title, .ec-event .ec-event-time { font-size: .78rem; line-height: 1.25; color: #fff; }
.legenda { display: inline-block; width: .8rem; height: .8rem; border-radius: 2px; margin-right: .3rem; vertical-align: middle; }
#agenda { min-height: 70vh; }

/* Frequência do mês */
.calendario-mes td { width: 16.66%; vertical-align: top; min-height: 6rem; }
.sessao-dia { border-left: 4px solid #0d6efd; padding: 2px 4px; border-radius: 2px; background: var(--bs-body-bg); cursor: pointer; }
.sessao-dia.st-realizada { border-left-color: #198754; }
.sessao-dia.st-falta_paciente { border-left-color: #fd7e14; }
.sessao-dia.st-falta_profissional { border-left-color: #dc3545; }
.sessao-dia.st-feriado { border-left-color: #6c757d; cursor: default; }
.busca-agenda { min-width: 18rem; }

/* Código de acesso enviado por e-mail: números grandes e espaçados */
.codigo-acesso { font-size: 1.75rem; letter-spacing: 0.5em; font-variant-numeric: tabular-nums; }

/* Agendador: nome do profissional alinhado e barra de agendar sempre visível */
.agendador-profissional { min-width: 14rem; }
.agendador-barra { position: sticky; bottom: 0; background: var(--bs-body-bg); z-index: 2; }
/* Agendador, visão semana: dias em colunas, horários em linhas, profissionais nas células */
.agendador-grade thead th { position: sticky; top: 0; z-index: 1; text-align: center; background: var(--bs-tertiary-bg); }
.agendador-grade tbody th { width: 4.5rem; text-align: center; font-variant-numeric: tabular-nums; }
.agendador-grade td { min-width: 9rem; }
.agendador-grade td .btn { margin: 0.1rem; }
/* Horário escolhido (agendador): cor cheia e ✓, inclusive com o mouse em cima */
.btn-check:checked + .btn-outline-primary,
.btn-check:checked + .btn-outline-primary:hover { background-color: var(--bs-primary); border-color: var(--bs-primary); color: #fff; opacity: 1; }
.btn-check:checked + .btn-outline-primary::before { content: "✓ "; }

/* Semana do paciente (ficha): sigla da terapia em destaque e profissional, uma cor por terapia */
.agenda-paciente thead th { text-align: center; background: var(--bs-tertiary-bg); }
.agenda-paciente tbody th { width: 4.5rem; text-align: center; font-variant-numeric: tabular-nums; }
.agenda-paciente td { min-width: 6.5rem; padding: 0.2rem; }
.agenda-item { border-left: 4px solid; border-radius: 0.25rem; padding: 0.15rem 0.4rem; line-height: 1.2; }
.agenda-item + .agenda-item { margin-top: 0.2rem; }
.agenda-item strong { display: inline-block; font-size: 0.85rem; }
.agenda-item span, .agenda-item small { display: block; font-size: 0.78rem; }
.terapia-cor-0 { background: var(--bs-primary-bg-subtle); border-color: var(--bs-primary); }
.terapia-cor-1 { background: var(--bs-success-bg-subtle); border-color: var(--bs-success); }
.terapia-cor-2 { background: var(--bs-warning-bg-subtle); border-color: var(--bs-warning); }
.terapia-cor-3 { background: var(--bs-info-bg-subtle); border-color: var(--bs-info); }
.terapia-cor-4 { background: var(--bs-danger-bg-subtle); border-color: var(--bs-danger); }
.terapia-cor-5 { background: var(--bs-secondary-bg-subtle); border-color: var(--bs-secondary); }
.terapia-cor-6 { background: rgba(111, 66, 193, 0.16); border-color: #6f42c1; }
.terapia-cor-7 { background: rgba(253, 126, 20, 0.16); border-color: #fd7e14; }
