:root {
            --vz-body-bg: #f3f3f9;
            --vz-body-color: #495057;
            --vz-primary: #405189;
            --vz-success: #0bb783;
            --vz-danger: #f06548;
            --vz-info: #299cdb;
            --vz-dark: #202231;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: "Poppins", sans-serif;
            background-color: var(--vz-body-bg);
            color: var(--vz-body-color);
            min-height: 100vh;
            position: relative;
        }

        .container{
            max-width: 1140px;
        }

        .auth-page-wrapper {
            min-height: 100vh;
            position: relative;
            padding-top: 5rem;
        }

        .auth-one-bg {
            background-image: url(../images/partner.jpg);
            background-position: center;
            background-size: cover;
        }

        .auth-one-bg-position {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            width: 100%;
            height: 380px;
        }

        .bg-overlay {
            position: absolute;
            height: 100%;
            width: 100%;
            right: 0;
            bottom: 0;
            left: 0;
            top: 0;
            background: linear-gradient(139deg, #111 0%, #111 100%);
            opacity: 0.7;
        }

        .shape {
            position: absolute;
            bottom: 0;
            right: 0;
            left: 0;
            z-index: 1;
            pointer-events: none;
        }

        .shape > svg {
            width: 100%;
            height: auto;
            fill: var(--vz-body-bg);
        }

        .particles-js-canvas-el {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
        }

        .auth-page-content {
            padding-bottom: 60px;
            position: relative;
            z-index: 2;
            width: 100%;
        }

        .auth-logo img {
            height: 45px;
        }

        .card {
            margin-bottom: 1.5rem;
            box-shadow: 0 1px 2px rgba(56, 65, 74, 0.15);
            border: none;
            border-radius: 0.75rem;
        }

        .card-body {
            padding: 2rem;
        }

        .form-label {
            font-weight: 500;
            margin-bottom: 0.5rem;
            color: var(--vz-body-color);
            display: none; /* Hide labels as per old design */
        }

        .form-control {
            border-radius: 0.375rem;
            border: 1px solid #ced4da;
            padding: 0.75rem 1rem;
            font-size: 0.875rem;
            transition: all 0.15s ease-in-out;
        }

        .form-control:focus {
            border-color: var(--vz-primary);
            box-shadow: 0 0 0 0.2rem rgba(64, 81, 137, 0.25);
        }

        .btn {
            border-radius: 0.375rem;
            font-weight: 500;
            padding: 0.75rem 1.5rem;
            transition: all .5s ease-in-out;
        }

        .btn-success {
            color: #111;
            background: linear-gradient(139deg, #f0dd54 0%, #f0dd54 100%);
            border-color: #e0cd46;
        }

        .btn-success:hover {
            background: #111;
            color: #fff;
        }

        .btn-success:disabled {
            opacity: 0.6;
            cursor: not-allowed;
        }

        .text-primary {
            color: var(--vz-dark) !important;
        }

        .text-muted {
            color: #6c757d !important;
        }

        .text-white-50 {
            color: rgba(255, 255, 255, 0.5) !important;
        }

        .text-danger {
            color: var(--vz-danger) !important;
        }

        .fs-15 {
            font-size: 0.9375rem !important;
        }

        .fw-medium {
            font-weight: 500 !important;
        }

        .fw-semibold {
            font-weight: 600 !important;
        }

        .footer {
            bottom: 0;
            padding: 20px calc(1.5rem * 0.5);
            position: absolute;
            right: 0;
            height: 60px;
            left: 0;
            background-color: transparent;
            color: var(--vz-body-color);
        }

        /* Type toggle buttons */
        .type-toggle {
            display: flex;
            gap: 10px;
            margin-bottom: 20px;
        }

        .type-button {
            flex: 1;
            padding: 10px;
            border: 1px solid #ced4da;
            background-color: white;
            border-radius: 0.375rem;
            cursor: pointer;
            font-weight: 500;
            transition: all 0.3s ease;
            text-align: center;
            font-size: 0.875rem;
        }

        .type-button.active {
            background: var(--vz-dark);
            color: #fff;
            font-weight: 700;
        }

        .type-button:hover:not(.active) {
            background-color: #f8f9fa;
            border-color: #adb5bd;
        }

        /* Form groups */
        .form-group {
            margin-bottom: 1rem;
        }

        .hidden {
            display: none !important;
        }

        /* Back to home link */
        .back-home {
            color: rgba(255, 255, 255, 0.8);
            text-decoration: none;
            font-size: 0.875rem;
            transition: color 0.3s ease;
        }

        .back-home:hover {
            color: white;
            text-decoration: none;
        }
        .back-login {
            color: rgba(0, 0, 0, 0.8);
            text-decoration: none;
            font-size: 0.875rem;
            transition: color 0.3s ease;
        }

        .back-login:hover {
            color: #000000;
            text-decoration: none;
        }
        /* Loading spinner */
        .loading {
            display: inline-block;
            width: 16px;
            height: 16px;
            border: 2px solid #ffffff;
            border-radius: 50%;
            border-top-color: transparent;
            animation: spin 1s ease-in-out infinite;
            margin-right: 8px;
        }

        @keyframes spin {
            to { transform: rotate(360deg); }
        }

        /* Particles animation */
        @keyframes float {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            33% { transform: translateY(-10px) rotate(120deg); }
            66% { transform: translateY(5px) rotate(240deg); }
        }

        .particle {
            position: absolute;
            background: rgba(255, 255, 255, 0.1);
            border-radius: 50%;
            animation: float 6s ease-in-out infinite;
        }

        .particle:nth-child(1) { width: 6px; height: 6px; top: 10%; left: 10%; animation-delay: 0s; }
        .particle:nth-child(2) { width: 8px; height: 8px; top: 20%; left: 80%; animation-delay: 1s; }
        .particle:nth-child(3) { width: 4px; height: 4px; top: 60%; left: 20%; animation-delay: 2s; }
        .particle:nth-child(4) { width: 10px; height: 10px; top: 80%; left: 90%; animation-delay: 3s; }
        .particle:nth-child(5) { width: 5px; height: 5px; top: 30%; left: 60%; animation-delay: 4s; }
        .particle:nth-child(6) { width: 7px; height: 7px; top: 70%; left: 70%; animation-delay: 5s; }

        /* Message styles */
        .message {
            padding: 10px 15px;
            border-radius: 0.375rem;
            margin-bottom: 15px;
            font-size: 0.875rem;
        }

        .message.error {
            background-color: #f8d7da;
            border: 1px solid #f5c6cb;
            color: #721c24;
        }

        .message.success {
            background-color: #d4edda;
            border: 1px solid #c3e6cb;
            color: #155724;
        }


        .forgot-password{
            font-size: 14px;
            color: var(--vz-dark);
        }

        /* Responsive */
        @media (max-width: 768px) {
            .auth-page-wrapper {
                padding-top: 2rem;
            }
            
            .card-body {
                padding: 1.5rem;
            }
        }

        .fw-medium {
            font-weight: 700 !important;
        }



        /* .loading {
            display: inline-block;
            width: 18px;
            height: 18px;
            border: 2px solid #fff;
            border-radius: 50%;
            border-top-color: transparent;
            animation: spin 0.8s linear infinite;
            margin-right: 8px;
            vertical-align: middle;
        }

        @keyframes spin {
            to { transform: rotate(360deg); }
        } */

    .dot-loader {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
    }

    .dot-loader div {
        width: 10px;
        height: 10px;
        background: #111;
        border-radius: 50%;
        animation: bounce 0.6s infinite alternate;
    }

    .dot-loader div:nth-child(2) {
        animation-delay: 0.2s;
    }

    .dot-loader div:nth-child(3) {
        animation-delay: 0.4s;
    }

    @keyframes bounce {
        from { transform: translateY(0); }
        to { transform: translateY(-6px); }
    }        