/* Reset & Base */
html, body {
    height: 100%;
}
body {
    display: flex;
    flex-direction: column;
    background-color: #F9FAFB; /* Updated: light near-white background */
    color: #333333;
    font-family: 'IBM Plex Sans', sans-serif;
    transition: background-color 0.3s ease;
}

/* Navbar */
.navbar-retro {
    background-color: #E4F0FF; /* Updated: soft pastel blue */
    font-weight: 600;
}
.brand-text {
    font-family: 'Share Tech Mono', monospace;
    font-size: 1.4rem;
    letter-spacing: -0.05em;
}
.navbar-retro .nav-link,
.navbar-retro .navbar-brand {
    color: #333333;
}
.navbar-retro .nav-link:hover {
    text-decoration: underline;
}

/* Hero */
.hero-jumbo {
    background-color: #E4F0FF; /* Updated: match navbar */
    border-radius: 8px;
    padding: 3rem 1rem;
    margin-bottom: 2rem;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}
.hero-jumbo .logo-img {
    height: 128px;
}
.hero-jumbo h1 {
    font-family: 'Share Tech Mono', monospace;
    font-size: 2.5rem;
    margin-top: 1rem;
}
.hero-jumbo p {
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
}
.store-links img {
    height: 48px;
    margin: 0 0.5rem;
}

/* Game Card */
.game-card {
    background-color: #FFFFFF; /* Updated: pure white cards */
    border: 1px solid #DDDDDD;
    border-radius: 8px;
    padding: 1.5rem;
    margin-bottom: 2rem;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05); /* Slightly softer, bigger shadow */
}
.game-card .title-bar {
    font-family: 'Share Tech Mono', monospace;
    background-color: #5C9EFF; /* Updated: pastel blue title bars */
    color: #FFFFFF;
    padding: 0.5rem;
    border-radius: 4px 4px 0 0;
    margin: -1.5rem -1.5rem 1rem;
}

/* Buttons */
.btn-retro {
    background-color: #D6E4FF; /* Updated: very pale blue buttons */
    border: 1px solid #BBBBBB;
    font-weight: bold;
}
.btn-retro:hover {
    background-color: #BFD7FF; /* Slightly darker on hover */
}

/* Images */
.feature-image {
    border-radius: 4px;
    border: 1px solid #EEEEEE;
    margin: 1rem 0;
}

/* Footer */
.site-footer {
    background-color: #E4F0FF; /* Updated: match navbar/hero */
    border-top: 1px solid #CCCCCC;
    padding: 1rem 0;
    margin-top: 3rem;
}
.footer-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.footer-icons img {
    width: 32px;
    margin: 0 0.5rem;
    opacity: 0.7;
}
.footer-icons img:hover {
    opacity: 1;
}

/* Responsive Footer */
@media (max-width: 576px) {
    .footer-content {
    flex-direction: column;
    gap: 1rem;
    text-align: center;
    }
}

/* Dark Mode - CRT Style */
.dark-mode {
    background-color: #111111 !important;
    color: #00FF00 !important;
    font-family: 'Share Tech Mono', monospace;
}
.dark-mode .navbar-retro {
    background-color: #111111 !important;
    border-color: #00FF00 !important;
}
.dark-mode .nav-link,
.dark-mode .navbar-brand {
    color: #00FF00 !important;
}
.dark-mode .hero-jumbo {
    background-color: #111111 !important;
    border-color: #00FF00 !important;
}
.dark-mode .site-footer {
    background-color: #111111 !important;
    border-color: #00FF00 !important;
}
.dark-mode .hero-jumbo h1,
.dark-mode .hero-jumbo p,
.dark-mode .footer-icons img {
    filter: brightness(0) invert(1);
}
.dark-mode .game-card {
    background-color: #111111 !important;
    border-color: #00FF00 !important;
}
.dark-mode .game-card .title-bar {
    background-color: #00FF00 !important;
    color: #111111 !important;
}
.dark-mode .btn-retro {
    background-color: #222222 !important;
    color: #00FF00;
    border-color: #00FF00 !important;
}       