
body {
  cursor: url('../images/cursor.png') 16 16, auto; /* Set custom cursor image */
}

a, button, input {
  cursor: url('../images/cursor-click.png') 16 16, pointer;
}

input[type="text"], input[type="password"], input[type="email"], textarea, input[type="image"] {
  cursor: url('../images/cursor-click.png') 16 16, pointer;
}

img[onclick], img:hover {
  cursor: url('../images/cursor-click.png') 16 16, pointer;
}



/* Particle (Spark) Style */
.spark {
  background: radial-gradient(circle, #0d9eff 0%, #00ccff 50%, #3296a8 100%);
  font-family: 'Helvetica', sans-serif;
  visibility: hidden;
  position: absolute;
  top: -200px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.8), 
              0 0 20px rgba(0, 195, 255, 0.6); /* Glow effect */
}

.breathing-character {
    width: 45%;
    z-index: 1;
    position: relative;
    top: -49rem;
    left: 15rem;
    height: auto;
    animation: breathe 22s ease-in-out infinite;
    transform-origin: center;
    margin-bottom: -41rem;
}


.fade {
  display: block;
  opacity: 1 !important;
}


/* Sections */
section {
  padding: 2rem 1rem;
  text-align: center;
}

/* Discord */
.center-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;

}

.row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.col {
  flex: 1 1 calc(33.333% - 1rem);
  background: #2a1919;
  padding: 1rem;
  text-align: center;
  border: 1px solid #b75b5b;
}

/* About Us Section */
.about-us {
  padding: 0rem 1rem;
  text-align: center;

  max-width: 1100px; /* Limit the section width */
  margin: 0 auto; /* Center the content */
}


/* About Us Container */
.about-us-container {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap; /* Ensure the content wraps on smaller screens */
  max-width: 100%;
  margin: 0 auto;
}

/* Left Column (Image and About Us Text) */
.about-us-left {
  flex: 1;
  min-width: 400px; /* Minimum width for the left column */
  text-align: left;
}


.about-us-text {
  margin-top: 1rem;
}

.about-us-text h2 {
  font-size: 2rem;
  margin-bottom: 1rem;
}

.about-us-text p {
  font-size: 1rem;
  line-height: 1.5;
  color: #362245;
}

/* Styling for the read more button as an image */
.read-more-btn {
  display: inline-block; /* Ensures the image behaves like a button */
  margin-top: 10px; /* Adds space above the image */
  text-align: center; /* Centers the button */
  text-decoration: none; /* Removes underline if the image is a link */
  cursor: pointer; /* Pointer cursor to indicate interactivity */
}

.read-more-image {
  width: 200px; /* Adjust the width of the image */
  margin: 20px;
  height: auto; /* Maintain the aspect ratio */
  transition: transform 0.3s ease, opacity 0.3s ease; /* Add smooth hover effects */
}

.read-more-btn:hover .read-more-image {
  transform: scale(1.1); /* Slightly enlarge the image on hover */
  opacity: 0.8; /* Add a transparency effect */
}


.about-us-right {
  width: 525px;
  height: 417px;
  position: relative;
  left: 30px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  background: url('../images/character-image.png') no-repeat center center;
  background-size: cover; 
  padding: 2rem; 
  border-radius: 8px; 
  color: white; 
}

h3 {
  margin-bottom: 0.5rem;
  color: #e8b602;
}

p {
  /*font-size: 1.2rem; */
  margin: 0;
  color: white;
}


.about-us-section {
  background: url('../assets/hero-bg.jpg') no-repeat center center;
  background-size: cover;
  padding: 50px 20px;
  overflow: hidden;
  }

