/* Academia VIVA — telas de curso, aula, teste e certificados. Usa só os tokens do app (claro/escuro automático). */
.acad-topo{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:10px 0 4px; }
.acad-pills{ display:flex; flex-wrap:wrap; gap:6px; margin:10px 0 12px; }
.acad-pills .pill{ white-space:normal; }
.acad-demo{ background:var(--surface-2); border-style:dashed; color:var(--ink-muted); }

/* requisitos e lista de aulas */
.acad-req{ list-style:none; margin:0; padding:0; font-size:13px; line-height:1.5; }
.acad-req li{ display:flex; gap:8px; padding:4px 0; color:var(--ink-muted); }
.acad-req li.ok{ color:var(--success); font-weight:600; }
.acad-aulas{ list-style:none; margin:0; padding:0; }
.acad-aula{ width:100%; display:flex; align-items:center; gap:12px; text-align:left; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:12px 14px; margin-bottom:8px; min-height:56px; }
.acad-aula:hover:not(:disabled){ border-color:var(--brand); }
.acad-aula:disabled{ cursor:not-allowed; opacity:.7; }
.acad-aula.atual{ border-color:var(--gold); box-shadow:inset 3px 0 0 var(--gold); }
.acad-aula-ic{ flex:0 0 32px; width:32px; height:32px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:var(--surface-2); font-size:14px; }
.acad-aula.concluida .acad-aula-ic{ background:var(--success-soft); color:var(--success); font-weight:700; }
.acad-aula.atual .acad-aula-ic{ background:var(--gold-soft); color:var(--gold-ink); }
.acad-aula-tx{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; font-size:14px; }
.acad-aula-tx .small{ overflow-wrap:anywhere; }

