@font-face {
    font-family: 'sawarabi_gothicregular';
    src: url('../fonts/sawarabigothic/sawarabigothic-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

:root {
  --dk-color: #5b3c5a;
  --mid-color: #fecee7;
  --lt-color: #ffecf6;
  --dkest-color: #1f0713;
  --blk-color: #000408;
  --accent: #3c0308;
}

.container {
  font-family: 'sawarabi_gothicregular', Garamond;
  background-color: var(--mid-color);
  color: var(--dkest-color);
  width: 400px;
  padding: 25px 35px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 3px;
  border: 2px solid var(--accent);
  outline: 4px solid var(--lt-color);
}

body {
  margin: 0;
  background-color: var(--dk-color);
  background-image: url("../backgrounds/index.png");
  background-repeat: repeat;
  background-attachment: fixed;
  background-size: 36px;
}

p {
  font-family: 'sawarabi_gothicregular', 'Garamond';
  margin: 0;
  color: var(--dkest-color);
  font-size: 1rem;
  overflow: hidden;
  word-break: break-word;
  box-sizing: border-box;
}

button {
  width: 100%;
  min-height: 36px;
  height: 2%;
  text-align: center;
  background-image: linear-gradient(to bottom, rgba(217, 179, 228, 1) 0, rgba(205, 163, 214, 1) 43.75%, rgba(194, 146, 200, 1) 56.25%, rgba(182, 130, 186, 1) 68.75%, rgba(172, 115, 173, 1) 81.25%, rgba(159, 98, 158, 1) 87.5%, rgba(148, 87, 144, 1) 93.75%, rgba(137, 87, 131, 1) 100%);
  text-shadow: .75px .5px .5px var(--lt-color);
  position: relative;
  font-family: 'sawarabi_gothicregular', 'Garamond';
  font-size: 1em;
  color: var(--dkest-color);
  border: 1px solid var(--accent);
  border-radius: 6px;
  transition: opacity 0.15s, box-shadow 0.15s;
  cursor: pointer;
}

button:hover {
  opacity: 90%;
  box-shadow: 1px 1px 1px inset var(--dkest-color), -1px -1px 1px inset var(--lt-color);

}

button:active {
  opacity: 60%;
}

input {
  width: 100%;
  height: 50px;
  border: 1px solid var(--accent);
  padding: 10px;
  margin: 10px 0;
  border-radius: 5px;
  box-sizing: border-box;
}

#imgBox {
  width: 200px;
  border-radius: 5px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 1s;
}

#imgBox img{
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}

#imgBox.show-img {
  max-height: 200px;
  margin: 10px auto;
  border: 1px solid var(--accent);
}

.error {
  animation: shake 0.1s linear 2;
}
@keyframes shake {
  0%{
    transform: translateX(0);
  }
  25%{
    transform: translateX(-2px);
  }
  50%{
    transform: translateX(0);
  }
  75%{
    transform: translateX(2px);
  }
  100%{
    transform: translateX(0);
  }
}