/* Ajustes de operação que preservam o desenho da referência. */
:focus-visible {
  outline: 3px solid #6D3F82;
  outline-offset: 3px;
}
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; top: -80px; left: 16px; z-index: 50; padding: 10px 14px; background: white; color: #4E2A66; border-radius: 8px; }
.skip-link:focus { top: 12px; }
button { font: inherit; }
.pix-key-btn:disabled { cursor: default; opacity: .74; }
.pix-key-btn:disabled:active { transform: none; }
.bonus-card[aria-disabled="true"] { cursor: default; }
.media-review-note {
  margin: 0 0 18px;
  color: #5C5068;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}
.media-unavailable {
  display: grid;
  place-content: center;
  gap: 8px;
  min-height: 220px;
  padding: 24px;
  text-align: center;
  background: #261b31;
  color: #fff;
}
.media-unavailable[hidden], .video-wrapper iframe[hidden], .video-wrapper video[hidden], .pdf-frame[hidden] { display: none; }
.video-wrapper video { position: absolute; inset: 0; width: 100%; height: 100%; background: #111; }
.video-wrapper .media-unavailable { position: absolute; inset: 0; min-height: 0; }
.media-unavailable small { opacity: .75; }
.video-retry { justify-self: center; margin-top: 8px; border: 0; border-radius: 999px; padding: 10px 18px; background: #fff; color: #4e2a66; font-weight: 700; cursor: pointer; }
.video-retry[hidden], .progress-message[hidden] { display: none; }
.progress-message { color: #8a2537; font-size: 13px; font-weight: 600; }
.viewer-placeholder { flex: 1; min-height: 0; }
.dl-btn[aria-disabled="true"] { opacity: .7; cursor: default; }
.si-item { width: 100%; border: 0; background: transparent; text-align: left; }
.btn-done:disabled, .nav-btn:disabled { cursor: default; opacity: .6; }
.lesson-btn[aria-disabled="true"] { cursor: default; opacity: .6; }
.lesson-btn[aria-disabled="true"]:hover { background: var(--acento); }
@media (max-width: 899px) {
  .footer { padding-bottom: calc(92px + env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
