/* =========================================================
   MOOV INSIGHTS — ADMIN MIV HARD V2
   Escopo: somente telas admin marcadas com .moov-admin-screen
   ========================================================= */

body.moov-admin-miv-theme {
  --moov-purple-light: #a576dd;
  --moov-purple: #7648c9;
  --moov-purple-dark: #4e256c;

  --moov-green-light: #76dda5;
  --moov-green: #48c976;
  --moov-green-dark: #256c4e;

  --moov-gray-light: #dadada;
  --moov-gray: #575756;
  --moov-gray-dark: #3c3c3b;

  --moov-admin-bg: #f7f5fb;
  --moov-admin-card: #ffffff;
  --moov-admin-text: #172033;
  --moov-admin-muted: #667085;
  --moov-admin-border: rgba(118,72,201,.16);
  --moov-admin-shadow: 0 14px 34px rgba(78,37,108,.08);
  --moov-admin-shadow-strong: 0 24px 58px rgba(78,37,108,.22);
}

/* Só admin */
body.moov-admin-miv-theme .moov-admin-screen,
body.moov-admin-miv-theme .moov-admin-screen * {
  box-sizing: border-box !important;
  font-family: "Encode Sans", Verdana, Arial, sans-serif !important;
}

body.moov-admin-miv-theme .moov-admin-screen {
  background:
    radial-gradient(circle at 94% 4%, rgba(118,221,165,.15), transparent 30%),
    radial-gradient(circle at 6% 0%, rgba(118,72,201,.12), transparent 26%),
    linear-gradient(180deg, #faf8ff 0%, #f1eef8 100%) !important;
  color: var(--moov-admin-text) !important;
  padding-top: 26px !important;
}

/* HERO ADMIN */
body.moov-admin-miv-theme .moov-admin-screen > section:first-child,
body.moov-admin-miv-theme .moov-admin-screen > div:first-child,
body.moov-admin-miv-theme .moov-admin-screen [class*="hero"],
body.moov-admin-miv-theme .moov-admin-screen .mf-hero {
  border-radius: 30px !important;
  padding: 30px !important;
  margin-bottom: 22px !important;
  background:
    radial-gradient(circle at 96% 12%, rgba(118,221,165,.30), transparent 32%),
    linear-gradient(135deg, #4e256c 0%, #7648c9 58%, #7d8bd4 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: var(--moov-admin-shadow-strong) !important;
  overflow: hidden !important;
}

body.moov-admin-miv-theme .moov-admin-screen [class*="hero"] h1,
body.moov-admin-miv-theme .moov-admin-screen [class*="hero"] h2,
body.moov-admin-miv-theme .moov-admin-screen > section:first-child h1,
body.moov-admin-miv-theme .moov-admin-screen > section:first-child h2,
body.moov-admin-miv-theme .moov-admin-screen > div:first-child h1,
body.moov-admin-miv-theme .moov-admin-screen > div:first-child h2 {
  color: #ffffff !important;
  font-size: clamp(26px, 2.2vw, 36px) !important;
  font-weight: 950 !important;
  letter-spacing: -.03em !important;
}

body.moov-admin-miv-theme .moov-admin-screen [class*="hero"] p,
body.moov-admin-miv-theme .moov-admin-screen > section:first-child p,
body.moov-admin-miv-theme .moov-admin-screen > div:first-child p {
  color: rgba(255,255,255,.88) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* CARDS / PAINÉIS */
body.moov-admin-miv-theme .moov-admin-screen article,
body.moov-admin-miv-theme .moov-admin-screen .card,
body.moov-admin-miv-theme .moov-admin-screen .panel,
body.moov-admin-miv-theme .moov-admin-screen [class*="card"],
body.moov-admin-miv-theme .moov-admin-screen [class*="panel"],
body.moov-admin-miv-theme .moov-admin-screen .mf-panel,
body.moov-admin-miv-theme .moov-admin-screen .mf-kpis article {
  border-radius: 24px !important;
  background: rgba(255,255,255,.97) !important;
  border: 1px solid var(--moov-admin-border) !important;
  box-shadow: var(--moov-admin-shadow) !important;
}

body.moov-admin-miv-theme .moov-admin-screen article:hover,
body.moov-admin-miv-theme .moov-admin-screen .card:hover,
body.moov-admin-miv-theme .moov-admin-screen [class*="card"]:hover {
  box-shadow: 0 20px 48px rgba(78,37,108,.12) !important;
}

/* TÍTULOS */
body.moov-admin-miv-theme .moov-admin-screen h1,
body.moov-admin-miv-theme .moov-admin-screen h2,
body.moov-admin-miv-theme .moov-admin-screen h3,
body.moov-admin-miv-theme .moov-admin-screen h4 {
  color: var(--moov-admin-text) !important;
  font-weight: 950 !important;
  letter-spacing: -.02em !important;
}

/* TEXTOS */
body.moov-admin-miv-theme .moov-admin-screen p,
body.moov-admin-miv-theme .moov-admin-screen small {
  color: var(--moov-admin-muted) !important;
}

/* KPIS */
body.moov-admin-miv-theme .moov-admin-screen article span,
body.moov-admin-miv-theme .moov-admin-screen [class*="kpi"] span,
body.moov-admin-miv-theme .moov-admin-screen [class*="metric"] span {
  color: var(--moov-admin-muted) !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

body.moov-admin-miv-theme .moov-admin-screen article strong,
body.moov-admin-miv-theme .moov-admin-screen [class*="kpi"] strong,
body.moov-admin-miv-theme .moov-admin-screen [class*="metric"] strong {
  color: #101828 !important;
  font-weight: 950 !important;
}

/* FILTROS */
body.moov-admin-miv-theme .moov-admin-screen input,
body.moov-admin-miv-theme .moov-admin-screen select,
body.moov-admin-miv-theme .moov-admin-screen textarea {
  min-height: 42px !important;
  border-radius: 14px !important;
  border: 1px solid #ddd2ef !important;
  background: #ffffff !important;
  color: var(--moov-admin-text) !important;
  outline: none !important;
  font-weight: 750 !important;
}

body.moov-admin-miv-theme .moov-admin-screen input:focus,
body.moov-admin-miv-theme .moov-admin-screen select:focus,
body.moov-admin-miv-theme .moov-admin-screen textarea:focus {
  border-color: #7648c9 !important;
  box-shadow: 0 0 0 4px rgba(118,72,201,.12) !important;
}

body.moov-admin-miv-theme .moov-admin-screen label {
  color: var(--moov-admin-muted) !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

/* BOTÕES */
body.moov-admin-miv-theme .moov-admin-screen button,
body.moov-admin-miv-theme .moov-admin-screen .btn,
body.moov-admin-miv-theme .moov-admin-screen [class*="btn"] {
  border-radius: 14px !important;
  font-weight: 900 !important;
  transition: transform .14s ease, box-shadow .14s ease !important;
}

body.moov-admin-miv-theme .moov-admin-screen button:hover,
body.moov-admin-miv-theme .moov-admin-screen .btn:hover,
body.moov-admin-miv-theme .moov-admin-screen [class*="btn"]:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 14px 28px rgba(78,37,108,.16) !important;
}

body.moov-admin-miv-theme .moov-admin-screen button:not(.nav-item),
body.moov-admin-miv-theme .moov-admin-screen .btn-primary,
body.moov-admin-miv-theme .moov-admin-screen [class*="primary"] {
  background: linear-gradient(135deg, #7648c9 0%, #4e256c 100%) !important;
  color: #ffffff !important;
  border: 0 !important;
}

body.moov-admin-miv-theme .moov-admin-screen button[id*="Atualizar"],
body.moov-admin-miv-theme .moov-admin-screen button[id*="atualizar"],
body.moov-admin-miv-theme .moov-admin-screen button[class*="success"],
body.moov-admin-miv-theme .moov-admin-screen .mf-btn.primary {
  background: linear-gradient(135deg, #48c976 0%, #256c4e 100%) !important;
  color: #ffffff !important;
}

/* TABELAS */
body.moov-admin-miv-theme .moov-admin-screen table {
  width: 100% !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

body.moov-admin-miv-theme .moov-admin-screen table th,
body.moov-admin-miv-theme .moov-admin-screen thead th {
  background: #efe8fa !important;
  color: #4e256c !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid #e2d6f2 !important;
}

body.moov-admin-miv-theme .moov-admin-screen table td,
body.moov-admin-miv-theme .moov-admin-screen tbody td {
  color: #253654 !important;
  font-weight: 700 !important;
  border-bottom: 1px solid #f0edf5 !important;
}

body.moov-admin-miv-theme .moov-admin-screen tbody tr:nth-child(even) td {
  background: #faf9fd !important;
}

body.moov-admin-miv-theme .moov-admin-screen tbody tr:hover td {
  background: #f4effb !important;
}

/* SIDEBAR ADMIN */
body.moov-admin-miv-theme .sidebar,
body.moov-admin-miv-theme .app-sidebar,
body.moov-admin-miv-theme aside {
  background: linear-gradient(180deg, #4e256c 0%, #3b1558 100%) !important;
}

/* marcador invisível funcional: sem aparecer na tela */
body.moov-admin-miv-theme .moov-admin-screen {
  --moov-admin-miv-applied: 1;
}

/* =========================================================
   ADMIN MIV V3 — REFORÇO PARA ABAS QUE NÃO PEGARAM
   ========================================================= */

body.moov-admin-miv-theme .moov-admin-screen {
  background:
    radial-gradient(circle at 94% 4%, rgba(118,221,165,.15), transparent 30%),
    radial-gradient(circle at 6% 0%, rgba(118,72,201,.12), transparent 26%),
    linear-gradient(180deg, #faf8ff 0%, #f1eef8 100%) !important;
}

body.moov-admin-miv-theme .moov-admin-screen > .card,
body.moov-admin-miv-theme .moov-admin-screen > .panel,
body.moov-admin-miv-theme .moov-admin-screen > article,
body.moov-admin-miv-theme .moov-admin-screen > section,
body.moov-admin-miv-theme .moov-admin-screen > div,
body.moov-admin-miv-theme .moov-admin-screen .admin-card,
body.moov-admin-miv-theme .moov-admin-screen .dashboard-card,
body.moov-admin-miv-theme .moov-admin-screen .bi-card,
body.moov-admin-miv-theme .moov-admin-screen .content-card {
  border-radius: 24px !important;
}

body.moov-admin-miv-theme .moov-admin-screen .filters,
body.moov-admin-miv-theme .moov-admin-screen .filter-panel,
body.moov-admin-miv-theme .moov-admin-screen .admin-filters,
body.moov-admin-miv-theme .moov-admin-screen .dashboard-filters,
body.moov-admin-miv-theme .moov-admin-screen .bi-clean-filters,
body.moov-admin-miv-theme .moov-admin-screen [class*="filters"],
body.moov-admin-miv-theme .moov-admin-screen [class*="filtros"] {
  border-radius: 24px !important;
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(118,72,201,.16) !important;
  box-shadow: 0 14px 34px rgba(78,37,108,.08) !important;
}

body.moov-admin-miv-theme .moov-admin-screen .table-wrapper,
body.moov-admin-miv-theme .moov-admin-screen .table-wrap,
body.moov-admin-miv-theme .moov-admin-screen [class*="table-wrap"] {
  border-radius: 20px !important;
  border: 1px solid rgba(118,72,201,.14) !important;
  overflow: auto !important;
  background: #ffffff !important;
}

body.moov-admin-miv-theme .moov-admin-screen a {
  color: #7648c9 !important;
  font-weight: 800 !important;
}

body.moov-admin-miv-theme .moov-admin-screen .badge,
body.moov-admin-miv-theme .moov-admin-screen [class*="badge"],
body.moov-admin-miv-theme .moov-admin-screen [class*="status"] {
  border-radius: 999px !important;
  font-weight: 900 !important;
}

