body {
  margin: 0;
  min-height: 100vh;
  background-color: #1C1917;
  font-family: 'Inter', sans-serif;
}

/* Error pages */
.error-page {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  text-align: center;
}
.error-page h1 {
  color: #D97706;
  font-size: 6rem;
  margin: 0;
  font-family: 'Cinzel', serif;
}
.error-page p {
  color: #A8A29E;
  margin-top: 1rem;
}
.error-page a {
  color: #D97706;
  text-decoration: underline;
}

/* Legal pages */
body h2 {
  font-family: 'Cinzel', serif;
}

/* Game styles */
.guess-row {
  animation: slideIn 0.3s ease-out;
}
@keyframes slideIn {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes celebrate {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.02); }
}
.celebrate {
  animation: celebrate 0.5s ease-in-out 3;
}
.autocomplete-item:hover, .autocomplete-item.active {
  background-color: #44403C;
}
.category-cell {
  transition: all 0.2s ease;
}
@keyframes shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-5px); }
  75% { transform: translateX(5px); }
}
@media (prefers-reduced-motion: reduce) {
  .guess-row, .celebrate { animation: none; }
  .category-cell { transition: none; }
}
