.vc-word {
  padding: 8px 16px;
  background: white;
  border: 2px solid #3b82f6;
  border-radius: 6px;
  cursor: pointer;
  font-size: 1.1rem;
  transition: all 0.2s ease;
  user-select: none;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.vc-word:hover {
  background: #eff6ff;
  transform: translateY(-2px);
  box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.vc-word.vc-correct {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: #334155;
  cursor: default;
  transform: none;
  box-shadow: none;
  pointer-events: none;
}

.vc-word-error {
  animation: shake 0.4s cubic-bezier(.36,.07,.19,.97) both;
  border-color: #ef4444 !important;
  background: #fee2e2 !important;
}

@keyframes shake {
  10%, 90% { transform: translate3d(-1px, 0, 0); }
  20%, 80% { transform: translate3d(2px, 0, 0); }
  30%, 50%, 70% { transform: translate3d(-4px, 0, 0); }
  40%, 60% { transform: translate3d(4px, 0, 0); }
}

.controls {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-bottom: 25px;
  flex-wrap: wrap;
}

.controls button {
  background-color: var(--primary, #2563eb);
  color: white;
  border: none;
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 16px;
  cursor: pointer;
  transition: background-color 0.2s, transform 0.1s;
  font-family: inherit;
}

.controls button:hover {
  background-color: var(--primary-hover, #1d4ed8);
}

.controls button:active {
  transform: scale(0.95);
}
