/* Identité premium de Décalude. Les deux classes génériques sont également
   prévues pour les futurs plateaux et classements du jeu composé. */
@keyframes decalude-or-coule {
  0%, 100% { background-position: 0 0, 0% 50%; }
  50%      { background-position: 0 0, 100% 50%; }
}

@keyframes decalude-aura {
  0%, 100% { box-shadow: 0 0 0 rgba(255, 210, 88, 0); }
  50%      { box-shadow: 0 0 13px rgba(255, 210, 88, .16); }
}

.decalude-launch,
.decalude-tableau,
.decalude-score-grid,
.decalude-board {
  border: 1px solid transparent !important;
  background-image:
    linear-gradient(var(--decalude-surface, #0f1421), var(--decalude-surface, #0f1421)),
    linear-gradient(110deg, #60420d, #d39b2a, #fff0a8, #a76d13, #f5ce62, #60420d) !important;
  background-origin: border-box !important;
  background-clip: padding-box, border-box !important;
  background-size: auto, 240% 100% !important;
  animation: decalude-or-coule 7s ease-in-out infinite;
}

.decalude-launch {
  --decalude-surface: #211c12;
  display: flex !important;
  align-items: center;
  justify-content: center;
  animation: decalude-or-coule 6s ease-in-out infinite, decalude-aura 3.5s ease-in-out infinite;
}

.decalude-launch-icon {
  width: 30px;
  height: 30px;
  margin-right: 10px;
  flex: 0 0 auto;
}

.decalude-tableau { --decalude-surface: #0f1421; }
.decalude-score-grid { --decalude-surface: #10131d; }
.decalude-board { --decalude-surface: #0a0c13; }

@media (prefers-reduced-motion: reduce) {
  .decalude-launch,
  .decalude-tableau,
  .decalude-score-grid,
  .decalude-board { animation: none; }
}
