/* Links Styling */
a:link, a:visited {
    color: rgb(255, 255, 255);
    background-color: transparent;
    text-decoration: none;
}
a:hover {
    color: rgb(209, 209, 209);
    background-color: transparent;
    text-decoration: underline;
}
a:active {
    color: rgb(236, 236, 236);
    background-color: transparent;
    text-decoration: underline;
}

/* Spacer Elements */
div.spacer {
    font-size: 0;
    height: 300px;
    line-height: 0;
}

div.spacer2 {
    font-size: 0;
    height: 1px;
    line-height: 0;
}

/* Button Styling */
.button { /* main button style, rounded, blur, transition */
    display: inline-block;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.1);
    border: 2px solid rgba(255, 255, 255, 0.2);
    color: #ffffff;
    text-align: center;
    font-size: 24px;
    padding: 20px;
    width: 220px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
    cursor: pointer;
    margin: 5px;
}

.button:hover { /* button hover effect */
    transform: scale(1.05);
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.4);
}

.smallButton{ /* smaller button variant */
    display: inline-block;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #ffffff;
    text-align: center;
    font-size: 10px;
    padding: 10px;
    width: 220px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
    cursor: pointer;
    margin: 3px;
}

.smallButton:hover {
    transform: scale(1.01);
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.4);
}

/* Individual Button Colors */
.buttonyt { background-color: rgba(206, 49, 46, 0.8); } /* youtube */
.buttontwitch { background-color: rgba(189, 148, 250, 0.8) } /* twitch */
.buttonbsky { background-color: rgba(12, 112, 206, 0.8); } /* bluesky */
.buttontwt { background-color: rgba(29, 161, 242, 0.8); } /* twitter */
.buttonmas { background-color: rgba(93, 80, 226, 0.8); } /* mastodon */
.buttondisc { background-color: rgba(85, 97, 245, 0.8); } /* discord */
.buttonAbout { background-color: rgba(58, 174, 239, 0.8); } /* about */
.buttonSm { background-color: rgba(83, 124, 148, 0.8); } /* small button */
.buttonContact { background-color: rgba(132, 141, 146, 0.8); } /* contact */
.buttonWebsite { background-color: rgba(87, 199, 214, 0.8); } /* website */

/* Button Text Span Animation */
.button span { /* text inside button, animates arrow */
    cursor: pointer;
    display: inline-block;
    position: relative;
    transition: 0.5s;
}

.button span:after { /* arrow for button text */
    content: '\00bb';
    position: absolute;
    opacity: 0;
    top: 0;
    right: -20px;
    transition: 0.5s;
}

.button:hover span { padding-right: 25px; }
.button:hover span:after { opacity: 1; right: 0; }

/* Slide-up and fade-in animation keyframes */
@keyframes slideUpFadeIn { /* body fade/slide animation */
    0% {
        opacity: 0;
        transform: translateY(5px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Apply the animation to the body content */
body { /* apply fade/slide animation on load */
    opacity: 0;
    animation: slideUpFadeIn 1.2s cubic-bezier(0.42, 0, 0.58, 1) forwards;
    animation-delay: 0.1s;
}

.icon { /* social icon style */
    width: 25px;
    height: 25px;
    margin-right: 4px;
    vertical-align: middle;
    filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.5));
}

.icon-smallwidth { /* social icon style */
    width: 23px;
    height: 25px;
    margin-right: 4px;
    vertical-align: middle;
    filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.5));
}

.icon-nonUniform { /* for non-square icons */
    width: 30px;
    height: 25px;
    margin-right: 4px;
    vertical-align: middle;
    filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.5));
}

body::before { /* blurred background image */
    content: "";
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image: url('https://i.burnttoasters.com/assets/web-bg.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    filter: blur(10px);
    z-index: -1;
}