.container-wiki {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.container-wiki p {
  font-size: 11px; /* Adjust the font size */
  line-height: 1.6; /* Adjust line height for better readability */
  color: #ffffff; /* Text color */
  text-align: left; /* Align text to the left */
  margin-bottom: 15px; /* Add margin at the bottom of each paragraph */
  text-shadow: 0 0 10px #000000, 0 0 4px #000000;
}

.container-wiki h2 {
  font-size: 30px; /* Adjust the font size */
  line-height: 1.6; /* Adjust line height for better readability */
  color: #fbfeaf; /* Text color */
  text-align: left; /* Align text to the left */
  margin-bottom: 15px; /* Add margin at the bottom of each paragraph */
}

.wiki-menu {
  width: 25%;
  padding: 20px;
  margin-right: 20px;
  background: rgba(0, 0, 0, 0.5); /* Middle background color */
  color: white;
  height: 100%;
  position: relative; /* Positioning context for pseudo-elements */
}

.wiki-menu::before, .wiki-menu::after {
  content: '';
  position: absolute;
  left: 0;
  width: 100%;
  height: 20px; /* Height of the top/bottom image */
  background-size: 100% auto; /* Make the images span the width of the menu */
  background-repeat: no-repeat;
}

.wiki-menu::before {
  top: -11px;
  height: 30px;
  background-image: url('../images/wiki-top.png'); /* Top border image */
}

.wiki-menu::after {
  bottom: -25px;
    height: 25px;
  background-image: url('../images/wiki-bottom.png'); /* Bottom border image */
}

.wiki-menu ul {
  list-style-type: none;
  padding-left: 0;
}

.wiki-menu ul li {
  margin-bottom: 15px;
}

/* Link styling */
.wiki-menu ul li a {
  color: white;
  text-decoration: none;
  font-size: 18px;
  display: block;
  padding: 10px;
  border-radius: 5px; /* Optional, for rounded corners */
  transition: background-color 0.3s ease, color 0.3s ease; /* Smooth transition */
}

/* Hover effect for list items */


/* Hover effect for links inside list items */
.wiki-menu ul li a:hover {
  color: #fbfeaf; /* Change text color on hover */
}

.wiki-content {
  width: 70%;
}

.wiki-article {
  display: none;
  margin-bottom: 20px;
}

.wiki-article.active {
  display: block;
}

.article-image {
  width: 600px;
  height: 200px;
  margin-bottom: 15px;
}

.wiki-menu .submenu {
  display: none;
  list-style-type: none;
  margin-left: 20px;
}

.wiki-menu li:hover .submenu {
  display: block;
}

.logged-in-container {
  text-align: center;
  font-family: Arial, sans-serif;
  font-size: 14px;
  color: #333;
  padding: 100px 0;
}

.logged-in-container p {
  margin: 0 0 10px;
  font-weight: 500;
}

.logged-in-container a {
  display: inline-block;
  padding: 6px 12px;
  margin: 0 5px;
  text-decoration: none;
  font-size: 14px;
  color: #e8b602;
  font-weight: 600;
  border-bottom: 2px solid transparent;
  transition: all 0.3s ease;
}

.logged-in-container a:hover {
  color: #fbfeaf;
  border-bottom: 2px solid #fbfeaf;
}

.logged-in-container a.logout {
  color: #dc3545;
}

.logged-in-container a.logout:hover {
  color: #b02a37;
  border-bottom: 2px solid #b02a37;
}

#submenu a {
  color: #fbfeaf;
  text-decoration: none;
}
#submenu  a:hover {
  color: #e8b602;
  border-bottom: 2px solid #e8b602;
}

.action a {
  color: #fbfeaf;
  text-decoration: none;
}
.action  a:hover {
  color: #e8b602;
  border-bottom: 2px solid #e8b602;
}
.credit-balance a {
  color: #fbfeaf;
  text-decoration: none;
}
.credit-balance  a:hover {
  color: #e8b602;
  border-bottom: 2px solid #e8b602;
}

#section-rank {
  width: 100%;
  height: auto; /* Full viewport height */
  margin: 0; /* Removes all margins */
  padding: 20px; /* Keeps padding for internal content */
  position: relative; /* Needed for positioning the pseudo-element */
  overflow: hidden; /* Ensures the content stays within the container */
}

