/* Relatórios em duas abas e relatório do aluno (relatorios.js, relaluno.js).
   Celular primeiro. A folha usa as cores do tema na tela e sempre o claro
   na impressão (Salvar como PDF). */
.rl-abas{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--superficie);border:1px solid var(--linha);border-radius:12px;padding:4px;margin-top:12px;max-width:420px}
.rl-abas button{border:0;background:none;color:var(--suave);font:inherit;font-weight:700;font-size:15px;padding:10px;border-radius:9px;min-height:44px;cursor:pointer}
.rl-abas button[aria-pressed="true"]{background:var(--marca);color:var(--marca-texto)}
.rl-grupo{font-family:var(--display);font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--suave);margin:10px 0 -6px}

.ra-sub{margin:0}
.ra-busca{width:100%;font:inherit;font-size:16px;padding:12px 14px;border:1px solid var(--linha-forte);border-radius:12px;background:var(--superficie);color:var(--texto)}
.ra-lista{display:flex;flex-direction:column;gap:8px}
.ra-al{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--superficie);border:1px solid var(--linha);border-radius:12px;padding:12px 14px;font:inherit;color:var(--texto);cursor:pointer}
.ra-al:hover{border-color:var(--marca)}
.ra-ini{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--marca-fraca);color:var(--marca);font-family:var(--display);font-weight:800;font-size:14px}
.ra-t{flex:1;min-width:0}.ra-t b{display:block}.ra-t small{color:var(--suave);font-size:13px}
.ra-selo{flex:none;font-size:12px;font-weight:700;padding:3px 9px;border-radius:99px;background:var(--superficie2);white-space:nowrap}
.ra-selo.ruim{background:var(--atraso-fraco);color:var(--atraso)}
.ra-selo.meio{background:var(--rl-aviso-f);color:var(--rl-aviso)}
.ra-selo.bom{background:var(--ok-fraco);color:var(--ok)}
@media (max-width:420px){.ra-al{flex-wrap:wrap}.ra-selo{margin-left:50px}}

.ra-voltar{align-self:flex-start;border:0;background:none;color:var(--marca);font:inherit;font-weight:700;padding:6px 0;cursor:pointer}
.ra-tit{font-family:var(--display);font-size:20px;font-weight:800;margin:0;text-wrap:balance}
.ra-chips{display:flex;gap:8px;flex-wrap:wrap}
.ra-campo{margin:0}.ra-campo small{font-weight:400;color:var(--suave)}
.ra-partes{background:var(--superficie);border:1px solid var(--linha);border-radius:12px;padding:10px 14px}
.ra-partes summary{cursor:pointer;font-weight:700;min-height:28px}
.ra-liga{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--linha);font-size:15px}
.ra-liga:last-child{border-bottom:0}
.ra-liga input{width:22px;height:22px;flex:none;accent-color:var(--marca)}
.ra-acoes{display:flex;gap:10px;flex-wrap:wrap}
.ra-acoes .btn{min-height:46px}
.ra-acoes .btn-principal{flex:1 1 180px}
.ra-hist{background:var(--superficie);border:1px solid var(--linha);border-radius:12px;padding:12px 14px}
.ra-hist h3{margin:0 0 6px;font-family:var(--display);font-size:15px}
.ra-hist ul{list-style:none;margin:0;padding:0}
.ra-hist li{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--linha);font-size:14px}
.ra-hist li:last-child{border-bottom:0}
.ra-hist small{color:var(--suave)} .ra-hist small.bom{color:var(--ok)}
.ra-hist-vazio{color:var(--suave);font-size:14px;margin:0}

