/* Ajustes compartilhados; todas as cores seguem o tema escolhido. */
#abas .navegacao-mais,#abas .nav-rotulo-curto,#abas .icone-nav-mobile{display:none}
#abas button:focus-visible,.navegacao-opcao:focus-visible{outline:3px solid var(--acento);outline-offset:-3px}
.navegacao-lista{display:grid;gap:18px}
.navegacao-lista h3{margin:8px 0;color:var(--tinta-2);font-size:13px}
.navegacao-opcao{display:flex;width:100%;justify-content:space-between;text-align:left;padding:12px 14px;min-height:48px;margin:6px 0;gap:12px;white-space:normal}
.navegacao-opcao span{min-width:0;overflow-wrap:anywhere}
.navegacao-opcao[aria-current=page]{border-color:var(--acento);background:color-mix(in srgb,var(--acento) 10%,var(--superficie))}
.navegacao-opcao .sub{font-size:12px;flex-shrink:0}
.folha-cabecalho{position:sticky;top:-8px;z-index:2;background:var(--plano);padding-block:12px;border-bottom:1px solid var(--borda)}
.folha-cabecalho .botao{flex-shrink:0}
.mensagem-formulario{border:1px solid var(--critico);border-radius:12px;padding:12px 14px;margin:12px 0;background:var(--superficie);color:var(--tinta);overflow-wrap:anywhere}
.mensagem-formulario p{margin:6px 0 0}
.campo [aria-invalid=true]{border-color:var(--critico);outline-color:var(--critico)}
.senha-controle{position:relative;display:flex;gap:8px;align-items:center;margin-bottom:12px}
.senha-controle .campo{flex:1;min-width:0;margin:0}
.senha-controle .botao{align-self:flex-end;min-width:78px;margin-bottom:0}
.consulta-status{color:var(--tinta-2);font-size:14px;min-height:22px}
.consulta-erro{padding:14px;border:1px solid var(--borda);border-radius:12px;margin:12px 0}
.consulta-erro .botao{margin-top:10px}
.consulta-vazia{padding:24px;text-align:center;border:1px dashed var(--borda);border-radius:16px;margin:16px 0}
.consulta-vazia h3{margin-top:0}
.consultorio-acoes{display:flex;flex-wrap:wrap;gap:8px;margin-block:12px}
.consultorio-acoes .botao{flex:0 1 auto}
.consultorio-cards .cartao{display:flex;flex-direction:column;align-items:stretch}
.consultorio-cards h3{font-size:16px;margin:0 0 10px}
button:disabled{cursor:not-allowed}
button[aria-busy=true]{cursor:progress}
@media(max-width:959px){
 #abas{display:grid;grid-template-columns:repeat(var(--nav-colunas,5),minmax(0,1fr));overflow:visible;gap:0;align-items:stretch;padding:4px 4px max(4px,env(safe-area-inset-bottom))}
 #abas button[data-aba]{display:none;min-width:0;min-height:60px;padding:6px 2px;font-size:11px;text-align:center;white-space:normal;overflow-wrap:anywhere;gap:4px}
 #abas button[data-principal-mobile=true],#abas .navegacao-mais{display:flex;flex-direction:column;align-items:center;justify-content:center}
 #abas .navegacao-mais{min-height:60px;font-size:11px;gap:4px}
 #abas .nav-rotulo-curto,#abas .icone-nav-mobile{display:block}
 #abas button:has(.nav-rotulo-curto) .nav-rotulo{display:none}
 #abas .navegacao-secao-extra{color:var(--acento);font-weight:650}
 .barra-aparencia{padding-block:4px}
 #cabecalho{padding-block:10px}
 .cabecalho-dir .data-hoje{display:none}
 .navegacao-opcao .sub{font-size:11px}
 .tabela-scroll{border:1px solid var(--borda);border-radius:12px}
 .consultorio-acoes .botao{flex:1}
}

/* --- Área do profissional ----------------------------------------------
   Regras do consultório e do contexto de aluno, usadas pelo app e pela área do
   profissional. */
.area-integrada{grid-column:1/-1;width:100%;min-width:0}
.consultorio-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}
.consultorio-cards .botao{margin:4px}
#cabecalho{flex-wrap:wrap}
/* A faixa "Visualizando dados de…": cor fixa de propósito, igual em todo
   tema — ela tem de destoar do resto da tela. */
