/* Custom Styling & Simulation Animations */

/* Custom Hazard stripes for industrial vibe */
.hazard-strip {
  background: repeating-linear-gradient(
    -45deg,
    #f59e0b,
    #f59e0b 12px,
    #1e293b 12px,
    #1e293b 24px
  );
}

/* Conveyor belt animated strip */
.conveyor-stripes {
  background: repeating-linear-gradient(
    90deg,
    #334155,
    #334155 18px,
    #1e293b 18px,
    #1e293b 36px
  );
  animation: beltMove 1.5s linear infinite;
  animation-play-state: paused;
}

.conveyor-active .conveyor-stripes {
  animation-play-state: running;
}

@keyframes beltMove {
  0% { background-position: 0 0; }
  100% { background-position: -36px 0; }
}

/* Station working vibration & pulse */
.station-working {
  border-color: #f59e0b !important;
  box-shadow: 0 0 20px rgba(245, 158, 11, 0.25) !important;
}

.station-working .machine-icon {
  animation: machineBeat 0.4s ease-in-out infinite alternate;
}

.station-working .work-indicator {
  background-color: #10b981 !important;
  box-shadow: 0 0 8px #10b981;
}

@keyframes machineBeat {
  0% { transform: scale(1) translateY(0); }
  100% { transform: scale(1.15) translateY(-3px); }
}

/* Flying shirt items on the conveyor */
.moving-garment-item {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: left 0.8s cubic-bezier(0.25, 1, 0.5, 1);
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 25;
}

/* Modal slide up */
@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(20px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.animate-slideUp {
  animation: slideUp 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Floating cash toast */
@keyframes floatUpFade {
  0% {
    opacity: 0;
    transform: translateY(10px) scale(0.9);
  }
  20% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  80% {
    opacity: 1;
    transform: translateY(-12px) scale(1);
  }
  100% {
    opacity: 0;
    transform: translateY(-24px) scale(0.9);
  }
}

.toast-anim {
  animation: floatUpFade 2.4s ease-out forwards;
}

/* Custom scrollbars */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: #0f172a;
}
::-webkit-scrollbar-thumb {
  background: #334155;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #475569;
}