/* 
  @dcronin05/cronin-brand
  Core Design System for cronin.one 
*/

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

:root {
  /* Brand Colors */
  --cb-bg: #0d1117;
  --cb-surface: rgba(255, 255, 255, 0.04);
  --cb-surface-hover: rgba(56, 189, 248, 0.07);
  --cb-border: rgba(255, 255, 255, 0.08);
  --cb-border-hover: rgba(56, 189, 248, 0.35);
  
  --cb-accent: #2dd4bf;
  --cb-accent-gradient-start: #99f6e4;
  --cb-accent-gradient-end: #0d9488;
  --cb-accent2: #94a3b8;
  
  /* Text */
  --cb-text: #e2e8f0;
  --cb-text-muted: #64748b;

  /* Typography */
  --cb-font-sans: 'Inter', system-ui, -apple-system, sans-serif;
  --cb-font-mono: 'JetBrains Mono', monospace;
}

/* Base resets for consumers (optional but recommended) */
.cb-body-defaults {
  background: var(--cb-bg);
  color: var(--cb-text);
  font-family: var(--cb-font-sans);
}

/* Utilities */

/* Gradient Text (Hero headers) */
.cb-gradient-text {
  background: linear-gradient(135deg, var(--cb-text) 30%, var(--cb-accent) 70%, var(--cb-accent2) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Glassmorphism Cards */
.cb-glass-card {
  background: var(--cb-surface);
  border: 1px solid var(--cb-border);
  border-radius: 10px;
  backdrop-filter: blur(16px);
  color: var(--cb-text);
  transition: border-color 0.2s, background 0.2s, transform 0.2s, box-shadow 0.2s;
}

.cb-glass-card:hover {
  border-color: var(--cb-border-hover);
  background: var(--cb-surface-hover);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(45, 212, 191, 0.08);
}

/* Warning/Admin Cards */
.cb-glass-card-alert {
  border-color: rgba(239, 68, 68, 0.2);
  background: rgba(239, 68, 68, 0.05);
}

.cb-glass-card-alert:hover {
  border-color: rgba(239, 68, 68, 0.4);
  background: rgba(239, 68, 68, 0.1);
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.08);
}

/* Animations */
@keyframes cb-fade-up {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: none; }
}

@keyframes cb-fade-down {
  from { opacity: 0; transform: translateY(-12px); }
  to { opacity: 1; transform: none; }
}

@keyframes cb-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}

.cb-animate-fade-up { animation: cb-fade-up 0.7s ease both; }
.cb-animate-fade-down { animation: cb-fade-down 0.6s ease both; }
.cb-animate-pulse { animation: cb-pulse 2s ease-in-out infinite; }

/* Global Backgrounds */
.cb-global-bg-overlay {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(ellipse at 60% 40%, rgba(45,212,191,0.06) 0%, transparent 60%),
              radial-gradient(ellipse at 20% 80%, rgba(148,163,184,0.04) 0%, transparent 50%),
              linear-gradient(180deg, rgba(13,17,23,0.3) 0%, rgba(13,17,23,0.85) 100%);
}
