/* Telas de acesso: login, troca de senha, primeiro administrador. */
* { box-sizing: border-box; }
body {
  margin: 0; min-height: 100vh; display: grid; place-items: center; padding: 16px;
  font: 15px/1.5 Inter, system-ui, sans-serif; color: #fff;
  background:
    radial-gradient(circle at 80% 30%, rgba(245,183,0,.18), transparent 420px),
    radial-gradient(circle at 10% 90%, rgba(245,183,0,.08), transparent 360px),
    #171717;
}
.card {
  width: 100%; max-width: 400px; padding: 36px 32px 28px;
  background: #1f1f1f; border: 1px solid #2d2d2d; border-top: 4px solid #f5b700; border-radius: 14px;
  box-shadow: 0 20px 60px rgba(0,0,0,.4);
}
.card > img { height: 26px; display: block; margin-bottom: 26px; }
h1 { font: 700 22px Poppins, sans-serif; margin: 0 0 6px; }
p { margin: 0 0 22px; color: #b5b5b5; font-size: 14px; }
label { display: block; font-size: 13px; color: #ccc; margin: 14px 0 6px; }
input {
  width: 100%; height: 44px; padding: 0 14px; border-radius: 8px;
  border: 1px solid #3a3a3a; background: #141414; color: #fff; font: inherit;
}
input:focus { outline: 2px solid #f5b700; border-color: transparent; }
button {
  width: 100%; height: 44px; margin-top: 20px; border: 0; border-radius: 8px; cursor: pointer;
  background: #f5b700; color: #171717; font: 600 15px Inter, sans-serif;
}
button:hover { filter: brightness(1.05); }
button:disabled { opacity: .6; cursor: wait; }
.link { background: none; border: 0; color: #f5c43a; font: 500 13px Inter, sans-serif; cursor: pointer; padding: 0; width: auto; height: auto; margin: 0; }
.link:hover { text-decoration: underline; filter: none; }
.msg { margin-top: 14px; padding: 10px 12px; border-radius: 8px; font-size: 14px; }
.msg.erro { background: #3a1d1d; color: #ffb4ab; }
.msg.ok { background: #1d3a26; color: #b4f0c4; }
.msg[hidden], [hidden] { display: none !important; }
.rodape { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 20px; color: #888; font-size: 12px; }
.dica { color: #8d8d8d; font-size: 12px; margin-top: 6px; }
a { color: #f5c43a; }
