:root {
            --eco-green: #1b4332;
            --eco-emerald: #2d6a4f;
            --eco-lime: #52b788;
            --eco-light: #f4f9f6;
            --eco-gradient: linear-gradient(135deg, #1b4332 0%, #2d6a4f 50%, #52b788 100%);
            --eco-gradient-dark: linear-gradient(135deg, #0f271d 0%, #1b4332 100%);
        }

        body {
            font-family: 'Poppins', sans-serif;
            background-color: #fafafa;
            color: #333333;
            min-height: 100vh;
            display: flex;
            flex-direction: column;
        }

        /* Fixed Split-Screen Layout or Central Flex Core */
        .main-auth-container {
            flex: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 40px 0;
        }

        .auth-card {
            border: 1px solid rgba(0,0,0,0.05);
            border-radius: 24px;
            background: #ffffff;
            overflow: hidden;
            max-width: 460px;
            width: 100%;
        }

        .navbar {
            background-color: rgba(255, 255, 255, 0.95) !important;
            backdrop-filter: blur(10px);
            border-bottom: 1px solid rgba(0,0,0,0.05);
        }

        .navbar-brand font {
            font-weight: 800;
            color: var(--eco-green);
        }

        .btn-eco {
            background-color: var(--eco-green);
            color: #ffffff;
            font-weight: 600;
            padding: 12px 24px;
            border-radius: 10px;
            border: none;
            transition: all 0.3s ease;
            font-size: 0.85rem;
        }

        .btn-eco:hover {
            background-color: var(--eco-emerald);
            color: #ffffff;
        }

        .btn-otp-trigger {
            font-size: 0.75rem;
            font-weight: 600;
            color: var(--eco-emerald);
            background: var(--eco-light);
            border: 1px solid rgba(45, 106, 79, 0.15);
            border-radius: 8px;
            padding: 6px 12px;
            transition: all 0.2s ease;
        }

        .btn-otp-trigger:hover {
            background: var(--eco-lime);
            color: #ffffff;
            border-color: var(--eco-lime);
        }

        .form-control:focus {
            border-color: var(--eco-lime);
            box-shadow: 0 0 0 0.25rem rgba(82, 183, 136, 0.15);
        }

        .input-group-icon {
            background-color: #f8f9fa;
            border-right: none;
            color: #777777;
        }

        .input-with-icon {
            border-left: none;
        }

footer {
  background: var(--eco-gradient-dark);
  color: #b3c6be;
}

footer h5 {
  color: #ffffff;
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 20px;
}

footer a {
  color: #b3c6be;
  text-decoration: none;
  font-size: 0.85rem;
  transition: color 0.2s ease;
}

footer a:hover {
  color: #ffffff;
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  padding-top: 25px;
  margin-top: 50px;
}
