:root {
            --font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
            --color-bg-editor: #202225;
            --color-splash-bg: #282c34;
            --color-splash-surface: #21252b;
            --color-border: #3e4451;
            --color-text-primary: #e6edf3;
            --color-text-secondary: #9ea8b5;
            --color-accent: #5293d5; /* A blue inspired by the Blender art */
            --color-accent-hover: #6ca7e8;
            --border-radius: 10px;
            --transition-speed: 0.3s;
        }

        /* --- Modal Overlay --- */
        .modal-overlay {
            position: fixed;
            inset: 0;
            background: rgba(15, 17, 20, 0.7);
            backdrop-filter: blur(8px);
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: 2000;
            padding: 16px;
            opacity: 0;
            visibility: hidden;
            transition: opacity var(--transition-speed) ease, visibility 0s var(--transition-speed);
        }

        .modal-overlay.is-visible {
            opacity: 1;
            visibility: visible;
            transition-delay: 0s;
        }

        /* --- Modal Content --- */
        .modal-content {
            width: 100%;
            max-width: 680px; /* Slightly wider to accommodate video */
            max-height: 95vh;
            border-radius: var(--border-radius);
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6);
            display: flex;
            flex-direction: column;
            overflow: hidden;
            background-color: var(--color-splash-bg);
            border: 1px solid var(--color-border);
            transform: scale(0.95) translateY(-10px);
            opacity: 0;
            transition: transform var(--transition-speed) cubic-bezier(0.2, 0.8, 0.2, 1), opacity var(--transition-speed) ease;
        }
        
        .modal-overlay.is-visible .modal-content {
            transform: scale(1) translateY(0);
            opacity: 1;
        }

        /* --- Modal Header --- */
        .modal-header {
            /* Using the Blender splash screen art you provided */
            background-image: linear-gradient(to top, rgba(40, 44, 52, 1) 0%, rgba(40, 44, 52, 0.3) 40%, rgba(0,0,0,0.1) 100%), url('https://cdn.pixabay.com/photo/2020/01/11/16/48/dragon-4758109_1280.jpg');
            background-size: cover;
            background-position: center 40%;
            padding: 24px;
            text-align: center;
            color: #fff;
            text-shadow: 0 2px 5px rgba(0,0,0,0.7);
        }
        
        .modal-logo {
            width: 56px;
            height: 56px;
            margin: 0 auto 12px;
            filter: drop-shadow(0 4px 8px rgba(0,0,0,0.5));
        }

        .modal-title {
            font-size: 26px;
            font-weight: 700;
            margin: 0;
        }
        .modal-title sup { font-size: 0.5em; opacity: 0.8; font-weight: 600; }
        
        .modal-tagline {
            font-size: 15px;
            font-weight: 500;
            margin-top: 6px;
            color: var(--color-text-primary);
            opacity: 0.9;
        }

        /* --- Modal Body --- */
        .modal-body {
            padding: 24px 32px;
            display: flex;
            flex-direction: column;
            gap: 24px;
            overflow-y: auto;
        }
        
        /* --- Embedded Video Container --- */
        .video-container {
            position: relative;
            width: 100%;
            padding-top: 56.25%; /* 16:9 Aspect Ratio (9 / 16 = 0.5625) */
            border-radius: 8px;
            overflow: hidden;
            background-color: #000;
            box-shadow: 0 8px 25px rgba(0,0,0,0.5);
        }
        
        .video-container iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border: none;
        }

        /* --- Section Heading --- */
        .section-heading {
            font-size: 14px;
            font-weight: 600;
            color: var(--color-text-secondary);
            margin: 0 0 12px;
            padding-bottom: 8px;
            border-bottom: 1px solid var(--color-border);
            text-transform: uppercase;
            letter-spacing: 0.8px;
        }
        
        /* --- Community Links & Features --- */
        .content-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 32px;
        }
        
        .features-list {
            list-style: none; padding: 0; margin: 0;
            display: flex;
            flex-direction: column;
            gap: 10px;
        }
        .features-list li {
            display: flex; align-items: center; gap: 10px;
            font-size: 14px; color: var(--color-text-primary);
        }
        .features-list li svg { width: 16px; height: 16px; color: var(--color-accent); flex-shrink: 0; }
        
        .community-links {
            display: flex;
            flex-direction: column;
            gap: 12px;
        }
        .community-btn {
            display: flex; align-items: center; justify-content: center; gap: 10px;
            padding: 12px; border-radius: 6px; text-decoration: none;
            font-weight: 600; font-size: 14px;
            transition: all var(--transition-speed) ease;
            border: 1px solid transparent;
        }
        .community-btn svg { width: 20px; height: 20px; }
        .community-btn.github { background-color: #333; color: #fafafa; border-color: #4d4d4d; }
        .community-btn.github:hover { background-color: #444; border-color: #666; transform: translateY(-2px); }
        .community-btn.youtube { background-color: #cc0000; color: #fff; border-color: #e52d27; }
        .community-btn.youtube:hover { background-color: #e52d27; border-color: #ff504a; transform: translateY(-2px); }
        
        /* --- Footer --- */
        .modal-footer {
            display: flex; justify-content: space-between; align-items: center;
            padding: 16px 24px; background-color: var(--color-splash-surface);
            border-top: 1px solid var(--color-border); flex-shrink: 0;
        }
        .dont-show-again {
            display: flex; align-items: center; font-size: 13px;
            color: var(--color-text-secondary); cursor: pointer;
        }
        .dont-show-again input { margin-right: 8px; accent-color: var(--color-accent); }
        .continue-btn {
            background-color: var(--color-accent); color: white;
            padding: 10px 20px; border: none; border-radius: 6px;
            font-weight: 600; cursor: pointer;
            transition: all var(--transition-speed) ease;
        }
        .continue-btn:hover { background-color: var(--color-accent-hover); transform: translateY(-2px); }

        /* Responsive */
        @media (max-width: 600px) {
            .content-grid {
                grid-template-columns: 1fr;
                gap: 24px;
            }
            .modal-body { padding: 24px; }
        }
