/* Global Styles for cybersecdb */

/* Typography */
.font-roboto { font-family: 'Roboto', Inter, ui-sans-serif; }
.font-stack-sans { font-family: 'Stack Sans Notch', 'Space Grotesk', Inter, ui-sans-serif; }
.font-momo { font-family: 'Momo Trust Display', 'Space Grotesk', Inter, ui-sans-serif; }

/* Font Weights */
.font-weight-400 { font-weight: 400; }
.font-weight-500 { font-weight: 500; }
.font-weight-600 { font-weight: 600; }

/* Letter Spacing */
.letter-spacing-tight { letter-spacing: -0.02em; }

/* Glassmorphism Effects */
.glass {
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.glass-enhanced {
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.glass-border {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%);
  padding: 1px;
}

/* Security terminal effect */
.terminal-cursor {
  animation: blink 1s step-end infinite;
}

/* Matrix rain effect for background */
.matrix-rain {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
  opacity: 0.02;
}

.matrix-column {
  position: absolute;
  top: -100%;
  width: 20px;
  height: 100%;
  animation: matrix-fall 10s linear infinite;
}

/* Utility Classes */
.invisible { visibility: hidden; }