:root {
  /* main text - soft lavender glow */
  --text: rgb(220, 210, 255);

  /* background - deep purple night */
  --base: rgb(20, 16, 35);

  /* primary accent - vibrant purple */
  --accent: rgb(165, 120, 255);

  /* secondary accent - muted lilac */
  --secondary: rgb(110, 90, 160);

  /* success / highlight green (kept subtle so it doesn’t clash) */
  --green: rgb(120, 220, 170);
}

/* cursor */
* {
  margin: 0;
  padding: 0;
  scrollbar-width: none;
  cursor: url(https://cur.cursors-4u.net/games/gam-13/gam1309.ani), url(https://cur.cursors-4u.net/games/gam-13/gam1309.png), auto !important;
}

body {
  overflow-x: hidden;
  font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
  margin: 0;

  width: 100vw;
  display: flex;
  flex-direction: column;
  scroll-behavior: smooth;
  /* Smooth scrolling between sections */
  align-items: center;
  background-color: var(--secondary);
  color: var(--text);
  overflow-x: hidden;

}

iframe {
  width: 100%;


}

ul {
  list-style-type: none;
}

li {
  margin: 6px;
}

p {
  padding: 0;
  margin: 4px;
}

/* footer */
/* Footer styling */
footer {
  width: 100vw;
  padding: 20px 0;
  background-color: var(--base);
  color: var(--text);
  text-align: center;
  border-top: solid 4px var(--accent);
  border-radius: 34px 34px 0 0;
  box-shadow: 0 -5px 20px 5px var(--accent);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-size: 18px;
  display: flex;
  flex-direction: row;
}

footer a {
  color: var(--accent);
  text-decoration: none;
  font-weight: bold;
  margin: 0 8px;
  transition: color 0.3s ease-in-out;
}

footer a:hover {
  color: var(--green);
}

footer p {
  margin: 6px 0 0 0;
}

/* navbar */
nav {
  width: auto;
  max-height: 100px;
  border-bottom: solid 4px var(--accent);
  border-radius: 0 0 34px 34px;
  box-shadow: 0 0px 30px 0px var(--accent);
  padding: 24px 20px;
  display: flex;
  justify-content: space-around;
  font-size: 23px;
  font-weight: bold;
  background-color: var(--secondary);
  padding: 12px;

}

nav a {
  color: var(--text);
  text-decoration: none;
}

nav a:hover::before {
  text-decoration: none;
  content: "🌸";
  /* Custom bullet */
  margin-right: 2px;
  /* Adds space between bullet & text */
}

.tiktok-wrapper {
  transform: scale(0.5);
  /* adjust 0.5 → 1.0 as needed */

  width: 90%;

  display: block;
  display: flex;
  flex-direction: row;

  gap: 8px;
}

.links {
  display: flex;
  flex-direction: column;
}

.navbtn {
  display: inline-block;
  padding: 8px 16px;
  margin: 6px;
  border-radius: 12px;
  background-color: var(--secondary);
  /* soft mint neon */
  color: var(--text);
  /* dark text for contrast */
  text-decoration: none;
  font-weight: 600;
  transition:
    background-color 1s ease,
    transform 0.9s ease,
    box-shadow 0.9s ease;
}

.navbtn:hover {
  background-color: var(--accent);
  color: var(--base);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
}

.navbtn:hover::before {
  content: "🌸";
  margin-right: 6px;
}

.top {
  background-color: var(--base);
  color: var(--text);
  font-family: Arial, sans-serif;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-direction: column;
  border-radius: 0 0 63px 63px;


  width: 100%;
  height: 100vh;
}

.top2 {
  background-color: var(--base);
  color: var(--text);
  font-family: Arial, sans-serif;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-direction: column;
  border-radius: 300px 0 300px 0px;


  width: 100vw;
  height: 100vh;
}

.flip-container {
  width: 200px;
  height: 200px;

  perspective: 1000px;
}

.flipper {
  width: 100%;
  height: 100%;
  transition: transform 0.6s;
  transform-style: preserve-3d;
  position: relative;
}

.flipped {
  transform: rotateY(180deg);
}

.front,
.back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}

.bottom {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin: 0;
  height: auto;
}

.row {
  display: flex;
  flex-direction: row;
  align-items: center;

  justify-content: space-around;
  width: 80vw;
  margin: 12px;

}

.text-align {
  display: flex;
  text-align: center;
}

.tiklogo {
  height: 50px;
  border-radius: 12px;
  width: auto;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.tiklogo:hover {
  transform: scale(1.4);
  /* smoother than jumping height */
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.25);
}

.container {
  max-width: 800px;

  padding: 20px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 33px;
  margin-bottom: -30px;
  margin-top: 10px;
}

h1 {
  margin: 20px 0;
}

/* Spin animation */
@keyframes spinny {
  0% {
    transform: translateX(70%);
  }

  100% {
    transform: translateX(-100%);
  }
}

/* stamp css */
.stamps {
  gap: 10px;
  position: relative;
  width: 100vw;
  overflow: hidden;
}

