/* ============================================================================
   SOMA · Educação e Qualificação — CSS do módulo LMS
   ============================================================================ */
.educacao-body { --edu-teal:#02B8BF; --edu-teal-2:#0E9AA1; --edu-teal-l:#7FE7EB;
  --edu-ink:#0B1F33; --edu-ink-2:#54657A; --edu-ink-3:#8597A8;
  --edu-line:#E2E8F0; --edu-navy:#071b31; }
.educacao-app.pl-content {
  padding: 0 !important;
  background: radial-gradient(circle at 90% 0%, rgba(2,184,191,.05), transparent 40%), linear-gradient(180deg,#eef1f5,#e7ebf1) !important;
  min-height: 100vh;
}
.eyebrow { font:600 11px 'JetBrains Mono',monospace; letter-spacing:.16em; text-transform:uppercase; color:var(--edu-teal-2); margin:0 0 6px; }

/* --- skeleton --- */
.edu-skel { background:linear-gradient(90deg,#eef1f5,#f6f8fb,#eef1f5); background-size:200%; animation:edusk 1.2s infinite; border-radius:12px; }
@keyframes edusk { 0%{background-position:200% 0}100%{background-position:-200% 0} }

/* --- hero --- */
.edu-hero { display:grid; grid-template-columns:1fr 280px; gap:24px; align-items:center; background:linear-gradient(135deg,rgba(6,19,35,.90),rgba(7,27,49,.84) 58%,rgba(11,49,75,.80)),url(../assets/treinamentos-background-8.png) center/cover no-repeat; border:1px solid rgba(127,231,235,.2); border-radius:20px; padding:32px 36px; margin:26px 26px 0; box-shadow:0 14px 40px rgba(7,27,49,.18); }
.edu-hero-text h1 { font:700 26px 'Inter',sans-serif; color:#fff; margin:0 0 10px; letter-spacing:-.02em; line-height:1.25; }
.edu-hero-sub { color:rgba(255,255,255,.78); font-size:14px; max-width:600px; margin:0 0 18px; }
.edu-hero-acts { display:flex; gap:10px; flex-wrap:wrap; }
.edu-hero-metrics { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.edu-metric { background:rgba(255,255,255,.07); border:1px solid rgba(127,231,235,.2); border-radius:12px; padding:14px; text-align:center; }
.edu-metric strong { display:block; font:700 22px 'Inter',sans-serif; color:var(--edu-teal-l); }
.edu-metric p { margin:4px 0 0; font-size:11.5px; color:rgba(255,255,255,.6); }

/* --- buttons --- */
.edu-btn { display:inline-flex; align-items:center; gap:8px; padding:10px 18px; border-radius:10px; font:600 13.5px 'Inter',sans-serif; cursor:pointer; border:0; transition:filter .15s,background .15s; }
.edu-btn-primary { background:linear-gradient(135deg,#02B8BF,#0891b2); color:#fff; }
.edu-btn-primary:hover { filter:brightness(1.07); }
.edu-btn-ghost { background:rgba(255,255,255,.1); color:#fff; border:1px solid rgba(127,231,235,.3); }
.edu-btn-ghost:hover { background:rgba(255,255,255,.18); }
/* ghost sobre SUPERFÍCIE CLARA (card premium branco / cards do catálogo): texto teal legível.
   O ghost base é p/ fundo escuro (texto branco) — preservado p/ player e modal de certificado. */
.edu-premium-head .edu-btn-ghost,
.edu-free-card .edu-btn-ghost { background:rgba(2,184,191,.09); color:#0E7A80; border:1px solid rgba(2,184,191,.5); }
.edu-premium-head .edu-btn-ghost:hover,
.edu-free-card .edu-btn-ghost:hover { background:rgba(2,184,191,.16); color:#0B5F64; }
.edu-btn-primary-sm { background:var(--edu-teal); color:#04222b; padding:7px 14px; font-size:13px; border-radius:9px; border:0; cursor:pointer; font-weight:600; }
.edu-btn-sm { background:#fff; border:1px solid var(--edu-line); border-radius:8px; padding:6px 12px; font:600 12px 'Inter',sans-serif; color:var(--edu-ink-2); cursor:pointer; }
.edu-btn-sm:hover { border-color:var(--edu-teal); color:var(--edu-teal); }
/* Botão premium de certificado (gradiente + selo + brilho) */
.edu-btn-cert { display:inline-flex; align-items:center; padding:9px 17px; border:0; border-radius:11px; cursor:pointer; font:700 13px 'Inter',sans-serif; color:#04222b; background:linear-gradient(135deg,#7FE7EB,#02B8BF 55%,#0E9AA1); box-shadow:0 8px 20px rgba(2,184,191,.32); position:relative; overflow:hidden; transition:transform .16s ease, box-shadow .18s ease, filter .18s ease; }
.edu-btn-cert:hover { transform:translateY(-2px); box-shadow:0 14px 30px rgba(2,184,191,.45); filter:brightness(1.04); }
.edu-btn-cert::after { content:''; position:absolute; top:0; left:-130%; width:55%; height:100%; transform:skewX(-18deg); background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent); transition:left .6s ease; pointer-events:none; }
.edu-btn-cert:hover::after { left:150%; }
.edu-btn-cert.is-locked { background:#E2E8F0; color:#94A3B8; box-shadow:none; cursor:not-allowed; }
.edu-btn-cert.is-locked:hover { transform:none; box-shadow:none; filter:none; }
.edu-btn-cert.is-locked::after { display:none; }
/* estado bloqueado genérico + tag bloqueada (cadeado discreto, cinza) */
.edu-btn.is-locked { opacity:.55; cursor:not-allowed; }
.edu-btn.is-locked:hover { transform:none; box-shadow:none; filter:none; }
.edu-tag.edu-tag-lock { background:rgba(148,163,184,.2); color:#64748B; display:inline-flex; align-items:center; }

/* --- subtabs --- */
.edu-subtabs { position:sticky; top:var(--pl-header-h,64px); z-index:20; padding:14px 26px; background:#EEF1F5; overflow-x:auto; scrollbar-width:none; }
.edu-subtabs::-webkit-scrollbar { display:none; }
.edu-subtabs-card { display:flex; gap:4px; min-width:100%; width:max-content; background:#fff; border:1px solid var(--edu-line); border-radius:14px; padding:5px; box-shadow:0 2px 10px rgba(11,31,51,.05); }
.edu-subtab { display:inline-flex; align-items:center; justify-content:center; gap:7px; white-space:nowrap; flex:1 0 auto; background:transparent; border:0; border-radius:10px; padding:9px 16px; font:600 13px 'Inter',sans-serif; color:var(--edu-ink-2); cursor:pointer; transition:background .16s,color .16s,box-shadow .16s; }
.edu-subtab svg { width:16px; height:16px; flex:none; }
.edu-subtab:hover { background:rgba(2,184,191,.08); color:var(--edu-teal); }
.edu-subtab.is-on { background:linear-gradient(135deg,#02B8BF,#0B6E73); color:#fff; box-shadow:0 6px 16px -6px rgba(2,184,191,.6); }
.edu-novo { font:700 8.5px 'JetBrains Mono',monospace; letter-spacing:.1em; text-transform:uppercase; line-height:1; border-radius:999px; padding:3px 6px; background:linear-gradient(135deg,#02B8BF,#7FE7EB); color:#04222b; }
.edu-subtab.is-on .edu-novo { background:rgba(255,255,255,.28); color:#fff; }

/* --- panels --- */
.edu-tab-panel[hidden] { display:none !important; }
.edu-panel-wrap { max-width:1280px; margin:0 auto; padding:24px 26px; }
.edu-panel-head { margin-bottom:20px; }
.edu-panel-head h2 { font:700 22px 'Inter',sans-serif; color:var(--edu-ink); margin:0 0 6px; letter-spacing:-.01em; }
.edu-panel-sub { color:var(--edu-ink-2); font-size:14px; margin:4px 0 0; }

/* --- curso premium --- */
.edu-premium-card { background:#fff; border:1px solid var(--edu-line); border-radius:18px; padding:24px; box-shadow:0 4px 20px rgba(11,31,51,.06); }
.edu-premium-head { margin-bottom:20px; }
.edu-premium-head h2 { font:700 20px 'Inter',sans-serif; color:var(--edu-ink); margin:8px 0 6px; }
.edu-premium-head p { color:var(--edu-ink-2); font-size:14px; max-width:680px; }
.edu-premium-meta { display:flex; gap:16px; flex-wrap:wrap; font-size:13px; color:var(--edu-ink-3); margin:10px 0; }
.edu-progress-row { display:flex; align-items:center; gap:12px; margin:12px 0; }
.edu-progress-bar { flex:1; height:6px; background:#E2E8F0; border-radius:3px; overflow:hidden; }
.edu-progress-bar.sm { width:80px; flex:none; }
.edu-progress-fill { height:100%; background:linear-gradient(90deg,var(--edu-teal),#10B981); border-radius:3px; transition:width .4s; }
.edu-progress-row span { font:600 13px 'JetBrains Mono',monospace; color:var(--edu-teal-2); }

/* --- módulos / aulas --- */
.edu-modulos { margin-top:16px; display:flex; flex-direction:column; gap:8px; }
.edu-mod { border:1px solid var(--edu-line); border-radius:12px; overflow:hidden; }
.edu-mod-head { display:flex; align-items:center; gap:12px; padding:12px 14px; cursor:pointer; list-style:none; background:#F8FAFC; }
.edu-mod-head::-webkit-details-marker { display:none; }
.edu-mod-num { font:700 12px 'JetBrains Mono',monospace; color:var(--edu-teal-2); }
.edu-mod-info strong { display:block; font:600 14px 'Inter',sans-serif; color:var(--edu-ink); }
.edu-mod-info span { font-size:12px; color:var(--edu-ink-3); }
.edu-mod-bar { width:60px; height:4px; background:#E2E8F0; border-radius:2px; overflow:hidden; flex-shrink:0; }
.edu-mod-bar div { height:100%; background:var(--edu-teal); border-radius:2px; }
.edu-mod[open] .edu-mod-head { background:rgba(2,184,191,.06); }
.edu-aulas { list-style:none; margin:0; padding:8px 12px 10px; display:flex; flex-direction:column; gap:4px; }
.edu-aula { display:flex; align-items:center; gap:10px; padding:9px 12px; border-radius:9px; cursor:pointer; transition:background .14s; font-size:13.5px; color:var(--edu-ink); }
.edu-aula:hover { background:rgba(2,184,191,.08); }
.edu-aula.is-done { color:var(--edu-ink-2); }
.edu-aula-ico { width:22px; height:22px; border-radius:50%; background:rgba(2,184,191,.14); display:grid; place-items:center; font-size:10px; color:var(--edu-teal); flex-shrink:0; }
.edu-aula.is-done .edu-aula-ico { background:rgba(16,185,129,.14); color:#10B981; }
.edu-aula-titulo { flex:1; }
.edu-aula-dur { font-size:11.5px; color:var(--edu-ink-3); white-space:nowrap; }

/* --- tags/chips --- */
.edu-tag { font:700 10px 'JetBrains Mono',monospace; letter-spacing:.06em; text-transform:uppercase; padding:3px 8px; border-radius:6px; background:rgba(123,97,255,.14); color:#7B61FF; }
.edu-tag.premium { background:rgba(245,158,11,.14); color:#B45309; }
.edu-tag.success { background:rgba(16,185,129,.14); color:#047857; }
.edu-tag.warn { background:rgba(239,68,68,.14); color:#B91C1C; }

/* ============================================================================
   Premium polish — seletor de trilhas magnético, glow/sombra, CTAs (área paga)
   ============================================================================ */
.edu-trail-sel { display:flex; gap:14px; flex-wrap:wrap; margin:0 0 22px; perspective:1100px; }

.edu-trail-card {
  --lift:0px; --sc:1;
  position:relative; flex:1; min-width:220px; text-align:left; cursor:pointer; overflow:hidden;
  background:#0a2034; border:1px solid rgba(127,231,235,.18); border-radius:16px; padding:16px 18px; color:#eaf2f6;
  transform: translateY(var(--lift)) scale(var(--sc));
  box-shadow:0 6px 18px rgba(5,18,33,.18);
  transition: transform .2s ease, box-shadow .28s ease, border-color .28s ease;
  will-change: transform;
}
.edu-trail-card::before { /* spotlight que segue o cursor */
  content:''; position:absolute; inset:0; border-radius:inherit; pointer-events:none; opacity:0; transition:opacity .3s ease;
  background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%), rgba(127,231,235,.22), transparent 60%);
}
.edu-trail-card:hover { --lift:-3px; --sc:1.035; border-color:rgba(2,184,191,.55);
  box-shadow:0 18px 40px rgba(2,184,191,.22), 0 6px 16px rgba(5,18,33,.28); }
.edu-trail-card:hover::before { opacity:1; }
.edu-trail-card .ett-eyebrow { display:block; font:600 10px 'JetBrains Mono',monospace; letter-spacing:.12em; text-transform:uppercase; color:var(--edu-teal-l); }
.edu-trail-card .ett-title { display:block; font:700 14.5px 'Inter',sans-serif; color:#F5F9FC; margin:5px 0; line-height:1.25; }
.edu-trail-card .ett-meta { display:block; font:500 11.5px 'Inter',sans-serif; color:rgba(234,242,246,.62); }
.edu-trail-card.is-on { background:linear-gradient(160deg,#0e3a44,#0a2334); border:2px solid var(--edu-teal);
  box-shadow:0 0 0 3px rgba(2,184,191,.18), 0 16px 34px rgba(2,184,191,.22); }
.edu-trail-card.is-on:hover { box-shadow:0 0 0 3px rgba(2,184,191,.26), 0 22px 46px rgba(2,184,191,.30); }

/* card premium: accent superior + sombra premium ao passar o cursor */
/* accent superior como CAMADA de background → recortada pelo border-radius (sem vazar a borda) */
.edu-premium-card { position:relative; background:linear-gradient(90deg, var(--edu-teal), var(--edu-teal-l), #10B981) left top / 100% 3px no-repeat, #fff; transition: box-shadow .3s ease, transform .3s ease; }
.edu-premium-card:hover { box-shadow:0 18px 50px rgba(2,184,191,.13), 0 6px 22px rgba(11,31,51,.08); }

/* CTA primário: glow + lift + shimmer + magnético (soft) */
.edu-btn { position:relative; overflow:hidden; }
.edu-btn-primary { --tx:0px; --ty:0px; --lift:0px; --sc:1;
  transform: translate(var(--tx),var(--ty)) translateY(var(--lift)) scale(var(--sc));
  box-shadow:0 8px 20px rgba(2,184,191,.30);
  transition: transform .18s cubic-bezier(.22,.61,.36,1), box-shadow .2s ease, filter .2s ease; }
.edu-btn-primary::after { content:''; position:absolute; top:0; left:-130%; width:55%; height:100%; transform:skewX(-18deg); pointer-events:none;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.45), transparent); transition:left .6s ease; }
.edu-btn-primary:hover { --lift:-2px; --sc:1.015; box-shadow:0 14px 32px rgba(2,184,191,.45); filter:brightness(1.05); }
.edu-btn-primary:hover::after { left:150%; }
.edu-btn-primary:active { --lift:0px; --sc:.99; }

/* ghost claro (Pré/Pós-teste): lift + glow ao passar o cursor */
.edu-premium-head .edu-btn-ghost { transition: transform .18s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease; }
.edu-premium-head .edu-btn-ghost:hover { transform:translateY(-2px); box-shadow:0 10px 22px rgba(2,184,191,.20); }

/* C12 — respiro + alinhamento canônicos: linha de ações nunca colada, com gap e baseline alinhada */
.edu-premium-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:18px; }

/* barra de progresso: brilho animado sutil */
.edu-progress-fill { position:relative; overflow:hidden; }
.edu-progress-fill::after { content:''; position:absolute; inset:0; transform:translateX(-100%);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent); animation:edu-shine 2.6s ease-in-out infinite; }
@keyframes edu-shine { 0%{transform:translateX(-100%)} 55%,100%{transform:translateX(240%)} }

@media (prefers-reduced-motion: reduce) {
  .edu-trail-card, .edu-btn-primary, .edu-premium-card, .edu-premium-head .edu-btn-ghost { transition:none !important; transform:none !important; }
  .edu-trail-card::before, .edu-btn-primary::after, .edu-progress-fill::after { display:none !important; }
}

/* --- lock CTA --- */
.edu-lock-cta { text-align:center; padding:32px 24px; } .edu-lock-icon { font-size:36px; margin-bottom:10px; }
.edu-lock-cta h3 { font:700 18px 'Inter',sans-serif; color:var(--edu-ink); margin:0 0 8px; }

/* --- cursos gratuitos --- */
.edu-free-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:14px; }
.edu-free-card { background:#fff; border:1px solid var(--edu-line); border-radius:14px; padding:18px; display:flex; flex-direction:column; gap:8px; transition:box-shadow .14s; }
.edu-free-card:hover { box-shadow:0 8px 22px rgba(2,184,191,.1); border-color:var(--edu-teal); }
.edu-free-card-head strong { font:700 14.5px 'Inter',sans-serif; color:var(--edu-ink); }
.edu-free-card p { font-size:13px; color:var(--edu-ink-2); flex:1; }
.edu-free-meta { font-size:12px; color:var(--edu-ink-3); display:flex; gap:12px; }

/* --- materiais --- */
.edu-mat-grid { display:flex; flex-direction:column; gap:8px; }
.edu-mat-row { display:flex; align-items:center; justify-content:space-between; gap:12px; background:#fff; border:1px solid var(--edu-line); border-radius:11px; padding:12px 16px; }
.edu-mat-row.is-locked { opacity:.6; }
.edu-mat-info { min-width:0; } .edu-mat-tag { font:700 10px 'JetBrains Mono',monospace; padding:2px 7px; border-radius:5px; background:#F1F5F9; color:var(--edu-ink-3); margin-right:6px; }
.edu-mat-info strong { font:600 14px 'Inter',sans-serif; color:var(--edu-ink); }
.edu-mat-meta { display:block; font-size:12px; color:var(--edu-ink-3); margin-top:2px; }
.edu-mat-list { margin-top:14px; } .edu-mat-list h4 { font:700 12.5px 'Inter',sans-serif; color:var(--edu-ink); margin:0 0 8px; }
.edu-mat-item { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 0; border-bottom:1px solid var(--edu-line); font-size:13px; color:var(--edu-ink); }

/* --- player --- */
.edu-player { }
.edu-player-eyebrow { font:600 11px 'JetBrains Mono',monospace; text-transform:uppercase; color:var(--edu-teal-2); margin:0 0 4px; }
.edu-player-title { font:700 18px 'Inter',sans-serif; color:var(--edu-ink); margin:0 0 14px; }
.edu-video-wrap { border-radius:14px; overflow:hidden; margin-bottom:14px; }
.edu-video-placeholder { background:linear-gradient(135deg,#061323,#071b31); aspect-ratio:16/9; display:flex; flex-direction:column; align-items:center; justify-content:center; position:relative; min-height:200px; }
.edu-play-btn { color:var(--edu-teal); cursor:pointer; background:rgba(2,184,191,.18); border-radius:50%; width:72px; height:72px; display:grid; place-items:center; transition:background .15s; }
.edu-play-btn:hover { background:rgba(2,184,191,.32); }
.edu-video-prog { position:absolute; bottom:0; left:0; right:0; height:4px; background:rgba(255,255,255,.1); }
.edu-video-fill { height:100%; background:var(--edu-teal); transition:width .2s; width:0; }
.edu-video-dur { position:absolute; bottom:10px; right:12px; font:500 12px 'JetBrains Mono',monospace; color:rgba(255,255,255,.7); }
.edu-player-acts { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:14px; }

/* --- quiz --- */
.edu-quiz h2 { margin-top:0; }
.edu-quiz-inst { font-size:13.5px; color:var(--edu-ink-2); margin-bottom:16px; }
.edu-q { margin-bottom:18px; }
.edu-q-enun { font-size:14px; color:var(--edu-ink); margin:0 0 8px; }
.edu-q-opt { display:flex; align-items:flex-start; gap:8px; font-size:13.5px; color:var(--edu-ink); padding:8px 10px; border-radius:8px; border:1px solid var(--edu-line); margin-bottom:6px; cursor:pointer; transition:background .12s; }
.edu-q-opt:hover { background:rgba(2,184,191,.07); border-color:var(--edu-teal); }
.edu-q-opt.correct { background:rgba(16,185,129,.12); border-color:#10B981; color:#047857; }
.edu-q-opt.wrong { background:rgba(239,68,68,.1); border-color:#EF4444; color:#B91C1C; }
.edu-quiz-feedback { border-radius:10px; padding:12px 14px; margin-top:12px; font:600 14px 'Inter',sans-serif; }
.edu-quiz-feedback.ok { background:rgba(16,185,129,.14); color:#047857; }
.edu-quiz-feedback.fail { background:rgba(239,68,68,.1); color:#B91C1C; }
.edu-quiz-done { margin-bottom:12px; }

/* --- certificado --- */
.edu-cert { background:#fff; border:2px solid var(--edu-teal); border-radius:16px; padding:32px; text-align:center; }
.edu-cert-header { margin-bottom:12px; } .edu-cert-logo { height:36px; filter:invert(1) brightness(0.2); }
.edu-cert-sub { font:600 12px 'JetBrains Mono',monospace; letter-spacing:.14em; text-transform:uppercase; color:var(--edu-teal-2); margin:0 0 10px; }
.edu-cert-title { font:700 18px 'Inter',sans-serif; color:var(--edu-ink); margin:0 0 8px; }
.edu-cert-name { font:700 22px 'Inter',sans-serif; color:var(--edu-teal); margin:0 0 14px; }
.edu-cert-meta { display:flex; flex-wrap:wrap; justify-content:center; gap:16px; font-size:13px; color:var(--edu-ink-2); margin-bottom:14px; }
.edu-cert-qr { margin:14px auto; } .edu-cert-qr-box { width:80px; height:80px; border:2px dashed var(--edu-teal-2); border-radius:8px; margin:0 auto 6px; display:grid; place-items:center; font-size:9px; color:var(--edu-ink-3); }
.edu-cert-disc { font-size:11px; color:var(--edu-ink-3); max-width:500px; margin:10px auto 14px; }
.edu-cert-acts { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
/* certificado renderizado pelo MODELO ATIVO da plataforma (iframe A4 paisagem) */
.edu-certframe-wrap { display:flex; flex-direction:column; gap:14px; align-items:center; }
.edu-certframe { width:100%; max-width:920px; aspect-ratio:1.414/1; border:1px solid #E2E8F0; border-radius:12px; background:#fff; box-shadow:0 6px 24px rgba(11,31,51,.12); }
.edu-certframe-wrap .edu-cert-acts { margin-top:2px; }

/* --- dashboard --- */
.edu-dash-kpis { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; margin-bottom:20px; }
.edu-dash-kpi { background:#fff; border:1px solid var(--edu-line); border-radius:12px; padding:16px; text-align:center; }
.edu-dash-kpi strong { display:block; font:700 24px 'Inter',sans-serif; color:var(--edu-teal); }
.edu-dash-kpi span { font-size:12.5px; color:var(--edu-ink-3); }
.edu-table-wrap { overflow-x:auto; background:#fff; border:1px solid var(--edu-line); border-radius:12px; margin-top:10px; }
.edu-table { width:100%; border-collapse:collapse; font-size:13px; }
.edu-table th { text-align:left; font:600 11px 'JetBrains Mono',monospace; text-transform:uppercase; color:var(--edu-ink-3); padding:10px 14px; border-bottom:1px solid var(--edu-line); }
.edu-table td { padding:10px 14px; border-bottom:1px solid var(--edu-line); color:var(--edu-ink); vertical-align:middle; }
.edu-table tr:last-child td { border-bottom:0; }

/* --- agente IA --- */
.edu-agente-panel { background:#fff; border:1px solid var(--edu-line); border-radius:16px; padding:22px; }
.edu-agente-head { display:flex; align-items:center; gap:8px; margin-bottom:10px; }
.edu-agente-head strong { font:700 15px 'Inter',sans-serif; color:var(--edu-ink); }
.edu-agente-msg { font-size:14px; color:var(--edu-teal-2); font-weight:600; margin:0 0 14px; }
.edu-agente-pendencias { margin-bottom:16px; } .edu-agente-pendencias h4 { font:700 12.5px 'Inter',sans-serif; color:var(--edu-ink); margin:0 0 6px; }
.edu-agente-pendencias ul { margin:0; padding-left:18px; font-size:13px; color:var(--edu-ink-2); }
.edu-agente-chat { border:1px solid var(--edu-line); border-radius:12px; overflow:hidden; }
.edu-agente-msgs { height:200px; overflow-y:auto; padding:14px; display:flex; flex-direction:column; gap:8px; background:#F8FAFC; }
.edu-agente-bubble { max-width:85%; padding:9px 12px; border-radius:10px; font-size:13px; line-height:1.5; }
.edu-agente-bubble.bot { background:#fff; border:1px solid var(--edu-line); color:var(--edu-ink); align-self:flex-start; }
.edu-agente-bubble.user { background:var(--edu-teal); color:#04222b; align-self:flex-end; }
.edu-agente-input { display:flex; border-top:1px solid var(--edu-line); }
.edu-agente-input input { flex:1; border:0; padding:11px 14px; font:500 13.5px 'Inter',sans-serif; outline:none; background:#fff; color:var(--edu-ink); }
.edu-agente-input button { background:var(--edu-teal); color:#04222b; border:0; padding:0 16px; font-size:14px; cursor:pointer; }

/* --- temas grid (do legado) --- */
.edu-temas-section { background:linear-gradient(135deg,rgba(6,19,35,.90),rgba(7,27,49,.85) 58%,rgba(11,49,75,.82)),url(../assets/treinamentos-background-3.png) center/cover no-repeat; padding:32px 0; margin-top:24px; }
.edu-temas-section .edu-panel-wrap .eyebrow { color:var(--edu-teal-l); }
.edu-temas-section .edu-panel-head h2 { color:#fff; }
.edu-temas-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:12px; }
.edu-tema-card { background:rgba(255,255,255,.06); border:1px solid rgba(127,231,235,.18); border-radius:14px; padding:18px; cursor:pointer; user-select:none; transition:background .16s ease, transform .16s ease, box-shadow .2s ease, border-color .2s ease; }
.edu-tema-card:hover { background:rgba(127,231,235,.14); transform:translateY(-3px); border-color:rgba(2,184,191,.45); box-shadow:0 12px 28px rgba(2,184,191,.16); }
.edu-tema-card:focus-visible { outline:2px solid var(--edu-teal); outline-offset:2px; }
.edu-tema-card span { font:700 12px 'JetBrains Mono',monospace; color:var(--edu-teal-l); display:block; margin-bottom:6px; }
.edu-tema-card h3 { font:700 15px 'Inter',sans-serif; color:#fff; margin:0 0 6px; }
.edu-tema-card p { font-size:13px; color:rgba(255,255,255,.65); margin:0; }

/* --- modal --- */
.edu-modal-ov { position:fixed; inset:0; z-index:200; background:rgba(5,11,23,.62); display:grid; place-items:center; padding:20px; }
.edu-modal { position:relative; width:min(660px,100%); max-height:90vh; overflow-y:auto; background:#fff; border-radius:18px; box-shadow:0 30px 80px rgba(5,11,23,.5); }
.edu-modal.wide { width:min(860px,100%); }
.edu-modal-close { position:absolute; top:12px; right:12px; z-index:2; background:#fff; border:1px solid var(--edu-line); border-radius:8px; width:32px; height:32px; cursor:pointer; font-size:14px; color:var(--edu-ink-2); display:grid; place-items:center; }
.edu-modal-body { padding:26px; }

/* --- invitar --- */
.edu-invite h2 { margin-top:0; }
.edu-field { margin-bottom:14px; } .edu-field label { display:block; font:600 12.5px 'Inter',sans-serif; color:var(--edu-ink); margin-bottom:5px; }
.edu-field input { width:100%; box-sizing:border-box; border:1px solid var(--edu-line); border-radius:9px; padding:9px 12px; font:500 14px 'Inter',sans-serif; color:var(--edu-ink); }

/* Convite — caixa de seleção de membros da equipe (modal claro; nada de fundo preto) */
.edu-invite h2 { color:var(--edu-ink); margin:0 0 6px; }
.edu-invite-sub { font:500 13px 'Inter',sans-serif; color:var(--edu-ink-2); margin:0 0 14px; }
.edu-input { width:100%; box-sizing:border-box; border:1px solid var(--edu-line); border-radius:9px; padding:9px 12px; font:500 13.5px 'Inter',sans-serif; color:var(--edu-ink); margin-bottom:10px; }
.edu-pick-list { max-height:240px; overflow:auto; margin-bottom:14px; display:flex; flex-direction:column; gap:8px; }
.edu-pick { display:flex; align-items:center; gap:11px; padding:10px 12px; border:1px solid var(--edu-line); border-radius:10px; background:#fff; cursor:pointer; transition:border-color .15s, background .15s; }
.edu-pick:hover { border-color:var(--edu-teal); background:rgba(2,184,191,.05); }
.edu-pick input { width:17px; height:17px; accent-color:var(--edu-teal); flex-shrink:0; cursor:pointer; }
.edu-pick-info { display:flex; flex-direction:column; gap:1px; min-width:0; }
.edu-pick-info b { font:600 13.5px 'Inter',sans-serif; color:var(--edu-ink); }
.edu-pick-info small { font:500 11.5px 'Inter',sans-serif; color:var(--edu-ink-3); }
.edu-pick-empty { font:500 13px 'Inter',sans-serif; color:var(--edu-ink-2); padding:11px 12px; border:1px dashed var(--edu-line); border-radius:10px; margin-bottom:14px; }

/* --- check list --- */
.edu-check-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.edu-check { display:flex; align-items:center; gap:8px; font-size:13.5px; color:var(--edu-ink); cursor:pointer; }
.edu-check input { width:16px; height:16px; accent-color:var(--edu-teal); }

/* --- misc --- */
.edu-muted { color:var(--edu-ink-3); font-size:13px; }
.edu-tiny { font-size:11px; }
.edu-disclaimer { max-width:1280px; margin:16px auto 30px; padding:0 26px; font-size:11.5px; color:var(--edu-ink-3); }

/* --- toast --- */
.edu-toast { position:fixed; bottom:26px; left:50%; transform:translateX(-50%) translateY(20px); z-index:300; background:#0B1F33; color:#fff; padding:12px 18px; border-radius:12px; font:600 13px 'Inter',sans-serif; box-shadow:0 16px 40px rgba(11,31,51,.4); opacity:0; pointer-events:none; transition:opacity .25s,transform .25s; }
.edu-toast.is-on { opacity:1; transform:translateX(-50%) translateY(0); }
.edu-toast.ok { background:#047857; }

/* --- print (certificado) --- */
@media print { body > *:not(.edu-cert) { display:none !important; } .edu-modal-ov { position:static; background:transparent; } .edu-modal { box-shadow:none; border-radius:0; max-height:none; } .edu-modal-close, .edu-cert-acts { display:none; } }

/* --- responsivo --- */
@media (max-width:860px) {
  .edu-hero { grid-template-columns:1fr; }
  .edu-hero-metrics { grid-template-columns:repeat(4,1fr); }
}
@media (max-width:600px) {
  .edu-hero { padding:22px 18px; margin:12px 12px 0; border-radius:14px; }
  .edu-panel-wrap { padding:18px 14px; }
  .edu-hero-metrics { grid-template-columns:1fr 1fr; }
  .edu-free-grid { grid-template-columns:1fr; }
  .edu-dash-kpis { grid-template-columns:1fr 1fr; }
  .edu-temas-grid { grid-template-columns:1fr; }
  .edu-subtabs { padding:10px 14px; }
}

/* === fix: hidden modal overlay (page-platform.css sobrescreve o atributo hidden) === */
.edu-modal-ov[hidden], .edu-modal-ov.is-closed { display:none !important; }


/* === modal: esconde overlay E filho por default === */
.edu-modal-ov { display:none !important; }
.edu-modal-ov.is-open { display:grid !important; }


/* === slider de banners (Qualificação Assistencial) === */
.edu-slider { position:relative; border-radius:16px; overflow:hidden; margin:0 0 22px; box-shadow:0 10px 30px rgba(7,27,49,.18); background:#071b31; aspect-ratio:25/8; min-height:190px; }
.edu-slider-track { position:absolute; inset:0; }
.edu-slide { position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity .7s ease; }
.edu-slide.is-active { opacity:1; }
.edu-slider-nav { position:absolute; top:50%; transform:translateY(-50%); width:38px; height:38px; border-radius:50%; border:0; background:rgba(7,27,49,.5); color:#fff; font:400 22px/1 'Inter',sans-serif; cursor:pointer; display:grid; place-items:center; z-index:2; transition:background .15s; }
.edu-slider-nav:hover { background:rgba(2,184,191,.85); }
.edu-slider-nav.prev { left:14px; } .edu-slider-nav.next { right:14px; }
.edu-slider-dots { position:absolute; bottom:14px; left:50%; transform:translateX(-50%); display:flex; gap:8px; z-index:2; }
.edu-slider-dots button { width:9px; height:9px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.45); cursor:pointer; transition:width .2s,background .2s; }
.edu-slider-dots button.is-active { width:24px; border-radius:5px; background:#fff; }
@media (max-width:640px){ .edu-slider{ aspect-ratio:16/9; } .edu-slider-nav{ width:32px; height:32px; font-size:18px; } }

/* === espaçamento do CTA bloqueado (botão não cola no texto) === */
.edu-lock-cta { display:flex; flex-direction:column; align-items:center; }
.edu-lock-cta p { margin-bottom:6px; }
.edu-lock-cta .edu-btn { margin-top:20px; }

/* ════════════════════════════════════════════════════════════
   TRILHAS · gate DENTRO do slider (overlay centralizado) + modal Iniciar jornada
   ════════════════════════════════════════════════════════════ */
.edu-slider{position:relative}
.edu-slide-overlay{position:absolute;inset:0;z-index:4;display:grid;place-items:center;text-align:center;padding:24px;pointer-events:none;
  background:linear-gradient(180deg,rgba(7,17,32,.5),rgba(7,17,32,.72)),radial-gradient(circle at 50% 42%,rgba(2,184,191,.22),transparent 60%)}
.edu-slide-overlay-inner{pointer-events:auto;max-width:430px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.55)}
.edu-slide-overlay .edu-lock-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:rgba(255,255,255,.1);border:1px solid rgba(127,231,235,.4);color:#7FE7EB}
.edu-slide-overlay .edu-lock-icon.is-unlocked{background:rgba(16,185,129,.16);border-color:rgba(52,216,163,.6);color:#34d8a3}
.edu-slide-overlay h3{font:400 26px/1.1 'Instrument Serif',serif;margin:0 0 8px;color:#fff}
.edu-slide-overlay p{font:400 14px/1.55 'Inter',sans-serif;margin:0 0 18px;color:#eaf2f6}
.edu-slide-overlay .edu-btn{pointer-events:auto;text-shadow:none}
.edu-slide-overlay.owned .edu-acessar{font-size:15px;font-weight:700;letter-spacing:.1em;padding:14px 40px;border-radius:12px;box-shadow:0 14px 34px -8px rgba(2,184,191,.65)}
.edu-slider .edu-slider-nav{z-index:6}
.edu-slider .edu-slider-dots{z-index:6}

/* modal "Iniciar jornada" — dark navy premium */
.edu-modal.edu-modal-dark{background:linear-gradient(160deg,#0A1B2E,#071120);border:1px solid rgba(127,231,235,.16)}
.edu-modal.edu-modal-dark .edu-modal-close{background:rgba(255,255,255,.08);border-color:rgba(127,231,235,.22);color:#cdd9e6}
.edu-iniciar{text-align:center;padding:8px 6px 4px}
.edu-iniciar-eyebrow{display:block;font:700 10.5px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#7FE7EB;margin-bottom:8px}
.edu-iniciar-title{font:400 31px/1.08 'Instrument Serif',serif;color:#fff;margin:0 0 18px}
.edu-iniciar-aula{text-align:left;background:rgba(2,184,191,.08);border:1px solid rgba(127,231,235,.18);border-radius:14px;padding:18px 20px;margin-bottom:20px}
.edu-iniciar-num{display:inline-block;font:700 10px 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:#021016;background:linear-gradient(135deg,#02B8BF,#7FE7EB);padding:3px 10px;border-radius:999px;margin-bottom:10px}
.edu-iniciar-aula h3{font:600 17px 'Inter',sans-serif;color:#fff;margin:0 0 6px}
.edu-iniciar-aula p{font:400 13.5px/1.6 'Inter',sans-serif;color:#bcd2e0;margin:0}
.edu-iniciar .edu-btn{width:100%;justify-content:center;margin-top:2px}

/* ════════════════════════════════════════════════════════════
   HISTÓRICO DE CURSOS (educacao.html + cursos.html) — componente reutilizável
   ════════════════════════════════════════════════════════════ */
/* [FIX 5] Histórico de Cursos — card navy externo + miolo branco (padrão dos cards da página) */
.edu-hist{ margin-top:26px; position:relative; overflow:hidden; border-radius:18px; padding:22px 22px; color:#fff;
  background:linear-gradient(135deg,#071626 0%,#0a2741 58%,#0c3454 100%);
  border:1px solid rgba(127,231,235,.18); box-shadow:0 18px 44px rgba(5,16,30,.32); }
.edu-hist-eyebrow{ display:inline-flex; align-items:center; gap:8px; margin:0 0 10px; font:700 11px 'JetBrains Mono',ui-monospace,monospace; letter-spacing:.16em; text-transform:uppercase; color:#7FE7EB; }
.edu-hist-dot{ width:7px; height:7px; border-radius:50%; background:#02B8BF; box-shadow:0 0 0 4px rgba(2,184,191,.18); }
.edu-hist-title{ margin:0 0 5px; font:800 clamp(20px,2.3vw,26px)/1.12 'Inter',sans-serif; letter-spacing:-.01em; color:#fff; }
.edu-hist-title i{ font-family:'Instrument Serif',Georgia,serif; font-weight:400; font-style:italic; font-size:inherit; letter-spacing:0; color:#7FE7EB; -webkit-text-fill-color:#7FE7EB; }
.edu-hist-sub{ margin:0 0 16px; font-size:13px; line-height:1.5; color:rgba(255,255,255,.74); }
.edu-hist-inner{ background:#fff; border-radius:13px; padding:4px 10px; }
.edu-hist-list{ display:flex; flex-direction:column; }
.edu-hist-row{ display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:14px 6px; border-bottom:1px solid #eef1f5; }
.edu-hist-row:last-child{ border-bottom:0; }
.edu-hist-info b{ display:block; font:600 14.5px 'Inter',sans-serif; color:#0b1f33; }
.edu-hist-info span{ font-size:12.5px; color:#64748b; }
.edu-hist-cert{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.edu-hist-empty{ margin:12px 6px; border:1px dashed #d7e0e8; border-radius:11px; padding:26px 18px; text-align:center; color:#64748b; font-size:13.5px; background:#fff; }
@media (max-width:600px){ .edu-hist-row{ flex-direction:column; align-items:flex-start; } .edu-hist-cert{ width:100%; } }
