/* cursos.css · Sistema Avança · interface · 1.0-20261025-84 */
/* Cursos (cartão cursos) e a página pública das capacitações: cartões dos cursos, calendário, painel de ocupação das vagas,
   formulário das datas, presença e as janelas. Carregado depois do estilo.css. */

body.cuTravado{overflow:hidden}
#cuNav .almNavConta.neutra{background:#E8EEF8;color:var(--azul)}
.cuFiltros1{grid-template-columns:1fr;margin-bottom:14px}
.cuFiltros2{grid-template-columns:2fr 1fr;margin:16px 0 12px}
.cuFiltros3{grid-template-columns:2fr 1fr 1fr;margin-bottom:12px}
.cuCampoBt{display:flex;align-items:flex-end}
.cuCampoBt .bt.mini{width:100%;height:46px;margin:0}
.cuNota{margin:0 0 12px;color:var(--suave);font-size:13.5px;line-height:1.5}
.cuSuave{color:var(--suave)}
.cuAlerta{color:#8A5300 !important;font-weight:700}
.cuCentro{text-align:center !important}
.cuVazioCel{color:var(--suave);text-align:center;padding:16px 8px !important}

/* cartões dos cursos abertos */
.cuCartoes{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.cuCartao{font:inherit;text-align:left;background:#fff;border:1px solid var(--linha);border-radius:var(--raio);padding:16px 18px;cursor:pointer;display:flex;flex-direction:column;gap:10px;transition:border-color .15s,box-shadow .15s}
.cuCartao:hover{border-color:var(--celeste);box-shadow:0 10px 28px rgba(0,35,94,.09)}
.cuCartaoTopo{display:flex;justify-content:space-between;align-items:center;gap:8px}
.cuModal{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--azul);background:#E8EEF8;border-radius:99px;padding:3px 9px}
.cuCartaoCorpo{display:flex;gap:14px;align-items:flex-start}
.cuDia{flex:none;width:52px;height:56px;border-radius:12px;background:#EEF3FA;color:var(--azul);display:flex;flex-direction:column;align-items:center;justify-content:center}
.cuDia b{font-size:22px;line-height:1}
.cuDia span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-top:3px}
.cuCartaoTx{min-width:0}
.cuCartaoTx h3{margin:0 0 4px;font-size:15.5px;line-height:1.35;color:var(--azul)}
.cuCartaoTx p{margin:0 0 2px;font-size:13px;line-height:1.45}
.cuVer{margin-top:auto;font-size:13px;font-weight:600;color:var(--azul)}
.cuVer::after{content:" ›"}

/* tabelas */
.cuTab td small{display:block;color:var(--suave);font-size:12px;margin-top:3px;font-weight:400}
.cuTab td.acaoU{text-align:right;white-space:normal;min-width:150px}
.cuTab td.acaoU .editU{text-decoration:none;margin:0 0 4px 6px;display:inline-block}
.cuTab .editU.perigoU{color:#B42318;border-color:#F0C7C7}
.cuTab tr.cuClic{cursor:pointer}
.cuTab tr.cuClic:hover td,.cuTab tr.cuClic:focus td{background:#F5F8FC}
.cuTab tr.cuClic:focus{outline:none}
.cuPessoa{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--texto)}
.cuPessoa .avatar{width:30px;height:30px;font-size:11px}
.cuTab td .cuPessoa + small{margin-left:40px}
.cuTabPres th small{display:block;font-weight:400}
.cuChk{width:18px;height:18px;accent-color:var(--azul);cursor:pointer;margin:0}

/* calendário */
.cuMesNav{display:flex;align-items:center;gap:10px}
.cuMesNav b{min-width:150px;text-align:center;color:var(--azul);font-size:16px}
.cuSeta{width:36px;height:36px;border:1px solid var(--linha);border-radius:10px;background:#fff;color:var(--azul);font-size:20px;line-height:1;cursor:pointer}
.cuSeta:hover{background:#F2F5FA}
.cuCal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cuSem{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--suave);text-align:center;padding:4px 0}
.cuDiaCal{min-height:92px;border:1px solid var(--linha);border-radius:10px;padding:6px;display:flex;flex-direction:column;gap:4px;background:#fff;min-width:0}
.cuDiaCal.fora{background:#FAFBFD;border-style:dashed}
.cuDiaCal.hoje{border-color:var(--azul);box-shadow:inset 0 0 0 1px var(--azul)}
.cuNumDia{font-size:12.5px;font-weight:700;color:var(--suave)}
.cuDiaCal.hoje .cuNumDia{color:var(--azul)}
.cuEv{font:inherit;font-size:11.5px;font-weight:600;text-align:left;border:0;border-radius:6px;padding:4px 6px;background:#E6F1E2;color:#1F5A17;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cuEv.meu{background:#3E8E2E;color:#fff}
.cuEv:hover{filter:brightness(.95)}

/* painel da gestão */
.cuInd5{grid-template-columns:repeat(5,minmax(0,1fr))}
.cuInd5 .almIndCartao:disabled{cursor:default;opacity:1;color:inherit}
.cuGrafico{margin-bottom:6px}
.cuBarra{font:inherit;width:100%;display:grid;grid-template-columns:minmax(120px,30%) 1fr 150px;gap:12px;align-items:center;background:none;border:0;padding:5px 0;cursor:pointer;text-align:left}
.cuBarra:hover .cuBarraRot{color:var(--azul)}
.cuBarraRot{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--texto)}
.cuBarraTrilho{display:flex;height:22px;border-radius:6px;overflow:hidden;background:#EEF2F7}
.cuPedaco{display:flex;align-items:center;justify-content:center;min-width:0;font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums}
.cuPedaco.conf{background:#2F62A8;color:#fff}
.cuPedaco.pend{background:#F1A34B;color:#3A2300}
.cuPedaco.livre{background:#DCE5F1;color:#3D4F72}
.cuBarraVal{font-size:12.5px;color:var(--suave);white-space:nowrap;font-variant-numeric:tabular-nums}
.cuLegenda{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;margin:10px 0 0;font-size:12px;color:var(--suave)}
.cuLeg{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:-8px;vertical-align:-1px}
.cuLeg.conf{background:#2F62A8}.cuLeg.pend{background:#F1A34B}.cuLeg.livre{background:#DCE5F1}

/* um curso */
.cuVoltar{font:inherit;font-size:13.5px;font-weight:600;color:var(--suave);background:none;border:0;padding:0;margin:0 0 14px;cursor:pointer}
.cuVoltar::before{content:"‹ "}
.cuVoltar:hover{color:var(--azul)}
.cuLinkBox{border:1px solid var(--linha);border-radius:12px;padding:12px 14px;margin:0 0 16px;background:#FBFCFE}
.cuLinkLinha{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.cuLinkLinha input{flex:1 1 300px;font:inherit;font-size:13.5px;height:40px;border:1px solid var(--linha);border-radius:10px;padding:0 10px;background:#F6F8FB;color:var(--texto);min-width:0}
.cuLinkLinha .bt.mini{height:40px}
.cuLinkBox .dica{margin-top:8px}
.cuBtLink{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}
.cuParte{border-top:1px solid var(--linha);padding-top:14px}
.cuAcoes{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
.cuAcoes .bt.mini{margin:0}
.cuChkLinha{margin:2px 0 6px}
.cuMaisData{margin-top:4px}
.cuDicaAut{margin:0 0 12px}
.cuSessoes{display:flex;flex-direction:column;gap:8px}
.cuSessao{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) 40px;gap:10px;align-items:end;margin:0}
.cuSessao label.cuSesCampo{display:flex;flex-direction:column;align-items:stretch;min-height:0;gap:4px;min-width:0;margin:0;text-align:left;font-size:inherit;color:inherit}
.cuSesRot{font-size:11.5px;font-weight:600;color:var(--suave)}
.cuSessao input{width:100%;box-sizing:border-box;height:44px;font:inherit;font-size:15px;padding:0 10px;border:1px solid var(--linha);border-radius:10px;background:#fff;color:var(--texto)}
.cuSessao input:focus{border-color:var(--azul);outline:none;box-shadow:0 0 0 3px rgba(0,35,94,.12)}
.cuTirar{height:44px;width:40px;border:1px solid #F0C7C7;border-radius:10px;background:#fff;color:#B42318;font-size:20px;line-height:1;cursor:pointer}
.cuTirar:hover{background:#FDEDED}
.cuSessao.campoErro input{border-color:#C62828}
.cuHistCx{margin-top:18px;border-top:1px solid var(--linha);padding-top:12px}
.cuHistCx h3{margin:0 0 8px;font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--azul)}
.cuHist{list-style:none;margin:0;padding:0;font-size:13px;display:flex;flex-direction:column;gap:6px;max-height:240px;overflow-y:auto}
.cuHist li{display:grid;grid-template-columns:120px 1fr;gap:10px;line-height:1.45}
.cuHist b{font-weight:600;color:var(--suave);font-variant-numeric:tabular-nums}

/* janelas */
.cuJanela .caixa{width:min(720px,100%)}
.cuJanelaPeq .caixa{width:min(480px,100%)}
.cuJanela .rolagem{padding-top:12px}
.cuJanela .rolagem h3{font-size:15px;letter-spacing:0;text-transform:none;margin:4px 0 10px}
.cuFicha{display:grid;grid-template-columns:130px 1fr;gap:6px 14px;margin:0 0 12px;font-size:14px}
.cuFicha dt{font-weight:600;color:var(--suave)}
.cuFicha dd{margin:0;color:var(--texto);overflow-wrap:anywhere;white-space:pre-line}
.jCad .rolagem .cuDesc p{color:var(--texto)}
.cuDesc{font-size:14px;line-height:1.55;color:var(--texto);border-top:1px solid var(--linha);padding-top:10px}
.cuContato{display:flex;gap:8px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--linha);padding-top:10px;margin-top:10px}
.cuContatoRot{width:100%;font-size:13px;color:var(--suave)}
.cuContato .bt.mini{margin:0;text-decoration:none}
.cuMinha{font-size:14px;font-weight:600;color:var(--azul)}
#jCurso .acoesJ .bt,#jMural .acoesJ .bt{min-width:0}

/* página pública */
.cpGrade{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.cpLado{position:sticky;top:14px}
.cpCal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cpCal .cuSem{padding:2px 0}
.cpDiaP{aspect-ratio:1/1;display:grid;place-items:center;border-radius:8px;font-size:13px;color:var(--texto);border:0;background:none;font:inherit;padding:0}
.cpDiaP.fora{visibility:hidden}
.cpDiaP.tem{background:#E6F1E2;color:#1F5A17;font-weight:700;cursor:pointer}
.cpDiaP.tem:hover{background:#3E8E2E;color:#fff}
.cpDiaP.hoje{box-shadow:inset 0 0 0 2px var(--azul)}
.cpEstado{border:1px solid var(--linha);border-radius:var(--raio);padding:16px 18px;margin:0 0 16px;background:#fff}
.cpEstado h2{margin:0 0 6px;font-size:18px;color:var(--azul)}
.cpEstado p{margin:0;color:var(--texto);font-size:14px;line-height:1.5}
.cpForm{border-top:1px solid var(--linha);margin-top:12px;padding-top:12px}
.cpForm h3{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--azul);margin:0 0 8px}
.cpPasso1{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 12px;align-items:start}
.cpPasso1 .campo>label{min-height:0;display:block}
.cpPasso1 input{height:50px;box-sizing:border-box}
.cpPasso1 .bt{height:46px;margin:0 0 8px}
.cpAceite{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;margin:4px 0 6px;line-height:1.45}
.cpAceite input{margin-top:3px;accent-color:var(--azul)}
.cpPoliticaCx{margin-bottom:4px}
.cpPolitica{margin-top:8px;max-height:220px;overflow-y:auto;border:1px solid var(--linha);border-radius:10px;padding:10px 14px;background:#fff;font-size:13px;line-height:1.5;color:var(--texto)}
.cpPolitica p{margin:0 0 8px;color:var(--texto)}

@media (max-width:1100px){
  .cuInd5{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .cuFiltros2,.cuFiltros3{grid-template-columns:1fr}
  .cuBarra{grid-template-columns:1fr;gap:4px}
  .cuDiaCal{min-height:64px;padding:4px}
  .cuEv{font-size:10.5px;padding:3px 4px}
  .cpGrade{grid-template-columns:1fr}
  .cpLado{position:static}
}
@media (max-width:640px){
  .cuInd5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cuSessao{grid-template-columns:1fr 1fr 40px}
  .cuSessao .cuSesCampo:first-child{grid-column:1 / -1}
  .cuFicha{grid-template-columns:1fr;gap:2px}
  .cuFicha dd{margin-bottom:8px}
  .cuHist li{grid-template-columns:1fr;gap:0}
  .cpPasso1{grid-template-columns:1fr}
}
