@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

:root {
  --color-obsidian-950: #0f172a;
  --color-obsidian-900: #1e293b;
  --color-obsidian-800: #334155;
  --color-emerald-neon: #10B981;
  --color-violet-neon: #8B5CF6;
}

body {
  font-family: 'Inter', sans-serif;
  background-color: var(--color-obsidian-950);
  color: #f8fafc;
  overflow-x: hidden;
}

/* Custom premium gradient background */
.bg-obsidian-gradient {
  background: radial-gradient(circle at 50% -20%, #1e1b4b 0%, #0f172a 60%);
}

/* Hairline border for fintech style cards */
.border-hairline {
  border-width: 1px;
  border-color: rgba(255, 255, 255, 0.08);
}

/* Hover glow effect for cards */
.hover-glow {
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.hover-glow:hover {
  border-color: rgba(139, 92, 246, 0.3);
  box-shadow: 0 0 25px -5px rgba(139, 92, 246, 0.15);
  transform: translateY(-2px);
}

/* Neon button transitions */
.btn-emerald-glow {
  background-color: var(--color-emerald-neon);
  box-shadow: 0 4px 14px 0 rgba(16, 185, 129, 0.3);
  transition: all 0.2s ease-in-out;
}

.btn-emerald-glow:hover {
  background-color: #059669;
  box-shadow: 0 6px 20px 0 rgba(16, 185, 129, 0.5);
  transform: translateY(-1px);
}

.btn-violet-glow {
  background-color: var(--color-violet-neon);
  box-shadow: 0 4px 14px 0 rgba(139, 92, 246, 0.3);
  transition: all 0.2s ease-in-out;
}

.btn-violet-glow:hover {
  background-color: #7C3AED;
  box-shadow: 0 6px 20px 0 rgba(139, 92, 246, 0.5);
  transform: translateY(-1px);
}

/* Glassmorphism utility */
.glass-panel {
  background: rgba(12, 15, 23, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* Shimmer animation for loading/premium states */
@keyframes shimmer {
  100% {
    transform: translateX(100%);
  }
}

.shimmer-wrapper {
  position: relative;
  overflow: hidden;
}

.shimmer-wrapper::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: translateX(-100%);
  background-image: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.05) 20%,
    rgba(255, 255, 255, 0.1) 60%,
    rgba(255, 255, 255, 0) 100%
  );
  animation: shimmer 2.5s infinite;
  content: '';
}

/* Hide scrollbar for clean carousel if needed */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