#section-rank::before {
  content: ""; /* Necessary for the pseudo-element */
  position: absolute; /* Positions the element over the background */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000000;
  filter: blur(15px); /* Adds the blur effect */
  z-index: -1; /* Ensures the background is behind the content */
  
}
  .tab-container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
  }

  .tab-buttons {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 20px;
  }

  .tab-buttons button {
    padding: 10px 20px;
    border: none;
    background-color: #ddd;
    cursor: pointer;
    font-weight: bold;
  }

  .tab-buttons button.active {
    background-color: #555;
    color: white;
  }

  .tab-content {
    display: none;
  }

  .tab-content.active {
    display: block;
  }

  .top-container {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
  }

 .top-container .rank-item {
    flex: 1;
    text-align: center;
    margin: 20px;
    background-image: url('../images/top-bg.png');
    background-size: cover; /* Ensures the image covers the container */
    background-position: center; /* Centers the background image */
    background-repeat: no-repeat; /* Prevents tiling */
    width: 100%; /* Takes full width of the container */
    max-width: 218px; /* Optional: Limits the max size for responsiveness */
    height: 253px; /* Allows height to adjust based on content */
}


.image-container {
    position: relative;
    display: inline-block;
    width: 100px; /* Adjust to fit your images */
    height: 100px; /* Adjust to fit your images */
}

.rank-badge {
    position: absolute;
    top: -45px;
    left: 0;
    width: 100%; /* Adjust to fit your layout */
    height: auto; /* Maintain aspect ratio */
    z-index: 1; /* Badge behind */
}

.job-image {
    position: absolute;
    top: 10px; /* Adjust to control overlap positioning */
    left: 22px; /* Adjust to control overlap positioning */
    max-width: 100px; /* Adjust the size of the job image */
    height: auto; /* Maintain aspect ratio */
    z-index: 2; /* Job image in front */
}
  .rank-item img {
    max-width: 100px;
    height: auto;
    margin-bottom: 10px;
  }
 .rank-badge {
    max-width: 100px;
    height: auto;
    margin-bottom: 10px;
  }
  .rank-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
  }

  .rank-table th, .rank-table td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: center;
    background: #000000ba;
  }

  .rank-table th {
    background-color: #f59f15;
    font-weight: bold;
    color: black;
  }


#section-content {
  width: 100%;
  height: auto; /* Full viewport height */
  margin: 0; /* Removes all margins */
  padding: 20px; /* Keeps padding for internal content */
  display: grid; /* Allows flexbox for centering */
  justify-content: center; /* Horizontally center the content */
  align-items: center; /* Vertically center the content */
  position: relative; /* Needed for positioning the pseudo-element */
  overflow: hidden; /* Ensures the content stays within the container */
  text-align: center; /* Centers text inside the content */
  min-height: 50vh;
}

#section-content::before {
  content: ""; /* Necessary for the pseudo-element */
  position: absolute; /* Positions the element over the background */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../assets/hero-bg.jpg'); 
  background-size: cover; /* Ensures the image covers the section */
  background-position: center; /* Centers the image */
  background-repeat: no-repeat; /* Prevents tiling */
  z-index: -1; /* Ensures the background is behind the content */
  min-height: 50vh;
}

#section-content .content-table {
  width: 100%;
  max-width: 1200px; /* Optional: Limits the max size */
  margin-top: 20px;
  border-collapse: collapse; /* Collapses borders into a single line */
  
  border-radius: 8px; /* Optional: Rounded corners */
}

#section-content .content-table th, #section-content .content-table td {
  border: 1px solid #ddd;
  padding: 12px;
  text-align: center;
  background: rgba(0, 0, 0, 0.5); /* Slightly dark background for table cells */
  color: white; /* White text for better visibility */
}

#section-content .content-table th {
  background-color: #f59f15; /* Gold-colored header */
  font-weight: bold;
  color: black;
}

#section-content .content-table td {
  background: #000000ba;
}

#section-content .content-table a {
  color: #fbfeaf;
  text-decoration: none;
}
#section-content .content-table  a:hover {
  color: #fff;
  border-bottom: 2px solid #fff;
}



