/* Mascote local: o ponto de montagem decide a posição junto ao globo. */
.langrinho {
  position: relative;
  width: 160px;
  max-width: 100%;
  min-width: 0;
}
.langrinho *, .langrinho *::before, .langrinho *::after { box-sizing: border-box; }
.langrinho [hidden] { display: none !important; }
.langrinho__figura { position: relative; width: 100%; aspect-ratio: 1; }
.langrinho__filme {
  position: absolute;
  inset: 0;
  z-index: 6;
  pointer-events: none;
  background: var(--lg-fundo, #050505);
  /* O filme inteiro se mistura ao globo, sem um quadrado preto no celular. */
  mix-blend-mode: lighten;
  mask-image: linear-gradient(transparent, #000 2% 98%, transparent);
}
.langrinho__poster, .langrinho__video {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}
.langrinho__video { visibility: hidden; }
.langrinho[data-video="pronto"] .langrinho__video { visibility: visible; }
.langrinho[data-video="pronto"] .langrinho__poster { visibility: hidden; }
.langrinho__balao {
  position: absolute;
  z-index: 8;
  top: 37%;
  left: calc(100% - 8px);
  transform: translateY(-50%);
  width: calc(100% - 8px);
  padding: 7px 9px;
  border: 1px solid var(--lg-limao, #a9ff45);
  border-radius: 12px;
  background: #121810;
  color: #f1f5ed;
  font-size: 12px;
  line-height: 1.25;
  text-align: center;
  overflow-wrap: anywhere;
  pointer-events: none;
}
.langrinho__balao::after {
  content: '';
  position: absolute;
  left: -5px;
  top: calc(50% - 4px);
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  border-left: 1px solid var(--lg-limao, #a9ff45);
  border-bottom: 1px solid var(--lg-limao, #a9ff45);
  background: #121810;
}
.langrinho__controles { position:relative; z-index:8; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; width: 100%; margin-top: 4px; }
.langrinho__chat, .langrinho__pausa {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  padding: 11px;
  border: 1px solid var(--lg-linha, #30352d);
  border-radius: 50%;
  cursor: pointer;
  touch-action: manipulation;
}
.langrinho__chat { background: var(--lg-limao, #a9ff45); color: #10180a; border-color: transparent; }
.langrinho__chat[aria-expanded="true"] { box-shadow: 0 0 0 3px rgb(169 255 69 / 18%); }
.langrinho__pausa { background: #151813; color: #d6dfd0; }
.langrinho__chat svg, .langrinho__pausa svg { display: block; width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; pointer-events: none; }
.langrinho__chat:focus-visible, .langrinho__pausa:focus-visible { outline: 2px solid var(--lg-limao, #a9ff45); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
  .langrinho__video, .langrinho__pausa { display: none !important; }
  .langrinho[data-video="pronto"] .langrinho__poster { visibility: visible; }
}
body.sem-movimento .langrinho__video, body.sem-movimento .langrinho__pausa { display: none !important; }
body.sem-movimento .langrinho .langrinho__poster { visibility: visible; }
