:root {
  --data-bg-color: rgba(0, 0, 0, 0.1);
  --data-text-color: black;
  --drop-shadow: drop-shadow(7px 7px 3px rgba(190, 190, 212, 0.5));
}

body.dark-mode {
  --data-bg-color: rgba(255, 255, 255, 0.1);
  --data-text-color: white;
  --drop-shadow: drop-shadow(7px 7px 3px rgba(190, 190, 212, 0.1));
}

.fold {
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: -1;
  width: 95%;
  height: 95%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all .2s;
  filter: drop-shadow(0px 0px 3px white);
  background-color:rgba(0, 0, 0, 0.1);
  border-radius:10px;
}

.character {
  position: absolute;
  width: 95%;
  height: 95%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all .2s;
  box-sizing: border-box;
  text-align: center;
  display: block;
  vertical-align: middle;
  filter: var(--drop-shadow);
  border-radius:10px;
}

.name {
  left:0px;
  bottom:7%;
  opacity: 0;
  transition: all .2s;
  color: white;
  background-color: dimgray;
  position: absolute;
  width:100%;
  text-align:center;
  transform: skew(0deg, 0deg) scale(1,0);
  visibility: hidden;
  pointer-events: none;
  white-space: nowrap;
  border-radius:3px;
}

.box {
  position:relative;
  width: 120px;
  height: 120px;
  display: inline-block;
  margin: 5px;
  border-radius:10px;
  background-color: rgba(255, 255, 255, 0.25);
  transition: all .2s;
}

.box img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  display: block;
  margin: auto;
}

.box:hover {
  width: 130px;
  height: 130px;
  margin: 0px;
  background-color:rgba(255, 255, 255, 1);
}

.box:hover .name{
  opacity: 1;
  visibility: visible;
  transform: skew(0deg, -5deg) scale(1,1);
}

.characterbuttons
{
  overflow: auto;
  height: 100%;
}

.column {
  float: left;
  width: 50%;
  height: 80vh;
  overflow: auto;
}

.columnfakedata {
  float: left;
  width: 25%;
  height: 74px;
  margin-top: 10px;
}

.columnfakedata2 {
  float: left;
  width: 50%;
  height: 74px;
  margin-top: 10px;
}

.columnfakedata3 {
  float: left;
  width: 25%;
  height: auto;
  margin-top: 10px;
}

.columnfakestats {
  float: left;
  width: 16.666%;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}

.row:after {
  content: "";
}

.characterimage {
  filter: var(--drop-shadow);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-height: 100%;
}

.artholder {
  height: 300px; 
  margin: 30px;
  position: relative;
  overflow: hidden;
}

.datadisplay {
  background-color: var(--data-bg-color);
  border-radius: 10px;
  width: 95%;
  height: 100%;
  position: relative;
}

.datadisplayautoheight {
  background-color: var(--data-bg-color);
  border-radius: 10px;
  width: 95%;
  height: auto;
  position: relative;
}

.characterdisplay {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  padding: 10px;
  background-color: var(--data-bg-color);
  border-radius: 10px;
  color: var(--data-text-color);
}

.charactername {
  font-size: 25px;
}

.data {
  padding: 10px;
  background-color: var(--data-bg-color);
  border-radius:20px;
  margin: 5px;
  color: var(--data-text-color);
}

.dataholder {
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  display:flex;
}

.dataholderwide {
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  display:flex;
  float:center;
  width:95%;
}

.dataholderlongvertical {
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  float:center;
  width:95%;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
}

.dataholderlongvertical2 {
  position: relative;
  top: 0;
  left: 0;
  transform: none;
  width: 95%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  height: auto;
}

.dataholderVertical {
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  width: 100%;
}

.badges {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}

.fakemondesigner {
  position: absolute;
  top: 0;
  left: 0;
}


.characterimage {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) translateX(0);
  max-height: 100%;
  transition: transform 0.45s cubic-bezier(.77,0,.18,1),
              opacity 0.35s ease;
}

/* Leaving right */
.characterimage.leave {
  transform: translate(-50%, -50%) translateX(150%);
  opacity: 0;
}

/* Start off left */
.characterimage.enter-start {
  transform: translate(-50%, -50%) translateX(-150%);
  opacity: 0;
}

/* Animate into center */
.characterimage.enter {
  transform: translate(-50%, -50%) translateX(0);
  opacity: 1;
}

.banner
{
  color: var(--data-text-color);
}

.banner a
{
  color: blue; 
}