body {
    background: linear-gradient(45deg, #ff0000, #ff7300, #ffeb00, #47ff00, #00ffe5, #2b65ff, #8000ff, #ff0080);
    background-size: 400% 400%;
    animation: bg-animation 10s infinite alternate;
    text-align: center;
}

@keyframes bg-animation {
    0% { background-position: 0% 50%; }
    100% { background-position: 100% 50%; }
}

iframe {
    border: 10px dashed #ffffff;
    border-radius: 20px;
    box-shadow: 0 0 20px 10px rgba(255, 255, 255, 0.8);
    transform: rotate(5deg);
    transition: transform 0.3s ease-in-out;
}

iframe:hover {
    transform: rotate(-5deg) scale(1.1);
}

@keyframes rainbow-text {
    0% { color: red; }
    14% { color: orange; }
    28% { color: yellow; }
    42% { color: green; }
    57% { color: blue; }
    71% { color: indigo; }
    85% { color: violet; }
    100% { color: red; }
}

h1 {
    font-size: 3rem;
    font-family: 'Comic Sans MS', cursive, sans-serif;
    animation: rainbow-text 3s infinite alternate;
    text-shadow: 3px 3px 10px rgba(0, 0, 0, 0.3);
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.party-icon {
    display: inline-block;
    font-size: 2rem;
    margin: 10px;
    animation: spin 2s linear infinite;
}

.party-icon:hover {
    animation-duration: 0.5s;
}
