/* Chrome #newpop.pop-v2 + forgot-wrap (home / premium / hors player)
 * Iso dl-premium-popup.css / ecoach_n.css — catalogue #pop-forgot-password
 */
#newpop {
  --greenlight: #81A825;
  --newblue: #29a9a4;
  z-index: 1000;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

#newpop.enabled {
  z-index: 9999999;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#newpop .popuppp {
  max-width: 500px;
  width: 95%;
  position: relative;
  background: #fff;
  padding: 20px;
  border-radius: 15px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  text-align: center;
  box-sizing: border-box;
}

#newpop .iconpp {
  color: white;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  width: 70px;
  height: 70px;
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 auto;
  background-color: var(--greenlight);
}

#newpop .iconpp.ok,
#newpop .iconpp.green {
  background-color: var(--greenlight);
}

#newpop .iconpp .snok {
  display: none;
}

#newpop .iconpp .sok {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  line-height: 0;
}

#newpop .iconpp svg,
#newpop .iconpp svg.icon {
  display: block;
  width: 40px;
  height: 40px;
  max-width: 56%;
  max-height: 56%;
  margin: 0;
  padding: 0;
  fill: currentColor;
}

#newpop .notdisplay {
  display: none !important;
}

#newpop .popup-content {
  position: relative;
  z-index: 1;
}

/* Croix pastille blanche + X sombre (iso pop-v2 / dl-premium-popup)
 * max-width/height:none — neutre le reset site `svg{max-width:100%;height:auto}`
 * (sinon padding 13px + height:auto → glyphe ~1–2px sur pages download). */
.newpop .closeactp,
.newpop .closeact,
#newpop .closeactp,
#newpop .closeact {
  float: none;
  position: absolute;
  top: 16px;
  right: 16px;
  width: 40px;
  height: 40px;
  max-width: none;
  max-height: none;
  padding: 13px;
  box-sizing: border-box;
  border-radius: 50%;
  background: #fff !important;
  box-shadow: 0 2px 10px rgba(26, 43, 61, 0.16) !important;
  border: none !important;
  fill: #333c46;
  color: #333c46;
  opacity: 1;
  z-index: 5;
  cursor: pointer;
  overflow: visible;
  display: block;
}

.newpop .buttons button,
#newpop .buttons button {
  padding: 10px;
  border: none;
  color: white;
  border-radius: 5px;
  font-size: 18px;
  cursor: pointer;
  width: auto;
  min-width: 200px;
  margin: 0 auto 20px;
  display: block;
}

.newpop .ok-button,
#newpop .ok-button {
  background-color: #8bc34a;
}

.newpop .ok-button:hover,
#newpop .ok-button:hover {
  background-color: #7cb342;
}

.newpop .no-button,
#newpop .no-button {
  display: none;
}

/* --- pop-v2 (iso player / catalogue) --- */
#newpop.pop-v2 {
  --pop-v2-green: #81a825;
  --pop-v2-green-dark: #6f921f;
  --pop-v2-green-soft: #f2f4ec;
  --pop-v2-title: #1a2b2b;
  --pop-v2-body: #5a6568;
  padding-top: 90px;
  box-sizing: border-box;
}

#newpop.pop-v2 .popuppp {
  max-width: 530px;
  width: 92%;
  padding: 48px 28px 20px;
  border-radius: 24px;
  box-shadow: 0 16px 40px rgba(26, 43, 43, 0.16);
  overflow: visible;
  text-align: center;
  background: #fff;
  position: relative;
}

#newpop.pop-v2 .content {
  margin-top: 8px;
}

#newpop.pop-v2 .pop-v2-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}

#newpop.pop-v2 .popup-content span.htitle {
  position: relative;
  display: inline-block;
  color: var(--pop-v2-title);
  font-size: 26px;
  font-weight: 800;
  line-height: 1.25;
  padding-right: 18px;
  text-align: center;
  hyphens: none;
  -webkit-hyphens: none;
}

#newpop.pop-v2 .pop-v2-star {
  position: absolute;
  top: -2px;
  right: 0;
  width: 14px;
  height: 14px;
  background: var(--pop-v2-green);
  clip-path: polygon(
    50% 0%,
    62% 38%,
    100% 50%,
    62% 62%,
    50% 100%,
    38% 62%,
    0% 50%,
    38% 38%
  );
}

#newpop.pop-v2 .pop-v2-body {
  position: relative;
  color: var(--pop-v2-body);
  font-size: 15px;
  line-height: 1.45;
  margin: 10px 4px;
  max-width: 30em;
  padding-bottom: 7px;
  width: 100%;
  box-sizing: border-box;
  text-align: initial;
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

#newpop.pop-v2 .pop-v2-body p {
  text-align: initial;
}

#newpop.pop-v2 .buttons:not(.choices) {
  margin-top: 18px;
  margin-bottom: 0;
  width: 100%;
  display: flex;
  justify-content: center;
}