#downloads {
  width: 100%;
  height: auto; /* Full viewport height */
  margin: 0; /* Removes all margins */
  padding: 20px; /* Keeps padding for internal content */
  display: grid; /* Allows flexbox for centering */
  justify-content: center; /* Horizontally center the content */
  align-items: center; /* Vertically center the content */
  position: relative; /* Needed for positioning the pseudo-element */
  overflow: hidden; /* Ensures the content stays within the container */
  text-align: center; /* Centers text inside the content */
}

#downloads::before {
  content: ""; /* Necessary for the pseudo-element */
  position: absolute; /* Positions the element over the background */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../assets/hero-bg.jpg') 
  background-size: cover; /* Ensures the image covers the section */
  background-position: center; /* Centers the image */
  background-repeat: no-repeat; /* Prevents tiling */
  z-index: -1; /* Ensures the background is behind the content */
}

#downloads h2 {
  font-size: 24px;
  margin-bottom: 20px;
  text-align: center;
  color: #fff;
}

#downloads ul {
  list-style-type: none;
  padding: 0;
}

#downloads li {
  margin: 10px 0;
  font-size: 18px;
}

#downloads a {
  text-decoration: none;
  color: #e8b602;
  transition: color 0.3s ease;
}

#downloads a:hover {
  color: #fbfeaf;
}


@media screen and (max-width: 768px) {
  #section-content {
    padding: 15px; /* Reduces padding on smaller screens */
  }
  #downloads {
    padding: 15px;
}

#downloads h2 {
    font-size: 22px;
}

#downloads ul {
    padding-left: 20px;
}

#downloads li {
    font-size: 16px;
}
}

@media screen and (max-width: 480px) {
  #section-content {
    padding: 10px; /* Further reduce padding for smaller screens */
  }
  #downloads {
    padding: 10px;
}

#downloads h2 {
    font-size: 20px;
}

#downloads li {
    font-size: 14px;
}
}

a:-webkit-any-link {
  color: -webkit-link;
  cursor: pointer;
  color: #b091e1;
  cursor: url('../images/cursor-click.png') 16 16, pointer;
}

/* Form Container */
.generic-form {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    background: #000000ba;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.generic-form h2 {
    text-align: center;
    font-size: 24px;
    margin-bottom: 20px;
}

/* Form Table */
.generic-form-table {
    width: 100%;
    border-spacing: 10px 15px;
    margin-bottom: 20px;
}

.generic-form-table th {
    width: 30%;
    text-align: left;
    font-weight: bold;
    
}

.generic-form-table td {
    width: 100%;
}

/* Specific styles for input fields inside .generic-form */
.generic-form input[type="text"], 
.generic-form input[type="password"], 
.generic-form select {
    width: 100%;
    padding: 10px;
    font-size: 14px;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-top: 5px;
    min-width: 273px;
}

/* Specific styles for radio buttons inside .generic-form */
.generic-form input[type="radio"] {
    margin-right: 5px;
}


/* Notes Styling */
p strong {
    color: #e8b602;
}

.error-message {
    color: #d9534f;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 10px;
}

/* Gender radio buttons styling */
p label {
    margin-right: 15px;
}

p strong[title] {
    cursor: pointer;
    font-size: 12px;
}

/* Responsive Design */
@media screen and (max-width: 768px) {
    .generic-form-table th,
    .generic-form-table td {
        display: block;
        width: 100%;
        text-align: left;
    }
    
    .generic-form-table th {
        margin-bottom: 10px;
    }

    button {
        font-size: 14px;
    }
}

@media screen and (max-width: 480px) {
    .generic-form {
        padding: 15px;
    }

    .generic-form h2 {
        font-size: 20px;
    }

    input[type="text"], input[type="password"], select, button {
        font-size: 14px;
        padding: 8px;
    }

    .generic-form-table {
        border-spacing: 8px 10px;
    }
}

