.ew-play-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.ew-home .ew-play-card {
  min-width: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  padding: 0;
  overflow: hidden;
  border: 1px solid #ffffff2d;
  border-radius: 20px;
  background: #26203f;
  color: #fff;
  text-align: left;
  transition: border-color .2s, background .2s;
}
.ew-home .ew-play-card:hover {
  background: #30264f;
  border-color: #c5afff;
}
.ew-play-art {
  position: relative;
  display: block;
  aspect-ratio: 2.36;
  overflow: hidden;
}
.ew-play-art img {
  position: absolute;
  height: auto;
}
.ew-play-miryang {
  background: radial-gradient(ellipse at 25% 80%, #fff4ac, transparent 63%), linear-gradient(140deg, #ffe99a, #97e4bb);
}
.ew-play-miryang-title { width: 45%; top: 21%; left: 7%; }
.ew-play-miryang-character { width: 40%; bottom: 4%; right: 5%; }
.ew-play-dentalbio { background: radial-gradient(ellipse at 78% 78%, #1581db, #053b9b); }
.ew-play-dentalbio-title { width: 46%; top: 42%; left: 6%; }
.ew-play-wheel {
  width: 36%;
  right: 6%;
  top: 9%;
  transform: rotate(-12deg);
  transition: transform .45s;
}
.ew-play-card:hover .ew-play-wheel { transform: rotate(10deg); }
.ew-play-body {
  display: grid;
  gap: 5px;
  align-content: start;
  padding: 20px 22px;
}
.ew-play-label { color: #d6c6ff; font-size: 13px; font-weight: 730; }
.ew-play-body strong { font-size: clamp(23px, 3vw, 32px); line-height: 1.18; }
.ew-play-desc { color: #ddd5ed; font-size: 15px; }
.ew-play-go {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 11px;
  margin-top: 8px;
  padding: 7px 12px;
  border-radius: 8px;
  background: #ddff72;
  color: #201735;
  font-size: 14px;
  font-weight: 800;
}
.ew-playing { overflow: hidden; }
.ew-home .ew-player {
  width: min(740px, calc(100% - 24px));
  max-height: calc(100dvh - 24px);
  padding: 0;
  margin: auto;
  overflow: hidden;
  border: 1px solid #e2d9fc;
  border-radius: 18px;
  background: #1e1937;
  color: #fff;
}
.ew-player::backdrop { background: #100d23cf; }
.ew-player-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 64px;
  padding: 7px 14px;
}
.ew-home .ew-player-bar .ew-kicker { color: #c9b7ff; font-size: 10px; }
.ew-home .ew-player-bar h2 { font-size: 19px; line-height: 1.22; }
.ew-home .ew-player-close {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border: 1px solid #ffffff45;
  border-radius: 9px;
  background: #ffffff12;
  color: #fff;
  font-size: 26px;
  line-height: 1;
}
.ew-player-frame iframe {
  width: 100%;
  height: min(760px, calc(100dvh - 90px));
  display: block;
  border: 0;
}
@media (max-width: 700px) {
  .ew-play-cards { grid-template-columns: 1fr; gap: 12px; }
  .ew-play-body { padding: 16px 17px; }
}

.ew-play-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ew-regional-art {
  display: grid;
  place-items: center;
  background: radial-gradient(ellipse at 37% 29%, #fffb, transparent 65%), var(--ew-game-color);
}
.ew-regional-art img {
  position: static;
  display: block;
  width: auto;
  height: auto;
  max-width: 78%;
  max-height: 85%;
  object-fit: contain;
  transition: transform .25s ease-out;
}
.ew-play-card:hover .ew-regional-art img { transform: translateY(-3px); }
@media (max-width: 1020px) {
  .ew-play-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .ew-play-cards { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .ew-regional-art img { transition: none; }
  .ew-play-card:hover .ew-regional-art img { transform: none; }
}
