@import url('https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    background: #000;
    color: #fff;
    font-family: 'Press Start 2P', cursive;
    text-align: center; /* Centralizes text alignment for the body */
}

.main {
    z-index: 1; /* Ensures .main is on top for clickable items */
    width: 100%; /* Use full viewport width */
    max-width: 600px; /* Maximum width to avoid too wide elements */
    line-height: 1.5;
    padding: 15px;
    font-size: 10px; /* Consistent font size for main content */
}

.top {
    display: flex;
    justify-content: center; /* Ensures items are centered */
    align-items: center;
    gap: 2px; /* Minimal gap */
    font-size: 10px; /* Smaller font size for desktop */
    color: #fff;
}

.top a {
    padding: 2px 4px; /* Minimal padding to fit text */
    border-radius: 100%;
    cursor: pointer;
    transition: transform 0.2s, color 0.2s; /* Smooth transition for transform and color */
    color: #fff;
    text-decoration: none; /* Removes underline */
    white-space: nowrap; /* Prevents text wrapping */
}

.top a:hover {
    transform: scale(1.3); /* Pop-out effect using scale */
    color: #ccc; /* Color change on hover */
}

.socials a, .socials i {
    display: inline-block; /* Ensures icons are properly aligned */
    margin-right: 5px; /* Reduces space between icons */
    color: #fff; /* Icon color */
    font-size: 24px; /* Adjust size to make them more prominent */
    cursor: pointer; /* Shows a pointer on hover to indicate clickability */
    text-decoration: none; /* Removes underline from links */
}

.socials a:last-child {
    margin-right: 0; /* Removes margin for the last icon */
}

.socials a:hover {
    color: #ccc; /* Changes color on hover for visual feedback */
    transform: scale(1.1); /* Subtle pop-out effect for social icons */
}

/* Prevent any overlapping elements from blocking clicks */
.main, .socials, .socials a {
    pointer-events: auto; /* Ensures mouse events are registered */
}

.small {
    color: #e8e8e899;
    font-size: 0.8rem; /* Adjusted smaller subtext */
}

.divider {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 10px 0;
    font-size: 18px; /* Visible but not too large */
}

.line {
    height: 1px;
    width: 100%;
    background-color: #fff;
}

.after {
    display: none;
}

.before {
    text-align: center;
    color: #fff;
    user-select: none;
    font-size: 16px; /* Slightly larger introductory text */
}

.cat-image {
    display: block;
    margin: 20px auto;
    max-width: 100%; /* Responsive settings */
    height: auto;
}

@media (max-width: 600px) {
    .main, .top, .top a, .before {
        font-size: 7px; /* Smaller font size for all main elements on mobile */
    }

    .top a {
        padding: 1px 3px; /* Even less padding for small screen */
    }

    .top a:hover {
        font-size: 8px; /* Slightly larger on hover */
        transform: scale(1.4); /* More pronounced pop-out effect for smaller screens */
    }

    .before {
        font-size: 10px; /* Smaller but readable introductory text */
    }

    .divider {
        font-size: 14px; /* Smaller divider size on mobile */
    }
}

.navbar {
    position: fixed; 
    top: 0;
    left: 0;
    right: 0;
    background-color: #222; 
    color: #fff;
    padding: 10px 0;
    box-shadow: 0 2px 5px rgba(0,0,0,0.5);
    z-index: 1000;
    width: 100%;
}
