
/* EARliest Blind Player V1 */
.player-v1{align-items:stretch}
.player-v1 .blind-cover{position:relative;overflow:hidden;background:radial-gradient(circle at 40% 35%,rgba(163,60,255,.24),transparent 48%),#0b0d18}
.player-v1 .blind-cover>img{width:74px;height:86px;opacity:.92;filter:drop-shadow(0 0 18px rgba(225,54,159,.22))}
.player-v1 .blind-cover>button{position:absolute;inset:auto 50% 18px auto;transform:translateX(50%);z-index:2}
.player-v1 .blind-cover.revealed{background-size:cover;background-position:center}
.player-v1 .blind-cover.revealed>img{display:none}
.player-reward{display:inline-block;margin-bottom:5px;padding:3px 8px;border:1px solid #343746;border-radius:999px;color:#aaa;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.player-reward.reward{border-color:rgba(199,71,255,.45);color:#cf65f6}
.player-reward.reward-paid{border-color:rgba(79,190,118,.55);color:#68d391}
.player-reward.open{color:#92939d}
.player-reward.limit-reached{border-color:#454955;color:#b8bac3}
.player-reward small{display:block;margin-top:3px;font-size:9px;line-height:1.35;letter-spacing:.035em;text-transform:none;color:inherit}
.wave-wrap{position:relative;height:58px;margin-top:12px;cursor:pointer}
.real-wave{display:block;width:100%;height:58px}
.player-seek{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}
.player-times{display:flex;justify-content:space-between;margin-top:2px;color:#9b9aa4;font-size:11px;font-variant-numeric:tabular-nums}
.rating-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-top:9px}
.rating-buttons button{min-width:0;padding:7px 3px;border:1px solid #343746;border-radius:6px;background:#090b13;color:#d8d6dc;cursor:pointer}
.rating-buttons button:hover{border-color:#d744b4;background:#0d0d17}
.rating-buttons span{display:block;font-size:19px}.rating-buttons b{display:block;margin-top:3px;font-size:9px;line-height:1.05;font-weight:650}
.reveal-note h3{margin-bottom:3px}.player-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.player-links a{padding:5px 9px;border:1px solid #353746;border-radius:999px;color:#d8d5dd;text-decoration:none;font-size:11px}.player-links a:hover{border-color:#e13da8}
#player-skip{cursor:pointer}
@media(max-width:900px){.rating-buttons{grid-template-columns:repeat(5,minmax(70px,1fr));overflow-x:auto}.player-v1 .feedback{min-height:130px}}

/* Blind identity is intentionally styled as placeholder content. */
#blind-player:not(.is-revealed) #player-title,
#blind-player:not(.is-revealed) #player-act{
  font-style:italic;
}
#blind-player.is-revealed #player-title,
#blind-player.is-revealed #player-act{
  font-style:normal;
}

/* V3.2 — cover is always a true square. */
.player-v1 .cover{
  aspect-ratio:1 / 1;
  width:auto;
  height:auto;
  align-self:center;
  flex:0 0 auto;
}
.player-v1 .blind-cover.revealed{
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

/* Platform links keep EARliest styling; only the familiar icon identifies the service. */
.player-links a{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.player-links .platform-icon{
  width:15px;
  height:15px;
  flex:0 0 15px;
  display:block;
}


/* Reveal-only transparency badges. */
.player-transparency-badges{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:5px 0 2px;
}
.player-transparency-badges[hidden]{display:none!important}
.player-transparency-badges span{
  padding:4px 8px;
  border:1px solid #393b48;
  border-radius:999px;
  background:#0b0d14;
  color:#aaa8b2;
  font-size:10px;
  letter-spacing:.03em;
}

.player-reward small{display:block;margin-top:2px;font-size:9px;font-weight:500;opacity:.78}


/* =========================================================
   PLAYER V4.2 — MOBILE POLISH
   ========================================================= */

.player-v1 .track{
  min-width:0;
}

#player-title,
#player-act{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
}

.wave-wrap,
.real-wave,
.player-seek{
  max-width:100%;
}

@media(max-width:700px){
  .player-v1{
    overflow:hidden;
  }

  .player-v1 .track,
  .player-v1 .feedback{
    width:100%;
    min-width:0;
  }

  #player-title{
    white-space:normal;
    line-height:1.08;
    overflow-wrap:anywhere;
  }

  .wave-wrap{
    width:100%;
    overflow:hidden;
  }

  .real-wave{
    width:100% !important;
    max-width:100%;
  }

  .rating-buttons{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:8px;
    overflow:visible;
  }

  .rating-buttons button{
    min-width:0;
    width:100%;
    padding:9px 5px;
  }

  .rating-buttons button:nth-child(1),
  .rating-buttons button:nth-child(2),
  .rating-buttons button:nth-child(3){
    grid-column:span 2;
  }

  .rating-buttons button:nth-child(4){
    grid-column:2 / span 2;
  }

  .rating-buttons button:nth-child(5){
    grid-column:4 / span 2;
  }

  .rating-buttons span{
    font-size:20px;
  }

  .rating-buttons b{
    font-size:10px;
  }
}
