     * {
            box-sizing: border-box;
        }

        body {
            margin: 0;
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            font-family: Arial, Helvetica, sans-serif;
            background: linear-gradient(135deg, #eef3ff, #f8fafc);
            color: #1f2937;
        }

        .main-login {
            flex: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 40px 20px;
        }

        .login-card {
            width: 100%;
            max-width: 430px;
            background: #ffffff;
            border-radius: 18px;
            padding: 34px 32px;
            box-shadow: 0 15px 35px rgba(37, 65, 120, 0.15);
            border: 1px solid #dbe5ff;
            text-align: center;
        }

        .login-logo {
            width: 72px;
            height: auto;
            margin-bottom: 18px;
        }

        .login-card h2 {
            margin: 0 0 8px;
            font-size: 23px;
            color: #1e3a8a;
            line-height: 1.3;
        }

        .login-card h5 {
            margin: 0 0 28px;
            font-size: 15px;
            font-weight: normal;
            color: #64748b;
        }

        .error-message {
            background: #fee2e2;
            color: #991b1b;
            border: 1px solid #fecaca;
            border-radius: 10px;
            padding: 11px 14px;
            margin-bottom: 20px;
            font-size: 14px;
        }

        .form-group {
            text-align: left;
            margin-bottom: 18px;
        }

        .form-group label {
            display: block;
            margin-bottom: 7px;
            font-weight: bold;
            font-size: 14px;
            color: #334155;
        }

        .form-group input {
            width: 100%;
            padding: 12px 14px;
            border: 1px solid #cbd5e1;
            border-radius: 10px;
            font-size: 15px;
            outline: none;
            transition: border-color 0.2s, box-shadow 0.2s;
        }

        .form-group input:focus {
            border-color: #7599f5;
            box-shadow: 0 0 0 3px rgba(117, 153, 245, 0.25);
        }

        .login-button {
            width: 100%;
            margin-top: 8px;
            padding: 13px 18px;
            border: none;
            border-radius: 10px;
            background: #2563eb;
            color: white;
            font-size: 15px;
            font-weight: bold;
            cursor: pointer;
            transition: background 0.2s, transform 0.1s;
        }

        .login-button:hover {
            background: #1d4ed8;
        }

        .login-button:active {
            transform: scale(0.98);
        }

        footer {
            margin-top: auto;
            background: #7599f5;
            color: white;
            padding: 15px 20px;
            text-align: center;
            font-size: 14px;
        }

        @media (max-width: 500px) {
            .login-card {
                padding: 28px 22px;
            }

            .login-card h2 {
                font-size: 20px;
            }
        }
    