/* H2L Service Desk - theme aligned with H2L Travel */

.brand-logo{
  width: 40px;
  height: 40px;
  object-fit: contain;
  border-radius: 10px;
}

:root{
  --h2l-radius: 16px;

  /* ===== padrão de cards (igual H2L Travel) ===== */
  --card-bg:#ffffff;
  --card-border:rgba(0,0,0,.12);
  --card-shadow:0 6px 18px rgba(0,0,0,.08);
  --card-shadow-hover:0 10px 26px rgba(0,0,0,.12);

  /* ===== glass extra (ServiceDesk) ===== */
  --glass-blur: 12px;
  --glass-overlay: rgba(255,255,255,.06);

  --h2l-focus: rgba(13,110,253,.35);
}

/* Dark (igual Travel: card translúcido, borda clara) */
:root[data-bs-theme="dark"]{
  --bs-body-bg: #07090c;
  --bs-body-color: #e9ecef;

  --bs-tertiary-bg: #0e1218;
  --bs-secondary-bg: #0b0f14;

  --bs-border-color: rgba(255,255,255,.12);

  --card-bg: rgba(255,255,255,.045);
  --card-border: rgba(255,255,255,.14);
  --card-shadow:0 10px 28px rgba(0,0,0,.45);
  --card-shadow-hover:0 14px 34px rgba(0,0,0,.55);

  --glass-overlay: rgba(255,255,255,.06);
}

body{
  background: radial-gradient(1200px 600px at 10% -10%, rgba(13,110,253,.18), transparent 50%),
              radial-gradient(900px 500px at 110% 10%, rgba(25,135,84,.16), transparent 55%),
              var(--bs-body-bg);
  color: var(--bs-body-color);
}

/* Navbar “card” como no Travel */
.navbar{
  border-bottom: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
}
.navbar-card{ border-radius:16px; }

/* Hover/efeito */
.card-hover{ transition: transform .08s ease, box-shadow .08s ease; }
.card-hover:hover{ transform: translateY(-2px); box-shadow: var(--card-shadow-hover) !important; }

/* Base cards como no Travel */
.card,
.navbar-card,
.dash-card,
.chart-card,
.menu-card{
  background: var(--card-bg) !important;
  border: 1px solid var(--card-border) !important;
  box-shadow: var(--card-shadow) !important;
  border-radius: var(--h2l-radius) !important;
}

/* ServiceDesk: “frosted” extra por cima */
.card-glass{
  backdrop-filter: blur(var(--glass-blur));
  background: linear-gradient(0deg, var(--glass-overlay), var(--glass-overlay)), var(--card-bg) !important;
}

/* Focus (teclado / campos) */
.card-focus{
  outline: 2px solid transparent;
  transition: outline-color .12s ease;
}
.card-focus:focus-within{ outline-color: var(--h2l-focus); }

.badge-chip{
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
}

/* Tabelas dentro de cards (igual Travel) */
.card .table > :not(caption) > * > *{
  background: transparent !important;
}
html[data-bs-theme="dark"] .card .table > :not(caption) > * > *{
  color: var(--bs-body-color);
}

.mono{ font-family: ui-monospace, Menlo, Consolas, monospace; }
.table td, .table th{ vertical-align: middle; }
.small-note{ font-size: .85rem; opacity: .85; }

/* Grid estilo Travel */
.dashboard-grid .card{ border-radius: 14px; }
.dashboard-grid .card-title a{ text-decoration:none; }

/* Linha clicável (sem hyperlink) */
.row-click{
  cursor: pointer;
}
.row-click:hover{
  filter: brightness(1.05);
}
.row-click:active{
  transform: translateY(1px);
}

/* Corrige texto do usuário no tema claro (evita ficar branco no fundo claro) */
:root[data-bs-theme="light"] .user-name,
:root[data-bs-theme="light"] .user-level,
:root[data-bs-theme="light"] .user-badge,
:root[data-bs-theme="light"] .navbar .user-chip {
  color: var(--bs-body-color) !important;
}