:root{
  /* Cores de identidade por etapa. NÃO representam desempenho. */
  --edu-infantil:#ff9bb3;
  --edu-ai:#61dcf3;
  --edu-af:#9d8cf2;
  --edu-eja:#ffc66b;
  --edu-aee:#61e2b5;

  /* Cores semânticas de leitura. */
  --edu-avanço:#61e2b5;
  --edu-estavel:#86b6ff;
  --edu-atencao:#ffc66b;
  --edu-prioridade:#ff8b9c;
  --edu-indisponivel:#8190a7;
}
.edu-stage{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;border:1px solid var(--nexa-line);font-size:.76rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.edu-stage::before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor}
.edu-stage--ai{color:var(--edu-ai);background:rgba(97,220,243,.08)}
.edu-stage--af{color:var(--edu-af);background:rgba(157,140,242,.08)}
.edu-stage--ei{color:var(--edu-infantil);background:rgba(255,155,179,.08)}
.edu-stage--eja{color:var(--edu-eja);background:rgba(255,198,107,.08)}
.edu-stage--aee{color:var(--edu-aee);background:rgba(97,226,181,.08)}
.edu-status{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:.74rem;font-weight:800}
.edu-status--positive{color:#baf7df;background:rgba(97,226,181,.10);border:1px solid rgba(97,226,181,.24)}
.edu-status--neutral{color:#cfe0ff;background:rgba(134,182,255,.10);border:1px solid rgba(134,182,255,.24)}
.edu-status--attention{color:#ffe4b4;background:rgba(255,198,107,.10);border:1px solid rgba(255,198,107,.24)}
.edu-status--priority{color:#ffd0d8;background:rgba(255,139,156,.10);border:1px solid rgba(255,139,156,.24)}
.edu-status--missing{color:#c2cbd8;background:rgba(129,144,167,.10);border:1px solid rgba(129,144,167,.24)}
.nexa-hub{position:sticky;top:0;z-index:1000;background:rgba(7,20,38,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.nexa-hub__inner{width:min(1520px,calc(100% - 44px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0}
.nexa-hub__brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:900}
.nexa-hub__mark{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#244365,#35417d);border:1px solid rgba(255,255,255,.12)}
.nexa-hub__nav{display:flex;gap:6px;flex-wrap:wrap}
.nexa-hub__nav a{color:#b6c4d8;text-decoration:none;padding:9px 11px;border-radius:999px;font-size:.84rem}
.nexa-hub__nav a:hover,.nexa-hub__nav a.is-active{background:rgba(255,255,255,.07);color:#fff}
.school-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:18px}
.school-hero__main,.school-hero__aside{padding:28px}
.school-hero h1{font-size:clamp(2.3rem,5vw,4.7rem);line-height:.98;letter-spacing:-.05em;margin:12px 0}
.school-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--nexa-muted)}
.school-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}
.school-kpi{padding:18px;border:1px solid var(--nexa-line);border-radius:18px;background:rgba(255,255,255,.035)}
.school-kpi span{display:block;color:var(--nexa-muted);font-size:.78rem}.school-kpi strong{display:block;font-size:2rem;margin-top:7px}
.school-chart-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px}
.school-chart-card{padding:24px}
.school-chart-card h3{margin:5px 0 12px;font-size:1.55rem}
.school-list-shell{padding:24px}
.school-list-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:18px}
.school-list-head h2{margin:5px 0;font-size:2.3rem;letter-spacing:-.04em}
.school-row{display:grid;grid-template-columns:minmax(260px,1.8fr) 110px 110px 120px 170px;gap:14px;align-items:center;padding:15px 16px;border-top:1px solid var(--nexa-line);text-decoration:none;color:inherit}
.school-row:hover{background:rgba(255,255,255,.035)}
.school-row__name strong{display:block}.school-row__name small,.school-row small{color:var(--nexa-muted)}
.sparkline{height:44px;width:150px}
@media(max-width:950px){.school-hero,.school-chart-grid{grid-template-columns:1fr}.school-kpis{grid-template-columns:repeat(2,1fr)}.school-row{grid-template-columns:1fr 90px 90px}.school-row>*:nth-child(4),.school-row>*:nth-child(5){display:none}}
@media(max-width:620px){.nexa-hub__nav{display:none}.nexa-hub__inner{width:min(100% - 20px,1520px)}.school-kpis{grid-template-columns:1fr 1fr}.school-row{grid-template-columns:1fr 80px}.school-row>*:nth-child(3){display:none}}
