/* Aparência da tela de login: somente apresentação. */
:root {
  --primary:#313131 !important;
  --secondary:#313131 !important;
  --accent:#313131 !important;
  --surface:#f5f5f5 !important;
  --surface-light:#ffffff !important;
  --surface-lighter:#ffffff !important;
  --text-primary:#3f3f3f !important;
  --text-secondary:#5f6368 !important;
  --text-muted:#777777 !important;
  --border:rgba(0,0,0,.16) !important;
  --glow:none !important;
  --glow-accent:none !important;
  --glow-pink:none !important;
}

html, body {
  color:#4e5155 !important;
  background:#171717 !important;
  background-image:none !important;
  font-family:Muli,Arial,Helvetica,sans-serif !important;
}
body::before, body::after, .particle { display:none !important; content:none !important; animation:none !important; }
.login-main-container {
  min-height:100vh !important;
  box-sizing:border-box !important;
  padding:20px !important;
  background:#171717 !important;
}
.login-container-futuristic {
  color:#4e5155 !important;
  background:#ffffff !important;
  border:1px solid #dedede !important;
  border-top:3px solid #d50000 !important;
  border-radius:4px !important;
  box-shadow:0 8px 28px rgba(0,0,0,.32) !important;
  backdrop-filter:none !important;
  animation:none !important;
  max-width:480px !important;
  padding:24px 34px !important;
  overflow:visible !important;
}
.login-container-futuristic::before, .login-logo::before, .btn-futuristic::before { display:none !important; content:none !important; }
.login-logo {
  width:190px !important;
  height:110px !important;
  margin:0 auto 14px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  transform:none !important;
}
.login-logo img { width:100% !important; height:100% !important; border-radius:0 !important; object-fit:contain !important; }
.login-logo:hover { box-shadow:none !important; transform:none !important; }
.login-title, .login-subtitle, .glow-text {
  color:#3f3f3f !important;
  background:none !important;
  -webkit-text-fill-color:currentColor !important;
  text-shadow:none !important;
}
.login-title {
  margin:0 0 8px !important;
  color:#242424 !important;
  font-size:1.55rem !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
}
.login-subtitle {
  margin:0 0 7px !important;
  color:#666666 !important;
  font-size:.9rem !important;
  font-weight:500 !important;
  letter-spacing:.05em !important;
}
.login-subtitle.glow-text { margin-bottom:20px !important; color:#b71c1c !important; }
.form-label { color:#3f3f3f !important; text-shadow:none !important; }
.form-group-futuristic { margin-bottom:14px !important; }
.input-futuristic {
  color:#333333 !important;
  background:#ffffff !important;
  border:1px solid #cfcfcf !important;
  border-radius:2px !important;
  box-shadow:none !important;
  padding:13px 14px !important;
}
.input-futuristic:focus {
  color:#333333 !important;
  background:#ffffff !important;
  border-color:#6f6f6f !important;
  box-shadow:0 0 0 1px rgba(0,0,0,.18) !important;
}
.input-futuristic::placeholder { color:#8a8a8a !important; }
.btn-futuristic, .btn-futuristic.btn-ok {
  color:#ffffff !important;
  background:#313131 !important;
  background-image:none !important;
  border:1px solid #171717 !important;
  border-bottom:3px solid #d50000 !important;
  border-radius:3px !important;
  box-shadow:none !important;
  padding:14px 18px !important;
  font-size:1rem !important;
  text-shadow:none !important;
  transform:none !important;
}
.btn-futuristic *, .btn-futuristic.btn-ok * { color:#ffffff !important; }
.btn-futuristic:hover, .btn-futuristic:focus { color:#ffffff !important; background:#303030 !important; box-shadow:none !important; transform:none !important; }
.btn-futuristic.btn-contact { color:#ffffff !important; background:#d50000 !important; border-color:#d50000 !important; }
.login-footer { margin-top:18px !important; color:#707070 !important; font-size:.88rem !important; }
.developer-credit { margin-top:14px !important; padding-top:14px !important; color:#707070 !important; border-top-color:#e0e0e0 !important; }
.developer-credit a { color:#313131 !important; text-shadow:none !important; }
[role="alert"] { color:#ffffff !important; background:#d50000 !important; border-color:#d50000 !important; }

@media (max-width:768px) {
  .login-main-container { padding:24px 12px !important; }
  .login-container-futuristic { padding:26px 22px !important; }
}
