/* CSS Reset */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}


* {
  -webkit-tap-highlight-color: transparent;
  user-select: none;
  outline: none;
}

html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
  font-size: 100%;
  line-height: 1.5;
}

*:active,
*:focus {
  outline: none !important;
  box-shadow: none !important;
}

body {
  font-family: Arial, sans-serif;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

button,
input,
select,
textarea {
  font-family: inherit;
}

a {
  text-decoration: none;
  color: inherit;
}

ul,
ol {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

button {
  background: none;
  border: none;
  cursor: pointer;
}

@font-face {
  font-family: "KGSummerStorm";
  src: url("../fonts/KGSummerStormRough.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

body {
  font-family: "KGSummerStorm", sans-serif;
}

#mobileWrapper {
  height: 100dvh;
  width: 100vw;
  overflow: hidden;
}

.result {
  height: 100%;
  width: 100%;
  /* background-image: url("/images/result/底.png"); */
  background-position: center;
  background-size: cover;
  padding: 4% 2%;
}

.poem-pic {
  position: relative;
  height: 70%;
}

.info {
  height: 30%;
}

.poem-pic img {
  margin: auto;
  height: 100%;
  position: relative;
  border: 4px solid white;
}

.save-pic {
  height: 60%;
  margin: auto;
  object-fit: contain;
}

.camera-control {
  height: 40%;
  grid-area: control;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}

.camera-control>* {
  width: 30%;
}

.loader {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.loader-pudding-pic {
  width: 40%;
}

.loader-text-pic {
  width: 80%;
}

.loader-wrapper {
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #FDFBD2;
}

.loader-info {
  color: #875641;
  width: 60%;
  font-size: 10px;
}
.mt-1rem {
  margin-top: 1rem;
}

.loader-info span {
  font-family: sans-serif;
}

.hidden {
  display: none;
}

@media screen and (max-width: 900px) {
  body {
    height: 100dvh;
    width: 100vw;
    overflow: hidden;
  }
}


@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}