/* Responsive Styles */
@media (max-width: 768px) {
  
  .breathing-character {
    width: 400%;
    z-index: 1;
    position: relative;
    top: -75rem;
    left: -28rem;
    height: auto;
    animation: breathe 22s ease-in-out infinite;
    transform-origin: center;
    margin-bottom: -41rem;
}
 
  

 
  .about-us-container {
    flex-direction: column; /* Stack columns vertically on small screens */
    gap: 1rem;
  }

  .about-us-left, .about-us-right {
    min-width: auto;
    height: auto;
    min-height: 365px;
    width: 100%;
    left: 0;
  }
  .server-status, .player-online, .server-time {
    text-align: center;
    position: relative;
    top: 3.7em;
    right: 5.3em;
  }
  h3 {
    margin-bottom: 0.2rem;
  }

 .center-wrapper {
      display: flex;
      justify-content: center;
      align-items: center;
      
    }

    .widget-section {
      max-width: 1100px;
      width: 100%;
     
      border-radius: 10px;
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
      padding: 20px;
      text-align: center;
    }

    .widget-section widgetbot {
      width: 100%; /* Ensures the widget scales with the container */
      height: 600px; /* Fixed height */
    }

.archer-image {
  display: none;
}

.sinx-image {
  display: none;
}

  .about-us-text {
    text-align: center;
  }
 
  .container {
    flex-direction: column;
    align-items: center;
  }

  .wiki-menu {
    width: 100%;
    margin-right: 0;
    margin-bottom: 4rem;
  }

  .wiki-content {
    width: 100%;
  }

  .article-image {
    width: 100%;
    height: auto;
    margin-bottom: 15px;
  }

  .wiki-menu::before {
    top: -13px;
    height: 40px;
    background-image: url('images/wiki-top.png'); /* Top border image */
  }
  
  .wiki-menu::after {
    bottom: -31px;
      height: 35px;
    background-image: url('images/wiki-bottom.png'); /* Bottom border image */
  }
  .row .col {
    flex: 1 1 100%;
  }

  .top-container {
    display: grid
;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
  }
  .top-container .rank-item {
    flex: 1;
    text-align: center;
    margin: 20px;
    background-image: url('../images/top-bg.png');
    background-size: cover; /* Ensures the image covers the container */
    background-position: center; /* Centers the background image */
    background-repeat: no-repeat; /* Prevents tiling */
    width: 100%; /* Takes full width of the container */
    min-width: 218px; /* Optional: Limits the max size for responsiveness */
    height: 253px; /* Allows height to adjust based on content */
}

}


/* Tablet View (Screens between 768px and 1024px) */
@media (min-width: 768px) and (max-width: 1024px) {
  /* Header Content Layout */
  .header-content {
    flex-direction: row;
    justify-content: space-between;
  }

  /* Adjust Login Panel */
  .login-panel {
    width: 25%;
    margin-bottom: 1rem;
  }

  /* Slideshow Image */
  .slides img {
    width: 100%; /* Make slideshow images full width */
    height: auto;
  }

  /* Quick Links */
  .quick-links {
    flex-direction: row; /* Keep quick links in a row */
  }

  .quick-link-img {
    width: 30%; /* Make the quick links slightly smaller */
    margin-right: 1rem; /* Add space between quick links */
  }
}


/* animations */

@keyframes breathe {
  0% {
    transform: scale(1); /* Normal size */
  }
  50% {
    transform: scale(1.03); /* Slightly bigger */
  }
  100% {
    transform: scale(1); /* Back to normal size */
  }
}


/* Keyframes for Shake Animation */
@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-5px);
  }
  50% {
    transform: translateX(5px);
  }
  75% {
    transform: translateX(-5px);
  }
  100% {
    transform: translateX(0);
  }
}

/* Keyframes for Fly Up and Down Animation */
@keyframes flyUpDown {
  0% {
    transform: translateY(-50%) translateY(-10px);
  }
  25% {
    transform: translateY(-50%) translateY(10px);
  }
  50% {
    transform: translateY(-50%) translateY(-10px);
  }
  75% {
    transform: translateY(-50%) translateY(10px);
  }
  100% {
    transform: translateY(-50%) translateY(-10px);
  }
}
