
        /* =================================================================
           1. Base & Layout
           ================================================================= */
        body {
            font-family: 'Poppins', sans-serif;
            background-color: #f4f7f6;
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 100vh;
            margin: 0;
        }

        .auth-container {
            background-color: #ffffff;
            padding: 40px;
            border-radius: 12px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
            width: 100%;
            max-width: 420px;
            text-align: center;
            box-sizing: border-box;
        }

        /* =================================================================
           2. Header & Brand
           ================================================================= */
        .auth-container .auth-header {
            margin-bottom: 30px;
        }

        .auth-container .brand-logo {
            font-size: 28px;
            font-weight: 600;
            color: #1e293b; /* A darker, more professional blue/grey */
            margin-bottom: 10px;
        }

        .auth-container .brand-logo span {
            color: #f59e0b; /* A nice amber/yellow */
        }

        .auth-container .auth-title {
            font-size: 24px;
            font-weight: 600;
            color: #333;
            margin: 0 0 5px 0;
        }

        .auth-container .auth-subtitle {
            font-size: 15px;
            color: #6c757d;
            margin: 0;
        }

        /* =================================================================
           3. Form & Inputs
           ================================================================= */
        .auth-container .login-form {
            display: flex;
            flex-direction: column;
        }

        .auth-container .input-group {
            position: relative;
            margin-bottom: 20px;
        }

        .auth-container .input-group input {
            width: 100%;
            padding: 14px 20px;
            border: 1px solid #ced4da;
            border-radius: 8px;
            font-size: 15px;
            transition: border-color 0.3s, box-shadow 0.3s;
            box-sizing: border-box; /* Important for consistent sizing */
        }
        .auth-container .input-group {
        position: relative;
        margin-bottom: 20px;
    }

    .auth-container .password-toggle {
        position: absolute;
        top: 50%;
        right: 15px;
        transform: translateY(-50%);
        color: #6c757d;
        cursor: pointer;
    }

        .auth-container .input-group input:focus {
            outline: none;
            border-color: #f59e0b;
            box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.2);
        }

        .auth-container .password-toggle {
            position: absolute;
            top: 50%;
            right: 15px;
            transform: translateY(-50%);
            color: #6c757d;
            cursor: pointer;
        }

        /* =================================================================
           4. Buttons & Links
           ================================================================= */
        .auth-container .cta-button {
            background-color: #D4AF37;
            color: #ffffff;
            border: none;
            padding: 14px;
            border-radius: 8px;
            font-size: 16px;
            font-weight: 500;
            cursor: pointer;
            transition: background-color 0.3s, transform 0.2s;
            margin-bottom: 20px;
        }

        .auth-container .cta-button:hover {
            background-color: #d97706; /* A darker shade for hover */
        }
        
        .auth-container .cta-button:disabled {
            background-color: #cccccc;
            cursor: not-allowed;
        }

        .auth-container .auth-footer {
            margin-top: 15px;
        }

        .auth-container .auth-links {
            font-size: 14px;
            color: #6c757d;
            margin: 10px 0;
        }

        .auth-container .auth-links a {
            color: #0d6efd; /* Standard link blue */
            text-decoration: none;
            font-weight: 500;
        }

        .auth-container .auth-links a:hover {
            text-decoration: underline;
        }
        
        /* =================================================================
           5. Error Message
           ================================================================= */
        .auth-container .form-error {
            padding: 12px;
            margin-bottom: 20px;
            border-radius: 8px;
            background-color: #f8d7da;
            color: #721c24;
            border: 1px solid #f5c6cb;
            font-size: 14px;
            text-align: center;
            transition: opacity 0.5s ease-out; /* For JS fade-out */
        }

        .auth-container .form-error a {
            color: #721c24;
            font-weight: bold;
        }
