.brutalGrid {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
}

/* Color variants */
.black {
  color: var(--brutal-black);
}

.white {
  color: var(--brutal-white);
}

.accent {
  color: var(--brutal-accent, #FF0066);
}

.red {
  color: #EF4444;
}

.blue {
  color: #3B82F6;
}

.yellow {
  color: #FACC15;
}

/* Animation */
.animated .gridLines {
  animation: gridShift 20s linear infinite;
}

.animated .verticalLine {
  animation: slideInFromLeft 0.6s ease-out both, pulseLine 2s ease-in-out infinite;
}

.animated .horizontalLine {
  animation: slideInFromTop 0.6s ease-out both, pulseLine 2s ease-in-out infinite;
}

@keyframes slideInFromLeft {
  from {
    transform: translateX(-100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slideInFromTop {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes gridShift {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-40px, -40px);
  }
}

@keyframes pulseLine {
  0%, 100% {
    opacity: 1;
    stroke-width: 3;
  }
  50% {
    opacity: 0.5;
    stroke-width: 5;
  }
}

/* Variant styles */
.solid {
  /* Default solid lines */
}

.dashed {
  /* Uses SVG pattern for dashed lines */
}

.double {
  /* Creates double lines with offset */
}

.offset {
  /* Creates brick-like offset pattern */
}