  .dash-player {
    position: relative; width: 100%; background: #000;
    cursor: pointer; -webkit-tap-highlight-color: transparent;
    line-height: 0; overflow: hidden;
  }

  .dashp-poster-img {
    width: 100%; height: auto; display: block;
    position: relative; z-index: 1; vertical-align: bottom; 
  }

  .dash-player video {
    position: absolute; top: 0; left: 0;
    width: 100% !important; height: 100% !important;
    object-fit: contain; z-index: 2;
    opacity: 0; transition: opacity 0.2s ease-in-out;
  }

  .dash-player.is-rendering video { opacity: 1; }


  /* Triangle Overlay Background */
  .dash-play-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 3; 
    display: flex; 
    align-items: center; 
    justify-content: center;
    background-color: rgba(0,0,0,0.1);
    pointer-events: none;
    transition: opacity 0.2s;
  }

  /* --- Restored Triangle Icon (White, no circle background) --- */
.dash-play-triangle {
    width: 90px; height: 90px;
    display: block; position: relative;
    background: none !important; border: none !important;
}

.dash-play-triangle::after {
    content: ''; position: absolute;
    top: 50%; left: 50%;
    transform: translate(-40%, -50%); /* Visually centers triangle point */
    border-style: solid;
    border-width: 30px 0 30px 50px;
    border-color: transparent transparent transparent #ffffff; /* Solid White */
    filter: drop-shadow(0px 0px 8px rgba(0,0,0,0.5));
}

/* Controls bar */
.dashp-bar{
    position:absolute; left:0; right:0; bottom:0;
    display:flex; gap:10px; align-items:center;
    padding:10px;
    background:linear-gradient(to top, rgba(0,0,0,.65), rgba(0,0,0,0));
    z-index: 5;

    opacity: 0;
    pointer-events:none;
    transition: opacity .2s ease;
  }
  .dash-player.dashp-hide-ui .dashp-bar { display:none !important; }

  /* YouTube-like autohide: while playing, we fade controls out */
  .dash-player.is-playing.is-controls-hidden .dashp-bar 
  { 
    opacity: 0; 
    pointer-events:none; 
  }

  .dash-player.is-controls-visible .dashp-bar 
  { 
    opacity: 1; 
    pointer-events:auto; 
  }

  /* Buffered track behind the seek */
  .dashp-seek-wrap{ position:relative; flex:1; height:28px; display:flex; align-items:center; }
  .dashp-buffer{
    position:absolute; left:0; right:0;
    height:4px;
    border-radius:999px;
    background:rgba(255,255,255,.18);
    pointer-events:none;
  }
  .dashp-buffer > i{
    display:block;
    height:100%;
    width:0%;
    border-radius:999px;
    background:rgba(255,255,255,.35);
  }

  .dashp-seek{
    position:relative;
    width:100%;
    height:28px;
    background:transparent;
    border:0px;
  }

  .dashp-time{
    color:#fff;
    font:12px/1.2 system-ui,-apple-system,Segoe UI,Roboto,Arial;
    min-width: 48px;
    text-align: right;
  }

  .dashp-btn{
    border:0;
    background:rgba(0,0,0,.35);
    color:#fff;
    padding:6px 10px;
    border-radius:8px;
    font:14px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial;
    cursor:pointer;
    user-select:none;
  }
  .dashp-btn:active{ transform:scale(0.98); }

@keyframes playPulse {
  0%   { transform: translate(-40%, -50%) scale(1);   opacity: 1; }
  50%  { transform: translate(-40%, -50%) scale(1.15); opacity: 0.6; }
  100% { transform: translate(-40%, -50%) scale(1);   opacity: 1; }
}

.dash-play-triangle.is-loading::after {
  animation: playPulse 1s ease-in-out infinite;
}

