/* =========================================================
   Educational Podcasts / Short Video Library v2
   هماهنگ با ساختار صفحات کتابخانه صوتی
   ========================================================= */

.educational-podcasts-page{
  background:
    radial-gradient(circle at 12% 7%, rgba(142,216,232,.12), transparent 32%),
    linear-gradient(180deg,#ffffff 0%,#f6fbfd 52%,#ffffff 100%);
}

/* Hero uses the same .audio-book-hero structure as other audio pages */
.podcast-standard-hero .audio-book-hero__copy{
  max-width:780px;
}

.podcast-cover-card{
  padding:16px;
}

.podcast-cover-visual{
  position:relative;
  overflow:hidden;
  min-height:390px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:24px;
  border-radius:24px;
  color:#ffffff;
  background:
    radial-gradient(circle at 78% 16%,rgba(183,214,11,.22),transparent 24%),
    radial-gradient(circle at 18% 74%,rgba(142,216,232,.22),transparent 32%),
    linear-gradient(145deg,#0a2237 0%,#123f61 54%,#071827 100%);
  box-shadow:0 24px 64px rgba(0,0,0,.28);
}

.podcast-cover-visual::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg,transparent 24%,rgba(255,255,255,.07) 25%,transparent 26%),
    linear-gradient(120deg,transparent 56%,rgba(255,255,255,.055) 57%,transparent 58%);
  pointer-events:none;
}

.podcast-cover-screen{
  position:relative;
  z-index:1;
  min-height:178px;
  display:grid;
  place-items:center;
  border-radius:22px;
  background:
    radial-gradient(circle at 50% 45%,rgba(142,216,232,.22),transparent 38%),
    rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}

.podcast-cover-play{
  position:relative;
  width:76px;
  height:76px;
  border-radius:50%;
  background:#e7fbff;
  box-shadow:0 18px 48px rgba(142,216,232,.28),0 0 0 12px rgba(142,216,232,.08);
}

.podcast-cover-play::after{
  content:"";
  position:absolute;
  top:50%;
  left:52%;
  transform:translate(-50%,-50%);
  border-top:12px solid transparent;
  border-bottom:12px solid transparent;
  border-left:19px solid #061626;
}

.podcast-cover-copy{
  position:relative;
  z-index:1;
  display:grid;
  gap:7px;
  margin-top:22px;
  text-align:left;
  direction:ltr;
}

.podcast-cover-copy span{
  color:#b7d60b;
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.podcast-cover-copy strong{
  color:#ffffff;
  font-size:25px;
  line-height:1.25;
  font-weight:950;
}

.podcast-cover-copy small{
  color:rgba(255,255,255,.68);
  font-size:13px;
  font-weight:750;
}

.podcast-cover-wave{
  position:relative;
  z-index:1;
  height:44px;
  display:flex;
  align-items:flex-end;
  gap:7px;
  margin-top:22px;
}

.podcast-cover-wave i{
  display:block;
  flex:1;
  min-width:8px;
  border-radius:999px;
  background:linear-gradient(180deg,#b7d60b,#8ed8e8);
  box-shadow:0 0 16px rgba(142,216,232,.16);
}
.podcast-cover-wave i:nth-child(1){height:16px}
.podcast-cover-wave i:nth-child(2){height:31px}
.podcast-cover-wave i:nth-child(3){height:22px}
.podcast-cover-wave i:nth-child(4){height:42px}
.podcast-cover-wave i:nth-child(5){height:28px}
.podcast-cover-wave i:nth-child(6){height:36px}
.podcast-cover-wave i:nth-child(7){height:18px}

.podcast-video-section{
  padding:clamp(54px,6vw,84px) 0 clamp(84px,8vw,122px);
}

.podcast-video-intro{
  width:min(100%,850px);
  margin:0 auto 26px;
  text-align:center;
}

.podcast-video-intro > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 16px;
  border-radius:999px;
  color:#123f61;
  background:rgba(237,248,252,.96);
  border:1px solid rgba(200,229,239,.96);
  font-size:13px;
  font-weight:950;
}

.podcast-video-intro h2{
  margin:14px 0 10px;
  color:#0f2740;
  font-size:clamp(26px,3vw,42px);
  line-height:1.45;
  font-weight:950;
  letter-spacing:-.035em;
}

.podcast-video-intro p{
  margin:0 auto;
  color:#5f758b;
  font-size:15.5px;
  line-height:2.05;
  font-weight:650;
}

.podcast-video-shell{
  width:min(100%,1180px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(340px,.72fr);
  gap:20px;
  align-items:start;
}

.podcast-video-player-card,
.podcast-video-playlist{
  border:1px solid rgba(190,226,238,.9);
  border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.995),rgba(246,252,255,.97));
  box-shadow:0 22px 60px rgba(8,34,58,.08),inset 0 1px 0 rgba(255,255,255,.96);
}

