/* CSS is how you can add style to your website, such as colors, fonts, and positioning of your
   HTML content. To learn how to do something, just try searching Google for questions like
   "how to change link color." */

* {
  box-sizing: border-box;
}


body {
  background-color: #000000;
  color: #000000;
  font-family: monospace;
  box-sizing: border-box;
  font-size: 14px;
}

.buttons {
   clear: both;
  
}

a { 
  color: #ba10ac; text-decoration:none; 
}

a:hover {
  text-decoration: none;
  color: rgb(255, 196, 232); 
}

.container {
  background-color: #b9b9b9;
  overflow: scroll; 
  position: absolute;
  padding: 4px;
  right: -98px;
  top: 37px; 
  width: 336px;
  height: 127px;
}

.containerheader {
  padding: 4px;
  cursor: move;
  z-index: 5;
  background-color: black;
  color: #fff;
}

.floating-sticker {
  position: fixed;
  top: 450px;
  left: 1197px;
  width: 99px;
  z-index: 9999;
}

.header {
  padding: 10px;
  font-family: monospace;
  font-size: 20px;
  text-align: center;
  background: #ffc4e8;
  line-height: 3px;
  margin: 23px;
  border-radius: 10px;
}


.leftcolumn {
  float: left;
  width: 25%;
  padding-left: 20px;
}


.rightcolumn {
  float: right;
  width: 75%;
  padding-left: 20px;
  box-sizing: border-box;
}


.card {
  position: relative;
  background-color: white;
  padding: 20px;
  margin: 15px;
  background: rgb(255, 255, 255);
  text-align: center;
  clear: both;
  line-height: 18px;
}

.card-img {
  width: 120px;
  height: auto;
  margin: 1px;
  display: block;
}

.card-content {
  align-items: center; 
  gap: 26px; 
  display: flex;
}

.card-pic {
  width: 100%;
  height: auto;
  display: block;
}

.image-grid[style] .card-pic {
  width: var(--img-size);
  height: auto;
}

.card-text {
  flex: 1;
  line-height: 20px;
  text-align-last: left;
}

.hover-caption {
  position: absolute;
  top: 15%; transform: translateY(-50%);
  width: 100%;
  color: white;
  font-size: 19px;
  text-align: center;
  padding: 4px 0;
  opacity: 0;
  transition: opacity 0.3s ease;
   filter:  drop-shadow(1px -1px black)
   drop-shadow(-4px 4px 0 rgb(203, 110, 167));
}

.hover-caption2 {
  position: absolute;
  top: 15%; transform: translateY(-50%);
  width: 100%;
  color: black;
  background-color: rgb(255, 196, 232, 0.8);
  font-size: 12px;
  text-align: center;
  padding: 4px 0;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.overlay-icon {
  position: absolute;
  top: -38px; 
  right: 5px; 
  width: 42px; 
  pointer-events: none; 
}

.image-grid {
  display: flex;
  flex-wrap: wrap;
  height: auto;
}


/* Show on hover */
.image-item:hover .hover-caption {
  opacity: 1;
}

.image-item:hover .hover-caption2 {
  opacity: 1;
}

.image-item {
  position: relative;
  width: 180px;
  margin: 15px;
  float: left;
}

.image-grid[style] .image-item {
  width: var(--img-size);
}

.thumbnail {
  width: 180px;
  cursor: pointer;
  display: block;
}

.modal {
  display: none;
  position: fixed;
  z-index: 999;
  left: 0; top: 0;
  width: 100%; height: 100%;
  background-color: rgb(255, 196, 232, 0.5);
}

.modal-content {
  display: block;
  margin: auto;
  max-width: 75%;
  max-height: 75%;
  margin-top: 5%;
  border-radius: 3px;
}

.close {
  position: absolute;
  top: 15px;
  right: 30px;
  color: white;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
}

.box {
  display: block;
  background-color: white; 
  padding: 20px;
  margin: 20px;
  float: left;
  line-height: 20px;
  font-size: 17px;
}
  
.funbox {
 width: 80%;
  max-width: 600px;
  padding: 20px;
  background-color: rgb(255, 231, 246);
  border: 3px solid rgb(255, 196, 232);
  border-radius: 15px;
  margin: 20px auto;
  text-align: left;
}

.funbox h4 {
  margin-top: 0;
  font-size: 16px;
  color: black;
  font-weight: normal;
}

.funbox ul {
  list-style-type: circle;
  padding-left: 20px;
  margin: 10px 0 0 0;
  color: #7f7f7f;
}

.funbox li {
  margin-bottom: 6px;
}

.funbox-list {
  flex: 1;
  min-width: 200px;
  list-style-type: circle;
  padding-left: 20px;
}

/* Clear floats after the columns */
.row old:after {
  content: "";
  display: flex; 
  clear: both;
  justify-content: center;
}
.row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; 
  gap: 20px; 
}

