/* ============================================================
   MABUS LIGHT THEME v3 — "AI Champagne" (Liquid Glass real)
   ============================================================
   Reescrito em 2026-05-19 (Fase B.3.1). Substituiu o legacy
   "lumina" (paleta azul/slate + borders sólidos).

   Princípios polímatas aplicados:

   1. SURFACE 5-TIER (não 3) — hierarquia por surface diff +
      shadow stack, ZERO borders sólidos. Linguagem CSS pós-2024.

   2. LIQUID GLASS REAL — backdrop-filter: blur(60px) saturate(180%)
      + inset 0 1px 0 rgba(255,255,255,0.55) no top edge. O inset
      simula refração de luz — SEGREDO do macOS Sequoia / Vision Pro.

   3. SHADOWS WARM STACKED — sombras pretas em bege parecem manchas;
      warm rgba(50,38,24,X) em 3 layers (contato + lift + depth) +
      inner highlight = cards flutuam, não poluem.

   4. ANIMATED AMBIENT SUBLIMINAL — 3 orbs champagne/pearl/cream em
      loop 50s, easing cubic-bezier orgânico. Lento o bastante pra
      ser sentido sem ser visto conscientemente.

   5. TIPOGRAFIA RESPIRADA — texto espresso #1A1814 (nunca preto puro
      evita 21:1 contrast strain), gradient text recalibrado.

   Como funciona:
   - Carregado via head.ejs em todas as telas internas (~66)
   - Regras só ativam quando data-theme="mabus-light" (toggle BETA)
   - Bloco final preserva regras [data-theme="neuro"] (sidebar dark
     legacy) — NÃO MEXER.

   Buscador (views/buscador.ejs) NÃO está coberto aqui — usa
   oklch() heavy e merece tratamento próprio em PR futuro.
   ============================================================ */


/* ============================================================
   1. CANVAS + STATIC DIAGONAL GRADIENT (v4)
   ------------------------------------------------------------
   v4: orbs animados sutis (v3) eram invisíveis em base já clara.
   Substituídos por gradient DIAGONAL ESTÁTICO mais visível —
   sensação de papel pergaminho real com warmth distribuída do
   top-left (champagne whisper) ao bottom-right (cream saturado).

   Estático pq:
   - Animação em fundo distrai em uso prolongado
   - Loop subliminal só funciona se for sentido — opacity 0.50 era
     invisível, opacity 0.95 distrai. Gradient estático sweet spot.
   ============================================================ */

[data-theme="mabus-light"] body {
  background: var(--mb-surface-canvas);
  color: var(--mb-base-content);
  position: relative;
}

/* ━━━ AURORA AI — 4 orbs com cores Gemini brand diluídas ━━━
   Esquece champagne/peach/mauve/sage warm. Agora:
   - azul-pearl (Google Blue diluído)
   - verde-pearl (Google Green diluído)
   - lavanda (AI vibe)
   - amarelo-creme (Google Yellow diluído pra balance)

   Sensação: tablet AI recém-aceso, interface inteligente.
   mix-blend-mode: soft-light integra com canvas pearl frio. */
[data-theme="mabus-light"] body::before {
  content: '';
  position: fixed;
  inset: -12%;
  z-index: -2;
  pointer-events: none;
  background:
    radial-gradient(circle 620px at 18% 24%, rgba(207, 226, 255, 0.55), transparent 60%),   /* azul-pearl */
    radial-gradient(circle 720px at 82% 72%, rgba(232, 222, 245, 0.45), transparent 60%),   /* lavanda */
    radial-gradient(circle 540px at 56% 88%, rgba(204, 231, 213, 0.42), transparent 60%),   /* verde-pearl */
    radial-gradient(circle 640px at 72% 14%, rgba(252, 240, 211, 0.40), transparent 60%);   /* amarelo-creme */
  animation: mabusAurora1 38s cubic-bezier(0.42, 0.0, 0.58, 1.0) infinite;
  will-change: transform;
}

[data-theme="mabus-light"] body::after {
  content: '';
  position: fixed;
  inset: -12%;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle 480px at 38% 65%, rgba(232, 222, 245, 0.28), transparent 60%),   /* lavanda */
    radial-gradient(circle 560px at 92% 30%, rgba(207, 226, 255, 0.32), transparent 60%);   /* azul-pearl */
  mix-blend-mode: soft-light;
  animation: mabusAurora2 53s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite reverse;
  will-change: transform;
}

@keyframes mabusAurora1 {
  0%   { transform: translate3d(0, 0, 0) scale(1) rotate(0deg); }
  20%  { transform: translate3d(2.5%, -1.5%, 0) scale(1.05) rotate(0.8deg); }
  40%  { transform: translate3d(-1.5%, 2.5%, 0) scale(0.97) rotate(-0.6deg); }
  60%  { transform: translate3d(2%, 1.5%, 0) scale(1.03) rotate(0.5deg); }
  80%  { transform: translate3d(-2.5%, -1%, 0) scale(0.99) rotate(-0.4deg); }
  100% { transform: translate3d(0, 0, 0) scale(1) rotate(0deg); }
}

