/* ACOLHE SENHAS — reskin do NovoSGA (cor de marca do Acolhe, #730adb).
 * Carregado DEPOIS do tema Bootstrap e do style.css do NovoSGA (skeleton.html.twig), então
 * basta redefinir as mesmas variáveis/classes do Bootstrap 5.3 para a cor prevalecer.
 * Não altera nenhum arquivo original do NovoSGA — é só mais uma folha de estilo. */

:root, [data-bs-theme=light] {
  --bs-primary: #730adb;
  --bs-primary-rgb: 115, 10, 219;
  --bs-primary-text-emphasis: #450683;
  --bs-primary-bg-subtle: #f4ebfc;
  --bs-primary-border-subtle: #cea9f2;
  --bs-link-color: #730adb;
  --bs-link-color-rgb: 115, 10, 219;
  --bs-link-hover-color: #5c08af;
  --bs-link-hover-color-rgb: 92, 8, 175;
}
[data-bs-theme=dark] {
  --bs-primary: #b26cf0;
  --bs-primary-rgb: 178, 108, 240;
  --bs-primary-text-emphasis: #e4c7fa;
  --bs-primary-bg-subtle: #2a0e47;
  --bs-primary-border-subtle: #5c08af;
  --bs-link-color: #b26cf0;
  --bs-link-color-rgb: 178, 108, 240;
}

a { color: var(--bs-link-color); }
a:hover { color: var(--bs-link-hover-color); }

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #730adb;
  --bs-btn-border-color: #730adb;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #6509c1;
  --bs-btn-hover-border-color: #5c08af;
  --bs-btn-focus-shadow-rgb: 115, 10, 219;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #5c08af;
  --bs-btn-active-border-color: #52079d;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #730adb;
  --bs-btn-disabled-border-color: #730adb;
}
.btn-outline-primary {
  --bs-btn-color: #730adb;
  --bs-btn-border-color: #730adb;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #730adb;
  --bs-btn-hover-border-color: #730adb;
  --bs-btn-focus-shadow-rgb: 115, 10, 219;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #730adb;
  --bs-btn-active-border-color: #730adb;
  --bs-btn-disabled-color: #730adb;
  --bs-btn-disabled-border-color: #730adb;
}

.bg-primary { background-color: var(--bs-primary) !important; }
.text-primary { color: var(--bs-primary) !important; }
.border-primary { border-color: var(--bs-primary) !important; }

/* barra superior: logo em destaque, num "cartão" translúcido sobre o roxo */
.navbar.bg-primary {
  --bs-navbar-brand-color: #fff;
  --bs-navbar-brand-hover-color: #fff;
  --bs-navbar-padding-y: .65rem;
  box-shadow: 0 2px 14px rgba(20, 4, 50, .18);
}
.navbar-brand {
  background: rgba(255, 255, 255, .16);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 14px;
  padding: .3rem .9rem .3rem .55rem !important;
  display: inline-flex;
  align-items: center;
}
.navbar-brand img { filter: none; height: 46px; }

/* blocos da página inicial (Agendamento, Atendimento, Configurações...): ícone em selo circular colorido */
.quick-menu .card {
  border: 0;
  border-radius: 18px;
  box-shadow: 0 2px 10px rgba(20, 4, 50, .08);
  transition: transform .15s ease, box-shadow .15s ease;
}
.quick-menu .card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 26px rgba(20, 4, 50, .16);
}
.quick-menu .card-body { padding: 1.6rem 1rem; }
.quick-menu a { display: flex; flex-direction: column; align-items: center; gap: .1rem; font-weight: 600; }
.quick-menu .card i.fa,
.quick-menu .card i.fas,
.quick-menu .card i.far {
  font-size: 26px !important;
  width: 64px;
  height: 64px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin: 0 auto .7rem !important;
  background: #f4ebfc;
  color: #730adb;
  transition: transform .15s ease;
}
.quick-menu .card:hover i.fa,
.quick-menu .card:hover i.fas,
.quick-menu .card:hover i.far { transform: scale(1.08); }
/* bloco "Administração": selo em roxo sólido, para diferenciar dos módulos comuns sem sair da paleta */
.quick-menu .card.border-info { border: 0 !important; }
.quick-menu .card.border-info i.fa,
.quick-menu .card.border-info i.fas,
.quick-menu .card.border-info i.far { background: #730adb; color: #fff; }
.quick-menu .card.border-info a.text-info { color: #450683 !important; }

/* abas, menus, paginação, formulários: mesmo tom em toda a área administrativa */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: #730adb;
}
.nav-tabs .nav-link.active {
  border-color: #cea9f2 #cea9f2 #fff;
  color: #450683;
}
.dropdown-item.active, .dropdown-item:active {
  background-color: #730adb;
  color: #fff;
}
/* menu lateral da Administração */
.list-group-item.active {
  background-color: #730adb;
  border-color: #730adb;
  color: #fff;
}
.list-group-item.list-group-item-action:hover:not(.active) {
  color: #450683;
}
.pagination {
  --bs-pagination-active-bg: #730adb;
  --bs-pagination-active-border-color: #730adb;
  --bs-pagination-color: #730adb;
  --bs-pagination-hover-color: #5c08af;
  --bs-pagination-focus-color: #5c08af;
}
.form-check-input:checked {
  background-color: #730adb;
  border-color: #730adb;
}
.form-control:focus, .form-select:focus {
  border-color: #cea9f2;
  box-shadow: 0 0 0 .25rem rgba(115, 10, 219, .25);
}
.form-range::-webkit-slider-thumb { background-color: #730adb; }
.form-range::-moz-range-thumb { background-color: #730adb; }
.badge.bg-primary, .alert-primary, .text-bg-primary { background-color: #730adb !important; }
.alert-primary {
  color: #450683;
  background-color: #f4ebfc;
  border-color: #cea9f2;
}
.progress-bar { background-color: #730adb; }
.spinner-border.text-primary, .spinner-grow.text-primary { color: #730adb !important; }

/* painel de atendimento (bloco de "chamando" e destaques) usa cores utilitárias do bootstrap acima */

::selection { background: #cea9f2; }

/* tela de login: imagem de fundo profissional (roxo Acolhe) + cartão translúcido para o formulário,
   assim a logo e os campos ficam legíveis em cima da imagem, não só numa cor lisa */
body:has(#login-form) {
  min-height: 100vh;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  display: flex;
  align-items: center;
  background:
    linear-gradient(rgba(30, 6, 60, .18), rgba(30, 6, 60, .38)),
    url('/images/login-bg.jpg') center center / cover no-repeat fixed;
}
body:has(#login-form) .container { width: 100%; }
.form-signin {
  background: rgba(255, 255, 255, .94);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-radius: 22px;
  padding: 36px 30px !important;
  box-shadow: 0 30px 70px rgba(20, 4, 50, .38), 0 2px 8px rgba(20, 4, 50, .15);
}
#logo { width: auto; max-width: 260px; height: auto; max-height: 110px; margin: 0 auto 6px; }
.form-signin .btn-primary { width: 100%; }
@media (max-width: 420px) { .form-signin { margin: 0 16px; border-radius: 18px; } }
