/* Animacje */
.animate-fadeIn {
  animation: fadeIn 0.5s ease-in;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.animate-slideIn {
  animation: slideIn 0.3s ease-out;
}

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

.typing-animation {
  overflow: hidden;
  white-space: nowrap;
  animation: typing 2s steps(40, end);
}

@keyframes typing {
  from { width: 0 }
  to { width: 100% }
}

.scanning .scanner-text p {
  animation: scannerText 0.5s ease-out forwards;
  opacity: 0;
  transform: translateY(10px);
}

.scanning .scanner-text p:nth-child(1) { animation-delay: 0.1s; }
.scanning .scanner-text p:nth-child(2) { animation-delay: 0.4s; }
.scanning .scanner-text p:nth-child(3) { animation-delay: 0.7s; }
.scanning .scanner-text p:nth-child(4) { animation-delay: 1s; }
.scanning .scanner-text p:nth-child(5) { animation-delay: 1.3s; }

@keyframes scannerText {
  to { 
    opacity: 1; 
    transform: translateY(0);
  }
}

/* Inne style */
body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  margin: 0;
  min-height: 100vh;
}

#app {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.flex-1 {
  flex: 1;
}

/* Responsywność */
@media (max-width: 768px) {
  .flex-col {
    flex-direction: column;
  }
}

/* Dodatkowe klasy pomocnicze jeśli nie używasz Tailwind */
.hidden {
  display: none;
}
