:root {
  --neon: #f94d6a;
  --neon-light: #ece030;
}

* { margin:0; padding:0; box-sizing:border-box; font-family:'Orbitron', sans-serif; }

body, html {
  height:100%;
  overflow:hidden;
}

.container {
  display:flex;
  height:100vh;
}

.left-panel {
  flex:3;
  background:url('../assets/loginbg.jpg') center/cover no-repeat;
  position:relative;
}

.left-panel::before {
  content:""; position:absolute; inset:0;
  background:rgba(11,28,48,0.7);
}

.overlay {
  position:relative;
  z-index:1;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  color:#fff;
  text-align:center;
  padding:2rem;
}

.overlay h1 {
  font-size:3rem; text-shadow:0 0 15px var(--neon-light);
}

.overlay p {
  font-size:1.2rem; margin-top:1rem;
  height:1.5rem;
  border-right:2px solid #fff;
  overflow:hidden; white-space:nowrap;
  animation:blink 0.8s step-end infinite;
}

@keyframes blink {
  50% { border-color: transparent; }
}

.right-panel {
  flex:2;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#111f3b;
  position:relative;
}

.form-container {
  width:100%; max-width:380px;
  padding:2rem;
  position:relative;
  z-index:1;
}

.toggle {
  display:flex;
  margin-bottom:1.5rem;
}

.toggle button {
  flex:1;
  padding:0.8rem;
  background:transparent;
  border:none;
  color:#fff;
  font-size:1.1rem;
  cursor:pointer;
  border-bottom:3px solid transparent;
  transition:0.3s ease;
}

.toggle .active {
  border-color:var(--neon);
  color:var(--neon-light);
}

.form {
  display:none;
  flex-direction:column;
  gap:1rem;
}

.active-form { display:flex; animation:fadeIn 0.5s ease; }

form input {
  padding:0.7rem 1rem;
  background:#0b1c30;
  border:2px solid var(--neon);
  border-radius:6px;
  color:#fff;
  font-size:1rem;
}

.forgot {
  text-align:right;
  color:#ccc;
  font-size:0.85rem;
  cursor:pointer;
}

.animated-btn {
  padding:.8rem;
  border:none;
  border-radius:6px;
  background:var(--neon);
  color:#0b1c30;
  font-weight:bold;
  cursor:pointer;
  box-shadow:0 0 10px var(--neon), 0 0 20px var(--neon-light);
  transition:background 0.3s ease, transform .2s ease;
}

.animated-btn:hover {
  background:var(--neon-light);
  transform:translateY(-2px);
}

.switch-msg {
  text-align:center;
  color:#ccc;
  font-size:.9rem;
}

.switch-msg span {
  color:var(--neon);
  font-weight:bold;
  cursor:pointer;
}

#passwordMsg {
  font-size:.85rem;
  color:#ff6b6b;
}

@keyframes fadeIn {
  from{opacity:0;transform:scale(.98);} 
  to{opacity:1;transform:scale(1);}
}

@media (max-width: 768px) {
  .container { flex-direction:column; }
  .left-panel, .right-panel { flex:none; height:50vh; }
}

.auth-form-container {
  flex: 1;
  padding: 2rem;
  background: #111f3b;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  animation: fadeIn 0.5s ease-in-out;
}

.form-header h2 {
  color: var(--neon);
  text-align: center;
  margin-bottom: 1rem;
}

.form-toggle {
  display: flex;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.toggle-btn {
  background: none;
  border: none;
  color: #ccc;
  font-size: 1.1rem;
  padding: 0.8rem 1.5rem;
  cursor: pointer;
  border-bottom: 3px solid transparent;
  transition: all 0.3s ease;
}

.toggle-btn.active {
  border-color: var(--neon);
  color: var(--neon-light);
}

.auth-form {
  display: none;
  flex-direction: column;
  gap: 1rem;
}

.auth-form.active {
  display: flex;
}

.form-group {
  display: flex;
  flex-direction: column;
}

.form-group label {
  margin-bottom: 0.3rem;
  color: #ddd;
}

.form-control {
  padding: 0.7rem 1rem;
  border: 2px solid var(--neon);
  border-radius: 6px;
  background: #0b1c30;
  color: #fff;
}

.submit-btn {
  padding: 0.9rem;
  border: none;
  border-radius: 6px;
  background: var(--neon);
  color: #0b1c30;
  font-weight: bold;
  cursor: pointer;
  margin-top: 1rem;
  box-shadow: 0 0 10px var(--neon), 0 0 20px var(--neon-light);
  transition: all 0.3s ease-in-out;
}

.submit-btn:hover {
  background: var(--neon-light);
  transform: scale(1.03);
}

.form-footer {
  text-align: center;
  font-size: 0.9rem;
  color: #ccc;
  margin-top: 1rem;
}

.form-footer a {
  color: var(--neon);
  text-decoration: none;
  font-weight: 500;
}

.oauth-container {
  text-align: center;
  margin-top: 10px;
}

.google-btn {
  background: #fff;
  color: #444;
  border: none;
  border-radius: 8px;
  padding: 10px 15px;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  box-shadow: 0 2px 5px rgba(0,0,0,0.15);
  transition: background 0.3s ease;

}

.google-btn:hover {
  background: #f1f1f1;
}

.google-btn img {
  width: 20px;
  height: 20px;
  border-radius: 50%;
}
