
html,
body {
    height: 100%;
    margin: 0;
    padding: 0;
}

/* Base styles */
body {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-family: 'Courier New', Courier, monospace;
    color: #4fd516;
    background-color: #000000;
    background-image: url('/assets/bgchip.gif');
    background-repeat: repeat;
    font-size: 22px;
}

#navbar-placeholder {
    font-size: 18px;
}

#navbar-placeholder a, 
#navbar-placeholder .button {
    font-family: 'Courier New', Courier, monospace; /* Ensure navbar font */
    color: #FFFF00; /* could we give this font the same rainbow animation as the gif container GPT? */
    font-size: 25px; /* Ensure navbar font size */
    /* Add any other styles specific to navbar links/buttons */
    
}



@keyframes rainbowAnimation {
  0%, 100% { color: red; }
  14% { color: orange; }
  28% { color: yellow; }
  42% { color: green; }
  56% { color: blue; }
  70% { color: indigo; }
  84% { color: violet; }
}

#navbar-placeholder a, 
#navbar-placeholder .button {
  animation: rainbowAnimation 10s linear infinite;
}













/* Common styles for both .container and .nav-container */
.container, .nav-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 95%;
  max-width: 1000px;
  background-color: #000000;
  background-image: radial-gradient(circle, #333333 1px, transparent 1px), radial-gradient(circle, #333333 1px, #000000 1px);
  background-size: 10px 10px;
  background-position: 0 0, 5px 5px;
  border-radius: 10px;
  padding: 15px;
  margin-left: auto; /* Left margin for centering */
  margin-right: auto; /* Right margin for centering */
}

/* Specific margin settings for .container */
.container {
  margin-top: 8px; /* Example: Adjust top margin for .container */
  margin-bottom: 10px; /* Example: Adjust bottom margin for .container */
}

/* Specific margin settings and additional styles for .nav-container */
.nav-container {
  justify-content: center;
  text-align: center;
  margin-top: 40px; /* Adjust top margin specifically for .nav-container */
  margin-bottom: 25px; /* Adjust bottom margin specifically for .nav-container */
}


@media (max-width: 768px) {
    .container,
    .nav-container {
        width: 90%;
        /* Adjust width for smaller screens */
    }

    #ticker-wrap {
        width: 80%;
        /* Adjust ticker width for smaller screens */
    }
  }

@media (min-width: 1024px) {
    .container,
    .nav-container {
        width: 80%;
        /* Adjust width for larger screens */
    }

    #ticker-wrap {
        width: 70%;
        /* Adjust ticker width for larger screens */
    }

    .gif-container,
    .gif-heaven-container {
        width: 70%;
        /* Adjust gif container width for larger screens */
    }
}

.align-left {
    align-self: flex-start;
}

.menu-section,
.image-container {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.menu-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0; /* Ensures there's no additional padding adding space */
  margin-top: 0px;
}


.menu-list li {
  margin: 1px 0; /* Reduced spacing between menu items */
  display: flex;
  align-items: center;
}

a,
.button {
    padding: 10px 15px;
    font-size: 25px;
}

