.podcast-page,
.podcast-view,
.podcast-episode-page {
  margin: 20px 0;
}

.podcast-page__title,
.podcast-view__title,
.podcast-episode-full__title {
  margin: 0 0 18px;
  font-size: 28px;
  line-height: 1.2;
  font-weight: 700;
}

.podcast-page__description,
.podcast-view__description,
.podcast-episode-full__description,
.podcast-view__links,
.podcast-block,
.podcast-episode-full,
.podcast-episode-sidebar {
  padding: 16px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  background: rgba(255,255,255,.03);
}

.podcast-page__description,
.podcast-view__links,
.podcast-view__description,
.podcast-block {
  margin-bottom: 18px;
}

.podcast-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.podcast-card,
.podcast-episode-card {
  padding: 14px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  background: rgba(255,255,255,.03);
}

.podcast-card__image,
.podcast-view__image,
.podcast-episode-card__image,
.podcast-episode-full__image,
.podcast-episode-sidebar__image {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 12px;
}

.podcast-card__title,
.podcast-episode-card__title,
.podcast-episode-sidebar__title {
  margin: 12px 0 10px;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 700;
}

.podcast-card__title a,
.podcast-episode-card__title a,
.podcast-episode-sidebar__title a,
.podcast-view__site a,
.podcast-episode-full__meta a {
  text-decoration: none;
  color: inherit;
}

.podcast-card__meta,
.podcast-episode-card__meta,
.podcast-view__meta,
.podcast-episode-full__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 0 0 12px;
  font-size: 13px;
  opacity: .85;
}

.podcast-card__desc,
.podcast-episode-card__desc,
.podcast-episode-sidebar__desc {
  font-size: 14px;
  line-height: 1.55;
}

.podcast-filters {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 18px;
}

.podcast-filters__label {
  display: block;
  margin: 0 0 6px;
  font-size: 12px;
  opacity: .8;
}

.podcast-filters__select,
.pod-btn {
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  background: rgba(255,255,255,.04);
  color: inherit;
}

.podcast-filters__item--submit {
  display: flex;
  align-items: end;
}

.pod-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  text-decoration: none;
  cursor: pointer;
}

.pod-tag {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.04);
  text-decoration: none;
  color: inherit;
}

.podcast-view__hero {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 20px;
  margin-bottom: 18px;
}

.podcast-view__categories,
.podcast-links,
.podcast-episode-card__actions,
.podcast-episode-sidebar__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.podcast-block__title {
  margin: 0 0 14px;
  font-size: 22px;
  font-weight: 700;
}

.podcast-episodes {
  display: grid;
  gap: 14px;
}

.podcast-episode-card {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 14px;
}

.podcast-episode-page__main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 20px;
}

.podcast-episode-full__player {
  margin: 0 0 16px;
}

.podcast-audio-player {
  width: 100%;
}

.pod-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 0;
}

.pod-pagination__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  text-decoration: none;
  color: inherit;
}

.pod-pagination__item--active {
  background: rgba(255,255,255,.08);
  font-weight: 700;
}

.content img,
.content iframe,
.content table {
  max-width: 100%;
}

@media (max-width: 1100px) {
  .podcast-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .podcast-view__hero,
  .podcast-episode-page__main {
    grid-template-columns: 1fr;
  }

  .podcast-view__cover {
    max-width: 320px;
  }
}

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

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

  .podcast-episode-card {
    grid-template-columns: 1fr;
  }

  .podcast-page__title,
  .podcast-view__title,
  .podcast-episode-full__title {
    font-size: 24px;
  }
}

.podcast-topic-list {
  display: grid;
  gap: 14px;
}

.podcast-topic-card {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 14px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  background: rgba(255,255,255,.03);
}

.podcast-topic-card__image {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 12px;
}

.podcast-topic-card__title {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 700;
}

.podcast-topic-card__title a,
.podcast-topic-card__meta a {
  text-decoration: none;
  color: inherit;
}

.podcast-topic-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 0 0 12px;
  font-size: 13px;
  opacity: .85;
}

.podcast-topic-card__desc {
  font-size: 14px;
  line-height: 1.55;
}

.podcast-topic-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

@media (max-width: 767px) {
  .podcast-topic-card {
    grid-template-columns: 1fr;
  }
}