.nav {
  background-color: darkgray;
  margin: 15px;
  padding: 18px;
  float: left;
  overflow: hidden; 
  box-sizing: border-box;
  height: fit-content;
  line-height: 15px;
  text-align-last: center;
}

.nav a {
  color: white;
  text-align: center;
  padding: 6px 8px;
  text-decoration: none;
  font-size: 15px;
  display: block; 
}

/* Change the color of links on hover */
.nav a:hover {
  background-color: white;
  color: black;
}

/* Add a color to the active/current link */
.nav a.active {
  background-color: rgb(255, 196, 232);
  color: black;
  padding: 10px 10px;
}

.nav h3 {
  margin: 4px 0;
  padding: 0;
  font-size: 12px; 
  line-height: 1;   
}


.footer {
  padding: 20px;
  text-align: center;
  background: #ddd;
  margin-top: 20px;
}

details summary {
  list-style: none;
  cursor: pointer;
}

details[open] .popup-box {
  background: rgb(255, 196, 232);
  border: 1px solid #ccc;
  padding: 1px;
  margin: 4px;
  font-size: 10px;
}

.tab-buttons {
  margin-bottom: 10px;
  margin-top: 10px;
}

.tablink {
  background-color: darkgray;
  border: none;
  padding: 10px 20px;
  cursor: pointer;
  font-family: monospace;
  color: white;
}


.tablink.active {
  background-color: rgb(255, 196, 232);
  color: black;
}


.tab-content {
  display: none;
}

.tab-content.active-tab {
  display: block;
}

.modal {
  display: none; /* hidden by default */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7); /* dark translucent background */
  color: #fff;
  font-family: sans-serif;
  text-align: center;
  padding-top: 100px; /* space from top */
  z-index: 1000; /* above other elements */
}

.modal-content {
  background: rgb(0, 0, 0); 
  margin: 0 auto;
  padding: 20px 30px;
  width: 300px;
  border-radius: 10px;
  box-shadow: 0 0 10px #000;
  color: rgb(255, 196, 232);
  font-size: 16px;
}

.modal-content button {
  margin: 10px 15px 0 15px;
  padding: 8px 20px;
  border: none;
  border-radius: 5px;
  font-weight: bold;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

#nsfwConfirm {
  background-color: rgb(159, 236, 151); 
  color: white;
}

#nsfwConfirm:hover {
  background-color: #69f196;
}

#nsfwCancel {
  background-color: #f37e76;
  color: white;
}

#nsfwCancel:hover {
  background-color: #da190b;
}

/* Responsive layout - when the screen is less than 800px wide, make the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 2160px) {
  .imgtxt {
    width: fit-content;
    height: fit-content;
    display: inline-block;
    position: relative;
  }

  .imgtxt span {
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 99;
    font-family: monospace;
    font-size: 25px;
    color: #eca0ed;
    filter: drop-shadow(1px -1px black)
            drop-shadow(-5px -8px black)
            drop-shadow(-4px 4px 0 #9c9c9c);
  }

  .box:hover .imgtxt span {
    opacity: 1;
  }
}