/* login.css — Grün Theme, robust mit Fallbacks */

/* Seite */
body{
  margin:0;
  padding:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink,#111111);                 /* dunkler Text als Basis */
  background: url('../images/background.jpg') no-repeat center/cover;
  height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Wrapper */
.auth-page{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
}

/* Card */
.auth-card{
  background:var(--paper,#ffffff);
  color:var(--ink,#111111);
  padding:2rem;
  border-radius:12px;
  box-shadow:0 8px 20px rgba(0,0,0,0.15);
  width:100%;
  max-width:400px;
  text-align:center;
}

/* Titel */
.auth-title{
  margin-bottom:1.5rem;
  font-size:1.8rem;
  color:var(--accent,#2f2f2f);
  font-weight:800;
}

/* Labels */
.user-form label{
  display:block;
  text-align:left;
  margin:.8rem 0 .3rem;
  font-weight:700;
  color:var(--accent,#2f2f2f);
}

/* Inputs */
.user-form input{
  width:100%;
  padding:.6rem;
  border:1px solid var(--border,#e5e7eb);
  border-radius:6px;
  margin-bottom:1rem;
  font-size:1rem;
  background:#ffffff;
  color:var(--ink,#111111);
}

.user-form input::placeholder{
  color:var(--muted,#6b7280);
}

.user-form input:focus{
  outline:none;
  border-color:var(--brand,rgba(167,198,0,1));
  /* Ring mit Fallback */
  box-shadow:var(--ring,0 0 0 3px rgba(167,198,0,.35));
}

/* Captcha */
.captcha-wrap{ margin:1rem 0; text-align:left; }
.captcha-row{ display:flex; align-items:center; margin-bottom:.5rem; }
.captcha-row img{ border:1px solid var(--border,#e5e7eb); border-radius:6px; }

#captcha-reload{
  margin-left:.5rem;
  padding:.4rem .6rem;
  border:1px solid var(--border,#e5e7eb);
  background:#f8fafc;
  color:var(--ink,#111111);
  border-radius:6px;
  cursor:pointer;
  font-size:1.2rem;
}

/* Submit-Button – Grün statt Gold */
button[type="submit"]{
  width:100%;
  padding:.8rem;
  border:none;
  border-radius:6px;
  background:var(--brand,rgba(167,198,0,1));
  color:#ffffff;
  font-size:1rem;
  font-weight:700;
  cursor:pointer;
  transition:transform .08s ease, box-shadow .2s ease, filter .2s ease;
  box-shadow:0 10px 30px rgba(167,198,0,.35);
}
button[type="submit"]:hover{ transform:translateY(-1px); filter:brightness(.95); }
button[type="submit"]:focus-visible{ outline:none; box-shadow:var(--ring,0 0 0 3px rgba(167,198,0,.35)); }

/* Meldungen */
.alert{
  background:#ffe8e8;
  color:#7a1c1c;
  padding:.8rem;
  border-radius:6px;
  margin-bottom:1rem;
}
.success{
  background:var(--brand-weak,#f3f9dd);
  color:var(--accent,#2f2f2f);
  padding:.8rem;
  border-radius:6px;
  margin-bottom:1rem;
}

/* Links im Formular */
.user-form a{
  color:var(--brand,rgba(167,198,0,1));
  text-decoration:underline;
}
.user-form a:hover{ filter:brightness(.95); }
