body {
  background:
    radial-gradient(circle at 20% 10%, rgba(255,106,61,0.1), transparent 45%),
    radial-gradient(circle at 80% 20%, rgba(255,167,38,0.08), transparent 40%),
    #fdf3ea;
  color: #2b211c;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  margin: 0;
}
#login-form {
  display: grid;
  gap: 0.85rem;
  width: min(90vw, 320px);
  text-align: center;
  background: #ffffff;
  border: 1px solid rgba(43,33,28,0.08);
  border-radius: 18px;
  padding: 2rem 1.75rem;
  box-shadow: 0 20px 60px rgba(43,33,28,0.1);
  animation: rise-in 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
@keyframes rise-in {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
h1 {
  margin: 0 0 0.25rem;
  font-size: 1.25rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
}
input {
  background: rgba(43,33,28,0.04);
  border: 1px solid rgba(43,33,28,0.14);
  border-radius: 10px;
  padding: 0.75rem;
  color: #2b211c;
  font-size: 1rem;
  text-align: center;
  transition: border-color 0.15s ease;
}
input:focus { outline: none; border-color: #ff6a3d; }
button {
  background: linear-gradient(135deg, #ff6a3d, #ffa726);
  color: white;
  border: none;
  border-radius: 10px;
  padding: 0.75rem;
  font-size: 1rem;
  font-weight: 700;
  transition: transform 0.1s ease;
}
button:active { transform: scale(0.97); }
.error { color: #d6483f; font-size: 0.85rem; margin: 0; }
.hidden { display: none; }
