body, html {
    margin: 0;
    padding: 0;
    height: 100%;
}

#welcome-animation {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: green;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    opacity: 1;
    transition: opacity 1s ease-in-out;
}

#welcome-animation.hidden {
    opacity: 0;
    pointer-events: none;
}

#welcome-animation img {
    max-width: 200px; /* Medium size logo */
    margin-bottom: 20px;
}

#welcome-animation h1 {
    color: lightgreen;
    font-size: 2em;
    text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}

header {
    background-color: green;
}

header a, header span {
    color: green !important;
    text-shadow: none !important;
}

.emoji {
    display: inline-block;
    animation: wobble 1.5s infinite;
}

@keyframes wobble {
    0%, 100% {
        transform: translateX(0%);
        transform-origin: 50% 50%;
    }
    15% {
        transform: translateX(-8px) rotate(-6deg);
    }
    30% {
        transform: translateX(6px) rotate(6deg);
    }
    45% {
        transform: translateX(-6px) rotate(-3.6deg);
    }
    60% {
        transform: translateX(4px) rotate(2.4deg);
    }
    75% {
        transform: translateX(-2px) rotate(-1.2deg);
    }
}
