:root {
    --bubble-background: #f1f1f1;

    /* win95 bevel colors, reused across .come-play, .bubble, .mood, .banner-container */
    --win95-highlight: #FFFFFF;
    --win95-shadow: #808080;
    --win95-inset-highlight: #DFDFDF;
    --win95-inset-shadow: #404040;

    /* pixel font, reused across most text elements */
    --font-pixel: "Dogica";

    /* musicplayer window theme */
    --titlebar-gradient: linear-gradient(90deg, #6a1535, #b23965, #f9a5b9);
    --dialog-blue: #6a1535;
    --dialog-accent: white;
    --titlebar-color: white;
    --player-image: url(https://loveberry.nekoweb.org/assets/images/mp/yuzuha.png);
    --surface: #c0c0c0;
    --button-highlight: #ffffff;
    --button-face: #dfdfdf;
    --button-shadow: #808080;
    --light-button-shadow: #a9a9a9;
    --window-frame: #0a0a0a;
    --border-field: inset -1px -1px var(--button-highlight),
        inset 1px 1px var(--button-shadow), inset -2px -2px var(--button-face),
        inset 2px 2px var(--window-frame);

    /* font */
    --font-pixel: "Dogica";
}

* {
    box-sizing: border-box;
}

a {
    color: #357deb;
    font-weight: bold;
}

.flex {
    display: flex;
}

.flex-row {
    flex-direction: row;
}

.greyed {
    color: #a3a3a3;
}

.center {
    justify-content: center;
    align-items: center;
}

.main-img {
    display: flex;
    justify-content: center;
    width: 400px;
    max-width: 100%;
}

.sub-img {
    width: 200px;
    max-width: 100%;
}

.header {
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-top: 40px;
    width: 100%;
}

.box {
    display: flex;
    justify-content: center;
    width: 100%;
}

.main-content {
    margin-top: 50px;
    padding: 20px;
    width: 600px;
    max-width: 100%;
    border-top: 2px solid var(--win95-highlight);
    border-left: 2px solid var(--win95-highlight);
    border-right: 2px solid var(--win95-shadow);
    border-bottom: 2px solid var(--win95-shadow);
    background-color: var(--bubble-background);
}

body {
    background-color: #e4e4e4;
    font-family: var(--font-pixel);
    line-height: 2;
}

p, li {
    font-size: 10px;
}

@font-face {
    font-family: "Dogica";
    src: url(../fonts/dogica.ttf);
    font-weight: normal;
    font-style: normal;
}

/* ===== Mobile ===== */

@media (max-width: 768px) {
    .main-content {
        margin-top: 30px;
        padding: 15px;
    }

    .header {
        margin-top: 24px;
    }

    .main-img {
        width: 300px;
    }

    .sub-img {
        width: 150px;
    }

    p, li {
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    body {
        line-height: 1.6;
    }

    .main-content {
        margin-top: 20px;
        padding: 12px;
        border-width: 1px;
    }

    .header {
        margin-top: 16px;
    }

    .main-img {
        width: 100%;
        max-width: 260px;
    }

    .sub-img {
        width: 100%;
        max-width: 140px;
    }

    .box {
        flex-wrap: wrap;
    }

    p, li {
        font-size: 13px;
    }
    .contact-links {
        margin-top: 50px;
        flex-direction: column;
        align-items: center;
        gap: 0px;
    }

    .contact-links .separator {
        display: none;
    }
}