← back to Model Arena

data/artifacts/02a362bd0b06/hermes3-8b.html

161 lines

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Animated Dragon Realm</title>
    <style>
        body {
            background-color: #000;
            margin: 0;
            overflow: hidden;
        }
        
        #scene {
            width: 100vw;
            height: 100vh;
            perspective: 800px;
        }
        
        .mountain {
            position: absolute;
            top: 50%;
            left: 0;
            right: 0;
            transform: translateY(-50%) translateZ(600px);
            background-color: #9e7a48;
        }
        
        .peak1, .peak2 {
            position: absolute;
            top: -100vh;
            width: 10vw;
            height: 20vh;
            background: linear-gradient(to bottom, rgba(158,122,72,1), rgba(0,0,0,0));
        }
        
        .peak1 { right: 45%; }
        .peak2 { left: 45%; }
        
        #dragon {
            position: absolute;
            top: 50%;
            transform: translateY(-50%) translateZ(400px);
            cursor: pointer;
        }
        
        .wing {
            position: absolute;
            top: -100vh;
            width: 18vw;
            height: 40vh;
            background-color: #fff;
            box-shadow: 0 30px 60px rgba(255,255,255,.5);
        }
        
        .body {
            position: absolute;
            bottom: 10vh;
            left: 50%;
            width: 20vw;
            height: 40vh;
            background-color: #9e7a48;
            transform: translateX(-50%);
            border-radius: 50%;
        }
        
        .tail {
            position: absolute;
            bottom: 5vh;
            right: -15vw;
            width: 30vw;
            height: 10vh;
            background-color: #9e7a48;
            transform: rotate(145deg);
        }
        
        .fire {
            display: none;
            position: absolute;
            top: 50%;
            left: 50%;
            width: 0;
            height: 0;
            border-left: 20px solid transparent;
            border-right: 20px solid transparent;
            border-bottom: 40px solid #ff5f1e;
            transform: translateX(-50%) translateY(-50%);
        }
        
        .snowflake {
            position: absolute;
            top: 0;
            width: 10vw;
            height: 15vh;
            background-color: #fff;
            border-radius: 50%;
            box-shadow: 0 30px 60px rgba(255,255,255,.2);
        }
        
        .snowflake:nth-child(even) {
            transform: translateX(-50%) translateY(-200vh);
        }
        
        .snowflake:nth-child(odd) {
            transform: translateX(50%) translateY(-200vh);
        }
        
        #lightning {
            display: none;
            position: absolute;
            top: 50%;
            left: 50%;
            width: 0;
            height: 0;
            border-left: 40px solid transparent;
            border-right: 40px solid transparent;
            border-bottom: 80px solid #ffd700;
            transform: translateX(-50%) translateY(-50%);
        }
        
    </style>
</head>
<body>
    <div id="scene">
        <div class="mountain peak1"></div>
        <div class="mountain peak2"></div>
        <div id="dragon">
            <div class="wing wing-left"></div>
            <div class="wing wing-right"></div>
            <div class="body"></div>
            <div class="tail"></div>
            <div class="fire"></div>
        </div>
        <?php for ($i = 0; $i < 20; $i++): ?>
            <div class="snowflake snowflake-{{$i}}'></div>
        <?php endfor; ?>
    </div>
    
    <script>
        document.addEventListener('DOMContentLoaded', function() {
            const dragon = document.getElementById('dragon');
            let fireTimer = null;
            
            function toggleFire() {
                const fire = document.querySelector('.fire');
                fire.style.display = fire.style.display === 'none' ? 'block' : 'none';
                
                if (fireTimer) clearTimeout(fireTimer);
                else fireTimer = setTimeout(function() {
                    toggleFire();
                }, 1000);
            }
            
            dragon.addEventListener('click', function() {
                document.querySelector('.fire').style.display = 'block';
                toggleFire();
            });
        });
    </script>
</body>
</html>