.podcast-video-player-card{
  overflow:hidden;
}

.podcast-video-frame{
  position:relative;
  overflow:hidden;
  aspect-ratio:16/9;
  background:#061626;
}

.podcast-video-frame::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 -80px 110px rgba(0,0,0,.08);
}

.podcast-video-frame video{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#061626;
}

.podcast-video-current{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:22px;
}

.podcast-video-current > div{
  min-width:0;
}

.podcast-video-current span{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  min-height:30px;
  align-items:center;
  padding:0 12px;
  margin-bottom:9px;
  border-radius:999px;
  color:#123f61;
  background:rgba(237,248,252,.96);
  border:1px solid rgba(190,226,238,.9);
  font-size:12px;
  font-weight:950;
}

.podcast-video-current h2{
  margin:0 0 8px;
  color:#0f2740;
  font-size:clamp(22px,2.2vw,34px);
  line-height:1.4;
  font-weight:950;
  letter-spacing:-.035em;
}

.podcast-video-current p{
  margin:0;
  color:#5f758b;
  font-size:14.5px;
  line-height:2;
  font-weight:650;
}

.podcast-video-download,
.podcast-video-controls button{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 17px;
  border-radius:999px;
  border:0;
  color:#ffffff;
  background:#123f61;
  font-family:inherit;
  font-size:13px;
  font-weight:950;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(18,63,97,.16);
  transition:background .2s ease,transform .2s ease;
}

.podcast-video-download:hover,
.podcast-video-download:focus-visible,
.podcast-video-controls button:hover,
.podcast-video-controls button:focus-visible{
  color:#ffffff;
  background:#061626;
  transform:translateY(-1px);
}

.podcast-video-controls{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  padding:0 22px 22px;
}

.podcast-video-controls button{
  color:#123f61;
  background:rgba(237,248,252,.96);
  border:1px solid rgba(190,226,238,.9);
  box-shadow:none;
}

.podcast-video-playlist{
  position:sticky;
  top:86px;
  padding:16px;
}

.podcast-video-search{
  display:grid;
  gap:8px;
  margin-bottom:12px;
}

.podcast-video-search label{
  color:#123f61;
  font-size:13px;
  font-weight:950;
}

.podcast-video-search__field{
  position:relative;
  display:flex;
  align-items:center;
  gap:8px;
  min-height:50px;
  padding:6px 12px 6px 6px;
  border-radius:18px;
  background:#ffffff;
  border:1px solid rgba(190,226,238,.95);
  box-shadow:0 7px 20px rgba(8,34,58,.035);
}

.podcast-video-search__field::before{
  content:"⌕";
  flex:0 0 auto;
  width:32px;
  height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:13px;
  color:#123f61;
  background:rgba(237,248,252,.96);
  font-size:19px;
  font-weight:900;
}

.podcast-video-search__field input{
  width:100%;
  min-width:0;
  border:0;
  outline:0;
  color:#0f2740;
  background:transparent;
  font-family:inherit;
  font-size:14px;
  font-weight:750;
}

.podcast-video-search__field button{
  flex:0 0 auto;
  width:32px;
  height:32px;
  border:0;
  border-radius:999px;
  color:#5f758b;
  background:rgba(15,39,64,.07);
  font-size:21px;
  line-height:1;
  cursor:pointer;
}

.podcast-video-search__field button:hover,
.podcast-video-search__field button:focus-visible{
  color:#ffffff;
  background:#123f61;
}

.podcast-video-list{
  display:grid;
  grid-auto-rows:92px;
  gap:10px;
  max-height:602px;
  overflow:auto;
  padding-left:4px;
  scrollbar-width:thin;
  scrollbar-color:rgba(18,63,97,.42) transparent;
}

