.tdwavp-player {
  --tdwavp-accent: #b4ad59;
  --tdwavp-bg: #07080b;
  --tdwavp-bg-soft: rgba(13, 16, 22, .94);
  --tdwavp-panel: rgba(7, 10, 16, .94);
  --tdwavp-text: #f4f1df;
  --tdwavp-muted: #a8a7a0;
  --tdwavp-line: rgba(180,173,89,.25);
  --tdwavp-shadow: 0 22px 65px rgba(0,0,0,.45);
  color: var(--tdwavp-text);
  font-family: var(--tdwavp-font-main, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  width: 100%;
  margin: 24px 0;
}

.tdwavp-player *,
.tdwavp-player *::before,
.tdwavp-player *::after {
  box-sizing: border-box;
}

.tdwavp-player button,
.tdwavp-player input,
.tdwavp-player select {
  font: inherit !important;
}

.tdwavp-player button {
  -webkit-appearance: none !important;
  appearance: none !important;
  background-image: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

.tdwavp-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: 14px;
  background: linear-gradient(135deg, rgba(180,173,89,.14), rgba(255,255,255,.02)), linear-gradient(180deg, rgba(17,20,28,.98), rgba(7,8,11,.98));
  border: 1px solid rgba(180,173,89,.35);
  padding: 12px;
  box-shadow: var(--tdwavp-shadow);
}

.tdwavp-single-video .tdwavp-shell {
  grid-template-columns: 1fr;
}

.tdwavp-stage {
  position: relative;
  background: #000;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  outline: none;
  border: 1px solid rgba(180,173,89,.24);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}

.tdwavp-video {
  width: 100%;
  height: 100%;
  display: block;
  background: #000;
  object-fit: contain;
}

.tdwavp-gradient {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 50% 100%, rgba(180,173,89,.11), transparent 40%), linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,.1) 34%, rgba(0,0,0,.24) 100%);
  opacity: 1;
  transition: opacity .2s ease;
}

.tdwavp-stage.tdwavp-idle .tdwavp-gradient,
.tdwavp-stage.tdwavp-idle .tdwavp-controls,
.tdwavp-stage.tdwavp-idle .tdwavp-title-overlay {
  opacity: 0;
}

.tdwavp-loader {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 46px;
  height: 46px;
  margin: -23px 0 0 -23px;
  border: 3px solid rgba(255,255,255,.2);
  border-top-color: var(--tdwavp-accent);
  border-radius: 50%;
  animation: tdwavpSpin .75s linear infinite;
  display: none;
}

.tdwavp-stage.tdwavp-loading .tdwavp-loader {
  display: block;
}

@keyframes tdwavpSpin {
  to { transform: rotate(360deg); }
}

@keyframes tdwavpShimmer {
  0% { background-position: -160px 0; }
  100% { background-position: 240px 0; }
}

.tdwavp-big-play {
  all: unset;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 92px;
  height: 92px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #fff6d6;
  border: 1px solid rgba(255,245,210,.28);
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.18), transparent 32%), radial-gradient(circle at 50% 50%, rgba(188,177,89,.98), rgba(96,77,27,.94));
  box-shadow: 0 0 0 1px rgba(255,255,255,.05) inset, 0 0 38px rgba(180,173,89,.35), 0 10px 30px rgba(0,0,0,.32);
  transition: transform .2s ease, opacity .2s ease, box-shadow .2s ease;
  z-index: 3;
}

.tdwavp-big-play:hover {
  transform: translate(-50%, -50%) scale(1.06);
  box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset, 0 0 48px rgba(180,173,89,.45), 0 14px 34px rgba(0,0,0,.34);
}

.tdwavp-big-play-icon {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 3px;
}

.tdwavp-big-play-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.tdwavp-stage.tdwavp-playing .tdwavp-big-play {
  opacity: 0;
  pointer-events: none;
}

.tdwavp-caption-overlay {
  position: absolute;
  left: 8%;
  right: 8%;
  bottom: 96px;
  text-align: center;
  font-size: clamp(18px, 2.2vw, 32px);
  line-height: 1.35;
  font-weight: 650;
  text-shadow: 0 2px 8px #000, 0 0 16px #000;
  pointer-events: none;
}

.tdwavp-caption-overlay span {
  display: inline;
  background: rgba(0,0,0,.62);
  padding: 4px 10px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  border-radius: 3px;
}

.tdwavp-title-overlay {
  position: absolute;
  left: 22px;
  top: 18px;
  display: grid;
  gap: 3px;
  transition: opacity .2s ease;
}

.tdwavp-now-playing {
  color: var(--tdwavp-accent);
  font-size: 11px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.tdwavp-title-overlay strong {
  font-size: clamp(16px, 2vw, 24px);
  text-shadow: 0 2px 12px #000;
}

.tdwavp-controls {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 12px 14px 14px;
  transition: opacity .2s ease;
}

.tdwavp-progress-wrap {
  position: relative;
  height: 26px;
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}

.tdwavp-progress-track {
  position: absolute;
  left: 0;
  right: 0;
  height: 6px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.05));
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.05), 0 0 18px rgba(0,0,0,.15);
}

.tdwavp-progress-buffer,
.tdwavp-progress-played {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  border-radius: inherit;
}

.tdwavp-progress-buffer {
  background: linear-gradient(90deg, rgba(255,255,255,.22), rgba(255,255,255,.35));
  opacity: .6;
}

.tdwavp-progress-played {
  background: linear-gradient(90deg, rgba(255,235,172,.95), rgba(180,173,89,.96), rgba(255,235,172,.95));
  background-size: 180px 100%;
  animation: tdwavpShimmer 2.2s linear infinite;
  box-shadow: 0 0 10px rgba(180,173,89,.42);
}

.tdwavp-progress,
.tdwavp-volume {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  background: transparent;
  cursor: pointer;
}

.tdwavp-progress {
  position: relative;
  z-index: 2;
  height: 26px;
}

.tdwavp-progress::-webkit-slider-runnable-track {
  height: 6px;
  background: transparent;
}

