/* css/auth.css */

.auth-container{
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#4A90E2 0%,#0d6efd 100%);
  padding:2rem 0;position:relative;overflow:hidden;
}
.auth-container::before{
  content:'';position:absolute;inset:0;
  background-image:
    radial-gradient(circle at 25% 25%, rgba(80,227,194,.1) 1px, transparent 1px),
    radial-gradient(circle at 75% 75%, rgba(80,227,194,.1) 1px, transparent 1px);
  background-size:50px 50px;opacity:.3;animation:patternMove 20s linear infinite;
}
@keyframes patternMove{0%{background-position:0 0}100%{background-position:50px 50px}}

.auth-card{
  background:#fff;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.3);
  overflow:hidden;max-width:900px;width:100%;display:flex;position:relative;z-index:1;
}

.auth-left{
  flex:1;padding:3rem;background:linear-gradient(135deg,#4A90E2 0%,#0d6efd 100%);
  color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;position:relative;
}
.auth-left::before{
  content:'';position:absolute;inset:0;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='%23ffffff' fill-opacity='0.1' d='M0,96L48,112C96,128,192,160,288,160C384,160,480,128,576,122.7C672,117,768,139,864,138.7C960,139,1056,117,1152,101.3C1248,85,1344,75,1392,69.3L1440,64L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z'/%3E%3C/svg%3E") no-repeat bottom;
  background-size:cover;
}
.auth-left-content{position:relative;z-index:2}

.auth-logo{font-size:3rem;margin-bottom:1rem;color:#50E3C2}
.auth-left h2{font-size:2rem;font-weight:700;margin-bottom:1rem}
.auth-left p{font-size:1.1rem;opacity:.9;line-height:1.6}

.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.stat-item{text-align:center}
.stat-number{font-size:2rem;font-weight:700;color:#50E3C2}
.stat-label{font-size:.9rem;opacity:.9;margin-top:.3rem}

.auth-right{flex:1;padding:3rem}
.auth-header{text-align:center;margin-bottom:2rem}
.auth-header h1{font-size:2rem;font-weight:700;color:#333;margin-bottom:.5rem}
.auth-header p{color:#666;font-size:1rem}

.google-btn{
  width:100%;padding:1rem;background:#fff;border:2px solid #ddd;border-radius:50px;
  font-weight:600;color:#333;display:flex;align-items:center;justify-content:center;gap:.8rem;
  transition:.3s;cursor:pointer;margin-bottom:1.5rem;
}
.google-btn:hover{border-color:#4285f4;background:#f8f9fa;transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,0,0,.1)}
.google-icon{width:20px;height:20px}

.divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0;color:#999}
.divider::before,.divider::after{content:'';flex:1;border-bottom:1px solid #ddd}
.divider span{padding:0 1rem;font-size:.9rem}

.form-group{margin-bottom:1.5rem}
.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#333}
.form-control{
  width:100%;padding:.8rem 1rem;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;transition:.3s
}
.form-control:focus{outline:none;border-color:#4A90E2;box-shadow:0 0 0 3px rgba(74,144,226,.1)}

.password-field{position:relative}
.toggle-password-btn{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);
  border:none;background:transparent;color:#999;padding:.4rem .6rem;border-radius:10px;cursor:pointer;
}
.toggle-password-btn:hover{background:#f2f4f7;color:#333}

.remember-forgot{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}
.remember-me{display:flex;align-items:center;gap:.5rem}
.remember-me input{width:18px;height:18px;cursor:pointer}

.forgot-password{color:#4A90E2;text-decoration:none;font-size:.9rem}
.forgot-password:hover{text-decoration:underline}

.btn-login{
  width:100%;padding:1rem;background:linear-gradient(135deg,#4A90E2 0%,#0d6efd 100%);
  border:none;border-radius:50px;color:#fff;font-weight:700;font-size:1.1rem;transition:.3s;cursor:pointer
}
.btn-login:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(74,144,226,.4)}
.btn-login:disabled{opacity:.6;cursor:not-allowed}

.register-link{text-align:center;margin-top:1.5rem;color:#666}
.register-link a{color:#4A90E2;font-weight:600;text-decoration:none}
.register-link a:hover{text-decoration:underline}

.alert{padding:1rem;border-radius:10px;margin-bottom:1rem}
.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}
.alert-danger{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}

.spinner{
  border:3px solid #f3f3f3;border-top:3px solid #4A90E2;border-radius:50%;
  width:20px;height:20px;animation:spin 1s linear infinite;display:inline-block;margin-left:10px
}
@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}

@media (max-width:768px){
  .auth-card{flex-direction:column}
  .auth-left,.auth-right{padding:2rem}
  .auth-left h2{font-size:1.5rem}
  .stats-grid{margin-top:1rem}
}
