/* =========================================================
   Global Reset / Box Model
   ========================================================= */
*, *::before, *::after {
  box-sizing: border-box;
}

/* =========================================================
   Base Styles (Shared)
   ========================================================= */
body {
  font-size: 16px;
  text-align: center;
  padding-top: 40px;
}

.container {
  max-width: 600px;
  width: 90%;
  margin: auto;
  padding: 20px;
}

#title {
  font-size: 36px;
}

#answer {
  font-size: 48px;
  margin: 20px 0;
}

#countdown {
  font-size: 20px;
}

#info,
#counter {
  margin-top: 20px;
  font-size: 14px;
}

iframe {
  margin-top: 20px;
  max-width: 100%;
}

/* =========================================================
   Vanilla Mode (boring 1999 default web)
   ========================================================= */
body.vanilla {
  background-color: #ffffff;
  color: #000000;
  font-family: "Times New Roman", Times, serif;
}

body.vanilla .container {
  border: 1px solid #000;
  background: transparent;
}

body.vanilla h1,
body.vanilla #countdown,
body.vanilla #answer,
body.vanilla #info,
body.vanilla #counter {
  color: #000000;
}

body.vanilla iframe {
  border: 1px solid #000;
}

body.vanilla #info a,
body.vanilla #navLinks a {
  color: #0000ee; /* classic blue link */
}

body.vanilla #counter span {
  font-family: "Courier New", monospace;
  padding: 2px 6px;
  border: 1px solid #000;
}

/* =========================================================
   Retro Mode (GeoCities chaos)
   ========================================================= */
body.retro {
  background-color: #000033;
  color: #00ff00;
  font-family: "Comic Sans MS", "Courier New", monospace;
}

body.retro .container {
  border: 5px ridge #ff00ff;
  background: #000;
}

body.retro h1 {
  font-size: 36px;
  color: #ff00ff;
}

body.retro #countdown {
  font-size: 20px;
  color: #00ffff;
}

body.retro #answer {
  color: hotpink;
}

body.retro #info,
body.retro #counter {
  color: #00ff00;
}

body.retro #info a,
body.retro #navLinks a {
  color: #00ffff;
}

body.retro iframe {
  border: 4px groove hotpink;
}

body.retro #counter span {
  font-family: "Courier New", monospace;
  background: #000;
  color: #00ff00;
  padding: 2px 6px;
  border: 1px solid #00ff00;
}

/* =========================================================
   Blink Animation (Retro + Special Day Only)
   ========================================================= */
body.retro .blink {
  animation: blink 1s steps(2, start) infinite;
}

@keyframes blink {
  to {
    visibility: hidden;
  }
}

/* =========================================================
   Style Toggle Button
   ========================================================= */
#styleToggle {
  position: fixed;
  top: 10px;
  right: 10px;
  font-size: 12px;
  padding: 6px 10px;
  cursor: pointer;
  z-index: 1000;
  max-width: 90%;
  white-space: nowrap;
}

body.vanilla #styleToggle {
  background: #f0f0f0;
  color: #000;
  border: 1px solid #000;
}

body.retro #styleToggle {
  background: #000;
  color: #00ff00;
  border: 1px solid #00ff00;
}

/* =========================================================
   Navigation Links
   ========================================================= */
#navLinks {
  margin-top: 20px;
  font-size: 14px;
}

/* =========================================================
   Mobile Adjustments
   ========================================================= */
@media only screen and (max-width: 600px) {
  body {
    font-size: 18px;
    padding-top: 20px;
  }

  #title {
    font-size: 28px;
  }

  #answer {
    font-size: 36px;
  }

  #countdown {
    font-size: 18px;
  }

  #styleToggle {
    font-size: 12px;
    padding: 6px 10px;
  }

  #info,
  #counter {
    font-size: 16px;
  }

  iframe {
    width: 100%;
    max-width: 420px;
    height: auto;
  }

  body.retro marquee {
    font-size: 14px;
  }
}
