/* login.css — folha de estilo da tela /login/.
   ------------------------------------------------------------------
   ATENÇÃO: /login/ é um CONTRATO. O kit instalado no computador do
   aluno abre esta página, preenche o e-mail e compara LITERALMENTE o
   texto de resultado. Este arquivo cuida só da aparência — nenhuma
   regra daqui pode esconder, mover para fora da tela ou adiar o campo
   de e-mail, o botão ou o bloco .result. Sem JavaScript, sem @import
   bloqueante: a página tem de estar utilizável mesmo se o CSS falhar.
   Paleta local de propósito (a tela é anterior à área de membros e não
   carrega base.css). */

:root{
  --bg:#0d1117; --panel:#161b22; --panel2:#1c2129; --line:#30363d;
  --tx:#c9d1d9; --mut:#8b949e; --cy:#58d7ff; --gr:#3fb950;
  --am:#d29922; --rd:#f85149;
  --mono:"Consolas","Courier New",monospace;
}
*{box-sizing:border-box}
body{
  margin:0;background:var(--bg);color:var(--tx);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  font-size:15px;line-height:1.65;
}
a{color:var(--cy);text-decoration:none}
a:hover{text-decoration:underline}

.hero{text-align:center;padding:44px 20px 30px;border-bottom:1px solid var(--line)}
.hero .doctitle{font-size:22px;color:#fff;font-weight:700;letter-spacing:-.2px;margin:0}
.hero .name{
  font-family:var(--mono);font-size:22px;letter-spacing:3px;color:var(--mut);
  font-weight:700;margin:14px 0 0;text-transform:uppercase;
}
.hero .name b{color:var(--cy)}

main{max-width:640px;margin:0 auto;padding:38px 24px 70px}

.box{
  background:var(--panel);border:1px solid var(--line);
  border-radius:8px;padding:22px 24px;margin:20px 0;
}
.box .tag{
  font-family:var(--mono);font-size:11px;letter-spacing:1.5px;
  text-transform:uppercase;margin-bottom:10px;display:block;color:var(--cy);
}
.box h2{margin:0 0 12px;font-size:19px;color:#fff}
.box p{margin:8px 0;color:var(--tx)}
.box p.mut{color:var(--mut);font-size:13px}

label{
  display:block;font-family:var(--mono);font-size:12px;color:var(--mut);
  letter-spacing:.5px;text-transform:uppercase;margin:16px 0 6px;
}
input[type=email]{
  width:100%;padding:11px 12px;background:var(--panel2);
  border:1px solid var(--line);border-radius:6px;color:var(--tx);
  font-size:15px;font-family:inherit;
}
input:focus{outline:none;border-color:var(--cy)}
input::placeholder{color:#4b5563}

#btnLogin{
  margin-top:22px;width:100%;padding:12px 18px;
  background:var(--cy);color:#0d1117;border:none;border-radius:6px;
  font-weight:700;font-size:15px;cursor:pointer;
}
#btnLogin:hover{filter:brightness(1.08)}
#btnLogin:active{filter:brightness(.92)}

.result{
  margin-top:22px;padding:16px 18px;border-radius:8px;
  font-family:var(--mono);font-size:13.5px;white-space:pre-wrap;
  border:1px solid var(--line);
}
.result.ok{border-left:3px solid var(--gr);background:#0d1f14}
.result.fail{border-left:3px solid var(--rd);background:#1f0d0d}

.download-btn{
  display:flex;align-items:center;justify-content:center;gap:10px;
  background:#25D366;color:#04220f;font-weight:800;font-size:17px;
  padding:18px 24px;border-radius:8px;text-decoration:none;margin:20px 0 12px;
  box-shadow:0 4px 20px rgba(37,211,102,.25);
}
.download-btn:hover{background:#20bd5a;text-decoration:none;transform:translateY(-1px)}
.download-btn svg{width:22px;height:22px;flex-shrink:0}

.voltar-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:var(--panel2);color:var(--mut);font-weight:600;font-size:13px;
  padding:10px 18px;border-radius:6px;text-decoration:none;
  border:1px solid var(--line);
}
.voltar-btn:hover{background:#20262e;text-decoration:none;color:var(--tx)}

.ferramentas-btn{
  display:flex;align-items:center;justify-content:center;gap:10px;
  background:var(--cy);color:#0d1117;font-weight:800;font-size:16px;
  padding:16px 24px;border-radius:8px;text-decoration:none;margin:0 0 10px;
  box-shadow:0 4px 20px rgba(88,215,255,.22);
}
.ferramentas-btn:hover{filter:brightness(1.07);text-decoration:none;transform:translateY(-1px)}
.ferramentas-btn svg{width:21px;height:21px;flex-shrink:0}

.aviso-sessao{
  margin-top:14px;padding:12px 14px;border-radius:8px;
  border:1px solid var(--line);border-left:3px solid var(--am);
  background:#1d1a10;font-size:13.5px;color:var(--tx);
}

footer{text-align:center;padding:24px;color:var(--mut);font-size:12px;font-family:var(--mono);line-height:1.9}
footer a{color:var(--mut);text-decoration:underline}
footer a:hover{color:var(--cy)}

/* Cabeçalho do login: logo padrão + "Acesso restrito" (o efeito de máquina de escrever, em verde, vem de assets/js/maquina.js) */
.hero .logo-login{display:block;margin:0 auto;width:300px;max-width:72vw;height:auto}
.hero .maquina{margin:20px 0 0;font-size:22px;letter-spacing:3px;color:var(--cy);text-transform:uppercase;font-weight:700;min-height:1.4em}
