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

:root {
  --font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
}

body {
  font-family: var(--font-sans);
  background-color: #f8fafc;
  color: #1e293b;
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
}

code, pre, .font-mono {
  font-family: var(--font-mono);
}

/* White enterprise cards */
.glass-panel {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05), 0 1px 2px -1px rgba(0, 0, 0, 0.05);
}

.glass-panel-hover {
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.glass-panel-hover:hover {
  transform: translateY(-2px);
  border-color: #c7d2fe;
  box-shadow: 0 10px 25px -5px rgba(99, 102, 241, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.04);
}

/* Gradient accents */
.gradient-text {
  background: linear-gradient(135deg, #2563eb 0%, #4f46e5 50%, #9333ea 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.gradient-border-emerald {
  border-left: 4px solid #10b981;
}

.gradient-border-cyan {
  border-left: 4px solid #06b6d4;
}

.gradient-border-violet {
  border-left: 4px solid #8b5cf6;
}

/* Scrollbar styles */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Pulse animation */
@keyframes soft-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.6; }
}

.animate-soft-pulse {
  animation: soft-pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* Modal backdrop for light theme */
.modal-backdrop {
  background: rgba(15, 23, 42, 0.55);
  backdrop-filter: blur(6px);
}