.podcast-video-item{
  position:relative;
  width:100%;
  height:92px;
  min-height:92px;
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:13px;
  align-items:center;
  padding:12px 14px;
  overflow:hidden;
  border:1px solid rgba(190,226,238,.86);
  border-inline-start:4px solid transparent;
  border-radius:20px;
  color:#0f2740;
  background:linear-gradient(145deg,#ffffff,#fbfdfe);
  font-family:inherit;
  text-align:right;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(8,34,58,.05);
  transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
}

.podcast-video-item::after{
  content:attr(data-episode);
  position:absolute;
  top:8px;
  left:10px;
  color:rgba(18,63,97,.35);
  font-size:10px;
  font-weight:950;
  direction:ltr;
}

.podcast-video-item:hover,
.podcast-video-item:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(18,63,97,.26);
  box-shadow:0 14px 34px rgba(18,63,97,.10);
}

.podcast-video-item.is-active{
  border-color:rgba(18,63,97,.34);
  border-inline-start-color:#123f61;
  background:linear-gradient(135deg,#ffffff,#edf8fc);
  box-shadow:0 16px 38px rgba(18,63,97,.12);
}

.podcast-video-thumb{
  position:relative;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#123f61;
  background:linear-gradient(135deg,#e8f9fd,#f6fdff);
  border:1px solid rgba(142,216,232,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

.podcast-video-thumb::before{
  content:"";
  width:0;
  height:0;
  margin-right:-3px;
  border-top:7px solid transparent;
  border-bottom:7px solid transparent;
  border-left:11px solid currentColor;
}

.podcast-video-item.is-active .podcast-video-thumb{
  color:#ffffff;
  background:#123f61;
  border-color:#123f61;
}

.podcast-video-item__content{
  min-width:0;
  display:grid;
  align-content:center;
}

.podcast-video-item strong{
  display:block;
  overflow:hidden;
  margin-bottom:2px;
  color:#0f2740;
  font-size:14px;
  line-height:1.45;
  font-weight:950;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.podcast-video-item .podcast-video-subtitle{
  display:block;
  overflow:hidden;
  color:#5f758b;
  font-size:12.2px;
  line-height:1.45;
  font-weight:750;
  text-overflow:ellipsis;
  white-space:nowrap;
  direction:ltr;
  text-align:right;
}

.podcast-video-item small{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  margin-top:6px;
  padding:0 9px;
  border-radius:999px;
  color:#123f61;
  background:rgba(237,248,252,.96);
  border:1px solid rgba(190,226,238,.9);
  font-size:10.5px;
  font-weight:950;
  white-space:nowrap;
}

.podcast-video-empty{
  padding:14px;
  border-radius:18px;
  color:#7a1e1e;
  background:#fff0f0;
  border:1px solid #ffc9c9;
  font-size:13px;
  font-weight:900;
  text-align:center;
}

@media (max-width:980px){
  .podcast-video-shell{
    grid-template-columns:1fr;
  }

  .podcast-video-playlist{
    position:static;
  }

  .podcast-video-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:96px;
    max-height:none;
    overflow:visible;
    padding-left:0;
  }

  .podcast-video-item{
    height:96px;
    min-height:96px;
  }
}

@media (max-width:700px){
  .podcast-cover-visual{
    min-height:320px;
  }

  .podcast-video-current{
    grid-template-columns:1fr;
    padding:17px;
  }

  .podcast-video-download{
    width:100%;
  }

  .podcast-video-controls{
    display:grid;
    grid-template-columns:1fr 1fr;
    padding:0 17px 17px;
  }

  .podcast-video-controls button{
    width:auto;
    padding:0 10px;
  }

  .podcast-video-player-card,
  .podcast-video-playlist{
    border-radius:24px;
  }

  .podcast-video-frame{
    aspect-ratio:16/10;
  }

  .podcast-video-list{
    grid-template-columns:1fr;
    grid-auto-rows:90px;
  }

  .podcast-video-item{
    height:90px;
    min-height:90px;
  }
}

@media (max-width:480px){
  .podcast-cover-visual{
    min-height:285px;
    padding:18px;
  }

  .podcast-cover-screen{
    min-height:135px;
  }

  .podcast-cover-play{
    width:66px;
    height:66px;
  }

  .podcast-video-controls{
    grid-template-columns:1fr;
  }
}
