/**
 * Paleta primária — ClinicPro2 (turquesa)
 * Sobrepõe variáveis Tabler após tabler.min.css
 */
:root,
[data-bs-theme="light"] {
  --tblr-primary: #1ebc9c;
  --tblr-primary-rgb: 30, 188, 156;
  --tblr-link-color: #16977e;
  --tblr-link-hover-color: #117a65;

  --tblr-body-bg: #f4faf8;
  --tblr-border-color: rgba(30, 188, 156, 0.18);

  --tblr-border-radius: 0.4rem;
}

/* Sidebar — turquesa escuro */
.navbar-vertical[data-bs-theme="dark"] {
  --tblr-navbar-bg: #147a68;
  --tblr-navbar-border-color: rgba(255, 255, 255, 0.08);
}

.navbar-vertical[data-bs-theme="dark"] .nav-link {
  color: rgba(255, 255, 255, 0.88);
}

.navbar-vertical[data-bs-theme="dark"] .nav-link:hover,
.navbar-vertical[data-bs-theme="dark"] .nav-link.active {
  color: #fff;
}

.btn-primary {
  --tblr-btn-bg: var(--tblr-primary);
  --tblr-btn-border-color: var(--tblr-primary);
}

.btn-primary:hover {
  filter: brightness(0.95);
}

.card {
  box-shadow: 0 0.125rem 0.25rem rgba(20, 122, 104, 0.08);
}

/* Painel clínica — submenu lateral */
.navbar-vertical[data-bs-theme="dark"] .nav-submenu .nav-link {
  font-size: 0.875rem;
}

.navbar-vertical[data-bs-theme="dark"] .nav-submenu-chevron svg {
  transition: transform 0.2s ease;
}

.navbar-vertical[data-bs-theme="dark"] .nav-link:not(.collapsed) .nav-submenu-chevron svg {
  transform: rotate(180deg);
}

.navbar-vertical[data-bs-theme="dark"] .nav-link-icon-sub svg {
  opacity: 0.92;
}

/* --- Login (layout tabler_auth) --- */
.auth-login-body {
  --tblr-primary: #1ebc9c;
  --tblr-primary-rgb: 30, 188, 156;
  min-height: 100vh;
  margin: 0;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  background: linear-gradient(165deg, #d9f0ea 0%, #f4faf8 42%, #e8f5f1 100%);
}

.auth-login-wrap {
  max-width: 440px;
}

.auth-login-card {
  border-radius: 28px !important;
  box-shadow: 0 16px 48px rgba(20, 122, 104, 0.14) !important;
}

.auth-login-icon {
  width: 4rem;
  height: 4rem;
  border-radius: 16px;
  background: #1ebc9c;
  color: #fff;
}

.auth-login-title {
  font-size: 1.65rem;
  font-weight: 700;
  color: #1a2d3d;
  letter-spacing: -0.03em;
}

.auth-login-tagline {
  font-size: 0.9375rem;
  color: #5c6f7a;
  font-weight: 500;
}

.auth-login-body .auth-login-form .form-label {
  font-weight: 600;
  color: #1a2d3d;
  font-size: 0.875rem;
}

.auth-login-body .auth-login-form .form-control {
  background-color: #eef2f6;
  border: 1px solid transparent;
  border-radius: 12px;
  padding: 0.65rem 1rem;
  font-size: 0.9375rem;
}

.auth-login-body .auth-login-form .form-control:focus {
  background-color: #fff;
  border-color: #1ebc9c;
  box-shadow: 0 0 0 3px rgba(30, 188, 156, 0.22);
}

.auth-login-body .auth-login-submit.btn-primary {
  --tblr-btn-bg: #1ebc9c;
  --tblr-btn-border-color: #1ebc9c;
  --tblr-btn-hover-bg: #18a386;
  --tblr-btn-hover-border-color: #18a386;
  border-radius: 12px;
  font-weight: 600;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  background-color: #1ebc9c !important;
  border-color: #1ebc9c !important;
  color: #fff !important;
  filter: none;
}

.auth-login-body .auth-login-submit.btn-primary:hover,
.auth-login-body .auth-login-submit.btn-primary:focus-visible {
  background-color: #18a386 !important;
  border-color: #18a386 !important;
  color: #fff !important;
}

.auth-login-footer {
  display: block;
  width: 100%;
  text-align: center;
  color: #8aa3b2;
  font-size: 0.875rem;
  margin-top: 1.75rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.auth-login-help {
  color: #6b7c86;
}

.auth-login-help a {
  color: #16977e;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.auth-login-help a:hover {
  color: #117a65;
}

.auth-login-body .auth-login-alert {
  border-radius: 12px;
}