@keyframes mabusAurora2 {
  0%   { transform: translate3d(0, 0, 0) scale(1); }
  33%  { transform: translate3d(-2%, 2%, 0) scale(1.06); }
  66%  { transform: translate3d(2%, -1.5%, 0) scale(0.96); }
  100% { transform: translate3d(0, 0, 0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
  [data-theme="mabus-light"] body::before,
  [data-theme="mabus-light"] body::after { animation: none; }
}

/* Override do gradient secondary/5 do head.ejs (era pra dark) */
[data-theme="mabus-light"] body > .fixed.inset-0.pointer-events-none {
  display: none;
}


/* ============================================================
   2. TYPOGRAPHY
   ------------------------------------------------------------
   text-white e variantes adaptam pra espresso suave.
   Gradient text (h1/h2 com white→cyan) recalibrado pra
   espresso→petróleo (combina com champagne).
   ============================================================ */

[data-theme="mabus-light"] .text-white,
[data-theme="mabus-light"] .text-starlight {
  color: var(--mb-base-content);
}

[data-theme="mabus-light"] .text-white\/50,
[data-theme="mabus-light"] .text-starlight\/50,
[data-theme="mabus-light"] .text-starlight\/40,
[data-theme="mabus-light"] .text-starlight\/30 {
  color: color-mix(in oklch, var(--mb-base-content) 50%, transparent);
}

[data-theme="mabus-light"] .text-white\/60,
[data-theme="mabus-light"] .text-starlight\/60 {
  color: var(--mb-base-content-muted);
}

[data-theme="mabus-light"] .text-white\/70,
[data-theme="mabus-light"] .text-starlight\/70 {
  color: color-mix(in oklch, var(--mb-base-content) 75%, transparent);
}

[data-theme="mabus-light"] .text-white\/80,
[data-theme="mabus-light"] .text-starlight\/80 {
  color: color-mix(in oklch, var(--mb-base-content) 85%, transparent);
}

[data-theme="mabus-light"] .text-white\/90,
[data-theme="mabus-light"] .text-starlight\/90 {
  color: color-mix(in oklch, var(--mb-base-content) 93%, transparent);
}

/* Gradient text — h1/h2 hero. Era white→cyan, vira espresso→petróleo→champagne */
[data-theme="mabus-light"] .text-transparent.bg-clip-text.bg-gradient-to-r.from-white,
[data-theme="mabus-light"] .text-transparent.bg-clip-text.bg-gradient-to-r.from-white.to-starlight,
[data-theme="mabus-light"] span.text-transparent.bg-clip-text {
  background: linear-gradient(135deg, var(--mb-base-content) 0%, var(--mb-primary) 60%, var(--mb-accent) 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent;
}

/* Page titles que usam text-white direto */
[data-theme="mabus-light"] h1.text-white,
[data-theme="mabus-light"] h2.text-white,
[data-theme="mabus-light"] h3.text-white,
[data-theme="mabus-light"] h4.text-white {
  color: var(--mb-base-content) !important;
}


/* ============================================================
   3. LIQUID GLASS SURFACES — a fundação
   ------------------------------------------------------------
   .glass, .glass-card, .glass-panel viram surfaces translucent
   com blur(60px) saturate(180%) + inner highlight top.
   ============================================================ */

[data-theme="mabus-light"] .glass,
[data-theme="mabus-light"] .glass-card,
[data-theme="mabus-light"] .glass-panel,
[data-theme="mabus-light"] .glass-studio {
  background: var(--mb-surface-glass);
  -webkit-backdrop-filter: blur(60px) saturate(180%);
          backdrop-filter: blur(60px) saturate(180%);
  border: none !important;
  box-shadow: var(--mb-shadow-md);
}

[data-theme="mabus-light"] .glass-card:hover,
[data-theme="mabus-light"] .glass-panel:hover,
[data-theme="mabus-light"] .glass-studio:hover {
  background: var(--mb-surface-elevated);
  box-shadow: var(--mb-shadow-lg);
  transform: translateY(-2px);
}

[data-theme="mabus-light"] .glass-heavy {
  background: var(--mb-surface-elevated);
  -webkit-backdrop-filter: blur(80px) saturate(180%);
          backdrop-filter: blur(80px) saturate(180%);
  border: none !important;
  box-shadow: var(--mb-shadow-md);
}

/* DaisyUI cards — aplicar Liquid Glass também */
[data-theme="mabus-light"] .card {
  background: var(--mb-surface-glass);
  -webkit-backdrop-filter: blur(60px) saturate(180%);
          backdrop-filter: blur(60px) saturate(180%);
  border: none !important;
  box-shadow: var(--mb-shadow-md);
}

[data-theme="mabus-light"] .card:hover {
  background: var(--mb-surface-elevated);
  box-shadow: var(--mb-shadow-lg);
}

[data-theme="mabus-light"] .card .card-body,
[data-theme="mabus-light"] .card .card-title {
  color: var(--mb-base-content);
}

/* DaisyUI stats */
[data-theme="mabus-light"] .stats,
[data-theme="mabus-light"] .stat {
  background: var(--mb-surface-glass);
  -webkit-backdrop-filter: blur(40px) saturate(180%);
          backdrop-filter: blur(40px) saturate(180%);
  border: none !important;
  box-shadow: var(--mb-shadow-sm);
}

[data-theme="mabus-light"] .stat-title {
  color: var(--mb-base-content-muted);
}

[data-theme="mabus-light"] .stat-value {
  color: var(--mb-base-content);
}

[data-theme="mabus-light"] .stat-desc {
  color: var(--mb-base-content-muted);
}


/* ============================================================
   4. HEADER — LIQUID GLASS PREMIUM (v4.2 — fixed)
   ------------------------------------------------------------
   IMPORTANTE: header.navbar e aside JÁ TÊM position: fixed via
   Tailwind. NÃO sobrescrever (quebra layout — bug v4.1).

   pseudo-element ::after funciona porque parent já tem
   position != static (fixed/absolute satisfaz isso).

   Restringido pra SOMENTE header.navbar — não aplicar em
   .glass-panel genérico (usado em dropdowns/cards/modals; cada
   um tem layout próprio).
   ============================================================ */

[data-theme="mabus-light"] header.navbar {
  background:
    linear-gradient(180deg,
      rgba(255, 255, 255, 0.92) 0%,
      rgba(247, 248, 250, 0.80) 100%
    ) !important;
  -webkit-backdrop-filter: blur(50px) saturate(180%);
          backdrop-filter: blur(50px) saturate(180%);
  border: none !important;
  box-shadow:
    0 1px 2px rgba(20, 30, 50, 0.04),
    0 8px 24px rgba(20, 30, 50, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    inset 0 -1px 0 rgba(20, 30, 50, 0.06);
  /* position NÃO modificada — Tailwind aplica fixed top-4 originalmente */
}

/* Noise texture overlay — header já tem position: fixed via Tailwind */
[data-theme="mabus-light"] header.navbar::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' seed='5'/%3E%3CfeColorMatrix values='0 0 0 0 0.42  0 0 0 0 0.46  0 0 0 0 0.52  0 0 0 0.5 0'/%3E%3C/filter%3E%3Crect width='256' height='256' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity: 0.035;
  mix-blend-mode: multiply;
  pointer-events: none;
  z-index: 0;
}

[data-theme="mabus-light"] header.navbar > * {
  position: relative;
  z-index: 1;
}

[data-theme="mabus-light"] header .btn-ghost {
  color: var(--mb-base-content-muted);
  background: transparent;
  border: none;
}

[data-theme="mabus-light"] header .btn-ghost:hover {
  color: var(--mb-primary);
  background: color-mix(in oklch, var(--mb-primary) 8%, transparent);
}

[data-theme="mabus-light"] header .text-starlight,
[data-theme="mabus-light"] header .text-starlight\/40,
[data-theme="mabus-light"] header .text-starlight\/70 {
  color: var(--mb-base-content-muted);
}

/* Credits badge no header (preserva contexto sem ficar agressivo) */
[data-theme="mabus-light"] .bg-black\/40.px-3,
[data-theme="mabus-light"] header .bg-black\/40 {
  background: color-mix(in oklch, var(--mb-primary) 10%, transparent);
  border: none;
  color: var(--mb-primary);
}


/* ============================================================
   5. SIDEBAR — LIQUID GLASS PREMIUM (v4.1)
   ------------------------------------------------------------
   Antes: cor sólida com leve glass (parecia papel comum).
   Agora: gradient vertical interno (top mais claro, bottom mais
   warm) + noise texture + filete de luz no top E na borda esquerda
   + inner shadow sutil na borda direita (sensação de "in-set" no
   canvas, como sidebar do macOS Sequoia/Vision Pro).
   ============================================================ */

[data-theme="mabus-light"] aside,
[data-theme="mabus-light"] .sidebar {
  background:
    linear-gradient(180deg,
      rgba(244, 246, 250, 0.92) 0%,
      rgba(237, 238, 241, 0.85) 50%,
      rgba(230, 232, 237, 0.92) 100%
    ) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%);
          backdrop-filter: blur(40px) saturate(180%);
  border: none !important;
  box-shadow:
    1px 0 2px rgba(20, 30, 50, 0.06),
    8px 0 24px rgba(20, 30, 50, 0.04),
    inset 0 1px 0 rgba(255, 255, 255, 0.85),    /* filete de luz no top */
    inset 1px 0 0 rgba(255, 255, 255, 0.5),     /* highlight borda esquerda */
    inset -1px 0 0 rgba(20, 30, 50, 0.08);      /* contato borda direita */
  /* position NÃO modificada — aside tem fixed top-0 left-0 via Tailwind */
  /* NÃO usar ::after pra noise overlay aqui — aside tem filho
     <div class="absolute top-0 right-0"> (decor de borda direita) que
     seria forçado a position:relative pelo `aside > *` rule
     necessário pra empilhar conteúdo acima do ::after, fazendo o
     decor entrar no flow e comer espaço do menu. Pra noise texture
     no sidebar precisaria de approach diferente (background-image
     multi-layer com background-blend-mode). Por agora: só gradient
     + insets. Suficientemente bonito sem o risco. */
}

[data-theme="mabus-light"] aside .bg-base-100,
[data-theme="mabus-light"] aside .card {
  background: transparent;
  box-shadow: none;
}

[data-theme="mabus-light"] aside a:hover,
[data-theme="mabus-light"] aside button:hover {
  background: color-mix(in oklch, var(--mb-base-content) 4%, transparent);
  color: var(--mb-primary);
}

[data-theme="mabus-light"] aside .active,
[data-theme="mabus-light"] aside [aria-current="page"] {
  background: color-mix(in oklch, var(--mb-primary) 14%, transparent);
  color: var(--mb-primary);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}


/* ============================================================
   6. FORMS — inputs com AFUNDAMENTO (não borders)
   ------------------------------------------------------------
   Substituir borders por inset shadow. Focus = ring glow.
   ============================================================ */

[data-theme="mabus-light"] input[type="text"],
[data-theme="mabus-light"] input[type="email"],
[data-theme="mabus-light"] input[type="password"],
[data-theme="mabus-light"] input[type="search"],
[data-theme="mabus-light"] input[type="number"],
[data-theme="mabus-light"] input[type="tel"],
[data-theme="mabus-light"] input[type="url"],
[data-theme="mabus-light"] input[type="date"],
[data-theme="mabus-light"] input:not([type]),
[data-theme="mabus-light"] textarea,
[data-theme="mabus-light"] select,
[data-theme="mabus-light"] .input,
[data-theme="mabus-light"] .textarea,
[data-theme="mabus-light"] .select {
  background: var(--mb-surface-inset);
  border: none !important;
  box-shadow: var(--mb-shadow-inset);
  color: var(--mb-base-content);
  transition: box-shadow 200ms ease, background 200ms ease;
}

[data-theme="mabus-light"] input:focus,
[data-theme="mabus-light"] textarea:focus,
[data-theme="mabus-light"] select:focus,
[data-theme="mabus-light"] .input:focus,
[data-theme="mabus-light"] .input-bordered:focus,
[data-theme="mabus-light"] .textarea:focus,
[data-theme="mabus-light"] .select:focus {
  background: var(--mb-surface-canvas);
  box-shadow: var(--mb-shadow-inset), 0 0 0 3px var(--mb-ring);
  outline: none !important;
  border: none !important;
}

[data-theme="mabus-light"] input::placeholder,
[data-theme="mabus-light"] textarea::placeholder {
  color: color-mix(in oklch, var(--mb-base-content) 40%, transparent);
}

/* Checkboxes / radios herdam tema */
[data-theme="mabus-light"] .checkbox,
[data-theme="mabus-light"] .radio,
[data-theme="mabus-light"] .toggle {
  border-color: var(--mb-base-300);
}

[data-theme="mabus-light"] .checkbox:checked,
[data-theme="mabus-light"] .toggle:checked {
  background-color: var(--mb-primary);
  border-color: var(--mb-primary);
}


/* ============================================================
   7. BUTTONS — depth com inner highlight
   ------------------------------------------------------------
   ZERO borders. Sombra warm + inner highlight + gradient subtle.
   Hover = translateY(-1px) + shadow expandida.
   Active = translateY(0) + shadow recolhida (sensação de pressionar).
   ============================================================ */

[data-theme="mabus-light"] .btn {
  border: none !important;
  box-shadow: var(--mb-shadow-sm);
  transition: transform 150ms ease, box-shadow 200ms ease, background 200ms ease;
}

[data-theme="mabus-light"] .btn:hover {
  box-shadow: var(--mb-shadow-md);
  transform: translateY(-1px);
}

[data-theme="mabus-light"] .btn:active {
  transform: translateY(0);
  box-shadow: var(--mb-shadow-sm);
}

[data-theme="mabus-light"] .btn-primary {
  background: linear-gradient(180deg, var(--mb-primary) 0%, color-mix(in oklch, var(--mb-primary) 88%, black) 100%);
  color: var(--mb-primary-content);
}

[data-theme="mabus-light"] .btn-primary:hover {
  background: linear-gradient(180deg, color-mix(in oklch, var(--mb-primary) 95%, white) 0%, var(--mb-primary) 100%);
  box-shadow:
    0 1px 2px rgba(20, 30, 50, 0.06),
    0 4px 16px color-mix(in oklch, var(--mb-primary) 30%, transparent),
    inset 0 1px 0 rgba(255, 255, 255, 0.25);
}

[data-theme="mabus-light"] .btn-secondary {
  background: linear-gradient(180deg, var(--mb-secondary) 0%, color-mix(in oklch, var(--mb-secondary) 88%, black) 100%);
  color: var(--mb-secondary-content);
}

[data-theme="mabus-light"] .btn-accent {
  background: linear-gradient(180deg, var(--mb-accent) 0%, color-mix(in oklch, var(--mb-accent) 85%, black) 100%);
  color: var(--mb-accent-content);
}

[data-theme="mabus-light"] .btn-ghost {
  background: transparent;
  color: var(--mb-base-content);
  box-shadow: none;
}

[data-theme="mabus-light"] .btn-ghost:hover {
  background: var(--mb-surface-elevated);
  box-shadow: var(--mb-shadow-sm);
}

[data-theme="mabus-light"] .btn-outline {
  background: var(--mb-surface-glass);
  color: var(--mb-base-content);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
}


/* ============================================================
   8. OVERLAYS / MODALS / DROPDOWNS
   ------------------------------------------------------------
   bg-black/X comum vira surface-glass adaptativa.
   Modal backdrop = espresso transparente + blur (não preto puro).
   ============================================================ */

[data-theme="mabus-light"] .bg-black\/40,
[data-theme="mabus-light"] .bg-black\/50,
[data-theme="mabus-light"] .bg-black\/60 {
  background: var(--mb-surface-elevated) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%);
          backdrop-filter: blur(40px) saturate(180%);
  border: none !important;
}

[data-theme="mabus-light"] .bg-black\/20,
[data-theme="mabus-light"] .bg-black\/30 {
  background: var(--mb-surface-glass) !important;
}

[data-theme="mabus-light"] .bg-cosmic-void {
  background: var(--mb-surface-canvas) !important;
}

/* Modal backdrop */
[data-theme="mabus-light"] .modal,
[data-theme="mabus-light"] dialog.modal {
  background: color-mix(in oklch, var(--mb-base-content) 25%, transparent);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
}

[data-theme="mabus-light"] .modal-box {
  background: var(--mb-surface-elevated);
  -webkit-backdrop-filter: blur(80px) saturate(180%);
          backdrop-filter: blur(80px) saturate(180%);
  border: none !important;
  box-shadow: var(--mb-shadow-lg);
  color: var(--mb-base-content);
}

/* Dropdowns / menus */
[data-theme="mabus-light"] .dropdown-content,
[data-theme="mabus-light"] .menu {
  background: var(--mb-surface-elevated);
  -webkit-backdrop-filter: blur(60px) saturate(180%);
          backdrop-filter: blur(60px) saturate(180%);
  border: none !important;
  box-shadow: var(--mb-shadow-md);
}

[data-theme="mabus-light"] .menu li > * {
  color: var(--mb-base-content);
}

[data-theme="mabus-light"] .menu li > *:hover {
  background: color-mix(in oklch, var(--mb-primary) 8%, transparent);
  color: var(--mb-primary);
}


/* ============================================================
   9. BADGES / TAGS / CHIPS
   ============================================================ */

[data-theme="mabus-light"] .badge {
  border: none !important;
  box-shadow: var(--mb-shadow-sm);
}

[data-theme="mabus-light"] .badge-primary {
  background: var(--mb-primary);
  color: var(--mb-primary-content);
}

[data-theme="mabus-light"] .badge-accent {
  background: var(--mb-accent);
  color: var(--mb-accent-content);
}

[data-theme="mabus-light"] .badge-ghost {
  background: var(--mb-surface-glass);
  color: var(--mb-base-content);
}


/* ============================================================
   10. BORDERS — quando absolutamente necessários, soft
   ------------------------------------------------------------
   Não escalável remover TODAS borders (Tailwind .border default
   é usada em muitos lugares). Quando aparecerem, soften pra
   glass-border quase invisível.
   ============================================================ */

[data-theme="mabus-light"] .border,
[data-theme="mabus-light"] [class*="border-"]:not([class*="border-0"]) {
  border-color: var(--mb-glass-border) !important;
}

[data-theme="mabus-light"] .divider,
[data-theme="mabus-light"] hr {
  background-color: var(--mb-glass-border);
  border-color: var(--mb-glass-border);
  color: var(--mb-glass-border);
}


/* ============================================================
   11. SCROLLBAR — sutil, warm
   ============================================================ */

[data-theme="mabus-light"] ::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

[data-theme="mabus-light"] ::-webkit-scrollbar-track {
  background: transparent;
}

[data-theme="mabus-light"] ::-webkit-scrollbar-thumb {
  background: color-mix(in oklch, var(--mb-base-content-muted) 25%, transparent);
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: padding-box;
}

[data-theme="mabus-light"] ::-webkit-scrollbar-thumb:hover {
  background: color-mix(in oklch, var(--mb-base-content-muted) 45%, transparent);
  background-clip: padding-box;
}


/* ============================================================
   12. PROGRESS / LOADING
   ============================================================ */

[data-theme="mabus-light"] progress.progress,
[data-theme="mabus-light"] .progress {
  background: var(--mb-surface-inset);
}

[data-theme="mabus-light"] .progress::-webkit-progress-value,
[data-theme="mabus-light"] .progress::-moz-progress-bar {
  background: var(--mb-primary);
}

[data-theme="mabus-light"] .loading {
  color: var(--mb-primary);
}


/* ============================================================
   13. DAISYUI UTILITY OVERRIDES (defensivos)
   ------------------------------------------------------------
   Output.css é gerado pelo build do tailwind/daisyUI com HSL vars.
   Quando a paleta muda no tailwind.config.js, é preciso rebuild
   pra atualizar essas classes. Esta section funciona como
   FALLBACK em qualquer estado do output.css — durante deploy
   ou testes locais sem build.
   ============================================================ */

[data-theme="mabus-light"] .bg-base-100 { background-color: var(--mb-base-100) !important; }
[data-theme="mabus-light"] .bg-base-200 { background-color: var(--mb-base-200) !important; }
[data-theme="mabus-light"] .bg-base-300 { background-color: var(--mb-base-300) !important; }
[data-theme="mabus-light"] .bg-primary  { background-color: var(--mb-primary)  !important; }
[data-theme="mabus-light"] .bg-secondary{ background-color: var(--mb-secondary)!important; }
[data-theme="mabus-light"] .bg-accent   { background-color: var(--mb-accent)   !important; }
[data-theme="mabus-light"] .bg-neutral  { background-color: var(--mb-neutral)  !important; }
[data-theme="mabus-light"] .bg-info     { background-color: var(--mb-info)     !important; }
[data-theme="mabus-light"] .bg-success  { background-color: var(--mb-success)  !important; }
[data-theme="mabus-light"] .bg-warning  { background-color: var(--mb-warning)  !important; }
[data-theme="mabus-light"] .bg-error    { background-color: var(--mb-error)    !important; }

[data-theme="mabus-light"] .text-base-content { color: var(--mb-base-content) !important; }
[data-theme="mabus-light"] .text-primary      { color: var(--mb-primary)      !important; }
[data-theme="mabus-light"] .text-secondary    { color: var(--mb-secondary)    !important; }
[data-theme="mabus-light"] .text-accent       { color: var(--mb-accent)       !important; }
[data-theme="mabus-light"] .text-info         { color: var(--mb-info)         !important; }
[data-theme="mabus-light"] .text-success      { color: var(--mb-success)      !important; }
[data-theme="mabus-light"] .text-warning      { color: var(--mb-warning)      !important; }
[data-theme="mabus-light"] .text-error        { color: var(--mb-error)        !important; }

/* Opacidades comuns em base-content (text-base-content/70 etc) */
[data-theme="mabus-light"] .text-base-content\/40 { color: color-mix(in oklch, var(--mb-base-content) 40%, transparent) !important; }
[data-theme="mabus-light"] .text-base-content\/50 { color: color-mix(in oklch, var(--mb-base-content) 50%, transparent) !important; }
[data-theme="mabus-light"] .text-base-content\/60 { color: var(--mb-base-content-muted) !important; }
[data-theme="mabus-light"] .text-base-content\/70 { color: color-mix(in oklch, var(--mb-base-content) 75%, transparent) !important; }
[data-theme="mabus-light"] .text-base-content\/80 { color: color-mix(in oklch, var(--mb-base-content) 85%, transparent) !important; }

/* Bg com opacidade (overlays primary/X, base-content/X etc) */
[data-theme="mabus-light"] .bg-base-content\/5  { background-color: color-mix(in oklch, var(--mb-base-content) 5%, transparent)  !important; }
[data-theme="mabus-light"] .bg-base-content\/10 { background-color: color-mix(in oklch, var(--mb-base-content) 10%, transparent) !important; }
[data-theme="mabus-light"] .bg-base-content\/20 { background-color: color-mix(in oklch, var(--mb-base-content) 20%, transparent) !important; }
[data-theme="mabus-light"] .bg-primary\/5  { background-color: color-mix(in oklch, var(--mb-primary) 5%, transparent)  !important; }
[data-theme="mabus-light"] .bg-primary\/10 { background-color: color-mix(in oklch, var(--mb-primary) 10%, transparent) !important; }
[data-theme="mabus-light"] .bg-primary\/20 { background-color: color-mix(in oklch, var(--mb-primary) 20%, transparent) !important; }

/* Selection */
[data-theme="mabus-light"] ::selection {
  background-color: color-mix(in oklch, var(--mb-primary) 25%, transparent);
  color: var(--mb-base-content);
}


/* ============================================================
   14. WELCOME TOUR (plugin .mwt-*) — adapta pra light
   ------------------------------------------------------------
   Plugin carregado via footer.ejs em todas as telas. Designed
   originalmente pra dark (popover #16162a, texts #e7e7ee, etc).

   Filosofia da adaptação:
   - Spotlight + help button mantém cyan neon (cores de "energia",
     funcionam em qualquer fundo)
   - Popovers/modais viram surface elevated com glow champagne
   - Texts adaptam pra espresso suave
   - Backdrop fica mais sutil em light (menos preto, mais cream)
   ============================================================ */

/* Backdrop overlay — em light, fica cream translucent (não preto) */
[data-theme="mabus-light"] .mwt-overlay-bg {
  background: color-mix(in oklch, var(--mb-base-content) 25%, transparent);
}

/* Popover principal — surface elevated com Liquid Glass */
[data-theme="mabus-light"] .mwt-popover,
[data-theme="mabus-light"] .mwt-welcome-modal-card,
[data-theme="mabus-light"] .mwt-skip-dialog,
[data-theme="mabus-light"] .mwt-fa-toast,
[data-theme="mabus-light"] .mwt-help-menu {
  background: var(--mb-surface-elevated) !important;
  -webkit-backdrop-filter: blur(60px) saturate(180%);
          backdrop-filter: blur(60px) saturate(180%);
  border: 1px solid color-mix(in oklch, var(--mb-primary) 25%, transparent) !important;
  box-shadow:
    0 24px 60px rgba(20, 30, 50, 0.18),
    0 0 40px color-mix(in oklch, var(--mb-primary) 12%, transparent),
    inset 0 1px 0 rgba(255, 255, 255, 0.75),
    inset 0 0 32px var(--mb-glow-inner);
  color: var(--mb-base-content) !important;
}

/* Arrow do popover — adapta */
[data-theme="mabus-light"] .mwt-popover-arrow {
  background: var(--mb-surface-elevated) !important;
  border-left-color: color-mix(in oklch, var(--mb-primary) 25%, transparent) !important;
  border-top-color: color-mix(in oklch, var(--mb-primary) 25%, transparent) !important;
}

/* Header / step counter / close */
[data-theme="mabus-light"] .mwt-popover-step-counter {
  color: var(--mb-primary);
}
[data-theme="mabus-light"] .mwt-popover-close {
  color: var(--mb-base-content-muted);
}
[data-theme="mabus-light"] .mwt-popover-close:hover {
  color: var(--mb-base-content);
  background: var(--mb-base-200);
}

/* Title / content / strong / code */
[data-theme="mabus-light"] .mwt-popover-title,
[data-theme="mabus-light"] .mwt-welcome-modal-title,
[data-theme="mabus-light"] .mwt-skip-dialog-title,
[data-theme="mabus-light"] .mwt-fa-toast-title {
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .mwt-popover-content,
[data-theme="mabus-light"] .mwt-welcome-modal-text,
[data-theme="mabus-light"] .mwt-skip-dialog-text,
[data-theme="mabus-light"] .mwt-fa-toast-text {
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .mwt-popover-content strong,
[data-theme="mabus-light"] .mwt-fa-toast-text strong {
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .mwt-popover-content code {
  background: var(--mb-base-200);
  color: var(--mb-primary);
}

/* Welcome modal title — gradient text adaptado */
[data-theme="mabus-light"] .mwt-welcome-modal-title span {
  background: linear-gradient(135deg, var(--mb-primary), var(--mb-accent)) !important;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Footer + progress dots */
[data-theme="mabus-light"] .mwt-popover-footer {
  border-top-color: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .mwt-popover-progress-dot {
  background: var(--mb-base-300);
}
[data-theme="mabus-light"] .mwt-popover-progress-dot.active {
  background: var(--mb-primary);
}
[data-theme="mabus-light"] .mwt-popover-progress-dot.done {
  background: color-mix(in oklch, var(--mb-primary) 40%, transparent);
}

/* Buttons — primary mantém cyan/petróleo, ghost adapta */
[data-theme="mabus-light"] .mwt-btn-primary {
  background: var(--mb-primary) !important;
  color: var(--mb-primary-content) !important;
}
[data-theme="mabus-light"] .mwt-btn-primary:hover {
  background: var(--mb-secondary) !important;
}
[data-theme="mabus-light"] .mwt-btn-ghost {
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .mwt-btn-ghost:hover {
  color: var(--mb-base-content) !important;
  background: var(--mb-base-200) !important;
}
[data-theme="mabus-light"] .mwt-btn-skip {
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .mwt-btn-skip:hover {
  color: var(--mb-base-content) !important;
}

/* Help menu — itens */
[data-theme="mabus-light"] .mwt-help-menu-item {
  color: var(--mb-base-content);
}
[data-theme="mabus-light"] .mwt-help-menu-item:hover {
  background: color-mix(in oklch, var(--mb-primary) 8%, transparent);
  color: var(--mb-primary);
}
[data-theme="mabus-light"] .mwt-help-menu-item .mwt-help-menu-icon {
  color: var(--mb-primary);
}
[data-theme="mabus-light"] .mwt-help-menu-item .mwt-help-menu-meta {
  color: var(--mb-base-content-muted);
}
[data-theme="mabus-light"] .mwt-help-menu-divider {
  background: var(--mb-base-300);
}
[data-theme="mabus-light"] .mwt-help-menu-header {
  color: var(--mb-base-content-muted);
}

/* Skip dialog (warning) — manter laranja warning como destaque */
[data-theme="mabus-light"] .mwt-skip-dialog {
  border-color: color-mix(in oklch, var(--mb-warning) 35%, transparent) !important;
}
[data-theme="mabus-light"] .mwt-skip-dialog-text em {
  color: var(--mb-warning) !important;
}

/* Spotlight + Help button mantém cyan neon original — funcionam em qualquer fundo */


/* ============================================================
   15. ADMIN + KANBAN PUBLIC (Fase B.4)
   ------------------------------------------------------------
   5 telas com data-theme="dark" hardcoded:
   - admin_fiorilli, admin_pseo, admin_portal_extractor,
     admin_brconectado: estilo "MABUS ADMIN" com Cinzel font,
     body #0b0f19, .glass-panel slate, .text-glow cyan/sky/amber
   - dashboard_kanban_public: kanban exposto, oklch heavy

   Migradas pra data-theme dinâmico em Fase B.4. Overrides scoped
   abaixo cobrem as classes custom dessas telas em light.

   Estratégia conservadora: NÃO sobrescrever .glass-panel global
   (afetaria header e outros) — usa :not(header.navbar) pra escopar.
   ============================================================ */

/* Body das telas admin (background hardcoded #0b0f19) */
[data-theme="mabus-light"] body.min-h-screen.flex.flex-col {
  background-color: var(--mb-surface-canvas) !important;
  color: var(--mb-base-content) !important;
}

/* .glass-panel em contextos não-header (cards admin, sections) */
[data-theme="mabus-light"] .glass-panel:not(header):not(.navbar) {
  background: var(--mb-surface-glass) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%);
          backdrop-filter: blur(40px) saturate(180%);
  border: 1px solid var(--mb-glass-border) !important;
  box-shadow: var(--mb-shadow-md) !important;
  color: var(--mb-base-content) !important;
}

/* .text-glow — mantém o efeito mas adapta cor */
[data-theme="mabus-light"] .text-glow {
  text-shadow: 0 0 10px color-mix(in oklch, var(--mb-primary) 30%, transparent) !important;
}

/* Tailwind text colors usadas em admin headers */
[data-theme="mabus-light"] .text-cyan-400,
[data-theme="mabus-light"] .text-sky-400,
[data-theme="mabus-light"] .text-blue-400 {
  color: var(--mb-primary) !important;
}
[data-theme="mabus-light"] .text-amber-400,
[data-theme="mabus-light"] .text-yellow-400 {
  color: var(--mb-accent) !important;
}
[data-theme="mabus-light"] .text-slate-100,
[data-theme="mabus-light"] .text-slate-200,
[data-theme="mabus-light"] .text-slate-300 {
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .text-slate-400,
[data-theme="mabus-light"] .text-slate-500 {
  color: var(--mb-base-content-muted) !important;
}

/* Borders slate em headers admin */
[data-theme="mabus-light"] .border-slate-700,
[data-theme="mabus-light"] .border-slate-800 {
  border-color: var(--mb-base-300) !important;
}

/* Scrollbar slate em admin pages */
[data-theme="mabus-light"] body.min-h-screen ::-webkit-scrollbar-track {
  background: transparent !important;
}
[data-theme="mabus-light"] body.min-h-screen ::-webkit-scrollbar-thumb {
  background: color-mix(in oklch, var(--mb-base-content-muted) 30%, transparent) !important;
}
[data-theme="mabus-light"] body.min-h-screen ::-webkit-scrollbar-thumb:hover {
  background: color-mix(in oklch, var(--mb-base-content-muted) 50%, transparent) !important;
}

/* admin_brconectado .stat-card */
[data-theme="mabus-light"] .stat-card {
  background: var(--mb-surface-glass) !important;
  border: 1px solid var(--mb-glass-border) !important;
  box-shadow: var(--mb-shadow-sm);
  color: var(--mb-base-content);
}

/* dashboard_kanban_public — classes .public-* usam oklch dark */
[data-theme="mabus-light"] .public-header {
  background: linear-gradient(135deg,
    var(--mb-surface-glass),
    var(--mb-surface-elevated)
  ) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%);
          backdrop-filter: blur(40px) saturate(180%);
  border-bottom: 1px solid var(--mb-glass-border) !important;
  color: var(--mb-base-content);
}

[data-theme="mabus-light"] .public-column {
  background: var(--mb-surface-glass) !important;
  border: 1px solid var(--mb-glass-border) !important;
  box-shadow: var(--mb-shadow-sm);
}

[data-theme="mabus-light"] .public-col-header {
  border-bottom: 1px solid var(--mb-base-300) !important;
}

[data-theme="mabus-light"] .public-card {
  background: var(--mb-surface-elevated) !important;
  color: var(--mb-base-content);
  box-shadow: var(--mb-shadow-sm);
}

[data-theme="mabus-light"] .public-card:hover {
  box-shadow: var(--mb-shadow-md);
}


/* ============================================================
   16. BUSCADOR (/buscador) — overrides scoped p/ light
   ------------------------------------------------------------
   Tela central do produto, usada todo dia. 3219 linhas, 778 de CSS
   inline com oklch heavy. Não dá pra refazer cada cor — overrides
   estratégicos cobrem o que afeta legibilidade em light.

   Mantém accents/glows que são "energia" (smart-filter green,
   sync-pulse, AI orb, sf-ai-badge) — esses funcionam em qualquer
   fundo e dão sinal visual claro.
   ============================================================ */

/* ━━━ Layout principal ━━━ */
[data-theme="mabus-light"] .b-layout { background: transparent; }
[data-theme="mabus-light"] .b-sidebar {
  background: var(--mb-surface-glass) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%);
          backdrop-filter: blur(40px) saturate(180%);
  border-right: 1px solid var(--mb-glass-border) !important;
  box-shadow: var(--mb-shadow-sm);
}
[data-theme="mabus-light"] .b-main { color: var(--mb-base-content); }

/* ━━━ Sidebar sections / labels ━━━ */
[data-theme="mabus-light"] .sb-header,
[data-theme="mabus-light"] .sb-presets,
[data-theme="mabus-light"] .sb-section,
[data-theme="mabus-light"] .smart-filter-section {
  border-bottom-color: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .sb-header h1 span {
  background: linear-gradient(135deg, var(--mb-primary), var(--mb-accent)) !important;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
[data-theme="mabus-light"] .sb-header .sub,
[data-theme="mabus-light"] .sb-label,
[data-theme="mabus-light"] .valor-hint,
[data-theme="mabus-light"] .capital-tolerance {
  color: var(--mb-base-content-muted) !important;
}

/* ━━━ Chips ━━━ */
[data-theme="mabus-light"] .sb-presets .p-chip {
  background: var(--mb-base-200) !important;
  border: 1px solid var(--mb-glass-border) !important;
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .sb-presets .p-chip:hover {
  background: var(--mb-base-300) !important;
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .sb-presets .p-chip.active {
  background: color-mix(in oklch, var(--mb-primary) 15%, transparent) !important;
  border-color: color-mix(in oklch, var(--mb-primary) 35%, transparent) !important;
  color: var(--mb-primary) !important;
}
[data-theme="mabus-light"] .sb-presets .p-manage {
  background: transparent !important;
  border-style: dashed !important;
  border-color: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .sb-badge {
  background: var(--mb-primary) !important;
  color: var(--mb-primary-content);
}

/* ━━━ Inputs ━━━ */
[data-theme="mabus-light"] .sb-input,
[data-theme="mabus-light"] .sb-date,
[data-theme="mabus-light"] .sb-panel-search,
[data-theme="mabus-light"] .valor-range-row .valor-field input,
[data-theme="mabus-light"] .capital-input-wrap input {
  background: var(--mb-base-200) !important;
  border: none !important;
  box-shadow: var(--mb-shadow-inset);
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .sb-input:focus,
[data-theme="mabus-light"] .sb-date:focus,
[data-theme="mabus-light"] .valor-range-row .valor-field input:focus,
[data-theme="mabus-light"] .capital-input-wrap input:focus {
  box-shadow: var(--mb-shadow-inset), 0 0 0 3px var(--mb-ring);
  outline: none !important;
}
[data-theme="mabus-light"] .valor-preview { color: var(--mb-primary) !important; }
[data-theme="mabus-light"] .capital-preview { color: var(--mb-accent) !important; }

/* ━━━ Tags / Pills ━━━ */
[data-theme="mabus-light"] .sb-tags {
  background: var(--mb-base-200) !important;
  border: 1px solid var(--mb-glass-border) !important;
}
[data-theme="mabus-light"] .tag-pill {
  background: color-mix(in oklch, var(--mb-primary) 15%, transparent) !important;
  border-color: color-mix(in oklch, var(--mb-primary) 30%, transparent) !important;
  color: var(--mb-primary) !important;
}

/* ━━━ Select / Panel ━━━ */
[data-theme="mabus-light"] .sb-select {
  background: var(--mb-base-200) !important;
  border: 1px solid var(--mb-glass-border) !important;
}
[data-theme="mabus-light"] .sb-select:hover {
  border-color: color-mix(in oklch, var(--mb-primary) 35%, transparent) !important;
  background: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .sb-panel {
  background: var(--mb-surface-elevated) !important;
  border: 1px solid var(--mb-glass-border) !important;
  -webkit-backdrop-filter: blur(40px);
          backdrop-filter: blur(40px);
}

/* ━━━ City tabs / Dist autocomplete ━━━ */
[data-theme="mabus-light"] .city-tab {
  background: var(--mb-base-200) !important;
  border: 1px solid var(--mb-glass-border) !important;
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .city-tab.active {
  background: color-mix(in oklch, var(--mb-primary) 15%, transparent) !important;
  border-color: color-mix(in oklch, var(--mb-primary) 35%, transparent) !important;
  color: var(--mb-primary) !important;
}
[data-theme="mabus-light"] .dist-dropdown {
  background: var(--mb-surface-elevated) !important;
  border: 1px solid var(--mb-glass-border) !important;
  box-shadow: var(--mb-shadow-md);
}
[data-theme="mabus-light"] .dist-selected {
  background: color-mix(in oklch, var(--mb-primary) 12%, transparent) !important;
  border-color: color-mix(in oklch, var(--mb-primary) 30%, transparent) !important;
  color: var(--mb-primary) !important;
}

/* ━━━ Buttons ━━━ */
[data-theme="mabus-light"] .sb-actions { border-top-color: var(--mb-base-300) !important; }
[data-theme="mabus-light"] .sb-btn-search {
  background: linear-gradient(135deg, var(--mb-primary), var(--mb-secondary)) !important;
  color: var(--mb-primary-content);
  box-shadow: var(--mb-shadow-sm);
}
[data-theme="mabus-light"] .sb-btn-search:hover {
  box-shadow: var(--mb-shadow-md), 0 4px 16px color-mix(in oklch, var(--mb-primary) 30%, transparent);
}
[data-theme="mabus-light"] .sb-btn-ghost {
  background: transparent !important;
  border: 1px solid var(--mb-glass-border) !important;
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .sb-btn-ghost:hover {
  border-color: color-mix(in oklch, var(--mb-primary) 30%, transparent) !important;
  color: var(--mb-primary) !important;
}

/* ━━━ Active filters summary ━━━ */
[data-theme="mabus-light"] .active-chip {
  background: color-mix(in oklch, var(--mb-primary) 12%, transparent) !important;
  border-color: color-mix(in oklch, var(--mb-primary) 25%, transparent) !important;
  color: var(--mb-primary) !important;
}

/* ━━━ Results header / count ━━━ */
[data-theme="mabus-light"] .results-count { color: var(--mb-base-content); }

/* ━━━ Smart filter toggle (Filtro IA) ━━━ */
[data-theme="mabus-light"] .smart-filter-slider {
  background: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .smart-filter-slider::before {
  background: var(--mb-base-100) !important;
}
[data-theme="mabus-light"] .smart-filter-toggle input:checked + .smart-filter-slider {
  background: var(--mb-success) !important;
}
[data-theme="mabus-light"] .smart-filter-btn .sf-toggle {
  background: var(--mb-base-300) !important;
  border-color: var(--mb-glass-border) !important;
}
[data-theme="mabus-light"] .smart-filter-btn .sf-toggle::after {
  background: var(--mb-base-100) !important;
}
/* smart-filter-btn mantém o verde "energia" — adapta só backgrounds/borders */
[data-theme="mabus-light"] .smart-filter-btn {
  background: color-mix(in oklch, var(--mb-success) 6%, var(--mb-base-200)) !important;
}
[data-theme="mabus-light"] .smart-filter-btn.active {
  background: color-mix(in oklch, var(--mb-success) 12%, var(--mb-base-200)) !important;
}

/* ━━━ Cards de licitação (foco visual primário) ━━━ */
[data-theme="mabus-light"] .lic-card {
  background: var(--mb-surface-glass) !important;
  -webkit-backdrop-filter: blur(40px) saturate(180%);
          backdrop-filter: blur(40px) saturate(180%);
  border: 1px solid var(--mb-glass-border) !important;
  box-shadow: var(--mb-shadow-sm);
  color: var(--mb-base-content);
}
[data-theme="mabus-light"] .lic-card:hover {
  border-color: color-mix(in oklch, var(--mb-primary) 30%, transparent) !important;
  box-shadow: var(--mb-shadow-md);
}
[data-theme="mabus-light"] .card-footer {
  border-top-color: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .card-value {
  color: var(--mb-success) !important;
}
[data-theme="mabus-light"] .fav-btn { color: var(--mb-base-content-muted) !important; }
[data-theme="mabus-light"] .reject-btn { color: var(--mb-base-content-muted) !important; }
[data-theme="mabus-light"] .reject-btn:hover { color: var(--mb-error) !important; }

/* Card locked overlay (PRO) — mantém warning */
[data-theme="mabus-light"] .card-lock-overlay {
  background: color-mix(in oklch, var(--mb-base-content) 20%, transparent) !important;
}

/* ━━━ View toggles ━━━ */
[data-theme="mabus-light"] .layout-toggle,
[data-theme="mabus-light"] .view-mode-toggle {
  background: var(--mb-base-200) !important;
  border: 1px solid var(--mb-glass-border) !important;
}
[data-theme="mabus-light"] .layout-toggle button,
[data-theme="mabus-light"] .view-mode-toggle button {
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .layout-toggle button:hover,
[data-theme="mabus-light"] .view-mode-toggle button:hover:not(.active) {
  color: var(--mb-base-content) !important;
  background: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .layout-toggle button.active,
[data-theme="mabus-light"] .view-mode-toggle button.active {
  background: color-mix(in oklch, var(--mb-primary) 15%, transparent) !important;
  color: var(--mb-primary) !important;
}

/* ━━━ Table view ━━━ */
[data-theme="mabus-light"] .results-table-wrap {
  background: var(--mb-surface-glass);
  border: 1px solid var(--mb-glass-border) !important;
  border-radius: 0.75rem;
  box-shadow: var(--mb-shadow-sm);
}
[data-theme="mabus-light"] .results-table th {
  background: var(--mb-base-200) !important;
  color: var(--mb-base-content-muted) !important;
  border-bottom: 1px solid var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .results-table td {
  color: var(--mb-base-content) !important;
  border-bottom: 1px solid color-mix(in oklch, var(--mb-base-300) 50%, transparent) !important;
}
[data-theme="mabus-light"] .results-table tbody tr:hover {
  background: var(--mb-base-200) !important;
}
[data-theme="mabus-light"] .results-table tbody tr:nth-child(even) {
  background: color-mix(in oklch, var(--mb-base-200) 40%, transparent) !important;
}
[data-theme="mabus-light"] .results-table .val-cell {
  color: var(--mb-success) !important;
}

/* ━━━ AI Search overlay ━━━ */
/* ai-search-orb mantém neon cyan (elemento "energia") */
[data-theme="mabus-light"] .ai-search-step { color: var(--mb-base-content-muted); }
[data-theme="mabus-light"] .ai-search-step.active { color: var(--mb-base-content); }

/* ━━━ Empty state / Pagination ━━━ */
[data-theme="mabus-light"] .empty-state { color: var(--mb-base-content-muted); }
[data-theme="mabus-light"] .pagination-bar button {
  background: var(--mb-surface-glass) !important;
  border: 1px solid var(--mb-glass-border) !important;
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .pagination-bar button:hover:not(:disabled) {
  background: var(--mb-base-200) !important;
}
[data-theme="mabus-light"] .pagination-bar .current {
  background: var(--mb-primary) !important;
  color: var(--mb-primary-content) !important;
  border-color: var(--mb-primary) !important;
}

/* ━━━ Modal / Detail ━━━ */
[data-theme="mabus-light"] .modal-overlay,
[data-theme="mabus-light"] .detail-overlay {
  background: color-mix(in oklch, var(--mb-base-content) 30%, transparent) !important;
}
[data-theme="mabus-light"] .modal-box,
[data-theme="mabus-light"] .detail-box {
  background: var(--mb-surface-elevated) !important;
  -webkit-backdrop-filter: blur(60px) saturate(180%);
          backdrop-filter: blur(60px) saturate(180%);
  border: 1px solid var(--mb-glass-border) !important;
  box-shadow: var(--mb-shadow-lg) !important;
  color: var(--mb-base-content);
}
[data-theme="mabus-light"] .preset-item {
  background: var(--mb-base-200) !important;
  border: 1px solid var(--mb-glass-border) !important;
}
[data-theme="mabus-light"] .detail-header,
[data-theme="mabus-light"] .detail-actions {
  border-color: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .detail-close {
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .detail-close:hover {
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .detail-objeto {
  border-bottom-color: var(--mb-base-300) !important;
}

/* ━━━ Filter help popover ━━━ */
[data-theme="mabus-light"] .filter-help {
  background: var(--mb-base-200) !important;
  border-color: var(--mb-glass-border) !important;
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .filter-help:hover {
  background: color-mix(in oklch, var(--mb-primary) 12%, transparent) !important;
  border-color: color-mix(in oklch, var(--mb-primary) 30%, transparent) !important;
  color: var(--mb-primary) !important;
}
[data-theme="mabus-light"] .filter-help-popover {
  background: var(--mb-surface-elevated) !important;
  border: 1px solid var(--mb-glass-border) !important;
  box-shadow: var(--mb-shadow-lg);
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .filter-help-popover h4 { color: var(--mb-base-content) !important; }
[data-theme="mabus-light"] .filter-help-popover .body { opacity: 1; color: var(--mb-base-content-muted) !important; }
[data-theme="mabus-light"] .filter-help-popover .tip {
  background: color-mix(in oklch, var(--mb-success) 10%, transparent) !important;
  border-left-color: var(--mb-success) !important;
  color: var(--mb-success) !important;
}
[data-theme="mabus-light"] .filter-help-popover .close-btn {
  color: var(--mb-base-content-muted) !important;
}

/* ━━━ Admin section (Fonte da Base) — mantém dourado warning ━━━ */
[data-theme="mabus-light"] .fonte-chip {
  background: var(--mb-base-200) !important;
  border: 1px solid var(--mb-glass-border) !important;
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .fonte-chip:hover {
  border-color: color-mix(in oklch, var(--mb-accent) 35%, transparent) !important;
  color: var(--mb-base-content) !important;
}
[data-theme="mabus-light"] .fonte-chip.active {
  background: color-mix(in oklch, var(--mb-primary) 15%, transparent) !important;
  border-color: color-mix(in oklch, var(--mb-primary) 35%, transparent) !important;
  color: var(--mb-primary) !important;
}

/* ━━━ Sync status — mantém verde "energia" ━━━ */
/* sync-status-btn, sync-pulse mantêm cores neon do design original */

/* ━━━ Sync report (modal content) ━━━ */
[data-theme="mabus-light"] .sync-section {
  border-top-color: var(--mb-base-300) !important;
}
[data-theme="mabus-light"] .sync-section h4 {
  color: var(--mb-base-content-muted) !important;
}
[data-theme="mabus-light"] .sync-list .row {
  background: var(--mb-base-200) !important;
}
[data-theme="mabus-light"] .sync-deadlines .day {
  background: var(--mb-base-200) !important;
  border-color: var(--mb-glass-border) !important;
}
[data-theme="mabus-light"] .sync-runs-table td {
  border-top-color: var(--mb-base-300) !important;
}

/* ━━━ Refine bar (filtros refinados) ━━━ */
[data-theme="mabus-light"] .refine-bar {
  background: var(--mb-surface-glass) !important;
  border: 1px solid var(--mb-glass-border) !important;
}
[data-theme="mabus-light"] .refine-pill {
  background: color-mix(in oklch, var(--mb-primary) 12%, transparent) !important;
  border-color: color-mix(in oklch, var(--mb-primary) 25%, transparent) !important;
  color: var(--mb-primary) !important;
}
[data-theme="mabus-light"] .refine-count-note { color: var(--mb-base-content-muted) !important; }


/* ============================================================
   17. PRESERVE: sidebar dark legacy (DO NOT TOUCH)
   ------------------------------------------------------------
   Algumas instâncias antigas forçam sidebar dark mesmo dentro
   de telas que não são. Esse contrato precisa continuar.
   ============================================================ */

[data-theme="neuro"] .value-spotlight .value-amount {
  color: #FFFFFF !important;
}

[data-theme="neuro"] aside .bg-base-100 {
  background-color: #030014 !important;
}

[data-theme="neuro"] aside .card {
  background-color: #0A0A1E !important;
}
