/* Font-face declarations */
@font-face {
    font-family: 'western';
    src: url('fonts/Pixel-Western.ttf') format('truetype');
}

@font-face {
    font-family: 'win00';
    src: url('fonts/Windows_Command_Prompt.ttf') format('truetype');
}

@font-face {
    font-family: 'formal';
    src: url('fonts/pixel-arial-14.otf') format('opentype');
}

@font-face {
    font-family: 'dosvga';
    src: url('fonts/Perfect DOS VGA 437.ttf') format('truetype');
}

@font-face {
    font-family: 'uptt';
    src: url('upheavtt.ttf') format('truetype');
}

@font-face {
    font-family: 'm42';
    src: url('fonts/m42.TTF') format('truetype');
}

body {
    font-family: 'Windows', monospace;
    margin: 0;
    padding: 0;
    background: linear-gradient(to bottom, black, #0075AB);
    image-rendering: pixelated;
}

.image-container {
    text-align: center;
    margin-top: 20px;
}

.image-container img {
    max-width: 100%;
    image-rendering: pixelated; /* Ensure the image is pixelated */
}

.header-top {
    background: url('images/header.png') center center / cover;
    padding: 80px 20px; /* Adjust padding to accommodate text height */
    position: relative;
    image-rendering: pixelated; /* Ensure the image is pixelated */
    transform: scaleY(-1); /* Flip the image vertically */
}

.header-top .header-text {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #000000;
    font-family: 'formal', Arial, sans-serif; /* Use Pixel Western for header text */
    font-weight: bold;
}

.pixel-arial {
    font-family: 'formal', Arial, sans-serif;
}

.pixel-western {
    font-family: 'western', Arial, sans-serif;
}

.win00 {
    font-family: 'win00', Arial, sans-serif;
}

.dosvga {
    font-family: 'dosvga', Arial, sans-serif;
}

.uptt {
    font-family: 'uptt', Arial, sans-serif;
}

h1 {
    margin: 0;
    font-size: 24px;
}

nav.tabs {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin-top: -1px;
}

nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
}

nav li {
    cursor: pointer;
    padding: 10px 15px;
    margin-left: 0;
    border-radius: 0;
    background-color: #181d2f;
    color: #ffffff;
    background-image: linear-gradient(to bottom, #000000 0%, #181d2f 66%, #004f74 100%);
    box-shadow: 0 2px 4px -2px #333;
    border: 1px solid #30445d;
    position: relative;
    transition: background-color 0.3s, box-shadow 0.3s;
    text-shadow: 0px -1.5px #202840;
    font-family: 'm42', Arial, sans-serif;
    z-index: 1;
}

nav li a {
    color: inherit;
    text-decoration: none;
}

nav li.active {
    background-color: #5c002c;
    background-image: linear-gradient(to bottom, #3a002d 0%, #760039 66%, #d6220d 100%);
}

nav li.active::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #c9301f; /* Match the active tab background color */
    transition: border-top-color 0s; /* Add transition for smooth color change */
}

nav li.active:hover::after {
    border-top-color: #ffaa00; /* Lighten the triangle color on hover */
}

nav li::before {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: calc(100% - 4px);
    height: 50%;
    background: linear-gradient(#ffaa00, #e11142);
    border-radius: 0; /* Make the curve blocky */
    z-index: -1; /* Ensure the gradient is behind the text */
}

nav li:hover {
    background: linear-gradient(#ffaa00, #e11142, #ffaa00);
}

.container {
    width: 75%;
    max-width: 100%;
    background-color: #000000; /* Light background for container */
    color: #ffffff; /* Black text */
    margin: 0 auto;
    border-radius: 0; /* Make the curve blocky */
}

.fc {
    width: 75%;
    max-width: 100%;
    background-color: #000000;
    color: #000000;
    margin: 50px auto;
    box-sizing: border-box;
    border-radius: 0; /* Make the curve blocky */
    border: 4px solid #ccc;
}

@media (max-width: 1024px) {
    .container {
        width: 75%;
    }
    .fc {
        width: 75%;
    }
}

@media (max-width: 768px) {
    .container {
        width: 100%;
    }
    .fc {
        width: 100%;
    }
}

.tab-content {
    display: none;
    padding: 20px;
    border-top: none;
    font-family: 'dosvga', Arial, sans-serif;
}

.tab-content.active {
    display: block;
}

.bc {
    width: 100%;
    background-color: #181d2f;
    color: #ffffff;
    padding: 20px;
    box-sizing: border-box;
    margin-top: 0;
    border-radius: 0; /* Make the curve blocky */
    background-image: none;
}

.button {
    border-radius: 0;
}

.album-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 20px;
}

.album-item {
    position: relative;
    cursor: pointer;
}

.album-item img {
    width: 100%;
    height: auto;
    image-rendering: pixelated;
}

.album-title {
    position: absolute;
    bottom: 10px;
    left: 10px;
    color: white;
    font-family: 'formal', Arial, sans-serif;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 5px;
}

.popup {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: linear-gradient(to bottom, white, lightseagreen, white); /* Gradient background */
    opacity: 0.9; /* Slightly translucent */
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    border: 4px solid gray; /* Gray border */
    z-index: 1000;
    font-family: 'formal', Arial, sans-serif;
    width: 80%;
    max-width: 500px;
    text-align: center;
    color: black; /* Black text */
}

.popup.active {
    display: block;
}

.popup .close-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
}

.popup img {
    max-width: 100%;
    height: auto;
    margin-bottom: 10px;
}

.popup .album-title {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 10px;
}

.popup .album-year {
    font-size: 18px;
    margin-bottom: 20px;
}

.popup .icons {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 20px;
}

.popup .icons img {
    width: 32px;
    height: 32px;
}

.popup .section-title {
    font-size: 20px;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 10px;
}

.popup .section-content {
    text-align: left;
}
