/* ============================================================
   ANIMATIONS & KEYFRAMES
   ============================================================ */

@keyframes fade-in {
  from { opacity: 0; transform: translateY(2px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes glow-pulse {
  from { text-shadow: 0 0 6px color-mix(in srgb, var(--c-accent) 50%, transparent); }
  to   { text-shadow: 0 0 14px color-mix(in srgb, var(--c-accent) 85%, transparent); }
}

@keyframes blink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

.terminal-body .boot { animation: fade-in 180ms ease-out; }

/* Subtle scanline overlay for extra terminal feel */
.terminal-body::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    to bottom,
    transparent 0px,
    transparent 2px,
    rgba(255, 255, 255, 0.015) 2px,
    rgba(255, 255, 255, 0.015) 3px
  );
  pointer-events: none;
  z-index: 2;
}

.terminal-body {
  position: relative;
}

@keyframes slide-up-fade {
  from { 
    opacity: 0; 
    transform: translateY(12px); 
  }
  to { 
    opacity: 1; 
    transform: translateY(0); 
  }
}