/* Profeta2 — folha unica. Nada inline: a CSP bloqueia style= e script inline,
   e isso e proposital (foi assim que um painel quebrou so em producao). */
:root{
  --tinta:#111827; --tinta-fraca:#4b5563; --fundo:#f8fafc; --painel:#ffffff;
  --borda:#e2e8f0; --primaria:#7c3aed; --apoio:#0ea5e9;
  --ok:#15803d; --alerta:#b45309; --erro:#b91c1c;
}
@media (prefers-color-scheme: dark){
  :root{ --tinta:#e5e7eb; --tinta-fraca:#9ca3af; --fundo:#0b1020; --painel:#111827;
         --borda:#1f2937; }
}
*{box-sizing:border-box}
body{margin:0;background:var(--fundo);color:var(--tinta);
     font:15px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--primaria)}
.faixa{background:var(--painel);border-bottom:1px solid var(--borda);padding:14px 22px;
       display:flex;align-items:center;justify-content:space-between;gap:16px}
.faixa strong{font-size:15px;letter-spacing:.2px}
.faixa .quem{color:var(--tinta-fraca);font-size:13px}
main{max-width:1080px;margin:0 auto;padding:28px 22px 60px}
h1{font-size:26px;margin:0 0 6px}
h2{font-size:17px;margin:30px 0 12px}
.sub{color:var(--tinta-fraca);margin:0 0 22px}
.blocos{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.bloco{display:block;background:var(--painel);border:1px solid var(--borda);border-radius:12px;
       padding:18px;text-decoration:none;color:inherit}
.bloco:hover{border-color:var(--primaria)}
.bloco .nome{font-weight:600;font-size:17px}
.bloco .meta{color:var(--tinta-fraca);font-size:13px;margin-top:6px}
table{width:100%;border-collapse:collapse;background:var(--painel);
      border:1px solid var(--borda);border-radius:12px;overflow:hidden}
th,td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--borda);font-size:14px}
th{color:var(--tinta-fraca);font-weight:600;font-size:12.5px;text-transform:uppercase;
   letter-spacing:.4px}
tr:last-child td{border-bottom:none}
.selo{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600}
.selo.conectado{background:rgba(21,128,61,.12);color:var(--ok)}
.selo.nunca_conectado{background:rgba(75,85,99,.14);color:var(--tinta-fraca)}
.selo.incompleto,.selo.ilegivel{background:rgba(180,83,9,.14);color:var(--alerta)}
.selo.desligado{background:rgba(75,85,99,.14);color:var(--tinta-fraca)}
.aviso{background:rgba(14,165,233,.10);border:1px solid rgba(14,165,233,.35);
       border-radius:10px;padding:12px 14px;margin:0 0 22px;font-size:14px}
.entrar{max-width:380px;margin:9vh auto;background:var(--painel);border:1px solid var(--borda);
        border-radius:14px;padding:28px}
label{display:block;font-size:13px;color:var(--tinta-fraca);margin:14px 0 5px}
input{width:100%;padding:10px 12px;border:1px solid var(--borda);border-radius:8px;
      background:var(--fundo);color:var(--tinta);font-size:15px}
button{margin-top:20px;width:100%;padding:11px;border:0;border-radius:8px;
       background:var(--primaria);color:#fff;font-size:15px;font-weight:600;cursor:pointer}
.erro{color:var(--erro);font-size:13.5px;margin-top:12px}
.sair{background:none;border:1px solid var(--borda);color:var(--tinta-fraca);
      width:auto;margin:0;padding:6px 12px;font-size:13px;font-weight:500}
.hero{max-width:720px;margin:14vh auto;padding:0 22px}
.hero h1{font-size:38px;line-height:1.15}
.rodape{color:var(--tinta-fraca);font-size:13px;margin-top:40px}
