/* ETVIR Projektplanung 3.0 – Login, Passwort, Benutzerverwaltung */
:root{
  --bg:#101215; --panel:#181a1f; --panel-2:#22262c; --border:#2a2d33; --border-light:#383d45;
  --text:#eef0f2; --muted:#98a0aa; --accent:#c9974e; --accent-2:#e0b06c;
  --ok:#4caf6d; --ok-bg:#1c2a20; --danger:#e5484d; --danger-bg:#2c1917;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;}
a{color:var(--accent-2);}
.center{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px 16px;}
.box{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:36px 40px;max-width:420px;width:100%;}
.box.wide{max-width:1040px;}
.logo{height:34px;display:block;margin:0 auto 22px;}
h1{font-size:18px;font-weight:600;margin:0 0 6px;text-align:center;}
h2{font-size:15px;font-weight:600;margin:28px 0 10px;}
p.sub{font-size:13px;color:var(--muted);text-align:center;margin:0 0 22px;line-height:1.5;}
label{display:block;font-size:12px;color:var(--muted);margin:14px 0 6px;letter-spacing:.2px;}
input[type=email],input[type=password],input[type=text],select{
  width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--border-light);
  background:var(--panel-2);color:var(--text);font-size:14px;font-family:inherit;
}
input:focus,select:focus{outline:none;border-color:var(--accent);}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:8px;
  border:1px solid var(--border-light);background:var(--panel-2);color:var(--text);font-size:13px;font-weight:500;
  cursor:pointer;text-decoration:none;font-family:inherit;}
.btn:hover{border-color:var(--accent);}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#1a1305;font-weight:600;}
.btn-primary:hover{background:var(--accent-2);}
.btn-sm{padding:5px 10px;font-size:12px;}
.btn-block{width:100%;margin-top:22px;padding:11px;}
.msg{padding:10px 12px;border-radius:8px;font-size:13px;margin:0 0 14px;line-height:1.45;}
.msg.err{background:var(--danger-bg);color:#ffb4b0;border:1px solid #5a2622;}
.msg.ok{background:var(--ok-bg);color:#b5e8c4;border:1px solid #2b5a38;}
.row-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.checkbox{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted);margin-top:14px;}
.topnav{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px;flex-wrap:wrap;}
.table-wrap{overflow-x:auto;}
table{width:100%;border-collapse:collapse;font-size:13px;}
th,td{text-align:left;padding:8px 8px;border-bottom:1px solid var(--border);vertical-align:middle;}
th{color:var(--muted);font-weight:500;font-size:12px;}
td select,td input{padding:6px 8px;font-size:12.5px;}
.badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600;}
.badge.on{background:var(--ok-bg);color:var(--ok);}
.badge.off{background:var(--danger-bg);color:var(--danger);}
.grid-form{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:10px;align-items:end;}
.grid-form label{margin-top:0;}
.muted{color:var(--muted);font-size:12px;}
@media (max-width:760px){
  .box{padding:28px 20px;}
  .grid-form{grid-template-columns:1fr;}
}
