/* Formato vertical original: texto, vídeo, repetir e ações. */
.swal2-container { box-sizing: border-box; padding: 12px !important; align-items: center !important; }
.swal2-popup:not(.swal2-toast) {
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    width: min(570px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: min(540px, calc(100vh - 24px)) !important;
    max-height: min(540px, calc(100dvh - 24px)) !important;
    min-height: 0 !important;
    padding: 8px !important;
    gap: 4px;
    border: 3px solid #e5bd27 !important;
    border-radius: 23px !important;
    font-family: "Nunito", Arial, sans-serif !important;
}
.swal2-popup:not(.swal2-toast)[style*="display: none"] { display: none !important; }
.swal2-popup .swal2-icon { flex: 0 0 auto; align-self: center; font-size: 5.5px !important; margin: 0 auto !important; }
.swal2-popup .swal2-title {
    flex: 0 0 auto; margin: 0 !important; padding: 0 10px !important;
    color: #1d3557; font-size: clamp(18px, 2.5vw, 23px) !important;
    line-height: 1.15 !important; overflow-wrap: anywhere;
}
.swal2-popup .swal2-html-container {
    flex: 1 1 auto; min-height: 0; margin: 0 !important; padding: 0 !important;
    overflow: auto; color: #263e52; font-size: 14px !important; line-height: 1.4 !important;
}
/* Uma coluna em todos os tamanhos de tela. Sem texto ao lado do vídeo. */
.swal2-popup .explicacao-resposta,
.swal2-popup .alerta-conteudo-acessivel,
.swal2-popup .swal2-html-container > div:has(> #videoAlertaVideoaula) {
    display: grid !important; grid-template-columns: minmax(0,1fr) !important;
    gap: 4px !important; align-items: start; text-align: left;
}
.swal2-popup .explicacao-resposta > *,
.swal2-popup .alerta-conteudo-acessivel > *,
.swal2-popup .swal2-html-container > div:has(> #videoAlertaVideoaula) > * {
    grid-column: 1 !important; grid-row: auto !important; min-width: 0;
}
.swal2-popup .texto-explicacao,
.swal2-popup .alerta-conteudo-acessivel > p,
.swal2-popup .swal2-html-container > div:has(> #videoAlertaVideoaula) > div:first-child {
    margin: 0 !important; padding: 6px 10px !important;
    font-size: 14px; line-height: 1.4; overflow-wrap: anywhere;
}
.swal2-popup .alerta-conteudo-acessivel > p { order: -1; }
.swal2-popup .video-explicacao,
.swal2-popup #videoAlertaVideoaula,
.swal2-popup .video-libras-alerta {
    box-sizing: border-box; display: block; width: 100% !important;
    /* Altura original da janela de Libras: 260px. */
    height: 260px !important;
    min-height: 0 !important;
    max-height: max(100px, calc(100vh - 290px));
    max-height: max(100px, calc(100dvh - 290px));
    object-fit: contain; background: #101827; border-radius: 12px !important;
}
.swal2-popup .botao-alerta-repetir,
.swal2-popup #repetirAlertaVideoaula,
.swal2-popup .repetir-video-interface {
    box-sizing: border-box; width: 100%; min-height: 34px !important;
    margin: 0 !important; padding: 6px 8px !important;
    font-size: 13px !important; line-height: 1.25;
}
.swal2-popup .janela-libras-alerta {
    display: grid; gap: 5px; padding: 4px; min-width: 0;
    border-width: 2px; border-radius: 12px;
}
.swal2-popup .janela-libras-alerta > strong { font-size: 12px; }
.swal2-popup .libras-video-pendente {
    min-height: 65px !important; margin: 0; padding: 10px !important; font-size: 13px; line-height: 1.35;
}
.swal2-popup .aviso-video-explicacao { margin: 0; padding: 8px; }
.swal2-popup .swal2-actions {
    flex: 0 0 auto; width: 100%; justify-content: center; flex-wrap: wrap;
    gap: 6px; margin: 0 !important; padding-top: 2px;
}
.swal2-popup .swal2-actions button {
    box-sizing: border-box; min-height: 40px !important; margin: 0 !important;
    padding: 8px 11px !important; font-size: 13px !important; line-height: 1.25 !important;
    white-space: normal; border-radius: 11px !important;
}
.swal2-popup .swal2-input {
    flex: 0 0 auto; box-sizing: border-box; width: calc(100% - 12px); max-width: 100%;
    min-height: 40px; margin: 0 6px !important; font-size: 15px;
}
.swal2-popup .swal2-validation-message { flex: 0 0 auto; margin: 0 !important; padding: 5px !important; font-size: 13px; }
.swal2-popup .swal2-footer { margin: 0 !important; padding: 6px 0 0; font-size: 12px; }
@media (max-width: 480px) {
    .swal2-container { padding: 8px !important; }
    .swal2-popup:not(.swal2-toast) {
        width: calc(100vw - 16px) !important; max-width: calc(100vw - 16px) !important;
        max-height: min(540px, calc(100dvh - 16px)) !important;
        padding: 10px !important; gap: 5px;
    }
    .swal2-popup .swal2-title { font-size: 19px !important; }
    .swal2-popup .swal2-actions button { flex: 1 1 100px; min-width: 0; }
}
@media (max-height: 500px) {
    .swal2-container { padding: 6px !important; }
    .swal2-popup:not(.swal2-toast) { max-height: calc(100dvh - 12px) !important; padding: 8px !important; gap: 4px; }
    .swal2-popup .swal2-icon { font-size: 4px !important; }
    .swal2-popup .swal2-title { font-size: 18px !important; }
    .swal2-popup .video-explicacao,
    .swal2-popup #videoAlertaVideoaula,
    .swal2-popup .video-libras-alerta { height: min(260px, max(100px, calc(100dvh - 250px))) !important; max-height: none; }
    .swal2-popup .swal2-actions button { min-height: 36px !important; padding: 6px 9px !important; }
}
.swal2-popup [hidden] { display: none !important; }

/* Só as telas muito estreitas reduzem a janela para acomodar botões em duas linhas. */
@media (max-width: 360px) {
    .swal2-popup .video-explicacao,
    .swal2-popup #videoAlertaVideoaula,
    .swal2-popup .video-libras-alerta { height: min(260px, 30dvh, 210px) !important; }
}
