/* ===== Marla auth pages (Devise) — light theme, shares tokens with application.css ===== */

.auth-page{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:20px;
  padding:24px;
  background:var(--bg);
}

.auth-card{
  width:100%;
  max-width:400px;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:24px;
  padding:40px 36px;
  box-shadow:0 4px 20px rgba(25,54,60,.06);
}

@media (max-width:480px){
  .auth-card{padding:32px 24px;border-radius:18px}
}

.auth-brand{display:inline-block;line-height:0;margin-bottom:28px}
.auth-logo{display:block;height:38px;width:auto}

.auth-card h1{
  font-family:'Urbanist',sans-serif;
  font-weight:700;
  font-size:1.7rem;
  color:var(--ink);
  margin-bottom:8px;
}

.auth-sub{
  font-size:.95rem;
  color:var(--muted);
  margin-bottom:28px;
}

.auth-form .field{margin-bottom:18px}
.auth-form .field.checkbox{display:flex;align-items:center;gap:8px}
.auth-form label{
  display:block;
  font-size:.82rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:8px;
  font-weight:700;
}
.auth-form .field.checkbox label{
  display:inline;
  text-transform:none;
  letter-spacing:normal;
  font-weight:500;
  color:var(--ink-soft);
  margin:0;
}
.auth-form .field.checkbox input[type=checkbox]{
  width:16px;height:16px;accent-color:var(--lime);
}
.auth-form input[type=email],
.auth-form input[type=password]{
  width:100%;
  padding:13px 16px;
  font-size:1rem;
  font-family:inherit;
  background:var(--bg);
  border:1px solid var(--line);
  border-radius:12px;
  color:var(--ink);
}
.auth-form input::placeholder{color:var(--muted)}
.auth-form input:focus{outline:none;border-color:var(--lime)}

.auth-form input[type=submit],
.auth-form .btn{
  width:100%;
  display:block;
  background:var(--lime);
  color:var(--ink);
  font-weight:700;
  font-size:1rem;
  padding:14px;
  border-radius:100px;
  border:none;
  cursor:pointer;
  margin-top:6px;
  transition:transform .15s,background .15s;
}
.auth-form input[type=submit]:hover,
.auth-form .btn:hover{transform:translateY(-1px);background:var(--amber)}

.auth-hint{font-size:.85rem;color:var(--muted);margin-bottom:20px}

.auth-errors{
  background:rgba(228,87,76,.08);
  border:1px solid #E4574C;
  border-radius:12px;
  padding:14px 16px;
  margin-bottom:20px;
}
.auth-errors h2{
  font-size:.85rem;
  font-weight:700;
  color:#D6564A;
  margin-bottom:6px;
}
.auth-errors ul{list-style:none;padding:0;margin:0}
.auth-errors li{font-size:.88rem;color:var(--ink-soft)}

.auth-links{
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid var(--line);
  display:flex;
  flex-direction:column;
  gap:10px;
}
.auth-links a{
  font-size:.9rem;
  font-weight:600;
  color:var(--ink-soft);
  text-decoration:none;
}
.auth-links a:hover{color:var(--ink)}

.auth-back{
  font-size:.85rem;
  color:var(--muted);
  text-decoration:none;
}
.auth-back:hover{color:var(--ink-soft)}
