:root{
  --bg:#0d1117; --card:#161b22; --line:#232a34; --fg:#e6edf3; --mut:#8b949e;
  --accent:#6ee7b7; --accent2:#34d399; --field:#0d1117; --danger:#ff9d96;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  background:
    radial-gradient(900px 500px at 80% -10%, rgba(52,211,153,.10), transparent 60%),
    radial-gradient(700px 400px at -10% 110%, rgba(110,231,183,.08), transparent 60%),
    var(--bg);
  color:var(--fg); display:flex; align-items:center; justify-content:center; padding:24px;
}
.card{
  width:100%; max-width:400px; background:var(--card); border:1px solid var(--line);
  border-radius:16px; padding:38px 34px; box-shadow:0 20px 60px rgba(0,0,0,.45);
}
.brand{display:flex; align-items:center; gap:11px; margin-bottom:26px}
.logo{
  width:40px; height:40px; border-radius:11px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  display:flex; align-items:center; justify-content:center; flex:0 0 auto;
}
.logo svg{width:22px; height:22px; display:block}
.brand b{font-size:20px; letter-spacing:.2px}
h1{font-size:19px; margin:0 0 6px}
.sub{color:var(--mut); font-size:14px; margin:0 0 24px}
label{display:block; font-size:13px; color:var(--mut); margin:0 0 7px}
.field{
  width:100%; background:var(--field); border:1px solid var(--line); color:var(--fg);
  border-radius:10px; padding:12px 13px; font-size:15px; margin-bottom:16px; outline:none;
  transition:border-color .15s, box-shadow .15s;
}
.field:focus{border-color:var(--accent2); box-shadow:0 0 0 3px rgba(52,211,153,.15)}
.row{display:flex; align-items:center; justify-content:space-between; margin:2px 0 22px}
.row a{color:var(--accent); text-decoration:none; font-size:13px}
.row a:hover{text-decoration:underline}
.chk{display:flex; align-items:center; gap:8px; color:var(--mut); font-size:13px}
.chk label{margin:0}
.btn{
  width:100%; border:0; border-radius:10px; padding:13px; font-size:15px; font-weight:600;
  color:#062018; background:linear-gradient(135deg,var(--accent),var(--accent2)); cursor:pointer;
  transition:filter .15s, opacity .15s;
}
.btn:hover{filter:brightness(1.05)}
.btn:disabled{opacity:.7; cursor:default}
.err{display:none; background:rgba(248,81,73,.1); border:1px solid rgba(248,81,73,.35);
  color:var(--danger); font-size:13px; border-radius:9px; padding:10px 12px; margin-bottom:18px}
.foot{margin-top:26px; text-align:center; color:var(--mut); font-size:12px}
.foot a{color:var(--mut); text-decoration:none}
.foot a:hover{text-decoration:underline}