#newpop.pop-v2 .buttons:not(.choices) .ok-button {
  background: var(--pop-v2-green) !important;
  color: #fff !important;
  border: 2px solid var(--pop-v2-green);
  border-radius: 15px;
  padding: 12px 18px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.25;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: 0 6px 14px rgba(129, 168, 37, 0.28);
  width: 100%;
  max-width: 320px;
  box-sizing: border-box;
  margin-bottom: 0;
  min-width: 0;
}

#newpop.pop-v2 .buttons:not(.choices) .ok-button:hover {
  background: var(--pop-v2-green-dark) !important;
}

#newpop.pop-v2 .iconpp {
  width: 80px;
  height: 80px;
  top: -90px;
  left: 50%;
  transform: translateX(-50%);
  border: 3.5px solid #fff;
  background: radial-gradient(
    circle at 50% 32%,
    #c5e57a 0%,
    #8bc34a 45%,
    #6f9a28 100%
  );
  box-shadow: 0 8px 20px rgba(111, 154, 40, 0.28);
  color: #fff;
  z-index: 4;
}

#newpop.pop-v2 .iconpp.ok,
#newpop.pop-v2 .iconpp.green {
  background: radial-gradient(
    circle at 50% 32%,
    #c5e57a 0%,
    #8bc34a 45%,
    #6f9a28 100%
  );
}

#newpop.pop-v2 .iconpp::before,
#newpop.pop-v2 .iconpp::after {
  content: none;
  display: none;
}

#newpop.pop-v2 .pop-v2-spark {
  position: absolute;
  background: #b5d86a;
  clip-path: polygon(
    50% 0%,
    62% 38%,
    100% 50%,
    62% 62%,
    50% 100%,
    38% 62%,
    0% 50%,
    38% 38%
  );
  pointer-events: none;
  z-index: 0;
}

#newpop.pop-v2 .pop-v2-spark--1 {
  width: 14px;
  height: 14px;
  top: 2%;
  left: -28px;
  opacity: 0.95;
}

#newpop.pop-v2 .pop-v2-spark--2 {
  width: 9px;
  height: 9px;
  top: 62%;
  left: -14px;
  opacity: 0.75;
}

#newpop.pop-v2 .pop-v2-spark--3 {
  width: 11px;
  height: 11px;
  top: -8px;
  right: -20px;
  opacity: 0.85;
}

#newpop.pop-v2 .pop-v2-spark--4 {
  width: 8px;
  height: 8px;
  bottom: 10%;
  right: -30px;
  opacity: 0.7;
}

#newpop.pop-v2 .pop-v2-spark--5 {
  width: 10px;
  height: 10px;
  top: -18px;
  left: 28%;
  opacity: 0.8;
}

#newpop.pop-v2 .iconpp svg,
#newpop.pop-v2 .iconpp svg.icon {
  width: 80px;
  height: 80px;
  max-width: 60%;
  max-height: 60%;
  fill: #fff;
  margin: 0;
  display: block;
}

#newpop.pop-v2 .pop-v2-footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: left bottom;
  pointer-events: none;
  z-index: 0;
  display: block;
  border-radius: 0 0 24px 24px;
}

@media (max-width: 480px) {
  #newpop.pop-v2 {
    padding-top: 72px;
  }

  #newpop.pop-v2 .popuppp {
    padding: 44px 18px 48px;
    border-radius: 20px;
    max-width: 100%;
  }

  #newpop.pop-v2 .iconpp {
    width: 72px;
    height: 72px;
    top: -90px;
  }

  #newpop.pop-v2 .pop-v2-footer {
    border-radius: 0 0 20px 20px;
  }

  #newpop.pop-v2 .popup-content span.htitle {
    font-size: 22px;
  }

  #newpop.pop-v2 .pop-v2-body {
    max-width: none;
    margin: 8px 2px;
  }
}

/* --- forgot form --- */
#newpop .forgot-wrap {
  text-align: left;
  padding: 10px 5px 0 5px;
}

#newpop .forgot-text {
  font-size: 14px;
  line-height: 1.5;
  color: #555;
  margin-bottom: 18px;
}

#newpop .forgot-field {
  position: relative;
  margin-bottom: 8px;
}

#newpop #forgot-email {
  width: 100%;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid #ddd;
  font-size: 14px;
  outline: none;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

#newpop #forgot-email:focus {
  border-color: #4caf50;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15);
}

#newpop #forgot-email::placeholder {
  color: #aaa;
}

#newpop .forgot-help {
  display: block;
  font-size: 12px;
  color: #888;
  margin-top: 6px;
}

#newpop .forgot-status {
  margin-top: 12px;
  font-size: 13px;
  min-height: 18px;
}

#newpop .forgot-status.error {
  color: #e53935;
}

#newpop .forgot-status.success {
  color: #43a047;
}
