/* VIVA Gestão — Academia (CMS / Course Builder). Só tokens do Gestão (claro/escuro automático). */
.vg-ac-kpis.vg-kpis-4{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.vg-ac-rank{ list-style:none; margin:0; padding:0; counter-reset:r; }
.vg-ac-rank li{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:8px 0; border-bottom:1px solid var(--vg-borda); font-size:13.5px; counter-increment:r; }
.vg-ac-rank li:last-child{ border-bottom:none; }
.vg-ac-rank li > span{ min-width:0; overflow-wrap:anywhere; }
.vg-ac-rank li > span::before{ content:counter(r)'. '; color:var(--vg-muted); }
.vg-ac-rank li strong{ white-space:nowrap; }
.vg-ac-ordem{ display:inline-flex; gap:2px; }
.vg-ac-mini{ width:30px; height:30px; font-size:14px; }
.vg-ac-mini:disabled{ opacity:.35; cursor:not-allowed; }
.vg-ac-acoes{ display:inline-flex; flex-wrap:wrap; gap:6px; align-items:center; }
.vg-ac-pend{ color:var(--vg-warn); font-weight:600; }
.vg-ac-faixa{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; background:var(--vg-warn-bg); color:var(--vg-ink); border-radius:var(--vg-r-sm); padding:10px 14px; margin:0 0 16px; font-size:13.5px; }
.vg-ac-faixa-rasc{ background:var(--vg-info-bg); }
/* editor: árvore à esquerda, painel à direita */
.vg-ac-editor{ display:grid; grid-template-columns:260px minmax(0,1fr); gap:16px; align-items:start; }
.vg-ac-arvore{ background:var(--vg-card); border:1px solid var(--vg-borda); border-radius:var(--vg-r); padding:10px; position:sticky; top:12px; max-height:calc(100vh - 24px); overflow:auto; }
.vg-ac-arvore ul{ list-style:none; margin:0; padding:0; }
.vg-ac-arvore ul ul{ padding-left:12px; }
.vg-ac-arv-sec, .vg-ac-arv-aula{ display:flex; align-items:center; gap:8px; width:100%; text-align:left; padding:8px 10px; border-radius:8px; font-size:13.5px; color:var(--vg-ink); min-height:36px; }
.vg-ac-arv-sec{ font-weight:600; }
.vg-ac-arv-aula{ font-size:13px; color:var(--vg-muted); }
.vg-ac-arv-sec:hover, .vg-ac-arv-aula:hover{ background:var(--vg-soft); }
.vg-ac-arv-sec.ativo, .vg-ac-arv-aula.ativo{ background:var(--vg-soft); color:var(--vg-ink); box-shadow:inset 3px 0 0 var(--vg-acento); }
.vg-ac-arv-mod{ display:block; padding:6px 10px 2px; font-size:11.5px; font-weight:600; letter-spacing:.02em; color:var(--vg-muted); text-transform:uppercase; overflow-wrap:anywhere; }
.vg-ac-arv-vazio{ padding:4px 10px; font-size:12px; }
.vg-ac-dot{ width:8px; height:8px; border-radius:50%; background:var(--vg-warn); flex:0 0 8px; }
.vg-ac-dot.ok{ background:var(--vg-ok); }
.vg-ac-painel{ min-width:0; }
.vg-ac-form .vg-campo textarea{ font:inherit; font-size:13px; }
.vg-ac-check{ display:inline-flex; align-items:center; gap:8px; font-size:13.5px; margin:4px 16px 8px 0; min-height:32px; }
.vg-ac-fs{ border:none; margin:0 0 10px; padding:0; min-width:0; }
.vg-ac-fs legend{ font-size:12px; font-weight:600; color:var(--vg-muted); margin-bottom:6px; padding:0; }
.vg-ac-capa{ display:block; max-width:280px; width:100%; border-radius:8px; margin:0 0 12px; }
.vg-ac-mod-tit{ overflow-wrap:anywhere; }
.vg-ac-aulas, .vg-ac-blocos{ list-style:none; margin:0 0 12px; padding:0; }
.vg-ac-aula, .vg-ac-bloco{ display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; gap:10px; align-items:center; padding:10px 0; border-bottom:1px solid var(--vg-borda); }
.vg-ac-bloco{ grid-template-columns:auto minmax(0,1fr) auto; }
.vg-ac-aula-tx{ display:flex; flex-direction:column; gap:2px; min-width:0; font-size:13.5px; }
.vg-ac-aula-tx strong, .vg-ac-aula-tx small{ overflow-wrap:anywhere; }
.vg-ac-inline{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.vg-ac-inline input, .vg-ac-inline select{ flex:1 1 200px; min-width:0; padding:8px 10px; border:1px solid var(--vg-borda); border-radius:8px; background:var(--vg-card); color:var(--vg-ink); font:inherit; font-size:13px; min-height:36px; }
.vg-ac-aula-topo{ display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:10px; }
.vg-ac-aula-topo p{ margin:0; }
.vg-ac-video video{ display:block; width:100%; max-width:520px; aspect-ratio:16/9; background:#000; border-radius:8px; }
.vg-ac-video p{ margin:8px 0 12px; overflow-wrap:anywhere; }
.vg-ac-lista{ margin:0 0 10px; padding-left:18px; font-size:13.5px; line-height:1.6; }
.vg-ac-lista li{ overflow-wrap:anywhere; }
.vg-ac-filtro{ display:flex; align-items:center; gap:10px; margin:0 0 14px; flex-wrap:wrap; }
.vg-ac-filtro label{ font-size:12px; font-weight:600; color:var(--vg-muted); }
.vg-ac-filtro select{ padding:8px 10px; border:1px solid var(--vg-borda); border-radius:8px; background:var(--vg-card); color:var(--vg-ink); font:inherit; font-size:13px; max-width:100%; min-height:36px; }
.vg-ac-cert-prev{ max-width:560px; }
.vg-ac-tab td, .vg-ac-tab th{ overflow-wrap:anywhere; }
.vg-ac-ok{ color:var(--vg-ok); font-weight:600; }
.vg-ac-erro{ color:var(--vg-bad); font-weight:600; }
.vg-ac-imp-ok{ background:var(--vg-ok-bg); color:var(--vg-ink); border-radius:8px; padding:10px 12px; margin:0 0 10px; font-size:13px; }
.vg-ac-revisao ul{ margin:4px 0 10px; padding-left:18px; font-size:13px; line-height:1.55; }
.vg-ac-revisao p{ margin:8px 0 4px; font-size:13.5px; }
body.area-bo .modal-card.vg-ac-modal{ max-width:620px; text-align:left; max-height:calc(100vh - 32px); overflow:auto; }
body.area-bo .modal-card.vg-ac-modal .modal-titulo{ text-align:left; }
.vg-ac-modal-form .vg-campo input, .vg-ac-modal-form .vg-campo select, .vg-ac-modal-form .vg-campo textarea{ padding:8px 10px; border:1px solid var(--vg-borda); border-radius:8px; background:var(--vg-card); color:var(--vg-ink); font:inherit; font-size:13px; width:100%; }
.vg-ac-alt{ display:flex; align-items:center; gap:8px; margin-bottom:6px; }
.vg-ac-alt input:not([type=radio]){ flex:1; min-width:0; padding:8px 10px; border:1px solid var(--vg-borda); border-radius:8px; background:var(--vg-card); color:var(--vg-ink); font:inherit; font-size:13px; }
.vg-ac-alt input[type=radio]{ width:20px; height:20px; flex:0 0 20px; accent-color:var(--vg-acento); }
.vg-ac-teste .vg-ac-check{ display:flex; margin-right:0; }
@media (max-width:1024px){ .vg-ac-editor{ grid-template-columns:1fr; } .vg-ac-arvore{ position:static; max-height:none; } }
@media (max-width:760px){
  .vg-ac-kpis.vg-kpis-4{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vg-ac-aula{ grid-template-columns:auto minmax(0,1fr); }
  .vg-ac-aula > .vg-badge{ justify-self:start; }
  .vg-ac-aula > .vg-ac-acoes, .vg-ac-bloco > .vg-ac-acoes{ grid-column:1/-1; }
  .vg-ac-bloco{ grid-template-columns:auto minmax(0,1fr); }
}
@media (max-width:420px){ .vg-ac-kpis.vg-kpis-4{ grid-template-columns:1fr; } }
