/* =====================================================================
   Aventuras Financeiras — atividades e MVP escolar
   Complementa plataforma.css sem alterar os componentes já publicados.
   ===================================================================== */

/* ---------------------------------------------------- chamada do aluno */
.chamada-atividade{
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;
  margin:18px 0;padding:20px 22px;border-radius:24px;
  background:linear-gradient(135deg,#fff3d6,#f7e6bb);border:1px solid #eed397;
  box-shadow:0 10px 25px rgba(93,68,19,.08);
}
.chamada-atividade.jornada-final{background:linear-gradient(135deg,#e5f2e8,#d7eadf);border-color:#bcd7c6}
.chamada-atividade-icone{
  width:58px;height:58px;border-radius:18px;display:grid;place-items:center;
  color:#4b3b14;background:var(--gold);flex:none;
}
.chamada-atividade.jornada-final .chamada-atividade-icone{background:var(--green);color:#fff}
.chamada-atividade-icone svg{width:28px;height:28px}
.chamada-atividade .etiqueta{font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#76540f}
.chamada-atividade h2{font-size:20px;color:var(--green);margin-top:2px}
.chamada-atividade p{font-size:13px;margin-top:3px}
.chamada-atividade .bt{white-space:nowrap}

/* ---------------------------------------------- atividades na jornada */
.atividade-controles{
  grid-column:2/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding-top:12px;border-top:1px solid rgba(112,125,116,.14);
}
.atividade-controles>div{display:flex;flex-direction:column;gap:3px}
.atividade-controles strong{display:flex;align-items:center;gap:8px;color:var(--green);font-size:13px}
.atividade-controles strong svg{width:18px;height:18px}
.atividade-controles span{font-size:11.5px;color:#607168}
.atividade-indisponivel{font-weight:700;text-align:right}

/* ---------------------------------------------------- área de atividades */
.pagina-cabeca-acoes{display:flex;justify-content:space-between;align-items:end;gap:24px}
.pagina-cabeca-acoes>div{min-width:0}
.navegacao-capitulos{
  display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin:4px 0 18px;
}
.capitulo-atividade-tab{
  min-height:62px;border-radius:17px;border:1px solid var(--line2);background:#faf6ec;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  color:var(--green);text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
a.capitulo-atividade-tab:hover{transform:translateY(-2px);border-color:#c6d8cc}
.capitulo-atividade-tab b{font-family:var(--fonte-titulo);font-size:20px;line-height:1}
.capitulo-atividade-tab small{font-size:10px;font-weight:800;color:#68766e}
.capitulo-atividade-tab.ativo{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 7px 18px rgba(25,79,60,.18)}
.capitulo-atividade-tab.ativo small{color:#e7f1eb}
.capitulo-atividade-tab.bloqueado{background:#eee8dc;color:#758179;border-color:#e0d6c5}

.cabeca-capitulo-atividade{
  display:flex;align-items:end;justify-content:space-between;gap:18px;
  padding:18px 22px;border-radius:22px 22px 0 0;background:var(--green);color:#fff;
}
.cabeca-capitulo-atividade span{font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#cfe1d6}
.cabeca-capitulo-atividade h2{font-size:24px;color:#fff;margin-top:2px}
.cabeca-capitulo-atividade>strong{font-size:12px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.13);white-space:nowrap}

.atividade-live{min-height:0;margin:0}
.atividade-live:not(:empty){padding:13px 16px;margin:14px 0;border-radius:16px;font-size:13px;font-weight:750}
.atividade-live.sucesso{background:#e3f0e7;color:#24563f;border:1px solid #bcd9c6}
.atividade-live.atencao{background:#fff1d2;color:#76520f;border:1px solid #efd18f}

.lista-atividades{display:grid;gap:18px;margin-top:16px}
.atividade-card{
  background:var(--paper);border:1px solid var(--line2);border-radius:24px;padding:24px;
  box-shadow:0 8px 24px rgba(40,62,49,.06);
}
.atividade-card.refazer{border-color:#e5b98a;background:#fffaf3}
.atividade-card.visto,.atividade-card.concluida{border-color:#bdd7c6;background:#f7fbf8}
.atividade-card-cabeca{
  display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-bottom:14px;
}
.atividade-icone{
  width:48px;height:48px;border-radius:15px;background:var(--creme);color:#785410;
  display:grid;place-items:center;
}
.atividade-icone svg{width:24px;height:24px}
.atividade-tipo{font-size:9.5px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#68766e}
.atividade-card h2{font-size:20px;color:var(--green);margin-top:2px}
.atividade-card>p{font-size:13px;max-width:72ch}
.atividade-status{
  font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;
  color:#5f6c64;background:#eee8dc;padding:7px 10px;border-radius:999px;white-space:nowrap;
}
.atividade-card.entregue .atividade-status,.atividade-card.visto .atividade-status,.atividade-card.concluida .atividade-status{background:#dcece4;color:#24563f}
.atividade-card.refazer .atividade-status{background:#f8dfc7;color:#7a3f19}
.atividade-instrucao{margin-top:9px;padding:10px 12px;border-left:3px solid var(--gold);background:#fff8e8;border-radius:0 12px 12px 0}
.atividade-card form{margin-top:20px;display:grid;gap:18px}
.atividade-card form[aria-busy="true"]{opacity:.72}

.questao{border:0;padding:0;margin:0;min-width:0}
.questao legend,.questao>label{display:block;font-weight:800;color:#304c3f;font-size:14px;line-height:1.45;margin-bottom:10px}
.opcoes-atividade{display:grid;gap:8px}
.opcao-atividade{
  display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;
  border:1px solid #ded5c5;border-radius:15px;padding:12px 13px;background:#fbf8f0;
  cursor:pointer;font-size:13px;color:#42584d;
}
.opcao-atividade:hover{border-color:#b6cabd;background:#f7fbf8}
.opcao-atividade:has(input:checked){border-color:var(--green);background:#e7f2eb;box-shadow:0 0 0 2px rgba(25,79,60,.08)}
.opcao-atividade input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--green)}
.opcao-atividade:has(input:disabled){cursor:default}
.atividade-aberta textarea{
  width:100%;resize:vertical;min-height:116px;padding:13px 14px;border:1px solid #d9cfbd;
  border-radius:15px;background:#fff;color:#29473a;font:500 14px/1.55 var(--fonte-texto);
}
.atividade-aberta textarea:focus{outline:3px solid rgba(25,79,60,.15);border-color:var(--green)}
.atividade-aberta textarea:disabled{background:#f2eee5;color:#4f5f56;opacity:1}
.atividade-aberta small{display:block;font-size:10.5px;color:#68766e;margin-top:6px}
.questao-retorno{margin-top:9px;padding:10px 12px;border-radius:12px;font-size:12px;line-height:1.5}
.questao-retorno strong{display:block;margin-bottom:2px}
.questao-retorno.correto{background:#e4f1e8;color:#24563f}
.questao-retorno.incorreto{background:#fff0dd;color:#744316}
.atividade-rodape{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding-top:14px;border-top:1px solid var(--line2)}
.atividade-nota{margin-right:auto;font-size:12px;font-weight:800;color:#506158}
.atividade-entregue{font-size:12px;font-weight:800;color:#345848}
.atividade-mensagem{min-height:18px;font-size:12px;font-weight:700;color:#7b431b}
.feedback-professor{margin-top:14px;padding:14px 16px;border-radius:15px;background:#e9f3ed;border:1px solid #c5ddcd}
.feedback-professor strong{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#2c5b45}
.feedback-professor p{font-size:13px;margin-top:4px;color:#38584a}

.estado-vazio{
  min-height:290px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;background:var(--paper);border:1px solid var(--line2);border-radius:24px;
  padding:34px;margin-top:16px;
}
.estado-vazio-icone{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;background:var(--creme);color:#75520f;margin-bottom:16px}
.estado-vazio-icone svg{width:32px;height:32px}
.estado-vazio h2{color:var(--green);font-size:24px}
.estado-vazio p{max-width:48ch;margin-top:8px;font-size:14px}
.estado-vazio .bt{margin-top:18px}

/* --------------------------------------------------------- certificado */
.certificado{background:#eee6d6;border-radius:28px;padding:22px}
.certificado-moldura{
  position:relative;min-height:650px;padding:52px 64px;overflow:hidden;
  border:9px double #c89a31;background:
    radial-gradient(circle at 10% 10%,rgba(242,191,78,.12),transparent 25%),
    radial-gradient(circle at 90% 90%,rgba(25,79,60,.10),transparent 28%),#fffdf8;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
}
.certificado-moldura>img{width:min(340px,70%);height:auto;margin-bottom:24px}
.certificado-demo{position:absolute;top:24px;right:-40px;transform:rotate(35deg);width:180px;padding:7px;background:#e8aa4b;color:#4b3510;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.certificado-etiqueta{font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#8a6414}
.certificado-moldura>p{max-width:62ch;font-family:var(--fonte-serif);font-size:17px;line-height:1.65;margin-top:18px;color:#40564b}
.certificado-moldura h2{font-size:clamp(34px,5vw,54px);color:var(--green);margin:18px 0 2px;border-bottom:2px solid #d9bd76;padding:0 24px 10px}
.certificado-rodape{width:min(520px,100%);display:flex;justify-content:space-between;gap:20px;margin-top:44px;padding-top:12px;border-top:1px solid #cdbd99;font-weight:750;color:#40564b}
.certificado-moldura>small{margin-top:26px;color:#7a6b50;font-size:11px;letter-spacing:.05em}

/* -------------------------------------------------------- responsivo */
@media(max-width:860px){
  .navegacao-capitulos{display:flex;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x mandatory}
  .capitulo-atividade-tab{min-width:64px;scroll-snap-align:start}
}
@media(max-width:760px){
  .chamada-atividade{grid-template-columns:auto 1fr;padding:18px}
  .chamada-atividade .bt{grid-column:1/-1;width:100%}
  .atividade-controles{grid-column:1/-1;align-items:stretch;flex-direction:column;gap:10px}
  .atividade-controles .bt{width:100%}
  .atividade-indisponivel{text-align:left}
  .pagina-cabeca-acoes{align-items:stretch;flex-direction:column}
  .pagina-cabeca-acoes .bt{width:100%}
  .cabeca-capitulo-atividade{align-items:flex-start;flex-direction:column}
  .atividade-card{padding:19px 16px}
  .atividade-card-cabeca{grid-template-columns:auto 1fr}
  .atividade-status{grid-column:1/-1;justify-self:start}
  .atividade-rodape{align-items:stretch;flex-direction:column}
  .atividade-rodape .bt{width:100%}
  .atividade-nota{margin:0}
  .certificado{padding:8px;border-radius:18px}
  .certificado-moldura{min-height:570px;padding:42px 24px;border-width:6px}
  .certificado-moldura>p{font-size:15px}
  .certificado-rodape{align-items:center;flex-direction:column}
}

@media print{
  @page{size:A4 portrait;margin:10mm}
  html,body,.plataforma{min-height:0!important;background:#fff!important}
  .topo,.rodape-plataforma,.nao-imprimir,.veu,.selo-demonstracao,.previa-aviso{display:none!important}
  .plataforma,.corpo,.faixa{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  .certificado{padding:0;background:#fff;border-radius:0}
  .certificado-moldura{height:255mm;min-height:0;break-inside:avoid;page-break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .certificado-demo{display:none}
}

@media(prefers-reduced-motion:reduce){
  .capitulo-atividade-tab{transition:none}
}

/* =====================================================================
   ÁREA DO PROFESSOR
   ===================================================================== */
.area-professor{--tela:#f5f7f4;background:var(--tela)}
.topo-professor .topo-inner{height:76px}
.selo-area-professor{
  display:inline-flex;padding:5px 9px;border-radius:999px;background:#dcece4;color:#24563f;
  font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;
}
.avatar-iniciais-prof{display:grid;place-items:center;background:var(--green);color:#fff;font-weight:900;font-size:12px}
.nav-professor{border-top:1px solid rgba(224,216,201,.68);background:#fffdf9}
.nav-professor>.faixa{display:flex;align-items:center;gap:28px;min-height:48px}
.nav-professor a{position:relative;font-size:13px;font-weight:800;color:#5a6c61;padding:14px 2px}
.nav-professor a:hover{color:var(--green)}
.nav-professor a[aria-current="page"]{color:var(--green)}
.nav-professor a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--orange)}
.menu-professor{top:70px}
.corpo-professor{padding-top:30px}

.cabeca-professor{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:22px}
.cabeca-professor>div:first-child{min-width:0}
.cabeca-professor .selo{
  display:inline-flex;padding:6px 11px;border-radius:999px;background:#e4efe8;color:#275b43;
  font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;
}
.cabeca-professor h1{font-size:clamp(29px,4vw,42px);color:var(--green);margin-top:10px}
.cabeca-professor p{font-size:14px;margin-top:7px;max-width:68ch}
.seletor-turma{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#5d6c63}
.seletor-turma select,.filtros-turma select,.filtros-turma input{
  min-height:44px;border:1px solid #d4ccbd;border-radius:12px;background:#fff;padding:0 38px 0 13px;
  font-size:13px;font-weight:700;letter-spacing:0;text-transform:none;color:#314f41;
}
.seletor-turma select{min-width:220px}
.sem-turma{font-size:13px;color:#68766e}
.acoes-professor{display:flex!important;align-items:end;gap:10px;flex:none}
.acoes-professor .bt{min-height:44px;padding:10px 14px;font-size:12px}
.acoes-professor .bt svg{width:18px;height:18px}

.metricas-professor{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.metrica{display:flex;align-items:center;gap:13px;padding:18px;background:#fff;border:1px solid #e5e8e2;border-radius:20px;box-shadow:0 7px 20px rgba(31,58,45,.045)}
.metrica-icone{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;flex:none}
.metrica-icone svg{width:23px;height:23px}
.metrica-icone.verde{background:#dcece4;color:#24563f}.metrica-icone.ouro{background:#fff0c9;color:#785710}
.metrica-icone.laranja{background:#fbe4d7;color:#a4431e}.metrica-icone.rosa{background:#f5e4e8;color:#8a4454}
.metrica div{display:flex;flex-direction:column}.metrica strong{font-family:var(--fonte-titulo);font-size:28px;line-height:1;color:var(--green)}
.metrica span:last-child{font-size:10.5px;font-weight:750;color:#68766e;margin-top:5px;line-height:1.25}

.grade-professor{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin-bottom:18px}
.painel-bloco{min-width:0;background:#fff;border:1px solid #e5e8e2;border-radius:22px;padding:22px;box-shadow:0 7px 22px rgba(31,58,45,.045)}
.bloco-turma{margin-top:18px}
.bloco-cabeca{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:17px}
.bloco-cabeca span{font-size:9.5px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#7b877f}
.bloco-cabeca h2{font-size:21px;color:var(--green);margin-top:2px}
.bloco-cabeca>a{font-size:12px;font-weight:800;color:var(--green);border-bottom:1px solid #b8cbbf;white-space:nowrap}
.lista-atencao{display:grid;gap:7px}
.lista-atencao a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:10px;border-radius:14px;background:#f7f8f5;border:1px solid transparent}
.lista-atencao a:hover{border-color:#ccd9d0;background:#f1f6f2}
.lista-atencao a>span:nth-child(2){display:flex;flex-direction:column}.lista-atencao strong{font-size:12.5px;color:#314f41}
.lista-atencao small{font-size:10.5px;color:#738078}.lista-atencao b{font-size:20px;color:#7c8b82}
.mini-avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#dcece4;color:#24563f;font-size:10px;font-weight:900;flex:none}
.estado-bom{padding:18px;border-radius:14px;background:#eef6f0;color:#35604a;font-size:12.5px;font-weight:700}
.leitura-pedagogica{display:grid;gap:0;margin:0}
.leitura-pedagogica div{padding:12px 0;border-bottom:1px solid #edf0eb}.leitura-pedagogica div:last-child{border:0}
.leitura-pedagogica dt{font-size:10.5px;color:#708078}.leitura-pedagogica dd{margin:2px 0 0;font-weight:850;color:#345345;font-size:14px}
.nota-pedagogica{margin-top:12px;font-size:10.5px;line-height:1.5}

.tabela-wrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;contain:inline-size;overscroll-behavior-inline:contain;border:1px solid #e8ebe6;border-radius:16px}
.tabela-wrap:focus-visible{outline:3px solid rgba(25,79,60,.2);outline-offset:3px}
.dica-tabela{display:none;margin:0 0 8px;font-size:10.5px;font-weight:750;color:#617168}
.tabela-alunos{width:100%;border-collapse:collapse;min-width:920px;background:#fff}
.tabela-alunos th{text-align:left;padding:11px 13px;background:#f3f5f1;color:#617168;font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}
.tabela-alunos td{padding:12px 13px;border-top:1px solid #edf0eb;color:#4b5f54;font-size:11.5px;white-space:nowrap}
.tabela-alunos tr:hover td{background:#fafcf9}.aluno-link{display:flex;align-items:center;gap:9px}.aluno-link strong{color:#294b3b;font-size:12.5px}
.situacao{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9.5px;font-weight:900}
.situacao.andamento{background:#e8eee9;color:#4b6155}.situacao.concluida{background:#dcece4;color:#24563f}
.situacao.apoio{background:#fbe0d5;color:#8a3217}.situacao.pendente{background:#fff0c9;color:#74520c}.situacao.revisao{background:#ede5f4;color:#65407a}
.progresso-tabela{display:flex;align-items:center;gap:8px}.progresso-tabela progress{width:74px;height:7px;accent-color:var(--green)}
.progresso-tabela span{font-size:10px;color:#68766e}.progresso-tabela b{color:#2e5342}

.filtros-turma{display:flex;align-items:end;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.filtros-turma label{display:flex;flex-direction:column;gap:5px;font-size:9.5px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#65756c}
.filtros-turma input{min-width:240px;padding-right:13px}.resultado-filtro{margin-left:auto;font-size:11px;font-weight:800;color:#66766d;padding-bottom:12px}

.voltar-professor{display:block;width:max-content;margin-bottom:12px;font-size:12px;font-weight:800;color:var(--green)}
.cabeca-aluno{align-items:center}.resumo-aluno{display:flex!important;flex-direction:column;align-items:center!important;justify-content:center;min-width:150px;padding:18px;border:1px solid #d6e3da;border-radius:20px;background:#ecf4ef}
.resumo-aluno strong{font-family:var(--fonte-titulo);font-size:32px;line-height:1;color:var(--green)}.resumo-aluno span{font-size:10px;font-weight:750;color:#5d7066;margin-top:5px}
.capitulos-professor{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.capitulos-professor article{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;padding:13px;border:1px solid #e5e8e2;border-radius:15px;background:#fafbf8}
.capitulos-professor article>b{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#e7ece8;color:#64736b;font-family:var(--fonte-titulo)}
.capitulos-professor article[data-status="concluido"]>b{background:var(--green);color:#fff}
.capitulos-professor article>div{min-width:0}.capitulos-professor strong{display:block;font-size:11px;color:#345345;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.capitulos-professor span{font-size:9.5px;color:#738078}.capitulos-professor progress{grid-column:1/-1;width:100%;height:6px;accent-color:var(--green)}

.atividades-professor{display:grid;gap:12px}.atividade-professor-card{border:1px solid #e4e8e1;border-radius:17px;padding:16px;background:#fbfcfa}
.atividade-professor-card.sem-entrega{opacity:.76}.atividade-professor-card>header{display:flex;align-items:start;justify-content:space-between;gap:14px}
.atividade-professor-card header span{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:#748078}
.atividade-professor-card h3{font-size:15px;color:#315041;margin-top:2px}.atividade-professor-card header>b{font-size:9.5px;padding:5px 8px;border-radius:999px;background:#e7ece8;color:#53655b;white-space:nowrap}
.atividade-professor-card.entregue header>b{background:#fff0c9;color:#74520c}.atividade-professor-card.visto header>b{background:#dcece4;color:#24563f}
.nota-objetiva{margin-top:10px;font-size:11.5px}.nota-objetiva strong{font-size:16px;color:#315a46}
.resposta-aberta-professor{margin-top:12px;padding:12px;border-left:3px solid #d7b45a;background:#fff9e9;border-radius:0 12px 12px 0}
.resposta-aberta-professor strong{display:block;font-size:10.5px;color:#5a4c2c}.resposta-aberta-professor p{margin-top:5px;font-size:12px;white-space:pre-wrap;color:#4b5e54}
.feedback-registrado{margin-top:12px;padding:12px;border-radius:12px;background:#e8f2eb}.feedback-registrado strong{font-size:10px;color:#2c5b45}.feedback-registrado p{font-size:12px;margin-top:4px}
.form-avaliacao{margin-top:14px;padding-top:14px;border-top:1px solid #e7eae5}.form-avaliacao label{display:block;font-size:10.5px;font-weight:800;color:#4e6156}
.form-avaliacao textarea{display:block;width:100%;margin-top:6px;padding:11px;border:1px solid #d4ccbd;border-radius:12px;resize:vertical;font:500 12.5px/1.5 var(--fonte-texto)}
.form-avaliacao>div{display:flex;justify-content:flex-end;gap:8px;margin-top:9px}.form-avaliacao .bt{font-size:11px;padding:9px 12px}.form-avaliacao>p{min-height:16px;margin-top:6px;font-size:10.5px;color:#8a3b1b}
.aviso-professor-sucesso{padding:12px 15px;margin-bottom:14px;border-radius:13px;background:#e2f0e7;border:1px solid #bdd9c6;color:#28583f;font-size:12px;font-weight:800}

.planejamentos{display:grid;gap:11px}.planejamento-card{background:#fff;border:1px solid #e2e6df;border-radius:18px;overflow:hidden}
.planejamento-card summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:15px 18px;cursor:pointer;list-style:none}
.planejamento-card summary::-webkit-details-marker{display:none}.planejamento-card summary>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#e4efe8;color:#24563f;font-family:var(--fonte-titulo);font-size:18px}
.planejamento-card summary div{display:flex;flex-direction:column}.planejamento-card summary small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#77837c}.planejamento-card summary strong{font-family:var(--fonte-titulo);font-size:16px;color:#315041}
.planejamento-card summary>b{font-size:22px;color:#66756d;transition:transform .18s ease}.planejamento-card[open] summary>b{transform:rotate(45deg)}
.planejamento-conteudo{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 18px 18px;border-top:1px solid #edf0eb;background:#fbfcfa}
.planejamento-conteudo article{padding:15px 14px 10px}.planejamento-conteudo article span{font-size:9.5px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:#6d7b73}
.planejamento-conteudo article p{margin-top:5px;font-size:12px;line-height:1.55;color:#465a4f}.planejamento-conteudo footer{grid-column:1/-1;display:flex;justify-content:space-between;gap:18px;padding:11px 14px;border-radius:12px;background:#eef3ef;color:#53665b;font-size:10.5px;font-weight:750}

.estado-vazio-compacto{min-height:180px;margin:0}

@media(max-width:1024px){
  .metricas-professor{grid-template-columns:1fr 1fr}.grade-professor{grid-template-columns:1fr}
  .capitulos-professor{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .topo-professor .topo-identidade{align-items:flex-start}.selo-area-professor{display:none}
  .nav-professor{overflow-x:auto}.nav-professor>.faixa{width:max-content;min-width:100%;padding:0 16px;gap:22px}
  .menu-professor{top:66px}.corpo-professor{padding-top:22px}
  .cabeca-professor{align-items:stretch;flex-direction:column}.seletor-turma select{min-width:0;width:100%}
  .acoes-professor{align-items:stretch!important;flex-direction:column;width:100%}.acoes-professor .bt{width:100%}
  .metricas-professor{grid-template-columns:1fr 1fr;gap:9px}.metrica{padding:14px 12px}.metrica-icone{width:40px;height:40px}.metrica strong{font-size:24px}
  .painel-bloco{padding:17px 14px}.bloco-cabeca{align-items:flex-start;flex-direction:column}
  .dica-tabela{display:block}
  .filtros-turma{align-items:stretch;flex-direction:column}.filtros-turma input{min-width:0;width:100%}.resultado-filtro{margin:0;padding:0}
  .cabeca-aluno{align-items:stretch}.resumo-aluno{min-width:0}
  .capitulos-professor{grid-template-columns:1fr}.planejamento-conteudo{grid-template-columns:1fr}.planejamento-conteudo footer{align-items:flex-start;flex-direction:column}
  .atividade-professor-card>header{flex-direction:column}.form-avaliacao>div{align-items:stretch;flex-direction:column}.form-avaliacao .bt{width:100%}
}
@media(max-width:430px){.metricas-professor{grid-template-columns:1fr}}

/* Reformulação comercial: superfícies mais claras e papéis reconhecíveis. */
.area-professor{--tela:#f3f6f2}.area-professor .corpo-professor{background:linear-gradient(180deg,#edf3ef 0,#f8faf7 320px)}
.area-professor .topo{box-shadow:0 8px 26px rgba(30,61,46,.07)}
.area-professor .painel-bloco,.area-professor .metrica{border-color:#dce5dd;box-shadow:0 12px 30px rgba(30,61,46,.055)}
.area-professor .cabeca-professor .selo{padding:6px 10px;border-radius:999px;background:#e1eee6;color:#24563f}
.area-professor .metrica{position:relative;overflow:hidden}.area-professor .metrica:after{content:"";position:absolute;right:-22px;bottom:-30px;width:70px;height:70px;border-radius:50%;background:rgba(242,191,78,.09)}
.papel-gestor{--green:#263f61;--green-esc:#1b304b;--green2:#365b83;--mint:#e7edf4}
.papel-gestor .corpo-professor{background:linear-gradient(180deg,#e9eff5 0,#f7f9fb 330px)}
.papel-gestor .selo-area-professor{background:#e4eaf2;color:#263f61;border-color:#cbd6e3}
.papel-gestor .cabeca-professor .selo{background:#e2eaf3;color:#263f61}
.papel-gestor .metrica-icone.verde,.papel-gestor .mini-avatar{background:#e1e9f2;color:#263f61}
.papel-gestor .nav-professor a[aria-current="page"]:after{background:#eca0aa}
.papel-gestor .avatar-iniciais-prof{background:#eca0aa;color:#61323a}
@media(min-width:1100px){.corpo-professor>.faixa{width:min(1180px,calc(100% - 64px))}.area-professor .cabeca-professor{padding-top:8px}.area-professor .metricas-professor{gap:16px}.area-professor .metrica{min-height:102px}.area-professor .painel-bloco{border-radius:20px}}

/* ==================================================================
   Revisão aprovada — criança imersa no Vale, professor pedagógico e
   gestor executivo. Mantém os componentes e contratos existentes.
   ================================================================== */
.boas-vale{background:linear-gradient(135deg,#f8d977 0%,#f7c963 42%,#dcebd4 100%);overflow:hidden}
.boas-vale:before{content:"";position:absolute;inset:auto -3% -30px 20%;height:110px;background:#6ea67b;border-radius:50% 50% 0 0/70% 70% 0 0;opacity:.28}
.cartao-mapa{position:relative;min-height:245px;overflow:hidden;background:linear-gradient(#dff2ed 0 52%,#f7ecc9 52%);isolation:isolate}
.cartao-mapa .cartao-cabeca{position:relative;z-index:4}
.vale-cenario{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.vale-sol{position:absolute;right:7%;top:22px;width:58px;height:58px;border-radius:50%;background:#f5c74c;box-shadow:0 0 0 12px rgba(245,199,76,.18)}
.vale-montanha{position:absolute;left:-3%;right:-3%;bottom:38%;height:48%;background:linear-gradient(145deg,transparent 20%,#91bea2 21% 48%,transparent 49%),linear-gradient(215deg,transparent 22%,#6e9f7d 23% 53%,transparent 54%);opacity:.7}
.vale-rio{position:absolute;left:39%;bottom:-42px;width:180px;height:190px;border-radius:48% 52% 0 0;background:#82c8ca;transform:rotate(8deg);opacity:.72}
.trilha-aventura{position:relative;z-index:2;margin-top:38px;padding:12px 60px 34px;align-items:end}
.trilha-aventura:before{height:8px;background:repeating-linear-gradient(90deg,#c99748 0 16px,#e5c278 16px 28px);border-radius:999px;box-shadow:0 2px 0 rgba(92,67,28,.12)}
.trilha-aventura .trilha-passo:nth-child(even){transform:translateY(-26px)}
.trilha-aventura .trilha-bola{width:44px;height:44px;border-width:4px;box-shadow:0 8px 15px rgba(48,81,59,.14)}
.trilha-aventura .trilha-passo[data-estado="concluido"] .trilha-bola{background:#f2b844;color:#4c3a0d;border-color:#fff}
.trilha-aventura .trilha-passo[data-estado="atual"] .trilha-bola{animation:pulso-capitulo 1.8s ease-in-out infinite}
.trilha-aventura .trilha-nome{max-width:112px;padding:4px 7px;border-radius:10px;background:rgba(255,255,255,.86);color:#315342;box-shadow:0 3px 10px rgba(40,75,55,.08)}
.leo-na-trilha{position:absolute;right:1.5%;bottom:-42px;width:88px;height:auto;z-index:3;filter:drop-shadow(0 8px 10px rgba(40,60,38,.2))}
@keyframes pulso-capitulo{50%{transform:scale(1.12);box-shadow:0 0 0 10px rgba(242,184,68,.22)}}

.lista-atividades{max-width:850px;margin-inline:auto}.atividade-card{border:2px solid #d9e6dc;padding:28px;background:linear-gradient(180deg,#fff,#fffaf0)}
.atividade-card-cabeca{margin-bottom:22px}.atividade-card h2{font-size:25px}.atividade-card>p{max-width:none}
.questao{padding:18px;border-radius:20px;background:#f7faf7;border:1px solid #e2eae3}.questao legend{font-size:16px;color:#244c39;margin-bottom:14px}
.opcoes-atividade{grid-template-columns:repeat(3,1fr);gap:12px}.opcao-atividade{grid-template-columns:auto 1fr;align-items:center;min-height:92px;padding:14px;border-width:2px;background:#fff;box-shadow:0 5px 13px rgba(36,77,55,.06)}
.opcao-atividade input{position:absolute;opacity:0;pointer-events:none}.opcao-ilustracao{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:#f8d96f;color:#6b4a0a;font-size:17px}.opcao-texto{font-size:13px;font-weight:750;line-height:1.35;color:#365546}
.opcao-atividade:has(input:checked){transform:translateY(-2px);border-color:#2c7151;background:#eaf5ed}.opcao-atividade:has(input:checked) .opcao-ilustracao{background:#2c7151;color:#fff}
.questao-retorno{font-size:13px}.atividade-rodape .bt{min-width:190px}
.conquista{position:relative;overflow:hidden}.conquista-medalha{width:92px;height:92px;border-radius:50%;color:#fff;border:6px double rgba(255,255,255,.75);box-shadow:0 8px 18px rgba(57,65,45,.18)}
.conquista.ganha .medalha-0,.conquista.ganha .medalha-1{background:linear-gradient(145deg,#f6c64e,#ed8c3c)}.conquista.ganha .medalha-2,.conquista.ganha .medalha-3{background:linear-gradient(145deg,#72bd91,#227257)}.conquista.ganha .medalha-4,.conquista.ganha .medalha-5{background:linear-gradient(145deg,#7ebad0,#3978a2)}.conquista.ganha .medalha-6,.conquista.ganha .medalha-7{background:linear-gradient(145deg,#e99ca7,#a85c87)}
.conquista:not(.ganha) .conquista-medalha{filter:grayscale(1);opacity:.45}

.grafico-trilha{display:grid;grid-template-columns:repeat(8,1fr);align-items:end;gap:8px;height:190px;padding:18px 8px 0;border-bottom:1px solid #dfe7e1}
.grafico-trilha>div{height:100%;display:grid;grid-template-rows:1fr auto;align-items:end;text-align:center}.grafico-trilha span{display:flex;align-items:flex-start;justify-content:center;height:var(--altura);min-height:18px;border-radius:10px 10px 3px 3px;background:linear-gradient(#e9bd55,#cc8f36);transition:height .35s ease}.grafico-trilha b{margin-top:-20px;font-size:10px;color:#43574c}.grafico-trilha small{padding-top:6px;font-size:9px;color:#687970}
.grade-gestor{display:grid;grid-template-columns:.82fr 1.18fr;gap:16px;margin-bottom:16px}.painel-implantacao{display:grid;grid-template-columns:1fr auto}.painel-implantacao .bloco-cabeca{grid-column:1/-1}.anel-gestor{width:142px;height:142px;margin:12px 22px 6px 0;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at center,#fff 55%,transparent 56%),conic-gradient(#365b83 calc(var(--valor)*1%),#dfe6ee 0)}.anel-gestor b{font:700 30px/1 var(--fonte-titulo);color:#263f61}.anel-gestor span{font-size:10px;color:#687688}.painel-implantacao .leitura-pedagogica{align-self:center}.prioridades-gestor{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.prioridades-gestor article{padding:18px;border-radius:16px;background:#eef3f7;border:1px solid #dce5ed}.prioridades-gestor b{display:block;font:700 28px/1 var(--fonte-titulo);color:#263f61}.prioridades-gestor span{display:block;margin-top:7px;font-size:11px;color:#556575}
@media(max-width:900px){.opcoes-atividade{grid-template-columns:1fr}.grade-gestor{grid-template-columns:1fr}.trilha-aventura{padding-inline:12px}.leo-na-trilha{display:none}.painel-implantacao{grid-template-columns:1fr}.anel-gestor{margin-inline:auto}.prioridades-gestor{grid-template-columns:1fr}}
@media(max-width:620px){.cartao-mapa{min-height:330px}.trilha-aventura{display:grid;grid-template-columns:repeat(4,1fr);gap:34px 4px;margin-top:15px}.trilha-aventura:before{display:none}.trilha-aventura .trilha-passo:nth-child(even){transform:none}.trilha-aventura .trilha-nome{font-size:8px}.grafico-trilha{gap:3px}.grafico-trilha small{font-size:7px}}
