@import url('https://fonts.googleapis.com/css?family=Press+Start+2P&display=swap');


:root {
  --background-color: #fff4fa;
  --text-color: #222;
  --button-bg-color: #ff6392;
  --button-text-color: #fff;
  --button-border-color: #ff98c2;
  --link-color: #ff6392;
}


.light-mode {
  --background-color: #ffffff;
  --text-color: #000000;
  --button-bg-color: #f0f0f0;
  --button-text-color: #000000;
  --button-border-color: #cccccc;
  --link-color: #1a0dab;
}
.dark-mode {
  --background-color: #121212;
  --text-color: #ffffff;
  --button-bg-color: #1e1e1e;
  --button-text-color: #ffffff;
  --button-border-color: #333333;
  --link-color: #bb86fc;
}
.galaxy-theme {
  --background-color: #0b0033;
  --text-color: #ffffff;
  --button-bg-color: #1a0033;
  --button-text-color: #ffffff;
  --button-border-color: #330066;
  --link-color: #ff66ff;
}
.red-nebula-theme {
  --background-color: #330000;
  --text-color: #ffffff;
  --button-bg-color: #660000;
  --button-text-color: #ffffff;
  --button-border-color: #990000;
  --link-color: #ff3333;
}
.blue-nebula-theme {
  --background-color: #000033;
  --text-color: #ffffff;
  --button-bg-color: #000066;
  --button-text-color: #ffffff;
  --button-border-color: #000099;
  --link-color: #3399ff;
}
.bubblegum-theme {
  --background-color: #ffe6f0;
  --text-color: #330033;
  --button-bg-color: #ff99cc;
  --button-text-color: #330033;
  --button-border-color: #ff66b2;
  --link-color: #cc0066;
}
.forest-theme {
  --background-color: #e6ffe6;
  --text-color: #003300;
  --button-bg-color: #99cc99;
  --button-text-color: #003300;
  --button-border-color: #66b266;
  --link-color: #006600;
}
.citrus-theme {
  --background-color: #fffde7;
  --text-color: #426b1f;
  --button-bg-color: #ffe066;
  --button-text-color: #fff;
  --button-border-color: #ffa600;
  --link-color: #70c744;
}
.pastel-theme {
  --background-color: #f0e6ff;
  --text-color: #330033;
  --button-bg-color: #cc99ff;
  --button-text-color: #330033;
  --button-border-color: #b266ff;
  --link-color: #8000ff;
}
.coffee-theme {
  --background-color: #f3e5d5;
  --text-color: #4b2e1e;
  --button-bg-color: #d2b48c;
  --button-text-color: #4b2e1e;
  --button-border-color: #a67c52;
  --link-color: #8b4513;
}
.rainbow-theme {
  --background-color: #ffffff;
  --text-color: #000000;
  --button-bg-color: linear-gradient(45deg, red, orange, yellow, green, blue, indigo, violet);
  --button-text-color: #ffffff;
  --button-border-color: #cccccc;
  --link-color: #ff00ff;
  background-size: 300% 300%;
  animation: rainbowGradient 5s ease infinite;
}
@keyframes rainbowGradient {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}


body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: var(--background-color);
  color: var(--text-color);
  font-family: 'Poppins', 'Segoe UI', 'Roboto', Arial, sans-serif;
  transition: background 0.3s, color 0.3s;
  cursor: url('Nekopara-Normal-Select.cur'), auto;
}

.myButton:hover,
.css-button-arrow--rose:hover,
.imagebutton:hover {
  cursor: url('Nekopara-Link-Select-NEW.cur'), pointer;
}

.theme-selector-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 36px;
}

label {
  margin-bottom: 8px;
  font-size: 1.1em;
  font-weight: 600;
}

#theme-select {
  font-size: 1.1em;
  padding: 7px 18px;
  border-radius: 6px;
  border: 2px solid var(--button-border-color);
  margin-bottom: 24px;
  color: var(--text-color);
  background: var(--background-color);
  transition: border 0.2s;
}

.button-row {
  display: flex;
  gap: 20px;
  margin-top: 12px;
}

.myButton {
 font-family: 'Press Start 2P', monospace, Arial, sans-serif !important;
  font-size: 16px;
  color: var(--button-text-color);
  background: var(--button-bg-color);
  border: 2px solid var(--button-border-color);
  padding: 12px 24px;
  border-radius: 6px;
  box-shadow: 0 0 8px var(--button-border-color, #ffb6c1);
  transition: all 0.2s ease-in-out;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  margin: 12px 10px 18px 10px;
}

.myButton:hover {
  background: var(--link-color);
  color: var(--background-color);
  box-shadow: 0 0 16px var(--button-border-color, #ffb6c1);
  transform: scale(1.06);
  border-color: var(--link-color);
}


.imagebutton {
  width: 100px;
  height: 100px;
  border-radius: 12px;
  border: 2.5px solid var(--button-border-color);
  object-fit: cover;
  box-shadow: 0 0 8px var(--button-border-color, #ffb6c1);
  background: var(--button-bg-color);
  transition: all 0.2s;
  margin: 6px 6px 0 6px;
}

.imagebutton:hover {
  transform: scale(1.08) rotate(-5deg);
  box-shadow: 0 0 24px var(--button-border-color, #ffb6c1), 0 0 36px var(--button-border-color, #ffb6c1);
  filter: brightness(1.2) contrast(1.1) drop-shadow(0 0 4px var(--button-border-color, #ffb6c1));
}


@media (max-width: 600px) {
  .button-row {
    max-width: 99vw;
    gap: 8px;
  }
  .css-button-arrow--rose {
    min-width: 82px;
    font-size: 0.97em;
    padding-left: 8px;
    padding-right: 8px;
    height: 36px;
  }
  .logo {
    width: 90px;
    height: 90px;
  }
  .main-title {
    font-size: 1.3rem;
  }
  .imagebutton {
    width: 65px;
    height: 65px;
  }
}
