/* === Nexus custom styles === */
* { -webkit-font-smoothing: antialiased; }

/* Scanner line animation */
.scanner-line::before {
  content:''; position:absolute; left:0; right:0; height:2px;
  background: linear-gradient(90deg, transparent, #22d3ee, #818cf8, transparent);
  box-shadow: 0 0 20px #22d3ee, 0 0 40px #818cf8;
  animation: scan 2s linear infinite;
  top: 0;
}
@keyframes scan {
  0%   { top: 0%;  opacity: 1; }
  50%  { opacity: 1; }
  100% { top: 100%; opacity: 0.6; }
}

/* Custom scrollbar */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: rgba(255,255,255,0.02); }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgba(34,211,238,0.3); }

/* Sticky table header */
.sticky-th th { position: sticky; top: 0; background: rgba(2,6,23,0.95); backdrop-filter: blur(8px); z-index: 5; }

/* Glow border */
.glow-border { box-shadow: 0 0 0 1px rgba(34,211,238,0.3), 0 0 30px rgba(34,211,238,0.15); }

/* Code-like chip */
.chip { font-family: ui-monospace, monospace; font-size: 10px; }

/* Professional AI search notification for Pesquisar Empresas */
.company-ai-search-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  animation: companyAiCardIn .42s ease-out both, companyAiGlow 2.8s ease-in-out infinite;
}
.company-ai-search-card::before {
  content: '';
  position: absolute;
  inset: -1px;
  z-index: -1;
  background: linear-gradient(135deg, rgba(34,211,238,.35), rgba(168,85,247,.25), rgba(99,102,241,.32));
  filter: blur(22px);
  opacity: .45;
}
.company-ai-grid {
  background-image:
    linear-gradient(rgba(34,211,238,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(34,211,238,.08) 1px, transparent 1px);
  background-size: 34px 34px;
  mask-image: radial-gradient(circle at 40% 35%, #000 0%, transparent 72%);
  animation: companyAiGridMove 9s linear infinite;
}
.company-ai-orb {
  position: absolute;
  width: 190px;
  height: 190px;
  border-radius: 999px;
  filter: blur(34px);
  opacity: .42;
  pointer-events: none;
}
.company-ai-orb-a {
  top: -72px;
  right: 16%;
  background: rgba(34,211,238,.58);
  animation: companyAiFloatA 5.8s ease-in-out infinite;
}
.company-ai-orb-b {
  bottom: -88px;
  left: 6%;
  background: rgba(217,70,239,.52);
  animation: companyAiFloatB 6.4s ease-in-out infinite;
}
.company-ai-loader-panel {
  position: relative;
  overflow: hidden;
}
.company-ai-loader-panel::after {
  content: '';
  position: absolute;
  inset: 0;
  transform: translateX(-120%);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.09), transparent);
  animation: companyAiSweep 2.1s linear infinite;
}
.company-ai-spinner {
  box-shadow: 0 0 0 6px rgba(34,211,238,.05), 0 0 32px rgba(34,211,238,.24);
}
.company-ai-spinner > div:nth-child(2) {
  animation: companyAiSpin 1s linear infinite;
}
.company-ai-spinner > div:nth-child(3) {
  animation: companyAiPulse 1.3s ease-in-out infinite;
}
.company-ai-percent {
  animation: companyAiPercentPulse 1.8s ease-in-out infinite;
}
.company-ai-progress-track {
  position: relative;
}
.company-ai-progress-track::before {
  content: '';
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(115deg, transparent 0 10px, rgba(255,255,255,.08) 10px 18px);
  animation: companyAiStripes 900ms linear infinite;
}
.company-ai-progress-bar {
  position: relative;
  box-shadow: 0 0 22px rgba(34,211,238,.35), 0 0 28px rgba(217,70,239,.22);
}
.company-ai-progress-bar::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.42), transparent);
  animation: companyAiBarShine 1.2s linear infinite;
}
.company-ai-live-dot {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: #67e8f9;
}
.company-ai-live-dot::before {
  content: '';
  width: .55rem;
  height: .55rem;
  border-radius: 999px;
  background: #22d3ee;
  box-shadow: 0 0 0 0 rgba(34,211,238,.55);
  animation: companyAiLive 1.25s ease-out infinite;
}
.company-ai-mini-step {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 1.15rem;
  background: rgba(15,23,42,.72);
  padding: .9rem;
}
.company-ai-mini-step span {
  display: inline-flex;
  margin-bottom: .5rem;
  border-radius: 999px;
  border: 1px solid rgba(34,211,238,.22);
  background: rgba(34,211,238,.10);
  padding: .15rem .55rem;
  color: #a5f3fc;
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .16em;
}
.company-ai-mini-step strong,
.company-ai-mini-step small {
  display: block;
}
.company-ai-mini-step strong {
  color: #fff;
  font-size: .82rem;
}
.company-ai-mini-step small {
  margin-top: .25rem;
  color: #94a3b8;
  font-size: .72rem;
}
@keyframes companyAiCardIn { from { transform: translateY(10px) scale(.985); opacity: 0; } to { transform: translateY(0) scale(1); opacity: 1; } }
@keyframes companyAiGlow { 0%,100% { box-shadow: 0 22px 60px rgba(8,47,73,.32); } 50% { box-shadow: 0 26px 78px rgba(34,211,238,.22), 0 0 50px rgba(168,85,247,.12); } }
@keyframes companyAiGridMove { from { background-position: 0 0; } to { background-position: 34px 34px; } }
@keyframes companyAiFloatA { 0%,100% { transform: translate(0,0); } 50% { transform: translate(-18px,22px); } }
@keyframes companyAiFloatB { 0%,100% { transform: translate(0,0); } 50% { transform: translate(24px,-16px); } }
@keyframes companyAiSweep { to { transform: translateX(120%); } }
@keyframes companyAiSpin { to { transform: rotate(360deg); } }
@keyframes companyAiPulse { 0%,100% { transform: scale(.86); opacity: .62; } 50% { transform: scale(1.12); opacity: 1; } }
@keyframes companyAiPercentPulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.035); } }
@keyframes companyAiStripes { to { background-position: 24px 0; } }
@keyframes companyAiBarShine { from { transform: translateX(-100%); } to { transform: translateX(100%); } }
@keyframes companyAiLive { 0% { box-shadow: 0 0 0 0 rgba(34,211,238,.55); } 100% { box-shadow: 0 0 0 10px rgba(34,211,238,0); } }
