/* ===========================================================================
   EquityLens AI — Fintech dashboard styling
   =========================================================================== */

:root {
  --navy-950: #0a0f1c;
  --navy-900: #0d1424;
  --navy-850: #111a2e;
  --navy-800: #16213e;
  --navy-700: #1e2c4f;
  --pos: #22c55e;
  --neg: #ef4444;
}

html {
  scroll-behavior: smooth;
}

body {
  -webkit-font-smoothing: antialiased;
}

/* Subtle grid background for hero */
.bg-grid {
  background-image:
    linear-gradient(to right, rgba(148, 163, 184, 0.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(148, 163, 184, 0.05) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(circle at 50% 0%, black, transparent 70%);
  -webkit-mask-image: radial-gradient(circle at 50% 0%, black, transparent 70%);
}

/* Card hover lift */
.card-hover {
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.card-hover:hover {
  transform: translateY(-2px);
  border-color: rgba(59, 130, 246, 0.45);
  box-shadow: 0 12px 30px -12px rgba(8, 15, 35, 0.8);
}

/* Number colors */
.text-pos { color: var(--pos); }
.text-neg { color: var(--neg); }

/* Progress bar animation */
.score-fill {
  transition: width 0.9s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Scrollbar */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--navy-950); }
::-webkit-scrollbar-thumb {
  background: var(--navy-700);
  border-radius: 6px;
  border: 2px solid var(--navy-950);
}
::-webkit-scrollbar-thumb:hover { background: #2a3a63; }

/* Rating badge variants */
.badge-buy { background: rgba(34, 197, 94, 0.12); color: #4ade80; border: 1px solid rgba(34,197,94,0.3); }
.badge-hold { background: rgba(234, 179, 8, 0.12); color: #facc15; border: 1px solid rgba(234,179,8,0.3); }
.badge-sell { background: rgba(239, 68, 68, 0.12); color: #f87171; border: 1px solid rgba(239,68,68,0.3); }

/* Fade-in for report sections */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}
.animate-fade-up { animation: fadeUp 0.5s ease both; }

/* Table */
.research-table th { font-weight: 600; }
.research-table tbody tr:hover { background: rgba(30, 44, 79, 0.4); }
