/* ================================================================
   IA DO PERFIL DO ESTUDANTE — botão do cabeçalho, modal de conexão
   e botões "Gerar com IA" dos campos de contexto (js/perfil-ia.js)
   ================================================================ */

/* Botão do cabeçalho da ficha, ao lado de "Imprimir registro" */
.btn-ia {
  display: inline-flex; align-items: center; gap: 6px;
  border: 1px solid #c9d3e4; background: #fff; color: #3b4c66;
  font-weight: 700; letter-spacing: .2px;
}
.btn-ia:hover { border-color: #9fb2d4; background: #f6f9ff; }
.btn-ia .ia-luz {
  width: 9px; height: 9px; border-radius: 999px;
  background: #b8c2d2; box-shadow: none;
  transition: background .25s, box-shadow .25s;
}
/* IA conectada: a luz acende e o botão "fica aceso" */
.btn-ia.ia-ativa {
  border-color: #18a06a; background: #eafaf2; color: #0b7a4b;
}
.btn-ia.ia-ativa .ia-luz {
  background: #19c37d;
  box-shadow: 0 0 0 3px rgba(25, 195, 125, .22), 0 0 10px rgba(25, 195, 125, .8);
  animation: ia-pulso 2.2s ease-in-out infinite;
}
@keyframes ia-pulso {
  0%, 100% { box-shadow: 0 0 0 3px rgba(25, 195, 125, .18), 0 0 8px rgba(25, 195, 125, .65); }
  50% { box-shadow: 0 0 0 5px rgba(25, 195, 125, .10), 0 0 14px rgba(25, 195, 125, .95); }
}

/* Modal de conexão */
.ia-modal { width: min(560px, 94vw); }
.ia-corpo { display: grid; gap: 14px; padding: 18px 20px 20px; }
.ia-status {
  border: 1px solid var(--border, #dfe5ef); border-radius: 10px;
  padding: 11px 13px; font-size: 12.5px; line-height: 1.5;
}
.ia-status-ok { background: #eafaf2; border-color: #a7e6c6; color: #0b6b45; }
.ia-status-off { background: #f7f9fc; color: #55647c; }
.ia-status-indisponivel { background: #fff7ed; border-color: #f3d3a5; color: #92500b; }
.ia-linha { display: flex; gap: 8px; flex-wrap: wrap; }
.ia-campo { display: grid; gap: 6px; }
.ia-campo label { font-size: 11px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: #24406b; }
.ia-campo select {
  width: 100%; padding: 9px 11px; font-size: 12.5px; font-family: inherit;
  border: 1px solid var(--border, #dfe5ef); border-radius: 9px; background: #fff;
}
.ia-dica { font-size: 11px; color: var(--muted, #64748b); margin: 0; line-height: 1.5; }
/* Uso e cota do Puter */
.ia-uso {
  border: 1px solid var(--border, #dfe5ef); border-radius: 10px;
  padding: 11px 13px; background: #f7f9fc; display: grid; gap: 5px;
}
.ia-uso:empty { display: none; }
.ia-uso-titulo { font-size: 10px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: #24406b; }
.ia-uso-linha { font-size: 11.5px; color: #44536b; line-height: 1.5; }
.ia-uso-linha b { color: #14304f; }
.ia-uso-barra { height: 8px; border-radius: 999px; background: #e3e9f2; overflow: hidden; }
.ia-uso-preenchido { height: 100%; border-radius: 999px; background: linear-gradient(90deg, #19c37d, #2457d6); }
.ia-explicao {
  font-size: 12px; line-height: 1.6; color: #44536b;
  background: #f7f9fc; border: 1px solid var(--border, #dfe5ef);
  border-radius: 10px; padding: 11px 13px;
}
.ia-explicao b { color: #14304f; }

/* Botão "Gerar com IA" no topo de cada campo de contexto */
.pf-ia-gerar {
  flex-shrink: 0; display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 10px; border-radius: 999px; cursor: pointer;
  border: 1px solid #c9d3e4; background: #fff; color: #64748b;
  font-size: 10px; font-weight: 800; font-family: inherit;
  letter-spacing: .2px; transition: all .2s;
}
.pf-ia-gerar:hover { border-color: #8fb0e8; color: #2457d6; background: #f2f7ff; }
.pf-ia-gerar.ia-pronta {
  border-color: #9fd8bd; background: #eefaf4; color: #0b7a4b;
}
.pf-ia-gerar.ia-pronta:hover { border-color: #18a06a; background: #e2f7ed; }
.pf-ia-gerar:disabled { opacity: .6; cursor: progress; }
