@import url('https://fonts.googleapis.com/css2?family=Libre+Franklin:wght@400;500;600&display=swap');

/* Authentication chrome follows the ivory / ink workspace palette. */
html { color-scheme: light; }
body { background: #f6f5ef; color: #263542; font-family: 'Libre Franklin', system-ui, sans-serif; overflow: auto; }
canvas, .glow { display: none; }
.card {
  background: #fffef9;
  border: 1px solid #d9dedf;
  border-radius: 6px;
  box-shadow: 0 12px 36px rgba(38,53,66,.08);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.back-link, .subtitle, label { color: #596570; }
.back-link:hover { color: #344e65; }
.logo-text {
  color: #263542; background: none;
  -webkit-text-fill-color: currentColor;
  letter-spacing: -.025em; font-weight: 500;
}
input[type="email"], input[type="password"] {
  background: #fffef9; border: 1px solid #aebbc3; border-radius: 4px;
  color: #263542; font-size: 16px;
}
input::placeholder { color: #626b73; }
input:focus { border-color: #344e65; background: #fffef9; box-shadow: 0 0 0 3px rgba(52,78,101,.12); }
.btn-submit { background: #344e65; color: #fffef9; border-radius: 4px; font-weight: 500; box-shadow: none; }
.btn-submit:hover { background: #263e52; transform: none; box-shadow: none; }
.btn-submit:focus-visible, .back-link:focus-visible { outline: 2px solid #344e65; outline-offset: 4px; }
.msg-error { color: #9c403d; background: #f6e9e4; border-color: #d9b7af; border-radius: 4px; }
.msg-flash { color: #805b27; background: #f3eddf; border-color: #d8c7a5; border-radius: 4px; }
@media (max-width: 420px) { .card { margin: 1rem; padding: 2rem 1.4rem; } }
