/* index.css — Stil für Login */
:root{
  --bg:#0c1a10;--card:#0f1f14;--muted:#a3b8a9;--text:#e7f0ea;--primary:#22c55e;--danger:#ef4444;--ring:rgba(34,197,94,.28)
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:radial-gradient(1200px 800px at 10% 10%,#0f2a19 0%,#0c1a10 60%),#0c1a10;color:var(--text);font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu}

.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}
.card{width:100%;max-width:420px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:28px;box-shadow:0 10px 40px rgba(0,0,0,.35);backdrop-filter:blur(6px)}
.brand{font-weight:800;letter-spacing:.3px;margin-bottom:6px;background:linear-gradient(90deg,#22c55e,#16a34a);-webkit-background-clip:text;background-clip:text;color:transparent}
h1{font-size:22px;margin:0 0 16px}
label{display:block;font-size:13px;color:var(--muted);margin:12px 0 6px}
input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.25);color:var(--text);outline:none}
input:focus{border-color:var(--primary);box-shadow:0 0 0 6px var(--ring)}
.password-field{position:relative}
.password-field .toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);height:28px;width:28px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);cursor:pointer}
.primary{margin-top:16px;width:100%;padding:12px 14px;border:0;border-radius:12px;background:linear-gradient(90deg,#22c55e,#16a34a);color:#08210f;font-weight:800;letter-spacing:.3px;cursor:pointer}
.primary:hover{filter:brightness(1.05)}
.alert{border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px 12px;margin-bottom:12px}
.alert.error{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.08);color:#fecaca}
.hint{font-size:12px;color:var(--muted);margin-top:12px}
