.letter-options-container {
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
  min-height: 82px;
}
.letter-option-title {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 2px;
  color: #fff;
}
.letter-options-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.letter-options-content.shuffling .filled-item {
  animation: shuffle 0.1s ease-in-out;
}

@keyframes shuffle {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}

.filled-item.disabled {
  pointer-events: none;
  opacity: 0.7;
  cursor: not-allowed;
}

.letter-option-title.loading {
  animation: pulse 1s ease-in-out infinite;
}

@keyframes pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
}

@media (max-width: 768px) {
  .letter-option-title {
    font-size: 11px;
    line-height: 1.2;
  }

  .letter-options-container {
    gap: 8px;
    min-height: 60px;
  }

  .letter-options-content {
    gap: 10px;
  }
}

@media (max-width: 480px) {
  .letter-option-title {
    font-size: 10px;
    letter-spacing: 1px;
    line-height: 1.1;
  }

  .letter-options-container {
    gap: 6px;
    min-height: 52px;
  }

  .letter-options-content {
    gap: 7px;
  }
}

@media (max-width: 360px) {
  .letter-option-title {
    font-size: 9px;
    letter-spacing: 0.8px;
    line-height: 1;
  }

  .letter-options-container {
    gap: 5px;
    min-height: 48px;
  }

  .letter-options-content {
    gap: 5px;
  }
}

/* ========================================
   TEMA MODERNO - OPÇÕES DE LETRAS
   ======================================== */

.theme-modern .letter-options-container {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
  padding: 20px;
  border-radius: 20px;
  border: 2px solid rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
}

.theme-modern .letter-option-title {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 1px;
  color: var(--cor-primaria);
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  text-transform: uppercase;
}

.theme-modern .letter-option-title.loading {
  animation: modernPulse 1.2s ease-in-out infinite;
}

@keyframes modernPulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
    filter: drop-shadow(0 0 8px var(--cor-primaria));
  }
  50% {
    opacity: 0.7;
    transform: scale(0.98);
    filter: drop-shadow(0 0 4px var(--cor-primaria));
  }
}

.theme-modern .letter-options-content {
  gap: 20px;
}

.theme-modern .letter-options-content.shuffling .filled-item {
  animation: modernShuffle 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

@keyframes modernShuffle {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  25% {
    transform: translateY(-10px) rotate(-5deg);
  }
  50% {
    transform: translateY(-15px) rotate(0deg) scale(1.1);
  }
  75% {
    transform: translateY(-10px) rotate(5deg);
  }
}

.theme-modern .filled-item.disabled {
  opacity: 0.4;
  filter: grayscale(50%);
  cursor: not-allowed;
  transform: scale(0.95);
}

/* Adiciona efeito de "brilho" nas letras disponíveis */
.theme-modern .letter-options-content .filled-item:not(.disabled) {
  animation: letterFloat 3s ease-in-out infinite;
  animation-delay: calc(var(--letter-index, 0) * 0.2s);
}

@keyframes letterFloat {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-5px);
  }
}

/* Efeito de clique mais impactante */
.theme-modern .filled-item.to-select:active {
  animation: letterClick 0.3s ease-out;
}

@keyframes letterClick {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.85);
  }
  100% {
    transform: scale(1);
  }
}

/* Mobile */
@media (max-width: 768px) {
  .theme-modern .letter-options-container {
    padding: 16px;
    border-radius: 16px;
  }
  
  .theme-modern .letter-option-title {
    font-size: 14px;
  }
  
  .theme-modern .letter-options-content {
    gap: 14px;
  }
}

@media (max-width: 480px) {
  .theme-modern .letter-options-container {
    padding: 12px;
    border-radius: 12px;
  }
  
  .theme-modern .letter-option-title {
    font-size: 12px;
  }
  
  .theme-modern .letter-options-content {
    gap: 10px;
  }
}

@media (max-width: 360px) {
  .theme-modern .letter-options-container {
    padding: 10px;
    border-radius: 10px;
  }
  
  .theme-modern .letter-option-title {
    font-size: 11px;
  }
  
  .theme-modern .letter-options-content {
    gap: 8px;
  }
}