/* player */
.acad-player{ position:relative; border-radius:var(--radius); overflow:hidden; background:#000; margin:0 0 10px; aspect-ratio:16/9; }
.acad-player > video{ display:block; width:100%; height:100%; background:#000; }
.acad-player.acad-carregando::after{ content:'carregando player…'; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#fff; font-size:13px; background:rgba(0,0,0,.35); pointer-events:none; }
.acad-player .video-js{ width:100%; height:100%; font-family:var(--font-body); }
.acad-player .video-js.vjs-fluid{ height:auto; }
.acad-player .video-js .vjs-play-progress,.acad-player .video-js .vjs-volume-level{ background-color:#E0BE72; }
.acad-player .video-js .vjs-big-play-button{ background-color:rgba(122,40,70,.85); border-color:#fff; }
.acad-player .video-js:hover .vjs-big-play-button,.acad-player .video-js .vjs-big-play-button:focus{ background-color:#7A2846; }
.acad-player .video-js .vjs-control:focus-visible,.acad-player .video-js .vjs-menu-item:focus-visible{ outline:2px solid #E0BE72; outline-offset:-2px; }
.acad-player .vjs-text-track-display{ pointer-events:none; }
.acad-vel{ display:inline-flex; gap:6px; align-items:center; margin:0 0 10px; }
.acad-vel[hidden]{ display:none; }
.acad-vel select{ padding:4px 8px; border-radius:var(--radius-sm); border:1px solid var(--border); background:var(--surface); color:var(--ink); }
.acad-retomada{ display:flex; flex-wrap:wrap; gap:6px 12px; align-items:center; }
.acad-retomada[hidden]{ display:none; }
.acad-prog .row{ margin-bottom:8px; flex-wrap:wrap; }
.acad-prog .notice{ margin:12px 0 0; }
.acad-marcos{ display:flex; justify-content:space-between; margin-top:6px; font-size:11px; color:var(--ink-muted); }
.acad-marcos span.ok{ color:var(--success); font-weight:600; }

/* blocos de conteúdo */
.acad-blocos > :first-child{ margin-top:0; }
.acad-blocos > :last-child{ margin-bottom:0; }
.acad-bl-titulo{ font-size:15px; margin:16px 0 6px; }
.acad-bl-p{ font-size:14px; line-height:1.6; margin:0 0 10px; }
.acad-bl-lista{ margin:0 0 10px; padding-left:20px; font-size:14px; line-height:1.6; }
.acad-bl{ margin:10px 0; }
.acad-bl-arquivo{ display:flex; justify-content:space-between; gap:10px; text-decoration:none; padding:12px 0; border-top:1px solid var(--border); font-size:14px; }

/* navegação entre aulas */
.acad-nav{ display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.acad-nav .btn{ flex:1 1 auto; min-height:44px; }
.acad-nav-dica{ margin:8px 0 0; text-align:right; }

/* teste */
.acad-q{ margin:0 0 12px; min-width:0; }
.acad-q legend{ font-size:14px; font-weight:600; line-height:1.5; padding:0; margin-bottom:8px; float:left; width:100%; }
.acad-q legend + *{ clear:both; }
.acad-op{ display:flex; gap:10px; align-items:flex-start; padding:10px 12px; border:1px solid var(--border); border-radius:var(--radius-sm); margin-top:8px; font-size:14px; line-height:1.4; cursor:pointer; min-height:44px; }
.acad-op input{ margin-top:2px; accent-color:var(--brand-solid); flex:0 0 auto; }
.acad-op:has(input:checked){ border-color:var(--brand); background:var(--surface-2); }
.acad-q.pendente{ border-color:var(--danger); }
.acad-q.certa{ border-color:var(--success); }
.acad-q.errada{ border-color:var(--danger); }
.acad-q-fb{ margin:10px 0 0; }

/* certificados */
.acad-conq{ display:flex; gap:12px; align-items:center; }
.acad-conq.bloq{ opacity:.7; }
.acad-cert-item .acad-cert-id{ margin:8px 0 10px; }
.acad-cert-acoes{ display:flex; flex-wrap:wrap; gap:8px; }
.acad-cert-acoes .btn{ flex:1 1 140px; min-height:44px; }
.acad-cert-doc{ container-type:inline-size; background:#FBF6F4; color:#2B1F27; border-radius:6px; padding:3cqw; box-shadow:var(--shadow); }
.acad-cert-borda{ aspect-ratio:842/595; border:max(2px,.5cqw) solid #7A2846; outline:1px solid #B8912F; outline-offset:-2.2cqw; padding:4cqw 5cqw; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:1cqw; }
.acad-cert-marca{ display:flex; align-items:center; gap:1.5cqw; font-size:max(9px,2.2cqw); font-weight:700; letter-spacing:.12em; color:#B8912F; }
.acad-cert-v{ width:6cqw; height:6cqw; min-width:18px; min-height:18px; border-radius:50%; background:#7A2846; color:#fff; display:inline-flex; align-items:center; justify-content:center; font-family:var(--font-display); font-size:max(10px,3cqw); letter-spacing:0; }
.acad-cert-titulo{ font-family:var(--font-display); font-weight:600; color:#7A2846; font-size:max(14px,5.6cqw); line-height:1.1; }
.acad-cert-txt{ font-size:max(9px,2.4cqw); color:#6C5A62; }
.acad-cert-txt strong{ color:#2B1F27; }
.acad-cert-nome{ font-family:var(--font-display); font-weight:600; font-size:max(13px,4.6cqw); line-height:1.15; border-bottom:1px solid #B8912F; padding:0 3cqw .6cqw; overflow-wrap:anywhere; }
.acad-cert-curso{ font-weight:700; font-size:max(11px,3.4cqw); line-height:1.2; overflow-wrap:anywhere; }
.acad-cert-rodape{ display:flex; justify-content:space-around; gap:3cqw; width:100%; margin-top:1.5cqw; font-size:max(8px,2cqw); font-weight:600; }
.acad-cert-rodape > div{ display:flex; flex-direction:column; gap:.3cqw; min-width:0; }
.acad-cert-rodape span:first-child{ font-size:max(7px,1.5cqw); font-weight:500; letter-spacing:.08em; text-transform:uppercase; color:#6C5A62; }
.acad-cert-demo{ font-size:max(7px,1.5cqw); color:#6C5A62; margin-top:.6cqw; }
@supports not (container-type:inline-size){
  .acad-cert-doc{ aspect-ratio:auto; padding:12px; }
  .acad-cert-borda{ padding:16px; outline-offset:-8px; gap:4px; }
}
.acad-card-acoes{ display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px; }
/* PR #10: capa, descrição completa, imagem em bloco, logo/assinatura no certificado */
.acad-capa{ display:block; width:100%; aspect-ratio:16/7; object-fit:cover; border-radius:var(--radius); margin:10px 0 4px; background:var(--surface-2); }
.acad-desc{ font-size:14px; line-height:1.6; margin:10px 0 4px; white-space:pre-line; }
.acad-bl-img{ margin:10px 0; }
.acad-bl-img img{ display:block; max-width:100%; height:auto; border-radius:var(--radius-sm); }
.acad-bl-img figcaption{ margin-top:4px; }
.acad-cert-logo{ height:6cqw; min-height:18px; max-width:24cqw; object-fit:contain; }
.acad-cert-ass{ display:flex; flex-direction:column; align-items:center; gap:.2cqw; border-top:1px solid #6C5A62; padding-top:.6cqw; margin-top:.8cqw; min-width:30cqw; font-size:max(9px,2cqw); font-weight:600; }
.acad-cert-ass small{ font-size:max(7px,1.6cqw); font-weight:500; color:#6C5A62; }
/* PRÉVIA (Gestão › Visualizar como perfumista): sobreposição com a experiência real da perfumista */
.acad-previa{ position:fixed; inset:0; z-index:1200; display:flex; flex-direction:column; background:rgba(20,12,16,.72); }
.acad-previa-barra{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:10px 16px; background:#3A1226; color:#F6E9EE; font-size:13px; }
.acad-previa-barra > div{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.acad-previa-barra span{ opacity:.8; overflow-wrap:anywhere; }
.acad-previa-fechar{ background:#F6E9EE; color:#3A1226; font-weight:600; border-radius:999px; padding:8px 16px; min-height:40px; }
.acad-previa-palco{ flex:1; overflow:auto; -webkit-overflow-scrolling:touch; }
.acad-previa-palco .phone-wrap{ min-height:100%; }
.acad-previa-palco .app-content{ padding-bottom:40px; }