.tdwavp-progress::-moz-range-track {
  height: 6px;
  background: transparent;
  border: 0;
}

.tdwavp-progress::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  margin-top: -6px;
  border: 1px solid rgba(255,245,210,.65);
  background: radial-gradient(circle at 35% 35%, #fff6cb, var(--tdwavp-accent));
  box-shadow: 0 0 0 2px rgba(12,14,19,.78), 0 0 15px rgba(180,173,89,.4);
}

.tdwavp-progress::-moz-range-thumb {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid rgba(255,245,210,.65);
  background: radial-gradient(circle at 35% 35%, #fff6cb, var(--tdwavp-accent));
  box-shadow: 0 0 0 2px rgba(12,14,19,.78), 0 0 15px rgba(180,173,89,.4);
}

.tdwavp-control-row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.tdwavp-btn {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.1);
  background: linear-gradient(180deg, rgba(22,26,34,.96), rgba(8,10,14,.96));
  color: #f0ede0;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.02), 0 8px 22px rgba(0,0,0,.14);
  cursor: pointer;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease, color .18s ease;
}

.tdwavp-btn:hover,
.tdwavp-btn:focus-visible,
.tdwavp-menu-wrap.is-open .tdwavp-btn {
  border-color: rgba(180,173,89,.65);
  color: #fff9e8;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 0 0 1px rgba(180,173,89,.1), 0 10px 28px rgba(0,0,0,.18), 0 0 18px rgba(180,173,89,.12);
}

.tdwavp-btn:active {
  transform: translateY(1px);
}

.tdwavp-icon,
.tdwavp-btn svg,
.tdwavp-speed-arrow svg {
  width: 18px;
  height: 18px;
  display: block;
}

.tdwavp-play .tdwavp-icon-pause,
.tdwavp-mute .tdwavp-icon-volume-off {
  display: none;
}

.tdwavp-play.is-playing .tdwavp-icon-play,
.tdwavp-mute.is-muted .tdwavp-icon-volume-on {
  display: none;
}

.tdwavp-play.is-playing .tdwavp-icon-pause,
.tdwavp-mute.is-muted .tdwavp-icon-volume-off {
  display: block;
}

.tdwavp-time {
  font-variant-numeric: tabular-nums;
  color: var(--tdwavp-muted);
  font-size: 13px;
  min-width: 100px;
}

.tdwavp-spacer {
  flex: 1;
}

.tdwavp-volume {
  max-width: 90px;
  height: 24px;
}

.tdwavp-volume::-webkit-slider-runnable-track {
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(180,173,89,.85), rgba(255,255,255,.2));
}

.tdwavp-volume::-moz-range-track {
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(180,173,89,.85), rgba(255,255,255,.2));
  border: 0;
}

.tdwavp-volume::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  margin-top: -5px;
  border: 1px solid rgba(255,245,210,.65);
  background: radial-gradient(circle at 35% 35%, #fff6cb, var(--tdwavp-accent));
  box-shadow: 0 0 0 2px rgba(12,14,19,.78);
}

.tdwavp-volume::-moz-range-thumb {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1px solid rgba(255,245,210,.65);
  background: radial-gradient(circle at 35% 35%, #fff6cb, var(--tdwavp-accent));
  box-shadow: 0 0 0 2px rgba(12,14,19,.78);
}

.tdwavp-menu-wrap {
  position: relative;
}

.tdwavp-caption-menu,
.tdwavp-speed-menu {
  position: absolute;
  right: 0;
  bottom: 46px;
  min-width: 170px;
  padding: 6px;
  border-radius: 10px;
  background: rgba(5,6,9,.98);
  border: 1px solid rgba(180,173,89,.35);
  box-shadow: 0 18px 45px rgba(0,0,0,.45);
  backdrop-filter: blur(8px);
  z-index: 6;
}

.tdwavp-caption-menu button,
.tdwavp-speed-option {
  all: unset;
  display: block;
  width: 100%;
  padding: 8px 10px;
  border-radius: 6px;
  color: #efe9d5;
  cursor: pointer;
  box-sizing: border-box;
}

.tdwavp-caption-menu button:hover,
.tdwavp-speed-option:hover,
.tdwavp-caption-menu button.is-active,
.tdwavp-speed-option.is-active {
  color: var(--tdwavp-accent);
  background: rgba(180,173,89,.12);
}

.tdwavp-speed-toggle {
  width: auto;
  min-width: 74px;
  padding: 0 10px 0 12px;
  gap: 8px;
}

.tdwavp-speed-current {
  font-size: 13px;
  line-height: 1;
}

.tdwavp-speed-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--tdwavp-accent);
  transition: transform .18s ease;
}

.tdwavp-menu-wrap.is-open .tdwavp-speed-arrow {
  transform: rotate(180deg);
}

.tdwavp-playlist {
  background: var(--tdwavp-panel);
  border: 1px solid rgba(255,255,255,.09);
  min-height: 0;
  max-height: min(620px, 72vh);
  display: flex;
  flex-direction: column;
}

.tdwavp-playlist-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 14px 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: var(--tdwavp-accent);
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: .13em;
}

.tdwavp-playlist-head strong {
  color: #fff;
}

.tdwavp-playlist-items {
  overflow: auto;
  padding: 8px;
}

.tdwavp-playlist-item {
  all: unset;
  width: 100%;
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 10px;
  padding: 8px;
  margin: 0 0 7px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
  color: var(--tdwavp-text);
  text-align: left;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.tdwavp-playlist-item:hover,
.tdwavp-playlist-item.is-active {
  border-color: rgba(180,173,89,.65);
  background: rgba(180,173,89,.12);
  box-shadow: 0 0 0 1px rgba(180,173,89,.08), inset 0 0 18px rgba(180,173,89,.03);
}

.tdwavp-playlist-thumb {
  aspect-ratio: 16 / 9;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tdwavp-accent);
  overflow: hidden;
}

.tdwavp-playlist-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.tdwavp-playlist-meta {
  min-width: 0;
}

