/* Dave's TOTALLY AWESOME 90s Retro Stylesheet!!! */

body {
  background-color: #C0C0C0;
  background-image:
    repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(255,255,255,.05) 10px, rgba(255,255,255,.05) 20px),
    repeating-linear-gradient(-45deg, transparent, transparent 10px, rgba(0,0,0,.05) 10px, rgba(0,0,0,.05) 20px);
  margin: 20px;
  font-family: "Times New Roman", Times, serif;
  color: #000000;
}

/* Blinking text effect for old browsers */
blink {
  animation: blink 1s steps(1) infinite;
}

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

/* Marquee backup styling */
marquee {
  padding: 10px 0;
}

/* Links - the classic blue underline */
a:link {
  color: #0000FF;
  text-decoration: underline;
}

a:visited {
  color: #800080;
  text-decoration: underline;
}

a:hover {
  color: #FF0000;
  text-decoration: underline;
  background-color: #FFFF00;
}

a:active {
  color: #FF0000;
}

/* Table styling */
table {
  box-shadow: 5px 5px 0px #808080;
}

/* Headers */
h1 {
  font-family: "Comic Sans MS", cursive, sans-serif;
  text-align: center;
  color: #0000FF;
  text-shadow: 2px 2px #FF00FF;
  font-size: 32px;
}

h2 {
  font-family: "Impact", fantasy;
  color: #FF0000;
  text-decoration: underline;
}

/* Lists */
ul {
  list-style-image: url('data:image/gif;base64,R0lGODlhCgAKAIABAP///wAAACH5BAEAAAEALAAAAAAKAAoAAAIRjI8ZoAffIINw0mouzrqyGgUAOw==');
}

/* Special effects */
.glow {
  color: #FFFF00;
  text-shadow: 0 0 10px #FF0000, 0 0 20px #FF0000, 0 0 30px #FF0000;
}

.sparkle {
  animation: sparkle 1.5s infinite;
}

