<style type="text/css">
        /* Custom styles to enhance Tailwind or add specific modal behavior */
        body {
            font-family: 'Inter', sans-serif; /* Using Inter font as per instructions */
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            background-color: #f0f4f8; /* Light gray background */
            color: #333;
        }

        /* Modal specific styles */
        .modal {
            display: none; /* Hidden by default */
            position: fixed; /* Stay in place */
            z-index: 1000; /* Sit on top */
            left: 0;
            top: 0;
            width: 100%; /* Full width */
            height: 100%; /* Full height */
            overflow: auto; /* Enable scroll if needed */
            background-color: rgba(0,0,0,0.6); /* Darker overlay with opacity */
            backdrop-filter: blur(5px); /* Slightly blur background */
        }

        .modal-content {
            background-color: #ffffff;
            margin: 5% auto; /* 5% from the top and centered horizontally */
            padding: 20px;
            border-radius: 12px; /* More rounded corners */
            width: 90%; /* Responsive width */
            max-width: 900px; /* Max width to prevent it from getting too large */
            position: relative;
            box-shadow: 0 8px 16px rgba(0,0,0,0.25); /* Stronger shadow */
            animation: fadeInScale 0.3s ease-out forwards; /* Entry animation */
        }

        @keyframes fadeInScale {
            from {
                opacity: 0;
                transform: scale(0.95);
            }
            to {
                opacity: 1;
                transform: scale(1);
            }
        }

        .close-btn {
            color: #666;
            position: absolute;
            top: 15px;
            right: 25px;
            font-size: 32px; /* Larger close button */
            font-weight: bold;
            cursor: pointer;
            transition: color 0.2s ease-in-out;
        }

        .close-btn:hover,
        .close-btn:focus {
            color: #333;
        }

        #modal-body {
            text-align: center;
            padding-top: 20px; /* Space for close button */
        }

        #modal-body img {
            max-width: 100%;
            height: auto;
            border-radius: 8px; /* Rounded image corners */
            box-shadow: 0 2px 8px rgba(0,0,0,0.1);
        }

        #modal-body iframe {
            width: 100%;
            min-height: 70vh; /* Adjust height for better PDF viewing */
            border: 1px solid #e2e8f0; /* Subtle border for iframe */
            border-radius: 8px;
        }

        /* Responsive adjustments */
        @media (max-width: 768px) {
            .modal-content {
                margin: 10% auto;
                width: 95%;
            }
            #modal-body iframe {
                min-height: 60vh;
            }
        }

        @media (max-width: 480px) {
            .container {
                flex-direction: column;
                align-items: center;
            }
            .modal-content {
                margin: 15% auto;
            }
        }
    </style>