* { margin: 0; padding: 0; box-sizing: border-box; font-family: "Segoe UI", sans-serif; }

body { 
  background: linear-gradient(135deg, #5b6cff, #7f53ff); 
  display: flex; 
  justify-content: center; 
  align-items: center; 
  min-height: 100vh; 
  padding: 20px; 
}

.container { 
  width: 900px; 
  max-width: 95%; 
  background: #fff; 
  border-radius: 20px; 
  display: flex; 
  overflow: hidden; 
  box-shadow: 0 15px 35px rgba(0,0,0,0.2); 
  min-height: 600px;
}

/* --- Left Side --- */
.left { 
  width: 50%; 
  background: #f5f7ff; 
  display: flex; 
  flex-direction: column; 
  align-items: center; 
  justify-content: center; 
}

.image-3d { perspective: 1000px; width: 100%; display: flex; justify-content: center; }
.image-3d img { 
  width: 80%; 
  transition: transform 0.4s ease, box-shadow 0.4s ease; 
  transform: rotateY(-15deg) rotateX(5deg); 
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.25); 
  border-radius: 10px; 
}
.image-3d img:hover { transform: rotateY(0deg) rotateX(0deg) scale(1.05); }

/* --- Right Side --- */
.right { 
  width: 50%; 
  padding: 40px; 
  display: flex; 
  flex-direction: column; 
  justify-content: center; 
}

h1 { font-size: 28px; color: #333; margin-bottom: 25px; }

label { font-size: 14px; color: #333; margin-top: 15px; display: block; font-weight: 600; }

input, select {
  width: 100%;
  padding: 12px;
  margin-top: 6px;
  border-radius: 8px;
  border: 1px solid #ddd;
  outline: none;
  transition: 0.3s;
  background: #fafafa;
}

input:focus, select:focus { 
  border-color: #7f53ff; 
  background: #fff;
  box-shadow: 0 0 0 4px rgba(127, 83, 255, 0.1);
}

/* Buttons */
.btn { 
  margin-top: 30px; 
  width: 100%; 
  padding: 14px; 
  background: linear-gradient(135deg, #1808cf, #7f53ff); 
  color: #fff; 
  border: none; 
  border-radius: 30px; 
  cursor: pointer; 
  font-size: 16px; 
  font-weight: 600; 
  transition: 0.3s; 
}

.btn:hover { opacity: 0.9; transform: translateY(-2px); }
.btn:disabled { background: #ccc; cursor: not-allowed; transform: none; }

/* Message Box */
.message-box {
  margin-top: 15px;
  padding: 10px;
  border-radius: 8px;
  font-size: 14px;
  text-align: center;
  display: none; 
}
.message-box.error { background: #ffe6e6; color: #d93025; border: 1px solid #ffcccc; display: block; }
.message-box.success { background: #e6fffa; color: #00a884; border: 1px solid #ccfbf1; display: block; }

@media (max-width: 768px) { 
  .container { flex-direction: column; height: auto; } 
  .left { display: none; } 
  .right { width: 100%; padding: 30px; } 
}