@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#0f1117;--surface:#1a1d2e;--surface2:#252840;--border:rgba(255,255,255,0.08);--text:#e2e8f0;--muted:#94a3b8;--accent:#6366f1;--accent-hover:#818cf8;--radius:14px;--shadow:0 8px 40px rgba(0,0,0,0.4)}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(ellipse at 20% 50%,rgba(99,102,241,0.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(139,92,246,0.06) 0%,transparent 50%)}
.auth-container{width:100%;max-width:420px;padding:1.5rem}
.auth-logo{text-align:center;margin-bottom:2rem}
.auth-logo span{display:block;font-size:1.4rem;font-weight:700;color:var(--text);margin-top:.75rem;letter-spacing:-.02em}
.auth-logo small{font-size:.8rem;color:var(--muted)}
.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow)}
.auth-card h2{font-size:1.25rem;font-weight:600;margin-bottom:.25rem}
.auth-card p.subtitle{font-size:.85rem;color:var(--muted);margin-bottom:1.75rem}
.form-group{margin-bottom:1.25rem}
.form-group label{display:block;font-size:.82rem;font-weight:500;color:var(--muted);margin-bottom:.4rem;letter-spacing:.02em;text-transform:uppercase}
.form-group input{width:100%;padding:.75rem 1rem;background:var(--surface2);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:.95rem;font-family:'Inter',sans-serif;transition:border-color .2s,box-shadow .2s;outline:none}
.form-group input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(99,102,241,0.15)}
.form-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}
.remember-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--muted);cursor:pointer}
.link{font-size:.85rem;color:var(--accent);text-decoration:none;transition:color .2s}
.link:hover{color:var(--accent-hover)}
.btn-primary{width:100%;padding:.8rem;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:.95rem;font-weight:600;font-family:'Inter',sans-serif;cursor:pointer;transition:background .2s,transform .1s,box-shadow .2s;box-shadow:0 4px 15px rgba(99,102,241,0.3)}
.btn-primary:hover{background:var(--accent-hover);box-shadow:0 6px 20px rgba(99,102,241,0.4)}
.btn-primary:active{transform:scale(.98)}
.auth-footer{text-align:center;margin-top:1.5rem;font-size:.85rem;color:var(--muted)}
.error-msg{background:rgba(239,68,68,0.1);border:1px solid rgba(239,68,68,0.3);border-radius:8px;padding:.75rem 1rem;font-size:.85rem;color:#fca5a5;margin-bottom:1.25rem}
.status-msg{background:rgba(16,185,129,0.1);border:1px solid rgba(16,185,129,0.3);border-radius:8px;padding:.75rem 1rem;font-size:.85rem;color:#6ee7b7;margin-bottom:1.25rem}
