/* ============================================================
   PDF Master — Login
   ============================================================ */
*{box-sizing:border-box}
.login-page{
  margin:0;min-height:100vh;
  display:flex;align-items:center;justify-content:center;padding:1.25rem;
  font-family:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
  background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 50%,#2e1065 100%);
}
.login-card{
  width:100%;max-width:400px;background:#fff;border-radius:1rem;
  padding:2.4rem 2.1rem;box-shadow:0 25px 60px rgba(0,0,0,.3);
}
.login-brand{text-align:center;margin-bottom:1.8rem}
.login-brand i{font-size:2.6rem;color:#4f46e5}
.login-brand h1{font-size:1.5rem;font-weight:700;margin:.5rem 0 .1rem;color:#1f2937}
.login-brand p{color:#6b7280;margin:0;font-size:.9rem}

.login-alert{
  background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;
  padding:.7rem .9rem;border-radius:.55rem;font-size:.88rem;margin-bottom:1.1rem;
}

.form-group{margin-bottom:1.1rem}
.form-group label{display:block;font-size:.85rem;font-weight:600;color:#374151;margin-bottom:.4rem}
.input-wrap{position:relative}
.input-wrap>i{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);color:#9ca3af}
.input-wrap input{
  width:100%;padding:.75rem 2.5rem;border:1px solid #d1d5db;
  border-radius:.6rem;font-size:.95rem;transition:.15s;
}
.input-wrap input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px rgba(79,70,229,.15)}
.toggle-pass{
  position:absolute;right:.5rem;top:50%;transform:translateY(-50%);
  border:0;background:none;color:#9ca3af;cursor:pointer;padding:.35rem;
}
.toggle-pass:hover{color:#4f46e5}

.btn-login{
  width:100%;padding:.8rem;border:0;border-radius:.6rem;
  background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;
  font-size:1rem;font-weight:600;cursor:pointer;transition:.15s;margin-top:.3rem;
}
.btn-login:hover{filter:brightness(1.07);box-shadow:0 8px 20px rgba(79,70,229,.4)}
.btn-login:active{transform:translateY(1px)}

.login-foot{text-align:center;color:#9ca3af;font-size:.8rem;margin:1.6rem 0 0}
