/* Analisador de vídeos — todas as classes com prefixo anl- para não conflitar com o dashboard */
.anl-barra { margin-bottom: 18px; padding-bottom: 14px; border-bottom: 1px solid #e0e0e0; }
.anl-linha { display: flex; gap: 8px; flex-wrap: wrap; }
.anl-campo { flex: 1 1 220px; min-width: 0; padding: 9px 12px; border: 2px solid #ddd; border-radius: 8px; font-size: 0.95em; }
.anl-campo:focus { outline: none; border-color: #ff0000; }
.anl-aviso { color: #c40000; font-size: 0.9em; margin-top: 6px; }

.anl-botao { background: #c4302b; color: #fff; border: none; border-radius: 8px; padding: 9px 14px; font-weight: bold; cursor: pointer; font-size: 0.9em; }
.anl-botao:hover:not(:disabled) { background: #a32520; }
.anl-botao:disabled { opacity: 0.6; cursor: wait; }
.anl-botao-secundario { background: #667eea; }
.anl-botao-secundario:hover:not(:disabled) { background: #4c5fd0; }
.anl-botao-card { display: inline-block; margin-top: 10px; padding: 6px 12px; font-size: 0.85em; }

.anl-historico { margin-top: 10px; font-size: 0.92em; }
.anl-historico summary { cursor: pointer; color: #2e52a0; font-weight: bold; }
.anl-historico-lista { list-style: none; margin: 8px 0 0; padding: 0; max-height: 220px; overflow-y: auto; }
.anl-historico-lista li { margin: 2px 0; }
.anl-link { background: none; border: none; color: #1a1a1a; cursor: pointer; text-align: left; padding: 4px 2px; font-size: 1em; }
.anl-link:hover { color: #ff0000; text-decoration: underline; }

.anl-sem-rolagem { overflow: hidden; }
.anl-fundo { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.55); z-index: 1000; display: flex; align-items: flex-start; justify-content: center; padding: 4vh 16px; overflow-y: auto; }
.anl-fundo[hidden] { display: none; }
.anl-modal { position: relative; background: #fff; border-radius: 12px; width: min(760px, 100%); padding: 28px; box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35); font-family: Arial, sans-serif; color: #1a1a1a; line-height: 1.5; }
.anl-fechar { position: absolute; top: 10px; right: 12px; background: none; border: none; font-size: 1.4em; cursor: pointer; color: #666; }
.anl-fechar:hover { color: #000; }

.anl-espera { text-align: center; padding: 40px 10px; }
.anl-spinner { width: 46px; height: 46px; margin: 0 auto 18px; border: 5px solid #eee; border-top-color: #c4302b; border-radius: 50%; animation: anl-girar 0.9s linear infinite; }
@keyframes anl-girar { to { transform: rotate(360deg); } }
.anl-espera-msg { font-size: 1.1em; font-weight: bold; color: #2e52a0; }
.anl-espera-tempo { color: #888; margin-top: 6px; }

.anl-erro { text-align: center; padding: 28px 10px; }
.anl-erro-icone { font-size: 2.2em; }
.anl-acoes { margin-top: 16px; display: flex; gap: 8px; justify-content: center; }

.anl-cabecalho { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 16px; padding-right: 24px; }
.anl-thumb { width: 160px; max-width: 40%; border-radius: 8px; flex-shrink: 0; }
.anl-titulo { display: block; font-weight: 700; font-size: 1.15em; color: #1a1a1a; text-decoration: none; }
a.anl-titulo:hover { color: #ff0000; text-decoration: underline; }
.anl-canal { color: #666; font-size: 0.92em; margin-top: 4px; }

.anl-nota { font-size: 1.3em; margin: 6px 0; }
.anl-estrelas { color: #f5a623; letter-spacing: 2px; }
.anl-gancho { font-style: italic; color: #2e52a0; margin: 6px 0; }
.anl-justificativa { color: #444; }

.anl-secao { margin-top: 18px; }
.anl-secao h3 { font-size: 1em; color: #c4302b; margin-bottom: 6px; }
.anl-secao ul { padding-left: 20px; }
.anl-titulos { list-style: none; padding-left: 0 !important; }
.anl-titulos li { display: flex; justify-content: space-between; gap: 8px; align-items: center; background: #f7f7fb; border-radius: 6px; padding: 6px 10px; margin: 4px 0; }
.anl-copiar { background: none; border: none; cursor: pointer; font-size: 1.1em; flex-shrink: 0; }
.anl-conceito { margin: 8px 0; }
.anl-conceito h4 { font-size: 0.95em; color: #2e52a0; }
.anl-nivel { margin-top: 6px; color: #444; }

.anl-rodape { margin-top: 22px; padding-top: 12px; border-top: 1px solid #eee; display: flex; justify-content: space-between; gap: 12px; align-items: center; flex-wrap: wrap; color: #888; font-size: 0.85em; }
.anl-ler { display: inline-block; margin-top: 4px; font-size: 0.88em; color: #2e52a0; text-decoration: none; }
.anl-ler:hover { text-decoration: underline; }
.news-item .anl-botao-card { margin: 0 0 0 8px; vertical-align: middle; }
