body {
    font-family: 'Courier New', Courier, monospace;
    background-color: #121212;
    color: #e0e0e0;
    margin: 0;
    padding: 0;
    /* overflow: hidden;  Remove this to allow scrolling */
}

.star-background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: url('starry.gif');
    background-repeat: repeat;
    opacity: 0.5;
    z-index: -1;
}

nav {
    position: fixed;
    top: 0;
    right: -250px; /* Start completely off-screen */
    width: 250px;
    height: calc(100vh - 5%); /* Set height to 100vh minus 5% */
    transition: right 0.3s ease; /* Smooth transition */
    z-index: 1000;
    padding: 20px;
    background: rgba(50, 50, 50, 0.9);
}


nav.visible {
    right: 0; /* Slide in when visible */
}

header {
    background: rgba(30, 30, 30, 0.95); /* Slightly more opaque */
    color: #e0e0e0;
    padding: 10px 20px; /* Reduced padding for a slimmer header */
    text-align: center;
    position: relative;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5); /* Added shadow for depth */
    border-bottom: 2px solid rgba(33, 235, 255, 0.5); /* Light bottom border for accent */
}

h1 {
    font-size: 2em; /* Slightly smaller title font */
    margin: 0; /* Remove default margin */
    letter-spacing: 1px; /* Space out letters slightly */
}

.menu-button {
    position: absolute; /* Position it absolutely within the header */
    top: 15px; /* Adjust top spacing */
    right: 100px; /* Align to the right */
    cursor: pointer;
    font-size: 24px; /* Increase size for better visibility */
    color: #21ebff; /* Match the color scheme */
    transition: color 0.3s; /* Smooth transition for color change */
}

.menu-button:hover {
    color: #ff21eb; /* Change color on hover for effect */
}

.menu {
    display: none; /* Initially hidden */
    position: absolute; /* Position it relative to the header */
    top: 100%; /* Align below the header */
    right: 100%; /* Align to the right edge */
    background: rgba(50, 50, 50, 0.9);
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    z-index: 1000;
    transition: opacity 0.3s ease; /* Smooth appearance */
}

.menu a {
    color: #21ebff;
    padding: 12px 20px; /* Add padding */
    text-decoration: none;
    display: block; /* Make links block elements */
    transition: background 0.3s, color 0.3s; /* Smooth transitions */
}

.menu a:hover {
    background: rgba(33, 235, 255, 0.2); /* Add hover effect */
    color: #ff21eb; /* Change text color on hover */
}

main {
    padding: 20px;
    display: flex;
    flex-direction: column; /* Ensure vertical alignment */
    align-items: center; /* Center content */
    overflow-y: auto; /* Allow vertical scrolling */
    height: calc(100vh - 120px); /* Adjust height to account for header and footer */
}

section {
    max-width: 600px; /* Limit section width */
    margin: 20px 0;
    padding: 15px;
    background: rgba(50, 50, 50, 0.9);
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.product-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 20px; /* Space between products */
    max-width: 800px; /* Max width for the grid */
    width: 100%; /* Full width */
    padding-bottom: 20px; /* Prevent cutoff of last items */
}

.product {
    background: rgba(0, 0, 0, 0.7);
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    transition: transform 0.3s, box-shadow 0.3s;
}

.product:hover {
    transform: translateY(-5px);
    box-shadow: 0 0 20px blue, 0 0 30px pink; /* Glowing effect */
}

.product img {
    width: 100%;
    border-radius: 5px;
    transition: transform 0.3s;
}

.product img:hover {
    transform: scale(1.05);
}

footer {
    background: rgba(0, 0, 0, 0.9);
    color: #e0e0e0;
    text-align: center;
    padding: 10px;
}

.toggle-container {
    display: flex;
    align-items: center;
    cursor: pointer;
    margin-bottom: 20px; /* Space below the toggle */
}

.toggle-container input {
    display: none; /* Hide the default checkbox */
}

.toggle-slider {
    position: relative;
    width: 60px; /* Width of the slider */
    height: 30px; /* Height of the slider */
    background-color: #ccc; /* Default background color */
    border-radius: 15px; /* Rounded corners */
    transition: background-color 0.3s, box-shadow 0.3s; /* Background color and shadow transition */
    margin-right: 10px; /* Space between the slider and label */
}

