    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
      font-family: 'Roboto', Arial;
    }

    body {
      background: linear-gradient(to bottom right, #fffaf5, #e1faee);
      display: flex;
      justify-content: center;
      align-items: center;
      min-height: 100vh;
      padding: 20px;
    }

    .container {
      width: 400px;
      text-align: center;
    }

        .logo {
      width: 70px;
      height: 70px;
      margin: 0 auto 20px auto;
      border-radius: 50%;
      background: linear-gradient(135deg, #ff8a00, #00c853);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .logo span {
      font-size: 40px;
      color: white;
    }


    .card-container {
      text-align: center;
    }

    .hidden {
      display: none;
    }

    .header h1 {
      font-size: 26px;
      font-weight: 700;
      margin-bottom: 5px;
      color: #222;
    }

    .header p {
      font-size: 14px;
      color: #666;
      margin-bottom: 25px;
    }
    .header h2 {
      font-size: 16px;
      color: #666;
      margin-bottom: 30px;
      font-weight: 100;
    }

    .card {
      background: white;
      padding: 25px;
      border-radius: 12px;
      box-shadow: 0 6px 16px rgba(0,0,0,0.1);
    }

    .card h2 {
       text-align: center;
      font-size: 28px;
      margin-bottom: 10px;
      color: #0a0a0a;
      font-weight: 100;
    }

    .card p {
      font-size: 14px;
      color: #666;
      margin-bottom: 15px;
    }

    .form-group {
      text-align: left;
      margin-bottom: 15px;
    }

    label {
      font-size: 14px;
      font-weight: 500;
      color: #333;
      display: block;
      margin-bottom: 5px;
    }

    input {
      width: 100%;
      padding: 12px;
      border-radius: 8px;
      border: 1px solid #ccc;
      outline: none;
      font-size: 14px;
      transition: all 0.3s ease;
    }

    input:focus {
      border-color: #00c853;
      box-shadow: 0 0 5px rgba(0, 200, 83, 0.4);
    }

    small {
      font-size: 12px;
      color: #666;
    }

    .note {
      background: #fff3e0;
      color: #ae6d4a;
      padding: 12px;
      border-radius: 6px;
      border: 1px solid #ff9800;
      font-size: 13px;
      text-align: left;
      margin-bottom: 20px;
    }

    button {
      width: 100%;
      padding: 12px;
      background: linear-gradient(135deg, #ff8a00, #00c853);
      color: white;
      font-size: 16px;
      font-weight: 600;
      border: none;
      border-radius: 8px;
      cursor: pointer;
      transition: background 0.3s ease;
    }

    button:hover {
      background: #009624;
    }

    .outline-btn {
      background: transparent;
      border: 2px solid #ff9800;
      color: #ff5722;
    }

    .outline-btn:hover {
      background: #ff9800;
      color: white;
    }

   .back{
      text-align: center;
      margin-top: 20px;
      margin-bottom: 10px;
    }

    .back a {
      font-size: 15px;
      color: #00c853;
      font-weight: 700;
      text-decoration: none;
    }

    .back a:hover {
      text-decoration: underline;
    }

    .back span{
      align-items: center;
      margin-right: 5px;
      vertical-align: middle;
      font-size: 20px;

    }

    .help {
      text-align: center;
      margin-top: 15px;
      font-size: 14px;
    }

    .help a {
      color: #ff5722;
      font-weight: 600;
      text-decoration: none;
    }

    .help a:hover {
      text-decoration: underline;
    }

    .footer-msg {
      text-align: center;
      font-size: 12px;
      color: #777;
      margin-top: 20px;
    }

    .footer-msg span{
      vertical-align: middle;
    }

    .success-box {
      background: #e8f5e9;
      padding: 15px;
      border-radius: 8px;
      border: 1px solid #c8e6c9;
      margin-bottom: 15px;
    }

    .icon-wrapper {
      position: relative;
      width: 40px;
      height: 40px;
      margin: 0 auto 10px;
    }

    .icon {
      font-size: 24px;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%,-50%);
      animation: bounce 1s infinite;
    }

    .ping {
      position: absolute;
      width: 100%;
      height: 100%;
      border-radius: 50%;
      background: #a5d6a7;
      animation: ping 1.5s infinite;
    }

    @keyframes ping {
      0% { transform: scale(1); opacity: 0.8; }
      75% { transform: scale(1.8); opacity: 0; }
      100% { transform: scale(1); opacity: 0; }
    }

    @keyframes bounce {
      0%, 100% { transform: translate(-50%, -50%) translateY(0); }
      50% { transform: translate(-50%, -50%) translateY(-6px); }
    }

    .dots {
      animation: blink 1.5s infinite;
    }

    @keyframes blink {
      0%,100% { opacity: 0.2; }
      50% { opacity: 1; }
    }

    .waiting {
      font-size: 13px;
      color: #444;
      text-align: center;
    }

    .info {
      font-size: 13px;
      color: #666;
      margin: 10px 0;
    }