.container img {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

h1 {
    color: #ff00ff;
    text-align: left;
    margin-left: 20px;
}

ul {
    list-style-type: none;
    padding: 0;
    text-align: left;
}

ul li {
    margin: 10px 0;
    display: flex;
    align-items: center;
}

ul li img {
    margin-right: 10px;
}

a {
    color: #FFFF00;
    text-decoration: none;
    font-weight: bold;
}

a:hover {
    text-decoration: underline;
}

.gif-container,
.gif-heaven-container {
    width: 100%;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    margin: 1%;
    background-size: 200% 200%;
    border-radius: 20px;
    padding-top: 20px;

}

/* Specific background for .gif-heaven-container */
.gif-heaven-container {
  background-image: linear-gradient(to top, #e6e9f0 0%, #6dc3e6 100%);
}

/* Specific background for .gif-container if needed for differentiation */
.gif-container {
  /* Example gradient or keep existing settings */
  background-image: linear-gradient(45deg, #ff00ff, #ff0000, #00ff00, #0000ff, #ff00ff);
  animation: trippyBackground 15s ease infinite; /* Example animation */
}




.gif-container img,
.gif-heaven-container img {
    max-width: 100%;
    max-height: 100px;
    height: auto;
    object-fit: contain;
    margin: 10px;
}



@keyframes trippyBackground {
  0% {background-position: 0% 50%;}
  50% {background-position: 100% 50%;}
  100% {background-position: 0% 50%;}
}



.flex-side-by-side {
  flex-wrap: wrap; /* Allow items to wrap on smaller screens */
  display: flex;
  flex-direction: row; /* Ensures items are laid out horizontally */
  justify-content: space-between; /* Spaces items evenly */
  width: 100%; /* Full width of their parent container */
  align-items: flex-start; /* Aligns items to the start of the flex container */
}


.menu-section, .image-container {
  flex: 1; /* Both take up equal space */
  display: flex; /* Make them flex containers as well */
  flex-direction: column; /* Stack their content vertically */
  align-items: center; /* Center-align the content vertically */
}


.menu-list {
display: flex;
flex-direction: column;
align-items: center; /* Center menu items */
padding: 0;
margin-top: 0px; /* Adjust the top margin if needed */
}





















/* Ticker styles */
#ticker-wrap {
    overflow: hidden;
    background-color: #000;
    /* Ticker background color */
    color: #14eb00;
    /* Ticker text color */
    padding: 15px;
    width: 95%;
    /* Match the width of other containers */
    max-width: 1000px;
    /* Ensure it doesn't exceed the max container width */
    margin: 0 auto;
    /* Center it and match the vertical margin of other containers */
    border-radius: 10px;
    /* Optional: if you want rounded corners to match other containers */
    display: flex;
    /* Ensures the container aligns its children centrally */
    align-items: center;
    /* This centers the ticker content vertically */
}

#ticker {
  display: flex;
  white-space: nowrap;
  animation: tickerMove linear infinite;
  /* The animation-duration will be dynamically set by JavaScript, no need to include it here */
}



.ticker-item {
    margin-right: 20px;
    /* Space between ticker items */
        /* Adjust line height as needed */
        font-weight: normal; /* Set font weight to normal */
    line-height: 1.5;
    /* Adjust line height as needed */
}

@keyframes tickerMove {
  from { transform: translateX(0%); }
  to { transform: translateX(-100%); }
}


.image-style {
  width: 450px; /* Default width */
}

@media (max-width: 768px) {
  .container,
  .nav-container {
      width: 90%; /* Keeps previous adjustment for smaller screens */
  }

  .image-style {
    width: 90%; /* Adjust for smaller screens */
  }

  .image-container img {
    width: auto; /* Reduce image width to fit within the container */
    max-width: 100%; /* Ensures image does not overflow its container */
    height: auto; /* Maintain aspect ratio */
    max-height: unset; /* Override any max-height set elsewhere */
    filter: brightness(130%); /* Makes the image slightly brighter */
  }

  .flex-side-by-side {
    flex-direction: column; /* Stacks items vertically */
    align-items: center; /* Centers items horizontally */
  }

  .menu-section, .image-container {
    width: 100%; /* Full width to utilize the available space */
    padding: 10px 0; /* Add some vertical padding for spacing */
  }


  #ticker-wrap {
      width: 93%; /* Increased width for better visibility on mobile */
      padding: 10px; /* Keeps reduced padding for more content space */
  }

  .internet-time, .moon-above-internet-time {
    display: none; /* Hides these elements on screens smaller than 768px */
  }

  @media (max-width: 768px) {
    body .gif-container.gif-container,
    body .gif-heaven-container.gif-heaven-container {
        margin-top: 8px; /* Adjust top margin for smaller screens */
        margin-bottom: 8px; /* Adjust bottom margin for smaller screens */
    }
}


}

@media (min-width: 1024px) {
  .container,

  #ticker-wrap {
      width: 75%; /* Keeps uniform width for large screens for non-gif containers */
      max-width: 960px; /* Optional: Keeps adjusted max-width for finer control */
  }

  .nav-container {
    width: 100%; /* Increased width for the nav-bar on mobile */
    padding: 15px; /* Ensure there's padding to avoid content touching the edges */
}

  .gif-container,
  .gif-heaven-container {
      width: 78%; /* Slightly increased width for gif containers on desktop */
      /* Adjust max-width as necessary to maintain layout integrity */
  }
}














/* Center the cat image in the middle of the page */
.cat-container {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none; /* Initially hidden */
  }


  .internet-time {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 1000; /* Ensure it's above most content */
    border: none; /* This line is technically not necessary since the border is being removed inline */
  }
  
  .moon-above-internet-time {
    position: fixed;
    bottom: 110px; /* Adjust this value so the moon appears just above the Internet time. The exact value depends on the height of your Internet time iframe. */
    right: 50px; /* Right align with the Internet time. Adjust as needed. */
    z-index: 1010; /* Ensures it's above the Internet time */
  }





  @keyframes smoothPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.1); }
  }
  
  .smooth-pulse {
    display: inline-block;
    text-align: center; /* Text inside .smooth-pulse is centered by default */
    font-size: 20px;
    font-weight: bold;
    color: red;
    /* Apply the animation */
    animation: smoothPulse 2s infinite;
    /* Make the animation smooth */
    animation-timing-function: ease-in-out;
  }



  .footer {
    width: 100%; /* Ensures it spans the full width of the page */
    background-color: black; /* Sets the background color */
    color: white; /* Sets the text color */
    text-align: center; /* Centers the text inside the footer */
    padding: 10px 0; /* Adds some padding for spacing */
    box-sizing: border-box; /* Ensures padding doesn't affect the total width */
  }