* {margin:0;padding:0;box-sizing:border-box;}
body {
  font-family:'Helvetica Neue',Arial,sans-serif;
  background:#f2ede7;
  display:flex;justify-content:center;align-items:center;
  height:100vh;color:#3e3122;
  padding:10px;
}
.card {
  background:#fff;
  border-radius:12px;
  max-width:400px;
  width:100%;
  padding:30px;
  box-shadow:0 8px 24px rgba(0,0,0,0.1);
  text-align:center;
}
.logo {
  width:80px;
  margin-bottom:20px;
}
h1 {
  font-size:1.5rem;
  margin-bottom:8px;
  color:#5a3717;
}
p {
  color:#7a6854;
  margin-bottom:20px;
  font-size:0.9rem;
}
.input-group {
  text-align:left;
  margin-bottom:15px;
}
.input-group label {
  display:block;
  margin-bottom:6px;
  font-weight:500;
  font-size:0.9rem;
}
.input-group input,
.input-group select {
  width:100%;
  padding:10px;
  border:1px solid #ccc;
  border-radius:8px;
  background:#f9f6f1;
  font-size:0.95rem;
  color:#3e3122;
}
.input-group select:invalid {color:#999;}
.btn-primary {
  width:100%;
  padding:14px;
  background:#5a3717;
  color:#fff;
  font-size:1rem;
  font-weight:600;
  border:none;
  border-radius:8px;
  cursor:pointer;
  transition:background 0.3s;
}
.btn-primary:hover {background:#7c543f;}
@media (max-width: 320px) {
  .card {padding:20px;}
  .logo {width:70px;}
  h1 {font-size:1.3rem;}
  .btn-primary {padding:12px;font-size:0.95rem;}
}