#contexto-aluno-aviso{flex-basis:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:12px;background:#ffcf66;color:#231900}
#contexto-aluno-aviso .botao{background:#231900;color:#fff}
@media(max-width:700px){#contexto-aluno-aviso{font-size:12px;flex-wrap:wrap;flex-basis:auto}}
.catalogo-prescricao-lista{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;max-height:440px;overflow:auto;margin:12px 0}
.exercicio-opcao{display:grid;grid-template-columns:72px 1fr;gap:12px;border:1px solid var(--borda);border-radius:12px;padding:12px}
.exercicio-opcao img{object-fit:contain;border-radius:8px;background:#eee}
.exercicio-opcao .botao{grid-column:1/-1;white-space:normal}
.catalogo-prescricao{margin:18px 0}

/* Abas internas do consultório (Meus Alunos, Convidar, Cupons, Assinatura).
   Mesmo desenho das abas que ele usava antes, agora com nome próprio. */
.consultorio-abas{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #8886;padding-bottom:12px;margin-bottom:24px}
.consultorio-abas button{font:inherit;border:1px solid #8886;background:transparent;color:inherit;border-radius:12px;padding:12px 18px;cursor:pointer}
.consultorio-abas button[aria-selected=true]{background:var(--acento);color:var(--sobre-acento);border-color:var(--acento)}
.consultorio-abas button:focus-visible{outline:3px solid var(--acento);outline-offset:3px}
@media(max-width:600px){.consultorio-abas{display:grid;grid-template-columns:1fr 1fr}.consultorio-abas button{padding:12px 8px}}

/* Título de grupo na barra lateral (ver navegacao-ui.js). No celular os
   grupos só existem na folha "Mais". */
#abas [data-grupo-navegacao]{display:block;padding:18px 14px 5px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tinta-3)}
@media(max-width:959px){#abas [data-grupo-navegacao]{display:none}}

/* Marca da porta na tela de entrada da área do profissional (conta.js). */
.etiqueta-portao{margin:0 0 6px;color:var(--acento);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}


/* Pente fino (28/10/2026). No celular, a ação principal ocupa a linha toda e
 * as demais dividem a de baixo: eram três botões espremidos, com o texto em três
 * linhas (Alunos, Lançamentos). O resumo de Lançamentos tem 4 números: 4
 * colunas em tela larga e 2 × 2 no celular (era 3 + 1 nos dois). */
.painel-numeros.lancamentos-resumo { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.acoes-cabecalho .botao { white-space: nowrap; flex: 1 1 auto; }
@media (max-width: 600px) {
  .consultorio-acoes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .consultorio-acoes > .botao-primario:first-child { grid-column: 1 / -1; }
  .painel-numeros.lancamentos-resumo { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Análises de engajamento (28/10/2026). */
.painel-numeros.analises-numeros { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 600px) { .painel-numeros.analises-numeros { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.analises-lista { display: flex; flex-direction: column; gap: 10px; margin-top: 10px; }
.analise-aluno { display: flex; flex-direction: column; gap: 8px; border-left: 4px solid var(--borda); }
.analise-aluno.nivel-risco { border-left-color: #c2410c; }
.analise-aluno.nivel-atencao { border-left-color: var(--alerta); }
.analise-aluno.nivel-engajado { border-left-color: var(--nutri, #13795b); }
.analise-topo { display: flex; align-items: center; gap: 10px; min-width: 0; }
.analise-nome { flex: 1 1 auto; min-width: 0; overflow-wrap: anywhere; }
.analise-nivel { flex: none; font-weight: 700; }
.analise-nivel.nivel-risco { background: #fde7dc; color: #9a3412; }
.analise-nivel.nivel-atencao { background: var(--alerta-fundo); color: var(--alerta); }
.analise-nivel.nivel-engajado { background: var(--nutri-fundo, #e3f3ec); color: var(--nutri, #13795b); }
@media (prefers-color-scheme: dark) { :root:where(:not([data-modo='claro'])) .analise-nivel.nivel-risco { background: #3a1d12; color: #fdba8c; } }
:root[data-modo='escuro'] .analise-nivel.nivel-risco { background: #3a1d12; color: #fdba8c; }
.analise-motivos { margin: 0; padding-left: 18px; }
.analise-motivos li + li { margin-top: 2px; }
.analise-indicadores { margin: 0; }
.analise-desistencias { margin: 0; padding-left: 18px; }
.analises-regra { margin-top: 12px; }

/* Convidar vários de uma vez (28/10/2026). */
.convite-lote { display: flex; flex-direction: column; gap: 10px; margin-top: 14px; }
.convite-lote > h3, .convite-lote > .sub { margin: 0; }

/* Pastas nos modelos (28/10/2026). */
.modelos-pastas { margin: 0 0 6px; }
.modelos-pasta-titulo { margin: 14px 0 4px; font-size: 12px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--tinta-3); }
.modelo-pasta { margin: 0; }
