/* Fase 3 -- preflight de segurança (17/09/2026): extraído do <style>
   inline de login.html pra permitir um Content-Security-Policy sem
   'unsafe-inline' (ver src/dashboard-web-server.js). */
:root { color-scheme: dark; }
* { box-sizing: border-box; }
body {
  margin: 0; min-height: 100vh; display: flex; align-items: center; justify-content: center;
  background: radial-gradient(circle at 30% 20%, #16213a 0%, #0b1120 60%);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, sans-serif;
  color: #e7ecf7; padding: 16px;
}
.cartao {
  width: 100%; max-width: 380px; background: #121b30; border: 1px solid #223055;
  border-radius: 16px; padding: clamp(24px, 5vw, 40px); box-shadow: 0 20px 60px rgba(0,0,0,0.45);
}
h1 { font-size: clamp(1.1rem, 3vw, 1.4rem); margin: 0 0 4px; }
p.sub { margin: 0 0 24px; color: #92a1c4; font-size: 0.9rem; }
label { display: block; font-size: 0.82rem; color: #b7c2de; margin: 14px 0 6px; }
input {
  width: 100%; padding: 11px 12px; border-radius: 9px; border: 1px solid #2c3a63;
  background: #0c1426; color: #f0f3fb; font-size: 1rem;
}
input:focus { outline: 2px solid #4f7cff; outline-offset: 1px; }
button {
  margin-top: 22px; width: 100%; padding: 12px; border-radius: 9px; border: none;
  background: #4f7cff; color: white; font-size: 0.98rem; font-weight: 600; cursor: pointer;
}
button:disabled { opacity: 0.6; cursor: default; }
button:hover:not(:disabled) { background: #3f6bef; }
.erro {
  margin-top: 14px; padding: 10px 12px; border-radius: 8px; background: #3a1620;
  border: 1px solid #6b2436; color: #ffb4c1; font-size: 0.85rem; display: none;
}
.rodape { margin-top: 26px; font-size: 0.72rem; color: #5c6a8c; text-align: center; }