.tdwavp-playlist-meta strong {
  display: block;
  font-size: 14px;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tdwavp-playlist-meta span {
  display: block;
  color: var(--tdwavp-muted);
  margin-top: 5px;
  font-size: 12px;
}

.tdwavp-empty {
  border: 1px solid #d63638;
  padding: 12px;
  color: #d63638;
}

.tdwavp-player:fullscreen .tdwavp-shell {
  height: 100vh;
  grid-template-columns: 1fr 340px;
  border: 0;
  padding: 0;
}

.tdwavp-player.tdwavp-single-video:fullscreen .tdwavp-shell {
  grid-template-columns: 1fr;
}

.tdwavp-player:fullscreen .tdwavp-stage {
  height: 100vh;
  aspect-ratio: auto;
}

@media (max-width: 900px) {
  .tdwavp-shell {
    grid-template-columns: 1fr;
  }

  .tdwavp-playlist {
    max-height: 360px;
  }

  .tdwavp-control-row {
    flex-wrap: wrap;
  }

  .tdwavp-spacer {
    display: none;
  }

  .tdwavp-caption-overlay {
    bottom: 130px;
  }
}

@media (max-width: 560px) {
  .tdwavp-shell {
    padding: 6px;
  }

  .tdwavp-controls {
    padding: 9px;
  }

  .tdwavp-prev,
  .tdwavp-next,
  .tdwavp-speed-wrap {
    display: none;
  }

  .tdwavp-caption-overlay {
    left: 4%;
    right: 4%;
    bottom: 100px;
  }

  .tdwavp-playlist-item {
    grid-template-columns: 86px 1fr;
  }
}


/* TDW AVP v1.4 Cinematic overlay and font control polish */
.tdwavp-player {
  font-family: var(--tdwavp-font-main, Inter, system-ui, sans-serif) !important;
  border-radius: var(--tdwavp-radius, 18px);
}

.tdwavp-title-overlay strong {
  font-family: var(--tdwavp-font-title, Inter, system-ui, sans-serif) !important;
  font-size: var(--tdwavp-title-size, 34px) !important;
  font-weight: var(--tdwavp-title-weight, 800) !important;
  letter-spacing: -0.035em;
}

.tdwavp-now-playing {
  font-family: var(--tdwavp-font-main, Inter, system-ui, sans-serif) !important;
  font-size: var(--tdwavp-subtitle-size, 15px) !important;
  font-weight: 800;
}

.tdwavp-time,
.tdwavp-speed-current,
.tdwavp-caption-menu button,
.tdwavp-speed-option {
  font-size: var(--tdwavp-ui-size, 13px) !important;
}

.tdwavp-playlist {
  font-family: var(--tdwavp-font-playlist, Inter, system-ui, sans-serif) !important;
}

.tdwavp-playlist-meta strong {
  font-size: var(--tdwavp-playlist-title-size, 14px) !important;
  font-weight: var(--tdwavp-playlist-weight, 800) !important;
}

.tdwavp-playlist-meta span {
  font-size: var(--tdwavp-playlist-meta-size, 12px) !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-shell {
  position: relative;
  grid-template-columns: 1fr;
  padding: 0;
  border-radius: var(--tdwavp-radius, 18px);
  overflow: hidden;
  border-color: rgba(255,255,255,.16);
  background: #07080b;
}

.tdwavp-playlist-layout-overlay .tdwavp-stage {
  border: 0;
  border-radius: var(--tdwavp-radius, 18px);
  min-height: 430px;
}

.tdwavp-playlist-layout-overlay .tdwavp-video {
  object-fit: cover;
}

.tdwavp-playlist-layout-overlay .tdwavp-gradient {
  background:
    linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.18) 48%, rgba(0,0,0,.58) 100%),
    linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,.05) 42%, rgba(0,0,0,.18) 100%);
}

.tdwavp-playlist-layout-overlay .tdwavp-title-overlay {
  top: auto;
  left: 48px;
  right: min(390px, 38%);
  bottom: 118px;
  gap: 8px;
}

