@font-face {
  font-family: 'Psycho';
  src: url('PsychopersonaluseRegular-OV1xd.otf') format('opentype');
}

@font-face {
  font-family: 'ShootingStar';
  src: url('handcaps.regular.otf') format('opentype');
}

button, nav, .home-button li, a {
  font-family: 'ShootingStar', sans-serif !important;
}


.easter-egg-link {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  gap: 8px;
  transform: translate(-20%, 20%) rotate(45deg);
  opacity: 0.85;
  transition: all 0.3s ease;
}

.easter-label {
  position: fixed;
  bottom: 8px;
  left: 40px; /* moves it right of the image */
  font-family: 'ShootingStar', sans-serif;
  font-size: 12px;
  color: #000000;
  text-shadow: 0 0 4px #000;
  pointer-events: none;
  z-index: 9998;
}

.easter-egg-link:hover {
  transform: translate(-20%, 20%);
  opacity: 1;
  filter: drop-shadow(0 0 10px #31e7fb);
}

.easter-egg {
  width: 62px;
  height: 62px;
  image-rendering: pixelated;
  pointer-events: none;
}

.easter-text {
  font-family: 'ShootingStar', sans-serif;
  font-size: 12px;
  color: #31e7fb;
  text-shadow: 0 0 5px #000;
  white-space: nowrap;
  pointer-events: none;
}


.tiny-img {
  width: 16px;
  height: 16px;
}

html {
  height: 150%;
  overflow-x: hidden;
  overscroll-behavior: none; /* Prevent black space on overscroll */
  scroll-behavior: smooth;   /* Smooth scroll for anchors and keys */
}

html, body, * {
  cursor: url('cursor3.png'), auto !important;
}

body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
  background-color: #010001;
  background-image: url('water3.webp');
  background-size: 8%;
  background-repeat: repeat;
  background-position: 0 0;
  background-attachment: fixed;
  color: white;
  font-family: 'ShootingStar', sans-serif;
  font-size: 16px;
  position: relative;
  z-index: 0;
  scroll-behavior: smooth;
}


/* Background: stars layer */
#background {
  background-image: url("https://sadhost.neocities.org/images/tiles/stars5.gif");
  background-size: 200px;
  opacity: 0.2;
  position: fixed;
  width: 500%;
  height: 500%;
  top: -250%;
  left: -250%;
  z-index: -5;
  animation: slide 1200s linear infinite;
}

@keyframes slide {
  0% { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(-90%, 0, 0); }
}

/* Clouds (top) */
.cloud-layer {
  position: fixed;
  top: -100px;
  left: -50px;
  width: 120%;
  height: 35.6vw;
  background: url('cloud2.png') repeat-x;
  background-size: 50%;
  opacity: 0.8;
  animation: scroll-anim 40s linear infinite reverse;
  z-index: -3;
  pointer-events: none;
}

/* Fog (bottom) */
.fog-layer {
  position: fixed;
  right: -50px;
  bottom: -200px;
  animation: scroll-anim 60s linear infinite;
  z-index: -4;
  pointer-events: none;
}

@keyframes scroll-anim {
  100% {
    background-position: -100% 0;
  }
}

/* HEADINGS */
h1, h2, h3, h4, h5, h6 {
  font-family: 'ShootingStar', sans-serif;
  color: #31e7fb;
  text-shadow: 0 0 5px #31e7fb;
  font-size: 28px;
}

/* LINKS */
a {
  color: #31e7fb;
  font-weight: bold;
}

a:hover {
  filter: brightness(50%);
}

/* STYLING */
hr {
  border: 0;
  border-top: 6px double #31e7fb;
}

blockquote {
  border-left: 6px double #31e7fb;
  margin-left: 0px;
  padding: 0px 8px;
}

ul {
  list-style-image: url('bullet1.png');
}

ol {
  list-style-type: upper-roman;
}

button {
  background: #0d1363;
  color: white;
  font-family: "Press Start 2P", cursive;
  border-image-slice: 25%;
  border-image-width: 32px;
  border-image-outset: 8px;
  border-image-repeat: stretch;
  border-image-source: url("border1.png");
  border-style: solid;
  padding: 12px;
  width: 240px;
  margin: 8px;
}

/* TREASURE BOX STYLES */
.title {
  font-family: 'Psycho', cursive;
  font-size: 64px; /* Bigger title */
  color: #31e7fb;
  text-align: center;
  background: #0d1363;

  text-shadow:
    0 0 2px #000000,
    0 0 6px #000000,
    0 0 12px #082076,
    0 0 16px #082076;

  letter-spacing: 2px;
  padding: 16px;
}


.border1 {
  border-image-slice: 25%;
  border-image-width: 32px;
  border-image-outset: 8px;
  border-image-repeat: stretch;
  border-image-source: url("border1.png");
  border-style: solid;
  padding: 24px;
}

.border2 {
  border-image-slice: 20;
  border-image-width: 64px;
  border-image-outset: 8px;
  border-image-repeat: round;
  border-image-source: url("border2.png");
  border-style: solid;
  padding: 8px;
  background: #1b56b5;
}

/* LAYOUT */
.post {
  width: 400px;
  float: left;
  margin: 8px;
}

#page {
  margin: auto;
  width: 820px;
}

#container {
  background: #0d1363;
  float: left;
}

/* Clear floats to prevent scroll breaking */
#container::after {
  content: "";
  display: table;
  clear: both;
}

#sidebar {
  float: right;
  width: 300px;
  margin: 8px;
}

#credit {
  position: fixed;
  bottom: 8px;
  right: 8px;
}

.pfp-preview-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
  justify-content: center; /* 💡 centers the grid horizontally */
}

.pfp-thumb {
  width: 100%;
  max-width: 100px;
  border: 2px solid #31e7fb;
  image-rendering: pixelated;
}

.view-more-btn {
  margin-top: 12px;
  background: #082076;
  color: #fff;
  padding: 8px 16px;
  font-family: 'Press Start 2P', cursive;
  border: 2px solid #31e7fb;
  cursor: pointer;
  font-size: 10px;
}

.view-more-btn:hover {
  background: #31e7fb;
  color: #000;
}

.pfp-modal-content {
  position: relative;
  background: #0d1363;
  border: 4px solid #31e7fb;
  max-height: 90vh;
  overflow-y: auto;
  width: 90%;
  max-width: 600px;
  display: flex;
  flex-direction: column;
}

.pfp-modal-body {
  padding: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.modal-close {
  position: absolute;
  top: 4px;
  right: 4px;
  background: none;
  color: #31e7fb;
  font-size: 16px;
  border: none;
  cursor: pointer;
  font-family: 'Press Start 2P', sans-serif;
  text-shadow: 0 0 6px #000;
  z-index: 10;
}




.pfp-grid-scroll {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.pfp-grid-scroll img {
  width: 100%;
  border: 2px solid #31e7fb;
  image-rendering: pixelated;
}