@keyframes sparkle {
  0%, 100% { color: #FF0000; }
  25% { color: #00FF00; }
  50% { color: #0000FF; }
  75% { color: #FFFF00; }
}

/* Counter styling */
img[alt*="visitor"] {
  background: #000000;
  border: 2px solid #FF0000;
  padding: 2px;
}

/* Hit counter numbers */
.counter {
  background: #000000;
  color: #00FF00;
  font-family: "Courier New", monospace;
  padding: 5px;
  border: 3px inset #808080;
}

/* Animated rainbow text */
.rainbow {
  background: linear-gradient(to right, red, orange, yellow, green, blue, indigo, violet);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: bold;
  font-size: 24px;
}

/* Scrollbar styling (WebKit browsers) */
::-webkit-scrollbar {
  width: 16px;
}

::-webkit-scrollbar-track {
  background: #C0C0C0;
  border: 1px solid #808080;
}

::-webkit-scrollbar-thumb {
  background: #0000AA;
  border: 1px outset #FFFFFF;
}

::-webkit-scrollbar-thumb:hover {
  background: #0000FF;
}

/* Button styling */
button, input[type="button"], input[type="submit"] {
  background: #C0C0C0;
  border: 2px outset #FFFFFF;
  padding: 5px 15px;
  font-family: "Arial", sans-serif;
  font-weight: bold;
  cursor: pointer;
}

button:active, input[type="button"]:active, input[type="submit"]:active {
  border-style: inset;
}

/* Under construction banner */
.construction {
  background: repeating-linear-gradient(
    45deg,
    #FFD700,
    #FFD700 10px,
    #000000 10px,
    #000000 20px
  );
  padding: 10px;
  text-align: center;
  font-weight: bold;
  border: 3px solid #FF0000;
}

/* Retro text effects */
.fire {
  color: #FF0000;
  text-shadow: 0 0 5px #FF0000, 0 0 10px #FF6600, 0 0 15px #FF9900;
  font-weight: bold;
}

.ice {
  color: #00FFFF;
  text-shadow: 0 0 5px #00FFFF, 0 0 10px #0099FF, 0 0 15px #0066FF;
  font-weight: bold;
}

/* Webring box */
.webring {
  background: #FFFFCC;
  border: 3px double #000000;
  padding: 15px;
  margin: 20px auto;
  max-width: 500px;
  text-align: center;
}

/* Guestbook styling */
.guestbook {
  background: #E0E0E0;
  border: 2px groove #808080;
  padding: 10px;
  margin: 10px 0;
}

/* Email link with envelope icon */
a[href^="mailto:"] {
  font-weight: bold;
  color: #CC0000;
}

/* Site awards section */
.awards {
  text-align: center;
  padding: 20px;
  background: #FFFFFF;
  border: 5px ridge #FFD700;
}

/* Status bar text effect */
.status {
  background: #000000;
  color: #00FF00;
  font-family: "Courier New", monospace;
  padding: 5px;
  border: 2px inset #808080;
  font-size: 12px;
}

/* Frames alternative content */
.frames-alt {
  background: #FFCCCC;
  border: 3px solid #FF0000;
  padding: 20px;
  margin: 20px;
  text-align: center;
}

/* Java applet placeholder */
.applet {
  background: #CCCCCC;
  border: 1px solid #000000;
  padding: 10px;
  text-align: center;
  font-family: "Courier New", monospace;
  color: #666666;
}

/* Netscape/IE warning badges */
.browser-badge {
  display: inline-block;
  margin: 5px;
  padding: 5px;
  background: #0000AA;
  color: #FFFFFF;
  border: 2px outset #FFFFFF;
  font-family: "Arial", sans-serif;
  font-size: 11px;
  font-weight: bold;
}

/* Rainbow divider line */
.rainbow-line {
  height: 3px;
  width: 100%;
  background: linear-gradient(to right,
    #FF0000 0%,
    #FF7F00 16.66%,
    #FFFF00 33.33%,
    #00FF00 50%,
    #0000FF 66.66%,
    #4B0082 83.33%,
    #9400D3 100%);
  border: none;
  margin: 10px 0;
}

/* Visitor counter digit */
.counter-digit {
  display: inline-block;
  background: #000000;
  color: #00FF00;
  font-family: "Courier New", monospace;
  font-size: 18px;
  font-weight: bold;
  padding: 4px 8px;
  border: 2px inset #808080;
  margin: 0 2px;
  min-width: 20px;
  text-align: center;
}

/* Made with Notepad badge */
.notepad-badge {
  display: inline-block;
  background: linear-gradient(to bottom, #C0C0C0 0%, #808080 100%);
  border: 3px outset #FFFFFF;
  padding: 8px 12px;
  font-family: "Arial", sans-serif;
  font-size: 11px;
  font-weight: bold;
  color: #000000;
  text-align: center;
  box-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

/* Mobile responsive styles - ONLY affects mobile, desktop stays pixel-perfect */
@media only screen and (max-width: 768px) {
  body {
    margin: 5px;
  }

  /* Make tables stack better on mobile */
  table[width="90%"] {
    width: 100% !important;
  }

  /* Reduce padding on mobile */
  table[cellpadding="10"] {
    padding: 5px;
  }

  /* Make fonts slightly smaller on very small screens */
  h1 {
    font-size: 24px !important;
  }

  marquee {
    font-size: 20px;
  }

  /* Allow text to wrap better */
  font[size="5"] {
    font-size: 18px !important;
  }

  font[size="4"] {
    font-size: 16px !important;
  }

  font[size="3"] {
    font-size: 14px !important;
  }

  /* Make the main content table mobile friendly */
  table[width="100%"][border="1"] td {
    display: block !important;
    width: 100% !important;
  }

  /* Stack the sidebar on mobile */
  td[width="25%"] {
    width: 100% !important;
    display: block;
  }

  /* LinkedIn button stays centered but scales */
  table[width="300"] {
    width: 90% !important;
    max-width: 300px;
  }

  /* Counter digits stay readable */
  .counter-digit {
    font-size: 16px;
    padding: 3px 6px;
  }

  /* Reduce border sizes on mobile */
  table[border="5"] {
    border-width: 3px !important;
  }

  table[border="3"] {
    border-width: 2px !important;
  }
}
