:root {
  --site-bg: #050505;
}
html, body {
  background-color: var(--site-bg);
  color: #e5e5e5;
}

/* Scanline Effect */
.scanlines::before {
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.1) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.03), rgba(0, 255, 0, 0.01), rgba(0, 0, 255, 0.03));
  z-index: 999;
  background-size: 100% 2px, 3px 100%;
  pointer-events: none;
}

/* Tactical Scrollbar */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-track {
  background: var(--site-bg); 
}
::-webkit-scrollbar-thumb {
  background: #333; 
  border: 1px solid #1A1A1A;
}
::-webkit-scrollbar-thumb:hover {
  background: #FFB000; 
}

/* Clip Path for Tactical Buttons/Cards */
.clip-corner-br {
  clip-path: polygon(100% 0, 100% calc(100% - 15px), calc(100% - 15px) 100%, 0 100%, 0 0);
}
.clip-corner-tl {
  clip-path: polygon(15px 0, 100% 0, 100% 100%, 0 100%, 0 15px);
}
.clip-corner-both {
  clip-path: polygon(
    20px 0, 100% 0, 
    100% calc(100% - 20px), calc(100% - 20px) 100%, 
    0 100%, 0 20px
  );
}

/* Animations */
@keyframes blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}
.animate-blink {
  animation: blink 1s infinite;
}

@keyframes scan {
  0% { transform: translateY(-100%); }
  100% { transform: translateY(100%); }
}
.scan-beam {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, transparent, rgba(0, 212, 255, 0.1), transparent);
  animation: scan 4s linear infinite;
  pointer-events: none;
}