/* janela de envio */
.ra-canais{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.ra-canal{text-align:left;border:1.5px solid var(--linha);background:var(--superficie);color:var(--texto);border-radius:12px;padding:12px;font:inherit;cursor:pointer}
.ra-canal b{display:block}.ra-canal small{display:block;color:var(--suave);font-size:13px;margin-top:2px}
.ra-canal[aria-pressed="true"]{border-color:var(--marca);background:var(--marca-fraca)}
.ra-canal:disabled{opacity:.5;cursor:not-allowed}
.ra-rec{font-size:11px;font-weight:800;color:var(--ok);text-transform:uppercase;letter-spacing:.05em;margin-left:4px}
.ra-vai{display:flex;flex-direction:column;gap:8px;background:var(--superficie2);border-radius:12px;padding:12px;margin-top:12px;font-size:14px}
.ra-vai .campo{margin:0}
.ra-msg{background:var(--superficie);border:1px solid var(--linha);border-radius:10px;padding:10px;white-space:pre-wrap;font-size:13px}

/* a folha */
.rf-folha{--rf-papel:var(--superficie);--rf-tinta:var(--texto);--rf-suave:var(--suave);--rf-linha:var(--linha);--rf-realce:var(--marca-fraca);--rf-azul:var(--marca);
  --rf-bom:var(--ok);--rf-ruim:var(--atraso);--rf-meio:#D97706;
  background:var(--rf-papel);color:var(--rf-tinta);border:1px solid var(--rf-linha);border-radius:14px;box-shadow:var(--sombra);
  padding:18px 16px;display:flex;flex-direction:column;gap:18px;margin-top:4px;max-width:760px}
.rf-folha .bom{color:var(--rf-bom)}.rf-folha .ruim{color:var(--rf-ruim)}.rf-folha .meio{color:var(--rf-meio)}
.rf-cab{display:flex;justify-content:space-between;gap:12px;border-bottom:2px solid var(--rf-tinta);padding-bottom:10px}
.rf-cab h2{font-family:var(--display);font-size:19px;margin:2px 0;text-wrap:balance}
.rf-cab small{display:block;color:var(--rf-suave);font-size:12px}
.rf-marca{font-family:var(--display);font-weight:800;font-size:12px;letter-spacing:.05em;text-transform:uppercase}
.rf-per{text-align:right;flex:none}.rf-per b{font-variant-numeric:tabular-nums}
.rf-sec{display:flex;flex-direction:column;gap:8px}
.rf-sec h3{font-family:var(--display);font-size:15px;margin:0;display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.rf-sec h3 small{font-family:var(--corpo);font-weight:500;font-size:12px;color:var(--rf-suave)}
.rf-sec p{margin:0}
.rf-recado{border-left:3px solid var(--rf-azul);padding:2px 0 2px 12px;white-space:pre-wrap}
.rf-frase{margin:0;font-size:16px;font-weight:600;background:var(--rf-realce);padding:12px;border-radius:10px}
.rf-nums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media (min-width:720px){.rf-nums{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rf-num{border:1px solid var(--rf-linha);border-radius:10px;padding:10px}
.rf-num b{display:block;font-family:var(--display);font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.15}
.rf-num span{display:block;font-size:13px;font-weight:700}
.rf-num small{font-size:12px;color:var(--rf-suave)}
.rf-leg{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--rf-suave)}
.rf-leg i{display:inline-block;width:10px;height:8px;border-radius:2px;background:var(--rf-azul);margin-right:4px}
.rf-leg u{display:inline-block;width:2px;height:10px;background:var(--rf-tinta);margin-right:4px;vertical-align:-1px}
.rf-barra{display:flex;flex-direction:column;gap:3px}
.rf-l{display:flex;justify-content:space-between;gap:10px;font-size:13px}
.rf-l span:first-child{min-width:0}
.rf-l span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.rf-trilho{position:relative;height:8px;border-radius:99px;background:var(--rf-linha)}
.rf-trilho i{position:absolute;inset:0 auto 0 0;border-radius:99px;background:var(--rf-azul)}
.rf-trilho i.ruim{background:var(--rf-ruim)}.rf-trilho i.meio{background:var(--rf-meio)}.rf-trilho i.bom{background:var(--rf-bom)}
.rf-trilho u{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--rf-tinta)}
.rf-graf{width:100%;max-width:560px;height:auto;display:block}
.rf-graf text{fill:var(--rf-suave);font-size:11px;font-family:var(--corpo)}
.rf-grade{stroke:var(--rf-linha);stroke-width:1}
.rf-plan{stroke:var(--rf-tinta);stroke-width:2;stroke-dasharray:3 2}
.rf-c-bom{fill:var(--rf-bom)}.rf-c-meio{fill:var(--rf-meio)}.rf-c-ruim{fill:var(--rf-ruim)}.rf-c-neutro{fill:var(--rf-azul)}
.rf-passos{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px;font-size:14px}
.rf-rod{margin:0;font-size:12px;color:var(--rf-suave);border-top:1px solid var(--rf-linha);padding-top:10px}

/* aluno: relatórios recebidos, no topo de Meu desempenho */
.rf-recebidos{display:flex;flex-direction:column;gap:8px;margin:16px 0}
.rf-recebidos h2{font-family:var(--display);font-size:16px;margin:0}
.rf-rec{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;background:var(--superficie);border:1px solid var(--linha);border-radius:12px;padding:12px 14px;font:inherit;color:var(--texto);cursor:pointer}
.rf-rec b{display:block}.rf-rec small{color:var(--suave);font-size:13px}
.rf-novo{font-size:12px;font-weight:800;color:var(--marca-texto);background:var(--marca);padding:3px 9px;border-radius:99px}
#rf-aluno{display:flex;flex-direction:column;gap:12px}

/* Salvar como PDF: só a folha, sempre no claro, cores de verdade */
@media print{
  body.rf-imprimindo *{visibility:hidden}
  body.rf-imprimindo .rf-folha, body.rf-imprimindo .rf-folha *{visibility:visible}
  body.rf-imprimindo .rf-folha{position:absolute;left:0;top:0;width:100%;border:0;box-shadow:none;margin:0;padding:0;
    --rf-papel:#FFFFFF;--rf-tinta:#0F172A;--rf-suave:#475569;--rf-linha:#E2E8F0;--rf-realce:#DBEAFE;--rf-azul:#2563EB;--rf-bom:#16A34A;--rf-ruim:#DC2626;--rf-meio:#D97706;
    -webkit-print-color-adjust:exact;print-color-adjust:exact;max-width:none}
  body.rf-imprimindo .rf-graf{max-width:420px}
  body.rf-imprimindo .rf-nums{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.rf-imprimindo .rf-barra, body.rf-imprimindo .rf-num{break-inside:avoid}
  body.rf-imprimindo{background:#fff}
}
