/* 90s Style Base */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "Comic Sans MS", "Times New Roman", Arial, sans-serif;
  line-height: 1.6;
  background-color: #000000;
  color: #ffffff;
  background-image: url("https://web.archive.org/web/20091027005816/http://geocities.com/Area51/Corridor/5177/stars.gif");
  cursor: url("https://web.archive.org/web/20091020152230/http://hk.geocities.com/alien_cat_2000/images/cursor.cur"),
    auto;
}

.container {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #000080;
  border: 10px ridge #c0c0c0;
}

/* Header and logo */
header {
  width: 100%;
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.logo {
  width: 80%;
  max-width: 600px;
  height: auto;
  margin: 1rem 0;
  border: 5px outset #ff00ff;
}

.welcome-text {
  width: 100%;
  background-color: #000000;
  color: #00ff00;
  font-weight: bold;
  padding: 5px;
  border: 2px inset #c0c0c0;
}

/* Blinking text */
.blink-wrapper {
  margin: 1rem 0;
}

.blink-text {
  font-size: 2rem;
  color: #ff0000;
  text-shadow: 2px 2px #ffff00;
  animation: blink 1s linear infinite;
}

@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* Glowing text */
.glow-text {
  color: #ffffff;
  text-shadow: 0 0 5px #00ffff, 0 0 10px #00ffff, 0 0 15px #00ffff;
  font-size: 1.2rem;
  letter-spacing: 2px;
}

/* 3D Buttons */
.button-cell {
  padding: 8px;
}

.button-3d {
  background: linear-gradient(to bottom, #c0c0c0, #808080);
  border-top: 2px solid #ffffff;
  border-left: 2px solid #ffffff;
  border-right: 2px solid #404040;
  border-bottom: 2px solid #404040;
  display: inline-block;
  width: 100%;
  text-align: center;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}

.button-3d:active {
  border-top: 2px solid #404040;
  border-left: 2px solid #404040;
  border-right: 2px solid #ffffff;
  border-bottom: 2px solid #ffffff;
}

.button-3d a {
  display: block;
  padding: 5px;
  font-weight: bold;
  text-transform: uppercase;
  color: #000080;
  text-decoration: none;
}

.button-3d:hover {
  background: linear-gradient(to bottom, #d0d0d0, #a0a0a0);
}

/* Table styles */
.menu-container {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}

.styled-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0 auto;
  background-color: #000040;
  border: 3px outset #c0c0c0;
}

.styled-table,
.styled-table td,
.styled-table th {
  border: 2px outset #c0c0c0;
}

.styled-table td,
.styled-table th {
  padding: 0.5rem;
  text-align: center;
}

.styled-table th {
  background: linear-gradient(to bottom, #800080, #400040);
  color: #ffffff;
  font-weight: bold;
  text-transform: uppercase;
}

/* Counter */
.counter-section {
  margin: 1.5rem 0;
  text-align: center;
}

.counter {
  display: inline-block;
  background-color: #000000;
  border: 3px inset #c0c0c0;
  padding: 10px;
  color: #00ff00;
}

.counter p {
  margin-bottom: 5px;
  font-weight: bold;
}

.counter-display {
  font-family: "Courier New", monospace;
  background-color: #000000;
  color: #ff0000;
  padding: 5px;
  letter-spacing: 2px;
  font-weight: bold;
  border: 1px solid #404040;
}

/* Construction section */
.construction {
  margin: 1.5rem 0;
  text-align: center;
}

.construction-gif {
  max-width: 300px;
  margin-bottom: 10px;
}

.construction p {
  color: #ffff00;
  font-weight: bold;
}

/* Web ring */
.webring {
  margin: 1.5rem 0;
  text-align: center;
  background-color: #000000;
  padding: 10px;
  border: 2px outset #c0c0c0;
}

.webring a {
  color: #00ffff;
  text-decoration: underline;
  font-weight: bold;
}

.webring a:hover {
  color: #ff00ff;
}

/* Best viewed section */
.best-viewed {
  margin: 1rem 0;
  text-align: center;
  font-size: 0.8rem;
  color: #ffff00;
}

/* Footer */
footer {
  margin-top: 2rem;
  text-align: center;
  border-top: 2px groove #c0c0c0;
  padding-top: 1rem;
  width: 100%;
  font-size: 0.8rem;
}

footer a {
  color: #00ffff;
}

footer a:hover {
  color: #ff00ff;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .container {
    border-width: 5px;
  }

  .logo {
    width: 95%;
  }

  .styled-table {
    width: 95%;
  }

  .blink-text {
    font-size: 1.5rem;
  }
}

@media (max-width: 480px) {
  .container {
    padding: 0.5rem;
  }

  .styled-table td,
  .styled-table th {
    padding: 0.3rem;
    font-size: 0.8rem;
  }

  .social-links td,
  .tengoku-links td {
    font-size: 0.7rem;
  }

  .button-3d a {
    padding: 3px;
  }

  .blink-text {
    font-size: 1.2rem;
  }
}