.stamps span {
  display: inline-block;
  white-space: nowrap;
  animation: spinny 25s linear infinite;
}

.stamps :hover {
  animation-play-state: paused;
}

.stamps img {
  width: auto;
  height: 31px;
  margin-right: 1px;
  transition: transform 0.3s ease-in-out;
  position: relative;
}

.stamps img::after {
  content: attr(alt);
  position: absolute;
  bottom: 120%;
  left: 50%;
  transform: translateX(-50%);
  background: var(--accent);
  color: var(--text);
  padding: 5px 10px;
  border-radius: 6px;
  font-size: 12px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-in-out;
}

.stamps img:hover {
  transform: scale(1.3);
  animation-play-state: paused;
}

.stamps img:hover::after {
  opacity: 1;
  animation-play-state: paused;
  visibility: visible;
}

/* Bounce animation */
.bouncy span {
  font-weight: bold;
  font-size: 3em;
  position: relative;
  display: inline-block;
  animation: bouncy 3s infinite;
  animation-delay: calc(0.1s * var(--i));
  color: var(--accent);
}

@keyframes bouncy {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-25px);
    animation-timing-function: ease-out;
  }
}

/* hr animation */
hr.expand {
  width: 0;
  height: 3px;
  border: none;
  padding: 2px;
  border-radius: 12px;
  background-color: var(--accent);
  margin-bottom: 8px;
  transition: width 5s ease-out;
  animation: stretch 9s ease-out forwards;
}

@keyframes stretch {
  from {
    width: 0;
  }

  to {
    width: 80%;
  }
}

/* Card styles */
.card {
  width: auto;
  height: auto;
  border: solid 4px var(--accent);
  border-radius: 24px;
  box-shadow: 0 5px 20px 5px var(--accent);
  overflow: hidden;
  padding: 19px 28px;
  margin-bottom: 40px;
  position: relative;
  transition: transform 0.3s ease-in-out;
  display: flex;
  flex-direction: column;
}

.card img {

  min-width: auto;
  height: 25px;
}

.card p {
  margin: 0;
}

.status {


  padding: 10px;
  margin-bottom: 10px;
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  color: var(--text);
}

.time {
  font-weight: bold;
  color: var(--text);
}

.blinkie {
  position: relative;
  /* Needed for the tooltip to be positioned relative to this element */
  display: inline-block;
}

.textbox {
  display: flex;
  flex-direction: column;
  padding: 8px;

  max-width: 500px;


  box-shadow: 0 5px 10px 5px var(--accent);
  border: solid 4px var(--accent);
  border-radius: 22px;
  background-color: var(--base);
  white-space: normal;
  /* Allow text wrapping */

  word-wrap: break-word;
  /* Ensures long words break properly */
}

.textbox p {
  font-size: 18px;
}

/* Tooltip styling */
.blinkie::after {
  content: "My own blinkie ...nice";
  /* Tooltip text */
  position: absolute;
  top: -40px;
  /* Position tooltip above the image */
  left: 50%;
  /* Center horizontally */
  transform: translateX(-50%);
  background-color: var(--green);
  /* Semi-transparent black background */
  color: var(--text);
  font-size: 12px;
  /* Tooltip text size */
  padding: 5px 10px;
  /* Add some padding around the text */
  border-radius: 4px;
  /* Rounded corners for the tooltip */
  white-space: nowrap;
  /* Prevent text wrapping */
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
  /* Subtle shadow for the tooltip */
  opacity: 0;
  /* Hide tooltip by default */
  pointer-events: none;
  /* Prevent tooltip from interfering with mouse */
  z-index: 100;
  /* Ensure tooltip is above other elements */
  transition: opacity 0.3s ease;
  /* Smooth tooltip appearance */
}



.row .trainer {
  width: 30vw;
  height: auto;
}

.updates {
  max-width: 300px;
  min-width: 200px;
  height: 20vh;
  border: solid 4px var(--accent);
  border-radius: 22px;

  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  text-align: center;
  scrollbar-width: none;
  padding: 32px;
  overflow-y: auto;
  box-shadow: 0 5px 20px 5px var(--accent);
}

.updates h2 {
  margin: 0;
}

.updates ul {
  margin: 0px;
}

/* Floating girl Animation */
/* Floating Animation */
@keyframes girlFloat {

  0%,
  100% {
    transform: translateY(-100px);
    /* Starting and ending position */
  }

  40% {
    transform: translateY(90px);
    /* transform: translateX(-100px); Float up */
  }

  60% {
    transform: translateY(100px);
    transform: translateX(-100px);
    /* Float up */
  }
}

.floating-girl-container {
  position: relative;
  /* Needed for tooltip positioning */
  display: inline-block;
  /* Wrap around the floating girl image */
}

.floating-girl {
  animation: girlFloat 10s ease-in-out infinite;
  /* Floating animation */
  width: 224px;
  height: auto;
  z-index: 1;
  padding: 0px;

  border-bottom: 0;

  object-fit: cover;
  /* Ensure image stays proportional */
  cursor: pointer;
  /* Make it feel interactive */
  position: relative;

}