.tdwavp-playlist-layout-overlay .tdwavp-now-playing::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-right: 8px;
  border-left: 9px solid var(--tdwavp-accent);
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  filter: drop-shadow(0 0 8px rgba(180,173,89,.42));
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist {
  position: absolute;
  z-index: 5;
  top: 22px;
  right: 22px;
  bottom: 96px;
  width: min(330px, 34%);
  max-height: none;
  color: var(--tdwavp-text);
  background:
    linear-gradient(180deg, rgba(10,12,16,var(--tdwavp-glass-opacity, .86)), rgba(5,7,10,var(--tdwavp-glass-opacity, .86))),
    radial-gradient(circle at 0 0, rgba(180,173,89,.16), transparent 44%);
  border: 1px solid rgba(180,173,89,.32);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 18px 45px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,255,255,.03);
  backdrop-filter: blur(14px);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-head {
  color: var(--tdwavp-accent);
  border-bottom: 1px solid rgba(180,173,89,.22);
  background: rgba(0,0,0,.28);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-head strong {
  color: #fff6d6;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-item {
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 10px;
  margin-bottom: 10px;
  color: var(--tdwavp-text);
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  border: 1px solid rgba(180,173,89,.18);
  border-radius: 10px;
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-item:hover {
  transform: translateY(-1px);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-item.is-active {
  color: #fff;
  background: linear-gradient(135deg, rgba(180,173,89,.95), rgba(45,43,24,.96));
  border-color: rgba(255,255,255,.32);
  box-shadow: 0 12px 24px rgba(0,0,0,.18), 0 0 24px rgba(180,173,89,.18);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-item.is-active .tdwavp-playlist-meta span {
  color: rgba(255,255,255,.78);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-thumb {
  border-radius: 8px;
}

.tdwavp-playlist-layout-overlay .tdwavp-controls {
  padding: 12px 34px 22px;
}

.tdwavp-playlist-layout-overlay .tdwavp-progress-wrap {
  margin-bottom: 10px;
}

@media (max-width: 900px) {
  .tdwavp-playlist-layout-overlay .tdwavp-stage {
    min-height: 0;
  }

  .tdwavp-playlist-layout-overlay .tdwavp-title-overlay {
    left: 24px;
    right: 24px;
    bottom: 132px;
  }

  .tdwavp-playlist-layout-overlay .tdwavp-playlist {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    width: auto;
    margin: 12px;
    max-height: 360px;
  }

  .tdwavp-playlist-layout-overlay .tdwavp-controls {
    padding: 10px 14px 16px;
  }
}



/* TDW AVP v1.4.1 fixes: overlay playlist forced inside the player */
.tdwavp-playlist-layout-overlay.tdwavp-has-playlist .tdwavp-shell {
  display: block;
  position: relative;
}
.tdwavp-playlist-layout-overlay.tdwavp-has-playlist .tdwavp-stage { width: 100%; }
.tdwavp-playlist-layout-overlay .tdwavp-shell::before {
  content: "";
  position: absolute;
  inset: 10px;
  z-index: 1;
  pointer-events: none;
  border: 1px solid rgba(180,173,89,.18);
  box-shadow: inset 0 0 42px rgba(180,173,89,.035);
}
.tdwavp-playlist-layout-overlay .tdwavp-playlist { z-index: 6; }
.tdwavp-playlist-layout-overlay .tdwavp-controls { z-index: 7; }
.tdwavp-playlist-layout-overlay .tdwavp-big-play { z-index: 8; }


/* TDW AVP v1.4.2 polish: playlist auto-hide, scrollbar fix, centered animated play button */
@keyframes tdwavpPlayPulse {
  0% { box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset, 0 0 28px rgba(180,173,89,.22), 0 10px 30px rgba(0,0,0,.32); }
  50% { box-shadow: 0 0 0 1px rgba(255,255,255,.12) inset, 0 0 54px rgba(180,173,89,.46), 0 14px 38px rgba(0,0,0,.36); }
  100% { box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset, 0 0 28px rgba(180,173,89,.22), 0 10px 30px rgba(0,0,0,.32); }
}

.tdwavp-big-play {
  color: #fff4c5 !important;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.25), transparent 30%),
    radial-gradient(circle at 50% 50%, rgba(198,185,91,.98), rgba(120,88,28,.96) 64%, rgba(40,31,16,.96)) !important;
  border-color: rgba(255,240,188,.38) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset, 0 0 28px rgba(180,173,89,.22), 0 10px 30px rgba(0,0,0,.32) !important;
}

.tdwavp-big-play:hover,
.tdwavp-big-play:focus-visible {
  transform: translate(-50%, -50%) scale(1.075) !important;
  animation: tdwavpPlayPulse 1.15s ease-in-out infinite;
  color: #ffffff !important;
}

.tdwavp-big-play-icon {
  margin-left: 0 !important;
  transform: none !important;
}

.tdwavp-big-play-icon svg {
  width: 34px !important;
  height: 34px !important;
  transform: translateX(1px);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist {
  transition: opacity .24s ease, transform .24s ease, filter .24s ease;
  will-change: opacity, transform;
}

.tdwavp-player.tdwavp-idle.tdwavp-playlist-layout-overlay .tdwavp-playlist {
  opacity: 0;
  pointer-events: none;
  transform: translateX(18px) scale(.985);
  filter: blur(2px);
}

.tdwavp-player.tdwavp-idle.tdwavp-playlist-layout-overlay .tdwavp-shell::before {
  opacity: .55;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist,
.tdwavp-playlist-layout-overlay .tdwavp-playlist * {
  max-width: 100%;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-items {
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 8px !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(180,173,89,.55) rgba(255,255,255,.06);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-items::-webkit-scrollbar {
  width: 7px;
  height: 0;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-items::-webkit-scrollbar-track {
  background: rgba(255,255,255,.05);
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-items::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(180,173,89,.78), rgba(180,173,89,.32));
  border-radius: 999px;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-item {
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-thumb {
  min-width: 0 !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-meta {
  min-width: 0 !important;
  overflow: hidden !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-meta strong,
.tdwavp-playlist-layout-overlay .tdwavp-playlist-meta span {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


/* TDW AVP v1.4.3 hard override: force filled cinematic play button even when the active theme is aggressive. */
.tdwavp-player .tdwavp-stage .tdwavp-big-play,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage .tdwavp-big-play {
  background-color: #9f8f36 !important;
  background-image:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.34), rgba(255,255,255,.08) 28%, transparent 42%),
    radial-gradient(circle at 50% 54%, #d5c762 0%, #a8973a 45%, #6f541d 76%, #2a2111 100%) !important;
  color: #fff9de !important;
  border: 1px solid rgba(255,243,190,.55) !important;
  opacity: 1 !important;
  filter: none !important;
  overflow: hidden !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle at 50% 50%, rgba(255,238,154,.18), transparent 64%);
  pointer-events: none;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play-icon {
  position: relative !important;
  z-index: 2 !important;
  margin: 0 !important;
  transform: translateX(1px) !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play-icon svg {
  display: block !important;
  width: 35px !important;
  height: 35px !important;
}

/* TDW AVP v1.5 glass redesign, playlist item structure, and stronger filled play button */
.tdwavp-player {
  --tdwavp-glass-top-final: var(--tdwavp-glass-gradient-a, #111827);
  --tdwavp-glass-bottom-final: var(--tdwavp-glass-gradient-b, #05070b);
}

.tdwavp-shell {
  background:
    radial-gradient(circle at 18% 0%, rgba(180,173,89,.14), transparent 34%),
    linear-gradient(135deg, var(--tdwavp-player-gradient-a, #11151d), var(--tdwavp-player-gradient-b, #05070b)) !important;
  border-color: rgba(255,255,255,.16) !important;
}

.tdwavp-btn,
.tdwavp-speed-toggle {
  background: linear-gradient(180deg, var(--tdwavp-control-gradient-a, #161a22), var(--tdwavp-control-gradient-b, #06080c)) !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage .tdwavp-big-play {
  width: 94px !important;
  height: 94px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  background-image: none !important;
  border: 1px solid rgba(255,243,190,.55) !important;
  box-shadow: 0 0 42px rgba(180,173,89,.34), 0 18px 42px rgba(0,0,0,.38), inset 0 0 0 1px rgba(255,255,255,.06) !important;
  overflow: visible !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::before,
.tdwavp-player .tdwavp-stage .tdwavp-big-play::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::before {
  inset: 0;
  background: radial-gradient(circle at 34% 28%, rgba(255,255,255,.34), rgba(255,255,255,.07) 28%, transparent 43%);
  z-index: 1;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::after {
  inset: 13px;
  z-index: 0;
  background: linear-gradient(135deg, var(--tdwavp-active-gradient-a, #b4ad59), var(--tdwavp-active-gradient-b, #2e2b18)) !important;
  box-shadow: 0 0 32px rgba(180,173,89,.45), inset 0 0 18px rgba(255,255,255,.08);
  opacity: .98;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play:hover::after,
.tdwavp-player .tdwavp-stage .tdwavp-big-play:focus-visible::after {
  animation: tdwavpPlayPulse 1.1s ease-in-out infinite;
  filter: brightness(1.12) saturate(1.08);
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play-icon {
  width: 32px !important;
  height: 32px !important;
  position: relative !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  transform: translateX(1px) !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play-icon svg {
  width: 31px !important;
  height: 31px !important;
  display: block !important;
  color: #fff9df !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.44));
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist {
  width: min(360px, 36%) !important;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--tdwavp-glass-top-final) 88%, transparent), color-mix(in srgb, var(--tdwavp-glass-bottom-final) 92%, transparent)),
    radial-gradient(circle at 0 0, rgba(180,173,89,.18), transparent 44%) !important;
  border: 1px solid rgba(180,173,89,.38) !important;
  border-radius: calc(var(--tdwavp-radius, 18px) + 2px) !important;
  backdrop-filter: blur(var(--tdwavp-glass-blur, 18px)) saturate(1.18) !important;
  -webkit-backdrop-filter: blur(var(--tdwavp-glass-blur, 18px)) saturate(1.18) !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-head {
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.015)) !important;
  padding: 16px 18px !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-items {
  padding: 10px !important;
  overflow-x: hidden !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-item,
.tdwavp-playlist-item {
  grid-template-columns: 88px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border-radius: 13px !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-thumb,
.tdwavp-playlist-thumb {
  width: 88px !important;
  min-width: 88px !important;
  max-width: 88px !important;
  aspect-ratio: 16 / 9 !important;
  border-radius: 9px !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-meta,
.tdwavp-playlist-meta {
  display: grid !important;
  gap: 3px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  align-content: center !important;
}

.tdwavp-playlist-title,
.tdwavp-playlist-subtitle,
.tdwavp-playlist-duration {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.tdwavp-playlist-subtitle {
  color: rgba(244,241,223,.72) !important;
  font-size: var(--tdwavp-playlist-meta-size, 12px) !important;
}

.tdwavp-playlist-duration {
  color: rgba(244,241,223,.55) !important;
  font-size: calc(var(--tdwavp-playlist-meta-size, 12px) - 1px) !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-item.is-active {
  background: linear-gradient(135deg, var(--tdwavp-active-gradient-a, #b4ad59), var(--tdwavp-active-gradient-b, #2e2b18)) !important;
}

.tdwavp-playlist-layout-overlay .tdwavp-playlist-item.is-active .tdwavp-playlist-subtitle,
.tdwavp-playlist-layout-overlay .tdwavp-playlist-item.is-active .tdwavp-playlist-duration {
  color: rgba(255,255,255,.78) !important;
}

@media (max-width: 900px) {
  .tdwavp-playlist-layout-overlay .tdwavp-playlist {
    width: auto !important;
  }
}

/* TDW AVP v1.5.1: subtitle TXT auto-detect support, glass controls, fixed play overlay */
@keyframes tdwavpGlassSweep {
  0% { transform: translateX(-145%) skewX(-18deg); opacity: 0; }
  28% { opacity: .85; }
  100% { transform: translateX(145%) skewX(-18deg); opacity: 0; }
}

@keyframes tdwavpPlayGlassPulse {
  0%, 100% { box-shadow: 0 0 26px rgba(180,173,89,.32), 0 16px 34px rgba(0,0,0,.36), inset 0 0 0 1px rgba(255,255,255,.08); }
  50% { box-shadow: 0 0 54px rgba(255,225,130,.54), 0 18px 42px rgba(0,0,0,.42), inset 0 0 26px rgba(255,255,255,.14); }
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play {
  width: 92px !important;
  height: 92px !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.035)) !important;
  background-image: linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.035)) !important;
  border: 1px solid rgba(255,239,181,.52) !important;
  backdrop-filter: blur(15px) saturate(1.25) !important;
  -webkit-backdrop-filter: blur(15px) saturate(1.25) !important;
  box-shadow: 0 0 26px rgba(180,173,89,.32), 0 16px 34px rgba(0,0,0,.36), inset 0 0 0 1px rgba(255,255,255,.08) !important;
  transition: opacity .2s ease, visibility .2s ease, transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: inherit !important;
  z-index: 0 !important;
  background:
    radial-gradient(circle at 34% 26%, rgba(255,255,255,.36), transparent 25%),
    linear-gradient(135deg, color-mix(in srgb, var(--tdwavp-accent) 82%, #fff0ac 18%), rgba(54,45,18,.78)) !important;
  opacity: .72 !important;
  box-shadow: inset 0 0 30px rgba(255,255,255,.12) !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::after {
  content: "" !important;
  position: absolute !important;
  top: -18% !important;
  bottom: -18% !important;
  left: -42% !important;
  width: 38% !important;
  border-radius: 999px !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.72), transparent) !important;
  transform: translateX(-145%) skewX(-18deg) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play:hover,
.tdwavp-player .tdwavp-stage .tdwavp-big-play:focus-visible {
  transform: translate(-50%, -50%) scale(1.055) !important;
  border-color: rgba(255,243,186,.82) !important;
  animation: tdwavpPlayGlassPulse 1.45s ease-in-out infinite !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play:hover::after,
.tdwavp-player .tdwavp-stage .tdwavp-big-play:focus-visible::after {
  animation: tdwavpGlassSweep 1.1s ease-out infinite !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play-icon {
  width: 30px !important;
  height: 30px !important;
  margin: 0 !important;
  transform: translateX(1px) !important;
  position: relative !important;
  z-index: 3 !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play-icon svg {
  width: 30px !important;
  height: 30px !important;
  color: #fff7d3 !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.55)) !important;
}

.tdwavp-player .tdwavp-stage.tdwavp-playing .tdwavp-big-play,
.tdwavp-player .tdwavp-stage.tdwavp-playing .tdwavp-big-play:hover {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate(-50%, -50%) scale(.92) !important;
  animation: none !important;
}

.tdwavp-player .tdwavp-control-row .tdwavp-btn,
.tdwavp-player .tdwavp-speed-toggle {
  overflow: hidden !important;
  isolation: isolate !important;
  position: relative !important;
  border-radius: 12px !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  background: linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.045)) !important;
  background-image: linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.045)) !important;
  color: rgba(255,248,220,.94) !important;
  backdrop-filter: blur(14px) saturate(1.18) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.18) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.055), 0 10px 26px rgba(0,0,0,.18) !important;
}

.tdwavp-player .tdwavp-control-row .tdwavp-btn::before,
.tdwavp-player .tdwavp-speed-toggle::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  background:
    radial-gradient(circle at 25% 10%, rgba(255,255,255,.22), transparent 34%),
    linear-gradient(180deg, color-mix(in srgb, var(--tdwavp-control-gradient-a, #161a22) 76%, transparent), color-mix(in srgb, var(--tdwavp-control-gradient-b, #06080c) 86%, transparent)) !important;
  opacity: .96 !important;
}

.tdwavp-player .tdwavp-control-row .tdwavp-btn::after,
.tdwavp-player .tdwavp-speed-toggle::after {
  content: "" !important;
  position: absolute !important;
  top: -40% !important;
  bottom: -40% !important;
  left: -55% !important;
  width: 42% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.44), transparent) !important;
  transform: translateX(-150%) skewX(-18deg) !important;
  pointer-events: none !important;
  opacity: 0 !important;
}

.tdwavp-player .tdwavp-control-row .tdwavp-btn:hover,
.tdwavp-player .tdwavp-control-row .tdwavp-btn:focus-visible,
.tdwavp-player .tdwavp-menu-wrap.is-open .tdwavp-btn,
.tdwavp-player .tdwavp-speed-toggle:hover,
.tdwavp-player .tdwavp-speed-toggle:focus-visible {
  border-color: color-mix(in srgb, var(--tdwavp-accent) 68%, #ffffff 10%) !important;
  color: #fff8d8 !important;
  transform: translateY(-1px) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 14px 32px rgba(0,0,0,.22), 0 0 24px color-mix(in srgb, var(--tdwavp-accent) 26%, transparent) !important;
}

.tdwavp-player .tdwavp-control-row .tdwavp-btn:hover::after,
.tdwavp-player .tdwavp-control-row .tdwavp-btn:focus-visible::after,
.tdwavp-player .tdwavp-speed-toggle:hover::after,
.tdwavp-player .tdwavp-speed-toggle:focus-visible::after {
  animation: tdwavpGlassSweep .92s ease-out 1 !important;
}

.tdwavp-player .tdwavp-control-row .tdwavp-btn svg,
.tdwavp-player .tdwavp-speed-toggle svg,
.tdwavp-player .tdwavp-speed-current {
  position: relative !important;
  z-index: 2 !important;
}

.tdwavp-player .tdwavp-caption-menu,
.tdwavp-player .tdwavp-speed-menu {
  background: linear-gradient(135deg, rgba(20,24,32,.74), rgba(4,6,10,.88)) !important;
  backdrop-filter: blur(18px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.2) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 18px 46px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,255,255,.045) !important;
}

/* ===== v1.5.2 Flat Glass Redesign Overrides ===== */
.tdwavp-player {
  --tdwavp-glass-base: rgba(11, 14, 22, 0.54);
  --tdwavp-glass-strong: rgba(14, 19, 28, 0.78);
  --tdwavp-glass-soft: rgba(255, 255, 255, 0.08);
  --tdwavp-glass-line: rgba(255, 255, 255, 0.14);
  --tdwavp-glass-line-strong: rgba(180, 173, 89, 0.30);
  --tdwavp-playlist-bg: linear-gradient(180deg, rgba(8, 12, 19, 0.74), rgba(6, 8, 14, 0.62));
  --tdwavp-playlist-item-bg: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
  --tdwavp-playlist-item-active-bg: linear-gradient(180deg, rgba(180,173,89,0.20), rgba(180,173,89,0.10));
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play {
  width: 104px !important;
  height: 104px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.05)) !important;
  backdrop-filter: blur(18px) saturate(135%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(135%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.18), 0 12px 36px rgba(0,0,0,0.28), 0 0 0 1px rgba(180,173,89,0.12) !important;
  color: #fff5cb !important;
  overflow: hidden !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0.06) 28%, rgba(255,255,255,0.02) 50%, rgba(255,255,255,0.12) 100%);
  pointer-events: none;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::after {
  content: "";
  position: absolute;
  top: -15%;
  left: -55%;
  width: 52%;
  height: 130%;
  transform: rotate(18deg);
  background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,0.34), rgba(255,255,255,0));
  opacity: 0;
  pointer-events: none;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play:hover {
  transform: translate(-50%, -50%) scale(1.035) !important;
  border-color: rgba(255,255,255,0.36) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.24), 0 16px 42px rgba(0,0,0,0.32), 0 0 0 1px rgba(180,173,89,0.20), 0 0 24px rgba(180,173,89,0.16) !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play:hover::after {
  opacity: 1;
  animation: tdwavpGlassSweep 1s ease forwards;
}

@keyframes tdwavpGlassSweep {
  0% { left: -55%; opacity: 0; }
  12% { opacity: .9; }
  100% { left: 115%; opacity: 0; }
}

.tdwavp-player .tdwavp-big-play-icon {
  width: 32px !important;
  height: 32px !important;
  margin-left: 0 !important;
  position: relative;
  z-index: 2;
}

.tdwavp-player .tdwavp-big-play-icon svg {
  width: 100% !important;
  height: 100% !important;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.35));
}

.tdwavp-player .tdwavp-btn,
.tdwavp-player .tdwavp-speed-toggle {
  background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(255,255,255,0.04)) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  backdrop-filter: blur(14px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(130%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 8px 20px rgba(0,0,0,0.20) !important;
  color: rgba(255,248,228,0.96) !important;
  overflow: hidden;
  position: relative;
}

.tdwavp-player .tdwavp-btn::after,
.tdwavp-player .tdwavp-speed-toggle::after {
  content: "";
  position: absolute;
  top: -10%;
  left: -65%;
  width: 46%;
  height: 120%;
  transform: rotate(16deg);
  background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,0.22), rgba(255,255,255,0));
  opacity: 0;
  pointer-events: none;
}

.tdwavp-player .tdwavp-btn:hover,
.tdwavp-player .tdwavp-btn:focus-visible,
.tdwavp-player .tdwavp-speed-toggle:hover,
.tdwavp-player .tdwavp-speed-toggle:focus-visible,
.tdwavp-player .tdwavp-menu-wrap.is-open .tdwavp-btn,
.tdwavp-player .tdwavp-menu-wrap.is-open .tdwavp-speed-toggle {
  border-color: rgba(180,173,89,0.40) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.18), 0 10px 24px rgba(0,0,0,0.24), 0 0 0 1px rgba(180,173,89,0.10), 0 0 14px rgba(180,173,89,0.10) !important;
}

.tdwavp-player .tdwavp-btn:hover::after,
.tdwavp-player .tdwavp-btn:focus-visible::after,
.tdwavp-player .tdwavp-speed-toggle:hover::after,
.tdwavp-player .tdwavp-speed-toggle:focus-visible::after {
  opacity: 1;
  animation: tdwavpGlassSweep .9s ease forwards;
}

.tdwavp-player .tdwavp-playlist,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist {
  background: var(--tdwavp-playlist-bg) !important;
  backdrop-filter: blur(18px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(130%) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 42px rgba(0,0,0,0.24) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

.tdwavp-player .tdwavp-playlist-head,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-head {
  padding: 16px 18px 14px !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.01)) !important;
}

.tdwavp-player .tdwavp-playlist-items,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-items {
  padding: 12px !important;
  display: grid;
  gap: 10px;
  overflow-x: hidden !important;
}

.tdwavp-player .tdwavp-playlist-item,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-item {
  all: unset;
  width: 100%;
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: 92px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 10px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  background: var(--tdwavp-playlist-item-bg) !important;
  backdrop-filter: blur(14px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(130%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.10), 0 8px 16px rgba(0,0,0,0.12) !important;
  cursor: pointer;
  overflow: hidden !important;
}

.tdwavp-player .tdwavp-playlist-item:hover,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-item:hover {
  border-color: rgba(255,255,255,0.18) !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.12), rgba(255,255,255,0.05)) !important;
  transform: translateY(-1px);
}

.tdwavp-player .tdwavp-playlist-item.is-active,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-item.is-active {
  border-color: rgba(180,173,89,0.36) !important;
  background: var(--tdwavp-playlist-item-active-bg) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 12px 24px rgba(0,0,0,0.16), 0 0 0 1px rgba(180,173,89,0.08) !important;
}

.tdwavp-player .tdwavp-playlist-thumb,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-thumb {
  width: 92px !important;
  min-width: 92px !important;
  aspect-ratio: 16 / 9;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: rgba(0,0,0,0.22) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}

.tdwavp-player .tdwavp-playlist-meta,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-meta {
  min-width: 0 !important;
  display: grid !important;
  gap: 4px !important;
  align-content: center;
}

.tdwavp-player .tdwavp-playlist-title,
.tdwavp-player .tdwavp-playlist-subtitle,
.tdwavp-player .tdwavp-playlist-duration {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.tdwavp-player .tdwavp-playlist-title {
  color: #f6f2e8 !important;
  font-size: var(--tdwavp-playlist-title-size, 14px) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.tdwavp-player .tdwavp-playlist-subtitle {
  color: rgba(255,255,255,0.70) !important;
  font-size: var(--tdwavp-playlist-meta-size, 12px) !important;
  line-height: 1.2 !important;
}

.tdwavp-player .tdwavp-playlist-duration {
  color: rgba(255,245,210,0.88) !important;
  font-size: calc(var(--tdwavp-playlist-meta-size, 12px) - 1px) !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
}

.tdwavp-player .tdwavp-playlist-item.is-active .tdwavp-playlist-title {
  color: #fffaf0 !important;
}

.tdwavp-player .tdwavp-playlist-item.is-active .tdwavp-playlist-subtitle {
  color: rgba(255,247,224,0.82) !important;
}

.tdwavp-player .tdwavp-playlist-item.is-active .tdwavp-playlist-duration {
  color: #fff5cf !important;
}

/* ===== v1.5.3 Minimal Flat Glass Overrides ===== */
/* Remove heavy gradients and oversized round shapes. Clean flat glass, sharper premium corners. */
.tdwavp-player {
  --tdwavp-flat-radius: 10px;
  --tdwavp-flat-radius-inner: 8px;
  --tdwavp-flat-glass: rgba(10, 13, 18, 0.46);
  --tdwavp-flat-glass-strong: rgba(10, 13, 18, 0.68);
  --tdwavp-flat-line: rgba(255,255,255,0.13);
  --tdwavp-flat-line-gold: rgba(180,173,89,0.25);
}

.tdwavp-player .tdwavp-shell,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-shell {
  background: rgba(8, 10, 14, 0.50) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: var(--tdwavp-flat-radius) !important;
  box-shadow: 0 18px 48px rgba(0,0,0,0.36), inset 0 1px 0 rgba(255,255,255,0.06) !important;
  backdrop-filter: blur(18px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(120%) !important;
  overflow: hidden !important;
}

.tdwavp-player .tdwavp-stage,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage {
  border-radius: var(--tdwavp-flat-radius-inner) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  background: #000 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.tdwavp-player .tdwavp-gradient {
  background: linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,.06) 44%, rgba(0,0,0,.15) 100%) !important;
}

/* Minimal center play button. No gold plate, no strong gradients, no huge circle. */
.tdwavp-player .tdwavp-stage .tdwavp-big-play,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage .tdwavp-big-play {
  all: unset !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 72px !important;
  height: 72px !important;
  border-radius: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  color: rgba(255, 247, 221, 0.96) !important;
  background: rgba(12, 15, 21, 0.34) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 10px 26px rgba(0,0,0,0.28) !important;
  backdrop-filter: blur(16px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(120%) !important;
  overflow: hidden !important;
  z-index: 12 !important;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease, opacity .18s ease !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::before,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage .tdwavp-big-play::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: inherit !important;
  background: rgba(255,255,255,0.035) !important;
  pointer-events: none !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play::after,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage .tdwavp-big-play::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  transform: translateX(-120%) skewX(-20deg) !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.22), transparent) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play:hover,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage .tdwavp-big-play:hover {
  transform: translate(-50%, -50%) scale(1.03) !important;
  background: rgba(16, 19, 26, 0.46) !important;
  border-color: rgba(180,173,89,0.38) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.15), 0 12px 30px rgba(0,0,0,0.32), 0 0 18px rgba(180,173,89,0.10) !important;
}

.tdwavp-player .tdwavp-stage .tdwavp-big-play:hover::after,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage .tdwavp-big-play:hover::after {
  opacity: 1 !important;
  animation: tdwavpFlatSweep .75s ease forwards !important;
}

@keyframes tdwavpFlatSweep {
  from { transform: translateX(-120%) skewX(-20deg); }
  to { transform: translateX(120%) skewX(-20deg); }
}

.tdwavp-player .tdwavp-big-play-icon {
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  transform: translateX(1px) !important;
  position: relative !important;
  z-index: 2 !important;
}

.tdwavp-player .tdwavp-big-play-icon svg {
  width: 24px !important;
  height: 24px !important;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.35)) !important;
}

/* Flat controls without heavy gradients. */
.tdwavp-player .tdwavp-btn,
.tdwavp-player .tdwavp-speed-toggle {
  border-radius: 8px !important;
  background: rgba(12, 15, 21, 0.38) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 6px 16px rgba(0,0,0,0.18) !important;
  backdrop-filter: blur(14px) saturate(115%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(115%) !important;
}

.tdwavp-player .tdwavp-btn:hover,
.tdwavp-player .tdwavp-speed-toggle:hover,
.tdwavp-player .tdwavp-menu-wrap.is-open .tdwavp-btn,
.tdwavp-player .tdwavp-menu-wrap.is-open .tdwavp-speed-toggle {
  background: rgba(18, 22, 30, 0.52) !important;
  border-color: rgba(180,173,89,0.32) !important;
}

/* Playlist keeps flat glass, no big gold blocks, no strong radius. */
.tdwavp-player .tdwavp-playlist,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist {
  background: rgba(8, 11, 17, 0.56) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 16px 34px rgba(0,0,0,0.25) !important;
  backdrop-filter: blur(18px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(120%) !important;
}

.tdwavp-player .tdwavp-playlist-head,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-head {
  background: rgba(255,255,255,0.035) !important;
  border-bottom: 1px solid rgba(255,255,255,0.09) !important;
}

.tdwavp-player .tdwavp-playlist-item,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-item {
  border-radius: 8px !important;
  background: rgba(255,255,255,0.055) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  box-shadow: none !important;
}

.tdwavp-player .tdwavp-playlist-item:hover,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-item:hover {
  background: rgba(255,255,255,0.085) !important;
  border-color: rgba(255,255,255,0.18) !important;
}

.tdwavp-player .tdwavp-playlist-item.is-active,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-item.is-active {
  background: rgba(180,173,89,0.13) !important;
  border-color: rgba(180,173,89,0.34) !important;
  box-shadow: inset 3px 0 0 rgba(180,173,89,0.75) !important;
}

.tdwavp-player .tdwavp-playlist-thumb,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-playlist-thumb {
  border-radius: 6px !important;
}

/* ===== v1.5.4 Playback State Fixes ===== */
/* The previous flat-glass override used all: unset on the big play button, which also reset
   the older hidden/disabled playing state. These final rules must stay at the very end. */
.tdwavp-player .tdwavp-stage.tdwavp-playing .tdwavp-big-play,
.tdwavp-player .tdwavp-stage.tdwavp-playing .tdwavp-big-play:hover,
.tdwavp-player .tdwavp-stage.tdwavp-playing .tdwavp-big-play:focus,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage.tdwavp-playing .tdwavp-big-play,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage.tdwavp-playing .tdwavp-big-play:hover,
.tdwavp-player.tdwavp-playlist-layout-overlay .tdwavp-stage.tdwavp-playing .tdwavp-big-play:focus {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate(-50%, -50%) scale(0.96) !important;
}

.tdwavp-player .tdwavp-play .tdwavp-icon-play {
  display: block !important;
}

.tdwavp-player .tdwavp-play .tdwavp-icon-pause {
  display: none !important;
}

.tdwavp-player .tdwavp-play.is-playing .tdwavp-icon-play {
  display: none !important;
}

.tdwavp-player .tdwavp-play.is-playing .tdwavp-icon-pause {
  display: block !important;
}

.tdwavp-player .tdwavp-play.is-playing svg {
  opacity: 1 !important;
}
