/* ────────────────────────────────────────────────────────────
   Player póster + banderas de idioma
   ──────────────────────────────────────────────────────────── */

.video-options {
  position: relative;
}

.plyr-poster {
  position: relative;
  min-height: 22.5rem;
  background: #000;
  overflow: hidden;
  border-radius: .35rem;
  cursor: pointer;
}

.plyr-poster-media {
  position: relative;
  padding-bottom: 56.25%;
  height: 100%;
}

.plyr-poster-media img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.plyr-play {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, .9);
  background: rgba(0, 0, 0, .45);
  color: #fff;
  font-size: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: .25rem;
  cursor: pointer;
  transition: .2s;
}

.plyr-play:hover {
  background: var(--primary);
  color: var(--dark);
  transform: scale(1.06);
}

.plyr-langs {
  position: relative;
  min-height: 22.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url('../img/fondofondo.png') center/cover no-repeat;
  border-radius: .35rem;
  z-index: 5;
}

.plyr-langs.hdd {
  display: none;
}

.plyr-langs-tip {
  font-size: .75rem;
  opacity: .75;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.plyr-langs-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  flex-wrap: wrap;
}

.plyr-langs .plyr-lang {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 7rem;
  height: 7rem;
  padding: 0;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, .35);
  overflow: hidden;
  cursor: pointer;
  transition: .2s;
}

.plyr-langs .plyr-lang .plyr-lang-flag {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.plyr-langs .plyr-lang:hover {
  border-color: var(--primary);
  box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .12);
}

/* ────────────────────────────────────────────────────────────
   Banderas reutilizables
   ──────────────────────────────────────────────────────────── */

.hn-flag {
  display: inline-block;
  width: 1.3em;
  height: .875em;
  border-radius: .15em;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .25);
  overflow: hidden;
  vertical-align: -.15em;
}

.hn-flag svg {
  display: block;
  width: 100%;
  height: 100%;
}

/* Selector de idioma (dropdown) */
.hn-lang {
  position: relative;
  display: inline-block;
}

.hn-lang-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  opacity: .6;
  transition: .2s;
}

.hn-lang-btn:hover,
.hn-lang-btn[aria-expanded="true"] {
  opacity: 1;
}

.hn-lang-btn .hn-flag {
  width: 1.5rem;
  height: 1rem;
}

.hn-lang-menu {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 999;
  min-width: 9.5rem;
  padding: .35rem;
  border-radius: .45rem;
  border: 1px solid rgba(255, 255, 255, .12);
  background: #16181a;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .45);
}

.hn-lang-item {
  display: flex;
  align-items: center;
  gap: .6rem;
  width: 100%;
  padding: .5rem .65rem;
  border: 0;
  border-radius: .3rem;
  background: transparent;
  color: var(--text);
  font-size: .85rem;
  text-align: left;
  cursor: pointer;
  transition: background .18s, color .18s;
}

.hn-lang-item:hover,
.hn-lang-item[aria-selected="true"] {
  background: rgba(255, 255, 255, .08);
  color: var(--light);
}

.hn-lang-item .hn-flag {
  width: 1.2rem;
  height: .8rem;
}

.hd .social .hn-lang {
  margin-right: .35rem;
}

.ft .social .hn-lang {
  padding: 0;
}

.ft .social .hn-lang-btn .hn-flag {
  width: 1.15rem;
  height: .8rem;
}

.ft .social .hn-lang-menu {
  top: auto;
  bottom: calc(100% + 6px);
}

/* Selector dentro del menú móvil */
.hn-mobile-nav__links .hn-lang {
  width: 100%;
  padding: 8px 14px;
}

.hn-mobile-nav__links .hn-lang-btn {
  width: 100%;
  justify-content: flex-start;
  padding: 12px 14px;
  border-radius: 8px;
  transition: background .18s;
}

.hn-mobile-nav__links .hn-lang-btn:hover,
.hn-mobile-nav__links .hn-lang-btn:focus {
  background: rgba(255, 255, 255, .07);
  outline: none;
}

.hn-mobile-nav__links .hn-lang-menu {
  position: static;
  width: 100%;
  margin-top: 4px;
  box-shadow: none;
}