.toggle-slider::before {
    content: "";
    position: absolute;
    width: 28px; /* Width of the circle */
    height: 28px; /* Height of the circle */
    left: 1px; /* Position the circle inside the slider */
    bottom: 1px; /* Position the circle inside the slider */
    background-color: white; /* Circle color */
    border-radius: 50%; /* Round circle */
    transition: transform 0.3s; /* Circle movement transition */
}

input:checked + .toggle-slider {
    background-color: #21ebff; /* Background color when checked */
    animation: colorGlow 1s infinite alternate; /* Add color change animation */
    box-shadow: 0 0 20px #21ebff, 0 0 30px #21ebff; /* Glowing effect */
}

input:checked + .toggle-slider::before {
    transform: translateX(30px); /* Move circle to the right */
}

/* Color and glow animation */
@keyframes colorGlow {
    0% {
        background-color: #21ebff; /* Start color */
        box-shadow: 0 0 10px #21ebff, 0 0 20px #21ebff;
    }
    100% {
        background-color: #ff21eb; /* End color */
        box-shadow: 0 0 20px #ff21eb, 0 0 30px #ff21eb; /* Change glow color */
    }
}

.hidden {
    right: -250px; /* Hide off-screen */
}

/* Styles for the cart section */
#cart {
    position: fixed;
    top: 0;
    right: -300px; /* Initially hidden, off-screen */
    width: 250px;
    height: calc(100vh - 5%); /* Match the height of the viewport minus 5% */
    transition: right 0.3s ease; /* Smooth transition */
    z-index: 1000;
    padding: 20px;
    background: black; /* Solid black background */
}

#cart.visible {
    right: 0; /* Show cart when visible */
}

.hidden {
    right: -300px; /* Hide off-screen */
}


#close-button {
    background: rgba(50, 50, 50, 0.9);
    color: #fff;
    border: none;
    border-radius: 5px;
    padding: 10px;
    cursor: pointer;
    margin-bottom: 10px; /* Space below the button */
}
/* Glowing border effect for cart */
#cart::before {
    content: '';
    position: absolute;
    left: 0; /* Align to the left */
    top: 0; /* Align to the top */
    width: 100%; /* Match the width of the cart */
    height: 100%; /* Match the height of the cart */
    border-radius: 8px; /* Match the cart corners */
    background: linear-gradient(45deg, #e6fb04, #ff6600, #00ff66, #00ffff, #ff00ff, #ff0099, #6e0dd0, #ff3300, #099fff);
    background-size: 400%; /* Set background size for animation */
    z-index: -2; /* Ensure it's behind the cart */
    animation: animate 20s linear infinite; /* Animation for glowing effect */
    filter: blur(15px); /* Blur to create a glow */
}

/* Black box overlay for cart */
#cart::after {
    content: '';
    position: absolute;
    left: 0; /* Align to the left */
    top: 0; /* Align to the top */
    width: 100%; /* Match the width of the cart */
    height: 100%; /* Match the height of the cart */
    background: rgba(0, 0, 0, 0.8); /* Solid black background with slight transparency */
    z-index: -1; /* Ensure it's above the gradient but below the content */
}

/* Cart items styles */
#cart-items {
    list-style: none;
    padding: 0;
    margin: 20px 0; /* Space around items */
    color: #e0e0e0; /* Ensure text is visible */
    overflow-y: auto; /* Allow scrolling within the cart if needed */
    flex-grow: 1; /* Allow items to grow and take available space */
}

#cart-items li {
    display: flex;
    align-items: center;
    margin: 10px 0;
}

#cart-items img {
    width: 50px; /* Adjust size as necessary */
    height: auto;
    margin-right: 10px;
}

#continue-checkout-button {
    margin-top: 300px; /* Push it to the bottom */
    width: 100%; /* Full width */
    padding: 10px; /* Button padding */
    background-color: #21ebff; /* Button color */
    color: #fff; /* Text color */
    border: none; /* Remove border */
    border-radius: 5px; /* Rounded corners */
    cursor: pointer; /* Pointer cursor */
    transition: background-color 0.3s; /* Smooth color transition */
}

#continue-checkout-button:hover {
    background-color: #ff21eb; /* Change color on hover */
}

.shop-disclaimer {
    background: rgba(33, 235, 255, 0.15);
    color: #ff21eb;
    border-left: 5px solid #21ebff;
    padding: 10px 20px;
    margin-bottom: 20px;
    border-radius: 6px;
    font-weight: bold;
    font-size: 1.1em;
    box-shadow: 0 0 10px #21ebff44;
}