.mood2 {
  position: absolute;
  bottom: 34%;
  left: 95%;
  z-index: 2;
  width: 30%;
  height: auto;
  border-radius: 8px;
}

/* Tooltip Styling */
.floating-girl-container:hover::after {
  content: "Hello :3 thank for comming!";
  /* Tooltip text */
  position: absolute;
  top: -40px;
  /* Position tooltip above the image */
  left: 50%;
  transform: translateX(-50%);
  background-color: var(--secondary);
  /* Semi-transparent black background */
  color: var(--accent);
  /* White text */
  font-size: 12px;
  /* Tooltip text size */
  padding: 8px 12px;
  /* Add some padding around the text */
  border-radius: 4px;
  /* Rounded corners for the tooltip */
  white-space: nowrap;
  /* Prevent text wrapping */
  box-shadow: var(--accent);
  /* Subtle shadow for the tooltip */
  opacity: 1;
  /* Make it visible */
  pointer-events: none;
  /* Prevent tooltip from interfering with mouse */
  z-index: 10;
  /* Ensure tooltip is above other elements */
}

.floating-girl-container::after {
  content: "";
  /* Keep tooltip hidden initially */
  opacity: 0;
  transition: opacity 0.3s ease;
  /* Smooth tooltip appearance */
}




.espeon {
  height: 500px;
  width: 100px;
  margin: 0;
}

.pokemon {
  height: 120px;
  width: auto;
  margin: 0;
  z-index: 10;
}

/* dhydragon  */
.dragon {
  animation: fly2 15s infinite ease-in;
  z-index: -10;
  width: 150px;
  height: auto;
}

@keyframes fly2 {

  0%,
  100% {
    transform: translatey(0);
  }

  20% {
    transform: translatey(-200px);
  }

  55% {
    transform: translatey(-110px);
  }

  75% {
    transform: translateY(-410px);
  }

  90% {
    transform: translatey(-100px)
  }


}

/* fish luminean  flying */
.flying {

  animation: fly 10s infinite ease;
}

@keyframes fly {
  0% {
    transform: translateX(-400px);
  }

  50% {
    transform: translateX(100px);
  }

  75% {
    transform: translateX(-100px);
  }

  90% {
    transform: translateX(200px)
  }

  100% {
    transform: translateX(-500px);
  }
}

.column {
  padding: 4px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 5px 10px 5px var(--accent);
  border: solid 4px var(--accent);
  border-radius: 22px;
}

.column p {
  margin: 0;
  padding: 0;

}

.column .girl {
  height: 200px;
  width: 200px;
}

.column img {
  width: 100px;
}

.mobile {
  display: none;

}

.tree {
  display: none;
}

/* Responsive adjustments */
@media (max-width: 600px) {
  .textbox iframe {
    width: 100% !important;
    height: 152px !important;
  }

  body {
    flex-direction: column;
    margin: 0;
    min-height: 100vh;
    width: 100vw;
    display: flex;
    flex-direction: column;
    scroll-behavior: smooth;
    /* Smooth scrolling between sections */
    align-items: center;
    background-color: var(--base);
    color: var(--base);

  }

  .top {
    border-radius: 0px 0 100px 100px;
    background-color: var(--secondary)
  }

  .top2 {
    background-color: var(--secondary);
  }

  .navbtn {
    display: inline-block;
    padding: 8px 16px;
    margin: 6px;
    border-radius: 12px;
    background-color: var(--base);
    /* soft mint neon */
    color: var(--text);
    /* dark text for contrast */
    text-decoration: none;
    font-weight: 600;
    transition:
      background-color 1s ease,
      transform 0.9s ease,
      box-shadow 0.9s ease;
  }

  .navbtn:hover {
    background-color: var(--accent);
    color: var(--base);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
  }

  .container {
    flex-direction: column;
    gap: 20px;
    color: var(--base);

  }

  .bouncy span {
    color: var(--accent);

  }

  .expand {
    background-color: var(--secondary);
  }

  @keyframes fly {

    0%,
    100% {
      transform: translatey(300px);
    }

    20% {
      transform: translatey(400px);
    }

    75% {
      transform: translatey(-200px);
    }

    90% {
      transform: translatey(0px)
    }

  }

  footer {
    background-color: var(--secondary);
    color: var(--accent);
    flex-direction: column;
  }

  .textbox {
    height: auto;
    width: 80vw;
    color: var(--accent);
    background-color: var(--secondary);
    box-shadow: 0 5px 8px 5px var(--base);
    border: solid 4px var(--base);
    margin-bottom: 12px;
  }


  /* show */
  .mobile {
    display: block;
    color: var(--accent);
    padding: 8px;
    border-radius: 12px;
    background-color: var(--base);
  }

  .tree {
    width: auto;
    height: 100px;
    display: block;
  }

  /* none */

  .pokemon {
    display: none;
  }

  .card {
    display: none;

  }

  nav {
    display: none;
  }

  .updates {
    display: none;
  }

  .pokemon {
    display: none;
  }

  .column {
    display: none;
  }

  .tcard {
    display: none;
  }

}