 * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
      font-family: Arial, sans-serif;
    }
    body {
      height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      background: linear-gradient(135deg,#6a11cb,#2575fc);
      perspective: 1200px;
    }
    .wrapper {
      width: 380px;
      height: 500px;
      position: relative;
      transform-style: preserve-3d;
      transition: transform 1s;
    }
    input[type="checkbox"] {
      display: none;
    }
    .card {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background: #fff;
      border-radius: 15px;
       box-shadow: 0 10px 25px rgba(0,0,0,0.2); 
      padding: 40px;
      backface-visibility: hidden;
    }
    .card h2 {
      text-align: center;
      margin-bottom: 20px;
      color: #333;
    }
    .card input {
      width: 100%;
      padding: 12px;
      margin: 10px 0;
      border: 1px solid #ccc;
      border-radius: 8px;
    }
    .card button, label.switch, a.forgot {
      display: block;
      width: 100%;
      padding: 12px;
      margin-top: 15px;
      border: none;
      border-radius: 8px;
      background: #2575fc;
      color: #fff;
      font-size: 16px;
      cursor: pointer;
      text-align: center;
      text-decoration: none;
    }
    .card button:hover, label.switch:hover, a.forgot:hover {
      background: #6a11cb;
    }

    /* Login card */
    .login {
      transform: rotateY(0deg);
    }

    /* Signup card */
    .signup {
      transform: rotateY(180deg);
    }

    /* 3D flip effect */
    #flip:checked ~ .wrapper {
      transform: rotateY(180deg);
    }

    /* Forgot password style */
    .forgot {
      background: transparent;
      color: #2575fc;
      font-size: 14px;
      margin-top: 10px;
    }
    .forgot:hover {
      color: #6a11cb;
      background: transparent;
    }