/* utilities.css */

/* Z-Index Debug Overlays */
.zindex-debug-line {
  animation: zindex-pulse 2s ease-in-out infinite;
}

.zindex-debug-label {
  animation: zindex-fade 2s ease-in-out infinite;
}

.zindex-debug-marker {
  animation: zindex-marker-pulse 1.5s ease-in-out infinite;
}

.zindex-debug-info {
  backdrop-filter: blur(4px);
}

@keyframes zindex-pulse {
  0%, 100% {
    opacity: 0.8;
    box-shadow: 0 0 4px rgba(255, 200, 0, 0.6);
  }
  50% {
    opacity: 1;
    box-shadow: 0 0 8px rgba(255, 200, 0, 0.9);
  }
}

@keyframes zindex-fade {
  0%, 100% {
    opacity: 0.9;
  }
  50% {
    opacity: 1;
  }
}

@keyframes zindex-marker-pulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 8px rgba(255, 200, 0, 0.8), inset 0 0 2px rgba(255, 255, 255, 0.5);
  }
  50% {
    transform: scale(1.3);
    box-shadow: 0 0 12px rgba(255, 200, 0, 1), inset 0 0 3px rgba(255, 255, 255, 0.8);
  }
}

/* Flexbox Utilities */
.flex {
    display: flex;
}

.flex-row {
    flex-direction: row;
}

.flex-column {
    flex-direction: column;
}

.flex-wrap {
    flex-wrap: wrap;
}

.flex-nowrap {
    flex-wrap: nowrap;
}

.justify-start {
    justify-content: flex-start;
}

.justify-center {
    justify-content: center;
}

.justify-end {
    justify-content: flex-end;
}

.align-start {
    align-items: flex-start;
}

.align-center {
    align-items: center;
}

.align-end {
    align-items: flex-end;
}

.nav-item > a {
    color: #ce8235!important;
}