.decalude-popup-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9900; /* le changelog (9999) doit rester au-dessus */
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  background: rgba(1, 2, 7, .9);
}

.decalude-popup-sheet {
  position: relative;
  width: 100%;
  max-height: calc(100% - 4px);
  overflow: hidden;
  padding: 13px;
  color: #f8f3df;
  border: 2px solid transparent;
  border-radius: 20px;
  background-image:
    radial-gradient(circle at 50% -20%, #3c2b12 0, #17140f 35%, #090b12 78%),
    linear-gradient(115deg, #725016, #f4ce69, #fff1ad, #9d681a, #edc35c, #725016);
  background-origin: border-box;
  background-clip: padding-box, border-box;
  background-size: auto, 240% 100%;
  box-shadow: 0 0 32px rgba(219, 165, 50, .2), inset 0 0 30px rgba(255, 210, 100, .04);
  animation: decalude-or-coule 7s ease-in-out infinite;
  font-family: Nunito, sans-serif;
}

.decalude-popup-sheet::before,
.decalude-popup-sheet::after {
  content: '';
  position: absolute;
  width: 42px;
  height: 42px;
  pointer-events: none;
}
.decalude-popup-sheet::before {
  top: 6px; left: 6px;
  border-top: 1px solid #eac45e;
  border-left: 1px solid #eac45e;
  border-radius: 12px 0 0;
}
.decalude-popup-sheet::after {
  right: 6px; bottom: 6px;
  border-right: 1px solid #eac45e;
  border-bottom: 1px solid #eac45e;
  border-radius: 0 0 12px;
}

.decalude-popup-close {
  position: absolute;
  z-index: 2;
  top: 8px;
  right: 9px;
  width: 29px;
  height: 29px;
  padding: 0;
  border: 1px solid #6f5426;
  border-radius: 50%;
  background: #17130d;
  color: #d7b65d;
  font: 900 20px/25px Nunito, sans-serif;
  cursor: pointer;
}

.decalude-popup-head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding-right: 24px;
}
.decalude-popup-head img { width: 45px; height: 45px; }
.decalude-popup-kicker { color: #a98b4a; font-size: 8px; font-weight: 1000; letter-spacing: .18em; }
.decalude-popup-title {
  color: #fff1ae;
  font-family: 'Bebas Neue', Nunito, sans-serif;
  font-size: 29px;
  font-weight: 1000;
  line-height: .9;
  letter-spacing: .06em;
  text-shadow: 0 0 12px rgba(255, 217, 111, .25);
}

.decalude-popup-ornament { display: flex; align-items: center; gap: 7px; margin: 7px 24px 6px; }
.decalude-popup-ornament span { height: 1px; flex: 1; background: linear-gradient(90deg, transparent, #ba8a2f); }
.decalude-popup-ornament span:last-child { transform: rotate(180deg); }
.decalude-popup-ornament i { width: 7px; height: 7px; border: 1px solid #f3cf6b; transform: rotate(45deg); }

.decalude-popup-edition { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.decalude-popup-edition strong { color: #e4c467; font-size: 9px; letter-spacing: .08em; }
.decalude-popup-edition span { color: #756c5a; font-size: 7px; }

.decalude-popup-presentation { margin-top: 6px; padding: 7px 9px; border-left: 2px solid #b88627; background: rgba(9, 10, 15, .58); }
.decalude-popup-presentation p { color: #b9b3a5; font-size: 8px; line-height: 1.35; }
.decalude-popup-presentation p + p { margin-top: 4px; }
.decalude-popup-presentation strong { color: #e9c75f; font-size: 8px; letter-spacing: .05em; }
.decalude-popup-presentation em { color: #8f8675; font-style: normal; }

.decalude-popup-progress {
  margin-top: 6px;
  padding: 8px 9px;
  border: 1px solid #73551d;
  border-radius: 10px;
  background: rgba(43, 31, 11, .55);
}
.decalude-popup-progress > div:first-child { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.decalude-popup-progress span { color: #a98b4a; font-size: 8px; font-weight: 1000; letter-spacing: .08em; }
.decalude-popup-progress strong { color: #ffe178; font-size: 11px; }
.decalude-popup-track { height: 5px; margin-top: 6px; overflow: hidden; border-radius: 99px; background: #292417; }
.decalude-popup-track i { display: block; width: 50%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #9c6817, #ffe478); box-shadow: 0 0 8px #d89e32; }
.decalude-popup-progress small { display: block; margin-top: 4px; color: #8d8168; font-size: 8px; text-align: right; }

.decalude-popup-crowd { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 6px; }
.decalude-popup-crowd > div { display: flex; align-items: center; gap: 6px; padding: 6px 8px; border-radius: 8px; background: #101117; }
.decalude-popup-crowd strong { color: #f0c75f; font-size: 17px; line-height: 1; }
.decalude-popup-crowd span { color: #8d8a82; font-size: 8px; line-height: 1.15; }

.decalude-popup-podiums { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 6px; }
.decalude-popup-podium { padding: 7px; border: 1px solid #4d3d20; border-radius: 9px; background: rgba(10, 11, 17, .76); }
.decalude-popup-podium-title { min-height: 20px; color: #c7a84e; font-size: 7px; font-weight: 1000; line-height: 1.15; letter-spacing: .05em; }
.decalude-popup-rank { display: grid; grid-template-columns: 15px minmax(0,1fr) auto; align-items: center; gap: 4px; margin-top: 4px; color: #d8d6ce; font-size: 8px; }
.decalude-popup-rank strong { color: #f4d573; font-size: 8px; }
.decalude-popup-place { width: 14px; height: 14px; display: grid; place-items: center; border: 1px solid #6b5425; border-radius: 50%; color: #dcb950; font-size: 7px; font-weight: 1000; }

.decalude-popup-countdown { display: flex; justify-content: space-between; align-items: center; margin-top: 7px; padding: 7px 9px; border-top: 1px solid #48391e; border-bottom: 1px solid #48391e; }
.decalude-popup-countdown span { color: #9b854c; font-size: 8px; font-weight: 1000; letter-spacing: .08em; }
.decalude-popup-countdown strong { color: #fff0a4; font-size: 12px; }

.decalude-popup-cta {
  width: 100%;
  margin-top: 8px;
  padding: 10px;
  border: 1px solid #fff0a4;
  border-radius: 9px;
  background: linear-gradient(100deg, #8c5a11, #f1c85d 45%, #fff0a1 55%, #b87917);
  background-size: 220% 100%;
  color: #171006;
  font: 1000 11px Nunito, sans-serif;
  letter-spacing: .06em;
  animation: decalude-or-coule 6s ease-in-out infinite;
  cursor: pointer;
}
.decalude-popup-option { display: block; margin-top: 7px; color: #635e54; font-size: 8px; text-align: center; cursor: pointer; }
.decalude-popup-option input { width: 10px; height: 10px; accent-color: #c79b3d; vertical-align: -1px; }


.decalude-result-overlay { z-index: 9901; }
.decalude-result-sheet { padding: 18px 16px; text-align: center; }
.decalude-result-crown {
  width: 76px; height: 76px; margin: 3px auto 4px; display: grid; place-items: center;
  color: #ffe36f; font-size: 66px; line-height: 1; text-shadow: 0 0 22px #e8a92799, 0 3px #6a3d00;
  animation: decalude-result-star 2.8s ease-in-out infinite;
}
.decalude-result-title { margin: 0; color: #fff2b5; font-size: 19px; line-height: 1.12; }
.decalude-result-score { margin: 9px auto; padding: 10px; border: 1px solid #8a6729; border-radius: 11px; background: #0b0c12cc; }
.decalude-result-score strong { display: block; color: #ffe178; font-size: 20px; }
.decalude-result-score span { display: block; margin-top: 2px; color: #9d9279; font-size: 9px; }
.decalude-result-copy { margin: 8px 7px; color: #c9c1ae; font-size: 10px; line-height: 1.45; }
.decalude-result-podium { margin-top: 9px; padding: 5px 9px; border: 1px solid #49391e; border-radius: 10px; background: #0a0b10b8; }
.decalude-result-row { display: grid; grid-template-columns: 18px 1fr auto; align-items: center; gap: 7px; min-height: 28px; border-bottom: 1px solid #2d281c; color: #ded8c7; font-size: 10px; text-align: left; }
.decalude-result-row:last-child { border-bottom: 0; }
.decalude-result-row strong { color: #e8c55f; font-size: 9px; }
.decalude-result-row.winner { margin: 2px -4px; padding: 4px; border: 1px solid #d8ae45; border-radius: 8px; background: linear-gradient(90deg, rgba(139, 93, 18, .34), rgba(255, 220, 112, .12)); }
.decalude-result-row.winner b { color: #fff1a8; font-size: 11px; }
.decalude-popup-download { display: block; margin-top: 7px; color: #e8c55f; font-size: 8px; text-decoration: underline; text-align: center; }
.decalude-result-actions { margin-top: 8px; display: grid; gap: 6px; }
.decalude-result-actions .decalude-popup-cta { margin-top: 0; }
.decalude-result-ack {
  width: 100%; min-height: 34px; border: 1px solid #61502d; border-radius: 9px;
  background: #12110e; color: #bca76f; font: 900 8px Nunito,sans-serif; letter-spacing: .04em; cursor: pointer;
}
@keyframes decalude-result-star { 50% { transform: scale(1.06) rotate(2deg); filter: brightness(1.15); } }

@media (prefers-reduced-motion: reduce) {
  .decalude-popup-sheet,
  .decalude-popup-cta { animation: none; }
}

.decalude-duplicate-notice-overlay { z-index: 10001; }
.decalude-duplicate-notice-sheet { max-width: 390px; text-align: center; }
.decalude-duplicate-notice-title { margin: 10px 0 8px; color: #ffe178; font-size: 22px; }
.decalude-duplicate-notice-copy { padding: 9px 11px; border: 1px solid #73551d; border-radius: 10px; background: rgba(43, 31, 11, .55); }
.decalude-duplicate-notice-copy p { margin: 0; color: #d5cebd; font-size: 11px; line-height: 1.45; }
.decalude-duplicate-notice-copy p + p { margin-top: 8px; }
.decalude-duplicate-notice-copy strong { color: #ffe178; }
.decalude-duplicate-notice-sheet .decalude-popup-cta { width: 100%; margin-top: 12px; }
