@import url(https://use.typekit.net/nbn8cih.css);
@import url(https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css);
@charset "UTF-8";
.column-container {
  display: flex;
  flex-direction: column;
}

.row-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
}
.background::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--Screening);
}

.layer-inner {
  position: relative;
  z-index: 2;
}

.item-image {
  position: relative;
  display: flex;
  width: 100%;
  max-width: calc((100vh - 42px) * 0.4);
  margin: 0 auto;
  border-radius: 8px;
  overflow: hidden;
}
.item-image .hidden-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.item-image .thumb {
  position: relative;
  display: flex;
  width: 100%;
  height: 0;
  padding-bottom: 180.667%;
}
.item-image .thumb img, .item-image .thumb video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.item-image.crop .thumb {
  padding-bottom: 134%;
}
.item-image.crop:not(:has(.frame-guide)) .thumb img {
  top: 0;
  height: auto;
  top: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.layer-title {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 4px;
  text-align: center;
  padding: 79px 0 20px;
}
.layer-title .title {
  color: var(--Raw-Primary-White);
  font-family: "Pretendard";
  font-size: 2.1rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.23;
}
.layer-title .sub, .layer-title .sub a {
  color: var(--Gray-Gray-30);
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.38;
}
.layer-title .text-content:has(a) {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  display: flex !important;
  gap: 6px;
  justify-content: center;
}
.layer-title .sub a {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 3px;
}
.layer-title .sub a::after {
  margin-top: 1.5px;
  content: "";
  width: 16px;
  height: 16px;
  background-size: contain;
  background-image: url(assets/images/icon-arrow_outward-small.svg);
  background-repeat: no-repeat;
}

.text-container {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.text-container::before {
  content: "-";
  opacity: 0;
}
.text-container .text-content {
  position: absolute;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 4px;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.text-container.without-y {
  min-height: 36px;
}
.text-container.without-y .text-content {
  display: block;
  transform: none !important;
}

.layer-content {
  opacity: 0;
}

.layer-floating {
  display: flex;
  flex-direction: column;
  height: var(--vh);
  justify-content: center;
}
.layer-floating .layer-container {
  position: relative;
  width: calc(100% - 20px);
  height: -moz-max-content;
  height: max-content;
  margin: 0 auto;
  padding: 8% 7.3% 8%;
  border-radius: 24px;
  background-color: var(--Raw-Primary-Black);
  z-index: 2;
}
.layer-floating .floating {
  position: relative;
}
.layer-floating .layer-ui {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 20px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.layer-floating .layer-title {
  margin-bottom: 12px;
  padding: 15px 20px;
}

.button-play,
.button-close {
  width: 9.06%;
  height: 0;
  padding: 0 0 9.06% 0 !important;
  background-color: var(--Gray-Gray-90);
}
.button-play span,
.button-close span {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 58% !important;
  height: 58% !important;
}

.layer-full {
  height: var(--vh);
}
.layer-full .layer-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100%;
}
.layer-full .thumb-container {
  width: 100% !important;
  flex: unset !important;
}

.layer.guide {
  display: none;
}
.layer.guide .layer-container {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  min-height: var(--vh);
}
.layer.guide .background {
  opacity: 0;
}
.layer.guide .floating.column-container {
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 12px 0 calc(env(safe-area-inset-bottom) + 46px);
}
.layer.guide .thumb-inner {
  position: relative;
}
.layer.guide .button-play {
  position: absolute !important;
  bottom: 15px;
  left: 15px;
  z-index: 10;
  background-color: var(--Material-Light-Thick, rgba(255, 255, 255, 0.4)) !important;
}
.layer.guide .text-container.sub::before {
  content: "→\a";
}

.toast-alert {
  position: fixed;
  bottom: calc(env(safe-area-inset-bottom) + 46px);
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  max-width: var(--maxWidth);
  padding: 0 10px;
  overflow: hidden;
  opacity: 0;
  display: none;
}
.toast-alert.is-selected {
  z-index: 9999 !important;
}
.toast-alert .toast-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 12px 15px;
  margin: 0 auto;
  color: var(--Raw-Primary-White);
  background-color: var(--Gray-Gray-90);
  border-radius: 4px;
}
.toast-alert .row-container {
  align-items: center;
}
.toast-alert .text {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.42;
}
.toast-alert .link-text {
  padding: 0 4px;
  color: var(--Gray-Gray-10, #F9FEFF);
  font-family: "neue-haas-grotesk-text";
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.33;
}
.toast-alert button {
  padding: 0 10px;
  color: var(--Raw-Primary-Blue);
  font-family: "neue-haas-grotesk-text";
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.42;
  display: none;
}
.toast-alert button.is-visible {
  display: block;
}

.layer-alert {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: var(--vh);
}

.alert-container {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-self: center;
  width: calc(100% - 40px);
  padding: 20px 16px 0 0;
  margin: 0 auto;
  border-radius: 24px;
  background: var(--Gray-Gray-100, #0F0F0F);
  box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.25);
  color: var(--Raw-Primary-White);
  z-index: 3;
  opacity: 0;
}
.alert-container .alert-title {
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: center;
  padding-bottom: 15px;
}
.alert-container .title {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.37;
  text-align: center;
}
.alert-container .sub {
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.38;
  text-align: center;
}
.alert-container .alert-buttons {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.alert-container .button-alert {
  width: 50%;
  padding: 11px;
  color: var(--Raw-Primary-Blue);
  font-feature-settings: "dlig" on, "ss01" on, "ss03" on, "ss06" on;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
}

.layer-full, .layer-alert, .layer-floating {
  display: none;
  pointer-events: none;
}
.layer-full .layer-container, .layer-alert .layer-container, .layer-floating .layer-container {
  opacity: 0;
}

.layer-game .item-image {
  opacity: 0;
  width: 100%;
  display: none;
}
.layer-game .item-image.crop {
  max-width: calc((100vh - 207px) * 0.6);
}
.layer-game .layer-ui {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.layer-game .layer-container {
  padding: 0 20px;
  opacity: 1;
}
.layer-game .thumb-container {
  height: 100%;
}
.layer-game .game-ui {
  position: relative;
  width: 100%;
}
.layer-game .game-inner {
  position: relative;
  max-width: calc((100vh - 42px) * 0.4);
  width: 100%;
  margin: 0 auto;
}
.layer-game .canvas-area {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  border-radius: 18px;
  overflow: visible;
}
.layer-game .canvas-area canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  pointer-events: auto;
  border-radius: 18px;
}
.layer-game .layer-game-container {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.layer-game .layer-game-container .canvas-area {
  margin-bottom: 58px;
}
.layer-game .ui-inner {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  gap: 4px;
  z-index: 3;
  display: none;
  opacity: 0;
  pointer-events: none;
}
.layer-game .ui-inner.start {
  justify-content: flex-end;
  margin-top: 56px;
}
.layer-game .background {
  pointer-events: none;
  opacity: 1;
}
.layer-game .background .background::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--Raw-Primary-Black, linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), #0F0F0F);
  pointer-events: none;
  opacity: 0.8;
}
.layer-game .layer-title {
  position: relative;
  z-index: 10;
}
.layer-game .timer {
  position: relative;
  padding: 0 14px;
  margin: 0 auto 10px;
  width: -moz-max-content;
  width: max-content;
  height: 38px;
  max-height: 38px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  border-radius: 24px;
  background-color: var(--Gray-Gray-90);
  overflow: hidden;
}
.layer-game .timer .icon-dotgroup {
  position: relative;
  z-index: 3;
}
.layer-game .timer .num {
  position: relative;
  min-width: 22px;
  text-align: left;
  z-index: 3;
  color: var(--Raw-Primary-White);
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.37;
  font-variant-numeric: tabular-nums;
}
.layer-game .timer .num:nth-of-type(1) {
  text-align: right;
}
.layer-game .timer .background {
  pointer-events: none;
  background-color: var(--Gray-Gray-90);
  z-index: 1;
}
.layer-game .timer .line {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 1px solid var(--Raw-Primary-White);
  border-radius: 24px;
  opacity: 0;
  pointer-events: none;
  z-index: 2;
}
.layer-game .timer .icon-dotgroup {
  margin: 13px 4px;
  transform: translateY(1px);
}
.layer-game:not([data-type=Game]) .thumb-container {
  flex: 2 !important;
}
.layer-game.is-prevent canvas {
  pointer-events: none !important;
}

body:has(.grid-view) .button-grid .icon-grid::before {
  opacity: 1;
}

.app {
  max-width: 100vw;
  overflow-x: hidden;
}

.thumb-preview img {
  opacity: 0;
}

.item-container:has(.item-hidden) {
  position: relative;
}

.item-hidden {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: calc(100% - 40px);
  z-index: 3;
  opacity: 0;
  pointer-events: none;
}

.item-size {
  position: absolute;
  top: 0;
  left: 0;
  max-width: calc((100vh - 42px) * 0.4);
  width: 100%;
  background-color: blue;
  opacity: 0;
  pointer-events: none;
}
.item-size::before {
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 180.667%;
}

.dots-loader {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
}

.dots-loader span {
  width: 10px;
  height: 10px;
  margin: 0 5px;
  background-color: #3498db;
  border-radius: 50%;
  animation: dots 1.5s infinite;
}

.dots-loader span:nth-child(1) {
  animation-delay: 0s;
}

.dots-loader span:nth-child(2) {
  animation-delay: 0.3s;
}

.dots-loader span:nth-child(3) {
  animation-delay: 0.6s;
}

@keyframes dots {
  0%, 80%, 100% {
    transform: scale(0);
    opacity: 0.5;
  }
  40% {
    transform: scale(1);
    opacity: 1;
  }
}
.layer-loading {
  height: 100dvh;
}
.layer-loading::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--Raw-Primary-Black);
  opacity: 0.8;
  z-index: 1 !important;
}
.layer-loading .thumb-inner {
  position: relative;
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 2;
}
.layer-loading .loading {
  position: relative;
  display: block;
  width: clamp(40px, 10vw, var(--maxWidth) * 0.1);
  height: clamp(40px, 10vw, var(--maxWidth) * 0.1);
  /* max-width: 102.6px;
  max-height: 102.6px; */
  margin: 0 auto;
  opacity: 0;
}
.layer-loading .guide-text {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.38;
  color: var(--Raw-Primary-White);
  text-align: center;
  opacity: 0;
}
.layer-loading .loading lottie-player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.empty-text {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 142px;
  margin: 0 auto;
  box-sizing: border-box;
}
.empty-text .text-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  gap: 6px;
  padding: 29px 6px 31px;
  border-radius: 24px;
  margin-bottom: 46px;
  background: var(--Gray-Gray-90, #20242A);
  box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.4) inset;
}
.empty-text .title {
  color: var(--Raw-Primary-White);
  font-family: "Pretendard";
  font-size: 2.1rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.23;
}
.empty-text .description {
  color: var(--Gray-Gray-30);
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.38;
}
.empty-text .button-link {
  position: absolute;
  bottom: calc(env(safe-area-inset-bottom) + 46px);
  left: 0;
  right: 0;
  margin: auto;
}

[data-screen="404"] .view {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 100dvh;
  padding: 20px 0;
  align-items: center;
}
[data-screen="404"] .description {
  padding: 20px 0 36px;
  color: var(--Gray-Gray-30);
  font-feature-settings: "dlig" on, "ss01" on, "ss03" on, "ss06" on;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
}
[data-screen="404"] .icon-404 {
  display: flex;
  flex-direction: column;
  width: calc(100% - 76px);
  margin: 0 auto;
}
[data-screen="404"] .icon-404 .inner {
  position: relative;
  width: 100%;
  padding-bottom: 41.8%;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(assets/images/404.png);
}

.visible-hint .game-hint {
  display: block;
  opacity: 1;
}
.visible-hint .button-game-hint span::before {
  opacity: 0;
}
.visible-hint .button-game-hint span::after {
  opacity: 1;
}

.layer-onboarding {
  width: 100%;
  height: 100%;
  display: none;
}
.layer-onboarding .layer-title {
  justify-content: flex-start;
  z-index: 3;
}
.layer-onboarding .layer-content {
  transform: scale(2.8);
}
.layer-onboarding .floating-ui {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0 20px calc(env(safe-area-inset-bottom) + 30px);
  opacity: 0;
}
.layer-onboarding .floating-ui .button-text {
  width: 100%;
}

.layer-privacy .layer-content {
  height: 100dvh;
  overflow-y: auto;
}
.layer-privacy .terms {
  padding: 72px 20px;
  color: var(--Gray-Gray-20);
  letter-spacing: 0.25px;
  font-family: "Pretendard";
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
}
.layer-privacy .terms .bold {
  font-weight: 700;
  margin: 24px 0;
}
.layer-privacy .terms .bold:first-of-type {
  margin: 0 0 24px;
}
.layer-privacy .terms .inner {
  display: block;
  padding-left: 12px;
}

.layer.layer-login,
.layer.layer-signup,
.layer.layer-onboarding {
  display: none;
}

[data-screen=signup] header {
  z-index: 31000;
}
[data-screen=signup] .layer-privacy {
  min-height: 100dvh;
  height: 100dvh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  display: none;
}
[data-screen=signup] .layer-privacy .layer-header {
  position: sticky;
  top: 0;
  left: 0;
  padding: 24px 20px;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  background-color: var(--Gray-Gray-90);
}
[data-screen=signup] .layer-privacy .layer-content {
  position: relative;
  opacity: 0;
  max-height: calc(100dvh - 100px);
  border-radius: 32px 32px 0px 0px;
  background-color: var(--Gray-Gray-90);
}
[data-screen=signup] .layer-privacy .layer-content .terms {
  padding: 0 20px 72px;
}
[data-screen=signup] .layer-privacy .layer-header .title-terms {
  font-family: "Pretendard";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.37;
  color: var(--Raw-Primary-White);
  max-width: calc(100% - 36px);
}
[data-screen=signup] .layer-privacy .layer-header .button-close-layer {
  border-radius: 50%;
  background-color: var(--Gray-Gray-40);
  padding: 6px;
  font-size: 0;
}
[data-screen=signup] .layer-privacy .layer-header .button-close-layer .icon-close {
  width: 16px;
  height: 16px;
}
@media (hover: hover), (-moz-touch-enabled: 0), (pointer: fine) {
  [data-screen=signup] .layer-privacy .layer-header .button-close-layer {
    transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
  }
  [data-screen=signup] .layer-privacy .layer-header .button-close-layer:not([data-screen=signup] .layer-privacy .layer-header .button-close-layer.--prevent):active {
    transform: scale(0.9) !important;
    transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
  }
  [data-screen=signup] .layer-privacy .layer-header .button-close-layer:not([data-screen=signup] .layer-privacy .layer-header .button-close-layer.--prevent):focus-within {
    transform: scale(0.9) !important;
    transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
  }
}
@media (hover: hover), (-moz-touch-enabled: 0), (pointer: fine) {
  [data-screen=signup] .button-layer {
    transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
  }
  [data-screen=signup] .button-layer:not([data-screen=signup] .button-layer.--prevent):active {
    transform: scale(0.9) !important;
    transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
  }
  [data-screen=signup] .button-layer:not([data-screen=signup] .button-layer.--prevent):focus-within {
    transform: scale(0.9) !important;
    transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
  }
}

.button-login {
  margin-bottom: 12px !important;
}

.button-outlink {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  padding: 0 10px;
  min-height: 44px;
}
.button-outlink .label {
  color: var(--Gray-Gray-30);
  font-family: "Pretendard";
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.35;
}

.item-image.item-promotion {
  border-radius: 8px;
  overflow: hidden;
  opacity: 0;
}
.item-image.item-promotion .background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-image: url(assets/images/promotion-frame.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 2;
  opacity: 1;
  border-radius: 8px;
  overflow: hidden;
}
.item-image.item-promotion .background::before {
  display: none;
}
.item-image.item-promotion .text-container {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.item-image.item-promotion .item-layer-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 20% 9% 7.6%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
.item-image.item-promotion .item-layer-inner .layer-title {
  padding: 0;
}
.item-image.item-promotion .text-date {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 3px;
  color: #F7E3F7;
  font-family: "Pretendard";
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-align: center;
  opacity: 0;
}
.item-image.item-promotion .layer-title .title {
  font-size: var(--Title);
}
.item-image.item-promotion .layer-title .title.t2 .text-content {
  background: linear-gradient(180deg, #FFF 52.03%, #597987 115.62%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.item-image.item-promotion .layer-title .sub {
  margin-top: 15px;
  color: #BEDFE2;
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.item-image.item-promote .icon-arrow_outward,
.layer-intro .swiper-slide .icon-arrow_outward {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 13%;
  height: auto;
  aspect-ratio: 1/1;
  background-size: 80% 80%;
  background-position: center center;
  z-index: 33;
}

button, a {
  background: transparent;
  border: none;
  cursor: pointer;
}

input,
textarea,
button,
select,
a {
  -webkit-tap-highlight-color: transparent;
}

img {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
}

.button-circle {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 44px;
  max-width: calc(var(--maxWidth) * 0.017);
  height: -moz-max-content;
  height: max-content;
}
.button-circle span {
  position: relative;
  display: flexs;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  background-color: #fff;
  border-radius: 50%;
}

.button-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: -moz-max-content;
  width: max-content;
  padding: 10px 20px;
  min-height: 44px;
  background-color: var(--Raw-Primary-White);
  border-radius: 24px;
  box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.25);
  color: var(--Raw-Primary-Black);
  font-family: "Pretendard";
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.35;
  pointer-events: auto;
  color: var(--Raw-Primary-Black);
}
.button-text * {
  pointer-events: none;
}
.button-text.solid {
  background-color: transparent;
  border: 1px solid var(--Raw-Primary-White);
}
.button-text:has(.input-file-container) {
  position: relative;
}
.button-text:has(.input-file-container).--prevent {
  opacity: 0.2;
}
.button-text:has(.input-file-container).--prevent input, .button-text:has(.input-file-container).--prevent label {
  pointer-events: none;
}
.button-text .label-sub {
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.38;
}

.button-reselect {
  padding: 8px 10px;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.42;
  color: #948888;
}

.tag {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  padding: 8px 16px;
  border-radius: 32px;
  background-color: var(--Raw-Primary-Black, linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), #0F0F0F);
}
.tag:has(.symbol) {
  padding: 8px 18px 8px 16px;
}
.tag .tag-leading, .tag .tag-trailing {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  min-height: 18px;
}

.tag-text {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.38;
  color: var(--Gray-Gray-10);
}
.tag-text.tag-name {
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.38;
  transform: none;
}
.tag-text.tag-team {
  color: var(--Gray-Gray-30);
  transform: translateY(0.5px);
}

.information-deck {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  z-index: 5;
  gap: 4px;
  padding: 10px;
  pointer-events: none;
}
.information-deck .symbol:not(:first-of-type) {
  margin-left: -4px;
}
.symbol {
  position: relative;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-size: contain;
  background-repeat: no-repeat;
}
.symbol img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  opacity: 1;
}
.symbol:has(img) {
  background-color: transparent;
}
.symbol.symbol-dislike {
  background-image: url(assets/images/reaction-symbol-dislike.png);
}
.symbol.symbol-like {
  background-image: url(assets/images/reaction-symbol-like.png);
}
.symbol.symbol-confused {
  background-image: url(assets/images/reaction-symbol-confused.png);
}
.symbol.symbol-hot {
  background-image: url(assets/images/reaction-symbol-hot.png);
}

.floating-ui {
  display: flex;
  flex-direction: column;
  gap: 8px;
  justify-content: center;
  align-items: center;
  padding-bottom: calc(env(safe-area-inset-bottom) + 18px);
  pointer-events: none;
  z-index: 900;
}
.floating-ui .sub {
  color: var(--Gray-Gray-30);
  font-family: "Pretendard";
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  min-height: 14px;
  display: flex;
  flex-direction: column;
}

.button-skip {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 4px;
  padding: 8px 10px;
}
.button-skip .symbol {
  width: 18px;
  height: 20px;
}
.button-skip .label {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.42;
  color: var(--Raw-Primary-White);
}

#hot {
  width: 33.86vw;
  height: 33.86vw;
}

.hidden-area {
  position: fixed;
  width: 100vw;
  height: var(--vh);
  top: 0;
  left: 0;
  z-index: 9999;
  pointer-events: none;
}

.hot {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 33.86vw;
  max-width: calc(var(--maxWidth) * 33.86);
}
.hot .inner {
  position: relative;
  padding-bottom: 97%;
}
.hot .inner svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.button-reaction {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  pointer-events: auto;
  max-width: unset !important;
  width: 45% !important;
}
.button-reaction .background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 1;
  transform: translateY(-1px);
}
.button-reaction .background:not(.--fill) {
  background: none;
}
.button-reaction .background::before {
  display: none;
}
.button-reaction .background.--fill {
  opacity: 0;
}
.button-reaction .symbol {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: transparent;
  z-index: 2;
  border-radius: 0;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
  background-color: #5B5D63;
  transform: scale(0.95);
  transform-origin: center center;
}
.button-reaction .inner {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
  transform-origin: center center;
}
.button-reaction .count {
  position: absolute;
  width: 11.34%;
  height: -moz-max-content;
  height: max-content;
  font-family: "neue-haas-grotesk-text";
  font-size: 2.1rem;
  font-style: normal;
  font-weight: 700;
  line-height: auto;
  letter-spacing: -0.02em;
  text-align: center;
  color: var(--Gray-Gray-20);
  z-index: 2;
  font-size: calc(var(--font) * 6.26);
}
.button-reaction .count::before {
  display: block;
  content: "";
  padding-bottom: 100%;
}
.button-reaction.reaction-hot {
  max-width: 127px;
  width: 37.9%;
  height: -moz-max-content;
  height: max-content;
}
.button-reaction.reaction-hot .inner {
  padding-bottom: 98.5%;
  -webkit-mask-image: url(assets/images/mask-hot.svg);
          mask-image: url(assets/images/mask-hot.svg);
}
.button-reaction.reaction-hot .symbol {
  -webkit-mask-image: url(assets/images/reaction-fill-hot.png);
          mask-image: url(assets/images/reaction-fill-hot.png);
}
.button-reaction.reaction-hot .background.--fill {
  background-image: url(assets/images/reaction-gradient-hot.png);
}
.button-reaction.reaction-hot .count {
  top: 23.47%;
  left: 2.54%;
  width: 29.92%;
}
.button-reaction.reaction-like {
  max-width: 127px;
  width: 45.5%;
  height: -moz-max-content;
  height: max-content;
}
.button-reaction.reaction-like .inner {
  padding-bottom: 78%;
  -webkit-mask-image: url(assets/images/mask-like.svg);
          mask-image: url(assets/images/mask-like.svg);
}
.button-reaction.reaction-like .symbol {
  -webkit-mask-image: url(assets/images/reaction-fill-like.svg);
          mask-image: url(assets/images/reaction-fill-like.svg);
}
.button-reaction.reaction-like .background.--fill {
  background-image: url(assets/images/reaction-gradient-like.png);
}
.button-reaction.reaction-like .count {
  bottom: 17%;
  left: 4%;
  width: 25%;
}
.button-reaction.reaction-dislike {
  width: 40% !important;
  max-width: 140px;
}
.button-reaction.reaction-dislike .inner {
  padding-bottom: 88%;
  -webkit-mask-image: url(assets/images/mask-dislike.svg);
          mask-image: url(assets/images/mask-dislike.svg);
}
.button-reaction.reaction-dislike .symbol {
  -webkit-mask-image: url(assets/images/reaction-fill-dislike.svg);
          mask-image: url(assets/images/reaction-fill-dislike.svg);
}
.button-reaction.reaction-dislike .background.--fill {
  background-image: url(assets/images/reaction-gradient-dislike.png);
}
.button-reaction.reaction-dislike .count {
  bottom: 3.17%;
  left: 3.57%;
  width: 28.57%;
}
.button-reaction.reaction-confused {
  max-width: 114px;
  width: 40% !important;
}
.button-reaction.reaction-confused .inner {
  padding-bottom: 118%;
  -webkit-mask-image: url(assets/images/mask-confused.png);
          mask-image: url(assets/images/mask-confused.png);
  -webkit-mask-size: contain;
          mask-size: contain;
}
.button-reaction.reaction-confused .symbol {
  -webkit-mask-image: url(assets/images/reaction-fill-confused.png);
          mask-image: url(assets/images/reaction-fill-confused.png);
}
.button-reaction.reaction-confused .background.--fill {
  background-image: url(assets/images/reaction-gradient-confused.png);
}
.button-reaction.reaction-confused .count {
  top: 41.13%;
  right: 5%;
  width: 33.06%;
}
.button-reaction span {
  position: relative;
  z-index: 2;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
}
.button-reaction .shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  box-shadow: 0px 1px 16px 2px rgba(0, 0, 0, 0.25), 0px -4px 4px 0px rgba(255, 255, 255, 0.25) inset, 0px 1px 0px 1px rgba(255, 255, 255, 0.4) inset, 0px 4px 16px 0px rgba(255, 255, 255, 0.25) inset;
  z-index: 0;
}

.button-glow {
  position: relative;
  width: -moz-max-content;
  width: max-content;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  padding: 14px 30px;
  height: 50px;
  max-height: 50px;
  opacity: 0;
  overflow: visible;
}
.button-glow .label {
  position: relative;
  font-family: "Pretendard";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.37;
  color: var(--Raw-Primary-Black);
  z-index: 5;
  pointer-events: none;
}
.button-glow .label::-moz-selection {
  background-color: transparent;
}
.button-glow .label::selection {
  background-color: transparent;
}
.button-glow .background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  border-radius: 24px;
  background-color: var(--Gray-Gray-10);
  z-index: 2;
  pointer-events: none;
  overflow: hidden;
}
.button-glow .background:before {
  display: none;
}
.button-glow .webm-1,
.button-glow .webm-2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  border-radius: 24px;
}
.button-glow .webm-1.webm-2,
.button-glow .webm-2.webm-2 {
  display: none;
}
.button-glow .glow-effect {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 135%;
  height: -moz-max-content;
  height: max-content;
  display: block;
  transform: translate(-50%, -50%) scaleX(0.8) scaleY(0.8);
  z-index: 1;
  pointer-events: none;
  opacity: 0;
}
.button-glow .glow-effect::before {
  position: relative;
  display: block;
  content: "";
  width: 100%;
  padding-bottom: 110.5%;
}
.button-glow .glow-effect span {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  background-size: contain;
  background-image: url(assets/images/glow-0.png);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  transform-origin: 50% 50%;
}
.button-glow .glow-effect span video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.button-icon {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 10px;
  overflow: hidden;
  border-radius: 50%;
  background-color: var(--Gray-Gray-80);
}
.button-icon [class^=icon] {
  display: flex;
  flex-direction: column;
  width: 24px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
  font-size: 0;
  text-indent: -9999px;
}

.floating .button-icon {
  border-radius: 50%;
}
.button-delete {
  padding: 7px;
  background-color: var(--Raw-Primary-Black);
  border-radius: 50%;
}
.button-delete span:not(.icon-delete-white) {
  background-image: url(assets/images/icon-delete.svg);
}

.button-reselect {
  position: relative;
  width: 11.73vw;
  height: 11.73vw;
  max-width: calc(var(--maxWidth) * 0.1173);
  max-height: calc(var(--maxWidth) * 0.1173);
}
.button-reselect span {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 54%;
  height: 54%;
  background-image: url(assets/images/icon-reset.svg);
}

*::-moz-selection {
  background-color: transparent;
}

*::selection {
  background-color: transparent;
}

.button-renew {
  background-color: var(--Gray-Gray-80);
}

.button-game-start {
  padding: 10px 30px;
  background: var(--Raw-Primary-Blue);
  /* float-high */
  box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.25);
}
.button-game-start .label {
  color: var(--Raw-Primary-White);
}

.game-start .button-game-start {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  height: -moz-max-content;
  height: max-content;
}
.game-start .background {
  background: var(--Raw-Primary-Black, linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%), #0F0F0F);
}

.button-delete {
  z-index: 4;
}

.tag-symbols .symbol {
  border-radius: 50%;
  overflow: hidden;
}

.button-grid {
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.button-grid .icon-grid {
  position: relative;
}
.button-grid .icon-grid::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/icon-grid-fill.png);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.button-grid:disabled {
  opacity: 0.8;
}

.button-frame {
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.button-frame .icon-frame {
  position: relative;
}
.button-frame .icon-frame::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/icon-frame-fill.png);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.button-frame.is-ordering .icon-frame::before {
  opacity: 1;
}

.button-account .icon-account {
  position: relative;
  width: 24px;
  height: 24px;
  transition: opacity 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.button-account .icon-account::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/icon-account.png);
  background-size: contain;
  background-repeat: no-repeat;
}
.button-account .icon-account::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/icon-account-fill.png);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
}
.button-account.is-selected .icon-account::after {
  opacity: 1;
}

.hidden-area svg clip-path {
  width: 0;
  height: 0;
}

.button-glow {
  transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.button-glow:active {
  transform: scale(0.9) !important;
  transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}

div.button-icon {
  transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
div.button-icon:focus-within {
  transform: scale(0.9) !important;
  transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}

.button-text {
  transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.button-text:not(.button-text.--prevent):active {
  transform: scale(0.9) !important;
  transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}
.button-text:not(.button-text.--prevent):focus-within {
  transform: scale(0.9) !important;
  transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}

.button-icon {
  transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.button-icon:active {
  transform: scale(0.9) !important;
  transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}

button:focus {
  outline: none;
}

.button-debug {
  position: absolute;
  display: block;
  height: 100%;
  width: 60px;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: none !important;
}

.button-game-hint {
  position: absolute;
  top: -47px;
  right: 0;
  transform: none !important;
  z-index: 100;
  padding: 5px;
  background-color: var(--Gray-Gray-90);
  scale: 1 !important;
}
.button-game-hint span {
  position: relative;
  display: block;
  width: 22px;
  height: 22px;
}
.button-game-hint span::before, .button-game-hint span::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/icon-show-password.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.button-game-hint span::after {
  background-image: url(assets/images/icon-show-password-fill.svg);
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}

.button-post {
  padding: 10px 30px;
}

.button-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 15px 12px;
  border: none;
  border-radius: 26px;
  background-color: var(--Gray-Gray-90);
}
@media screen and (max-width: 400px) {
  .button-row {
    width: 100%;
    min-width: unset;
  }
}
.button-row .label {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.375;
  color: var(--Gray-Gray-10);
}

#naverIdLogin {
  position: relative;
  display: flex;
  align-items: center;
  box-shadow: none;
}
#naverIdLogin::before {
  content: "";
  width: 20px;
  height: 20px;
  background-image: url(assets/images/icon-naver.svg);
  background-size: contain;
}
#naverIdLogin::after {
  content: "네이버로 로그인";
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.375;
  color: var(--Gray-Gray-10);
}
#naverIdLogin img {
  display: none;
}
#naverIdLogin #naverIdLogin_loginButton {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: auto;
}

.button-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  gap: 8px;
  padding: 0 clamp(40px, 10vw, 40px);
}

form,
#form-signup {
  min-height: 220px;
}

#form-login {
  padding-top: clamp(20px, 8vw, 50px);
  width: 100%;
  height: 100%;
}
#form-login .error {
  padding: 8px 20px 30px;
  justify-content: flex-start;
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}

.content-signup {
  height: 100dvh;
}
.content-signup .form-container {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.button-delete-account {
  display: block;
  color: #fff;
  font-size: 1.4rem;
  margin: 0 auto;
  padding: 20px;
  width: -moz-max-content;
  width: max-content;
}

.error-container {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  padding: 8px 20px 17px;
}
.error-container .error-content {
  position: relative;
  font-family: "Pretendard";
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  color: var(--Raw-Primary-Red);
  padding-left: 26px;
  line-height: 2rem;
}
.error-container .error-content::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(assets/images/icon-error-2.svg);
}
.error-container .error-content.input-noti {
  color: var(--Gray-Gray-40);
}
.error-container .error-content.input-noti::before {
  background-image: url(assets/images/icon-noti.svg);
}
.error-container .error-content.error-text {
  opacity: 0;
}

.button-signup {
  width: calc(100% - 40px);
  margin: 0 auto;
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1);
  pointer-events: auto;
}
.button-signup:disabled {
  opacity: 0.2;
  pointer-events: none;
}

.button-disable {
  padding: 10px 24px;
}
.button-disable .label-time {
  display: inline-block;
  text-align: right;
}

.button-service-hold {
  background-color: var(--Raw-Secondary-Red);
  box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.25);
}
.button-service-hold * {
  color: var(--Raw-Primary-Red);
}

.button-generate.--prevent {
  opacity: 0.2;
}

.button-share-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  justify-content: center;
  padding: 22px 0;
}
.button-share-container .button-icon[data-share=kakao] {
  background-color: var(--Social-Kakao);
}

.util-container {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
}
.util-container.hidden {
  display: none;
}
.util-container .button-logout {
  position: relative;
  background-color: transparent;
  color: var(--Gray-Gray-60);
  box-shadow: none;
}
.util-container .button-logout::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--Gray-Gray-60);
  border-radius: 24px;
  overflow: hidden;
  box-sizing: border-box;
}
.util-container .link-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 4px;
  padding-bottom: calc(env(safe-area-inset-bottom) + 68px);
}
.util-container .link-row a, .util-container .link-row span {
  font-feature-settings: "dlig" on, "ss01" on, "ss03" on, "ss06" on;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  color: var(--Gray-Gray-30);
}
.util-container .link-row a {
  text-decoration: underline;
}

.button-hidden-splash {
  pointer-events: none;
}

.button-random {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  bottom: 0;
  right: 20px;
  padding: 12px 8px;
  background-color: transparent;
  z-index: 30;
}

#form-login .input-wrap {
  gap: 0;
}
#form-login .button-login {
  width: calc(100% - 40px);
  margin: 0 auto;
  padding: 13px 20px;
  height: 50px;
  min-height: 50px;
}
#form-login .button-login .label {
  font-size: 1.6rem;
}
#form-login .button-outlink {
  height: 50px;
  min-height: 50px;
}

.login-utils {
  margin: 0 auto;
  width: calc(100% - 20px);
}

#kakao-login-button {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 4px;
  width: calc(100% - 20px);
  margin: 30px auto 0;
  padding: 13px 20px;
  height: 50px;
  min-height: 50px;
  background-color: #FEE500;
}
#kakao-login-button .label {
  font-size: 1.6rem;
}

.floating {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100vw;
  max-width: var(--maxWidth);
  margin: auto;
  z-index: 40;
}

.floating-take,
.floating-continue {
  position: fixed !important;
  display: none;
  opacity: 0;
  width: 100%;
  max-width: var(--maxWidth);
}

.next-floating {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.button-continue {
  margin: 0 auto;
}

.button-text.button-gray {
  background-color: var(--Gray-Gray-80);
  color: var(--Raw-Primary-White);
}

.dimmer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: var(--maxWidth);
  margin: auto;
  pointer-events: none;
  z-index: 9;
}
.dimmer::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, 0) 100%);
}
.dimmer span {
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 17%;
  background: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, 0) 100%);
}
.dimmer.bottom {
  top: auto;
  bottom: 0;
  z-index: 0;
}
.dimmer.bottom span {
  background: linear-gradient(0deg, #000 0%, rgba(0, 0, 0, 0) 100%);
}
.dimmer.bottom::before {
  background: linear-gradient(0deg, #000 0%, rgba(0, 0, 0, 0) 100%);
}

.logo {
  position: relative;
  display: block;
  width: 40px;
  height: 20px;
  background-image: url(assets/images/logo.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100vw;
  max-width: var(--maxWidth);
  margin: auto;
  z-index: 1020;
}
.header h1 {
  position: relative;
  padding: 16px 8px;
}
.header h1 .logo {
  width: 55px;
  height: 16px;
}
.header .button-share {
  display: none;
}
.header .header-container {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 8px;
}
.header .button-icon {
  background-color: transparent;
}
.header .ui-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  padding: 2px 0;
}
.header .header-title {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: -moz-max-content;
  width: max-content;
  padding: 0 10px;
  max-width: calc(100% - 87px);
  margin: 0 auto;
  color: var(--Raw-Primary-White);
  font-family: "Pretendard";
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.37;
}

.input-file-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.1;
  cursor: pointer;
}
.input-file-container label {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: auto;
  cursor: pointer;
  z-index: 90;
}
.input-file-container input[type=file] {
  display: none;
}

.input-checkbox-wrap {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 10px;
}
.input-checkbox-wrap .label {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.33;
}
.input-checkbox-wrap .input-checkbox-container {
  width: calc(100% - 44px);
}
.input-checkbox-wrap .button-layer {
  position: relative;
  padding: 7px;
}
.input-checkbox-wrap .button-layer::before {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  background-image: url(assets/images/icon-chevron_right.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.input-checkbox-container {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 11px;
  gap: 11px;
  cursor: pointer;
}
.input-checkbox-container::before {
  position: relative;
  content: "";
  display: block;
  margin-top: 2px;
  width: 16px;
  min-width: 16px;
  height: 16px;
  background-image: url(assets/images/icon-checkbox.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.input-checkbox-container::after {
  position: absolute;
  top: 13px;
  left: 11px;
  content: "";
  display: block;
  width: 16px;
  min-width: 16px;
  height: 16px;
  background-image: url(assets/images/icon-checkbox-fill.svg);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
}
.input-checkbox-container:has(input:checked)::after {
  opacity: 1;
}
.input-checkbox-container .label {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.33;
  color: var(--Gray-Gray-30);
}
.input-checkbox-container input {
  display: none;
}

.layer-login {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  flex: 1;
  width: 100%;
  min-height: var(--vh);
  overflow-y: auto;
  opacity: 0;
}
.layer-login .bridge-background {
  opacity: 1;
  transform: none;
}
.layer-login .content {
  position: relative;
  z-index: 30;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 73px 0 0;
  align-items: center;
  justify-content: center;
}
.layer-login .content.content-login {
  flex: 2;
  padding: 58px 0 calc(env(safe-area-inset-top) + 30px);
  height: 100dvh;
  box-sizing: border-box;
  justify-content: space-between;
}
.layer-login .content.content-login .input-section {
  width: 100%;
}
.layer-login form,
.layer-login #form-signup {
  width: 100%;
  height: 100%;
}
.layer-login form.is-text .icon-show-password::before,
.layer-login #form-signup.is-text .icon-show-password::before {
  opacity: 1;
}
.layer-login form.is-text .icon-show-password::after,
.layer-login #form-signup.is-text .icon-show-password::after {
  opacity: 0;
}
.layer-login .logo {
  width: 80px;
  height: 40px;
}
.layer-login h1 {
  width: 100%;
}
.layer-login h1 .logo {
  width: calc(100% - 120px);
  height: 0;
  padding-bottom: 35%;
  margin: 0 auto;
  background-image: url(assets/images/logotype.png);
}
.layer-login .form-container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 0;
}
.layer-login .form-container .input-section {
  display: flex;
  flex-direction: column;
  flex: 2;
  justify-content: space-between;
  width: 100%;
}
.layer-login .title {
  color: var(--Raw-Primary-White);
  text-align: center;
  font-family: "Pretendard";
  font-size: 2.8rem;
  font-weight: 600;
  line-height: 1.14;
  padding: 34px 0;
  margin-bottom: clamp(83px, 22vw, 83px);
}
.layer-login .input-label {
  padding: 8px 0 2px;
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.38;
  color: var(--Gray-Gray-40);
  text-transform: uppercase;
}
.layer-login .input-container {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 2px;
  padding: 0 10px;
}
.layer-login .input-container input {
  padding: 12px;
  border-radius: 8px;
  background-color: var(--Gray-Gray-90);
  color: var(--Gray-Gray-10);
  font-feature-settings: "dlig" on, "ss01" on, "ss03" on, "ss06" on;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  overflow: hidden;
  outline: none;
  border: none;
  text-indent: 26px;
  height: 48px;
  max-height: 48px;
}
.layer-login .input-container .icon {
  position: absolute;
  bottom: 14px;
  left: 20px;
}
.layer-login .input-container:focus-within input {
  background-color: var(--Gray-Gray-90);
  color: var(--Raw-Primary-White);
}
.layer-login .icon-show-password {
  position: relative;
  display: block;
  width: 24px;
  height: 24px;
}
.layer-login .icon-show-password::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/icon-show-password.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transition: opacity 0.2s cubic-bezier(0.33, 1, 0.68, 1);
  z-index: 3;
}
.layer-login .icon-show-password::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/icon-show-password-fill.svg);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.33, 1, 0.68, 1);
  z-index: 4;
}
.layer-login .button-text {
  margin-top: clamp(17px, 16vw, 17px);
  margin-bottom: 30px;
}
.layer-login .input-wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0 10px;
  width: 100%;
}
.layer-login .input-wrap:has(.input-checkbox-container) {
  gap: 0;
}
.layer-login .button-show-password {
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 12px 8px;
  z-index: 10;
  pointer-events: auto;
  cursor: pointer;
}
.layer-login form.is-error .error {
  opacity: 1;
}
.layer-login form.is-error input {
  border: 1px solid var(--Raw-Primary-Red);
}
.layer-login .copyright-container {
  margin-top: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 23;
}
.layer-login .copyright-container .outlink {
  position: relative;
  padding: 8px 12px;
  color: var(--Gray-Gray-50);
  text-align: center;
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.38;
}
@media (hover: hover), (-moz-touch-enabled: 0), (pointer: fine) {
  .layer-login .copyright-container a.outlink::before {
    position: absolute;
    left: 12px;
    width: calc(100% - 24px) !important;
    bottom: 6px;
    height: 1px;
    content: "";
    background-color: var(--Gray-Gray-30);
    transform: scaleX(0);
    transition: transform 0.15s cubic-bezier(0.33, 1, 0.68, 1);
    transform-origin: 0% 0%;
  }
  .layer-login .copyright-container a.outlink:hover::before {
    transform: scaleX(1);
    transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
  }
}
.layer-login .copyright-container .copyright {
  padding: 19px 0;
  color: var(--Gray-Gray-30);
  text-align: center;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.27;
  letter-spacing: 0.025em;
  text-transform: uppercase;
}
.layer-login .login-utils {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Change the white to any color */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px var(--Gray-Gray-90) inset !important;
  -webkit-transition: background-color 0s 600000s, color 0s 600000s !important;
  transition: background-color 0s 600000s, color 0s 600000s !important;
  color: var(--Gray-Gray-10) !important;
}

.input-require .label {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
}
.input-require .label::after {
  color: var(--Gray-Gray-70);
  content: "필수";
}

.error {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 2px;
  width: 100%;
  min-height: 30px;
  padding: 16px 4px 0;
  font-family: "Pretendard";
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
  color: var(--Raw-Primary-Red);
  text-align: center;
  justify-content: center;
  align-items: center;
  opacity: 0;
}
.error::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background-image: url(assets/images/icon-error.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.input-container.input-email-code input, .input-container.input-email input {
  text-indent: 0;
}

.label-email {
  padding: 8px 10px 2px !important;
}

.input-email-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: space-between;
  padding: 0 10px;
}
.input-email-container .input-container {
  padding: 0;
  width: calc(50% - 16px);
}
.input-email-container .char-email {
  height: 48px;
  display: flex;
  align-items: center;
  color: var(--Gray-Gray-50, #73757A);
  font-feature-settings: "dlig" on, "ss01" on, "ss03" on, "ss06" on;
  text-overflow: ellipsis;
  font-family: "Pretendard";
  font-size: 2.2rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}
.input-email-container .input-email-domain {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding: 12px;
  border-radius: 8px;
  font-feature-settings: "dlig" on, "ss01" on, "ss03" on, "ss06" on;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
}
.input-email-container .input-email-domain input {
  width: calc(100% - 32px) !important;
}
.input-email-container .input-email-domain input.is-select {
  z-index: 10;
}
.input-email-container .input-email-domain input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: 0;
}
.input-email-container .input-email-domain select {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 48px;
  box-sizing: border-box;
  padding: 12px;
  border-radius: 8px;
  background-color: var(--Gray-Gray-90);
  color: var(--Gray-Gray-10);
  border: none;
  font-feature-settings: "dlig" on, "ss01" on, "ss03" on, "ss06" on;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.input-email-container .input-email-domain select::-ms-expand {
  display: none;
}

.input-email-domain::after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  bottom: 0;
  margin: auto;
  right: 8px;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
  pointer-events: none;
  transform: rotate(0);
}
.input-container.input-email-code {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  gap: 8px;
}
.input-container.input-email-code input {
  width: calc(74% - 4px);
}
.input-container.input-email-code .button-verify-code {
  width: calc(26% - 4px);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  border-radius: 8px;
  background-color: var(--Gray-Gray-10);
}
.input-container.input-email-code .button-verify-code:disabled {
  opacity: 0.2;
  pointer-events: none;
}
.input-container.input-email-code .button-verify-code .label {
  font-family: "Pretendard";
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.35;
  color: var(--Raw-Primary-Black);
}
.input-container.input-email-code.is-disabled {
  pointer-events: none;
}
.input-container.input-email-code.is-disabled #verify-code {
  pointer-events: none;
}

.layer-signup {
  height: 100dvh;
}
.layer-signup .content-signup {
  height: -moz-max-content;
  height: max-content;
  padding-bottom: calc(env(safe-area-inset-top) + 30px);
  min-height: 100dvh;
}
.layer-signup .signup-layer {
  width: 100%;
}
.layer-signup .signup-layer[data-index="1"] {
  display: none;
  opacity: 0;
}
.layer-signup .signup-layer[data-index="1"] input {
  text-indent: 0;
}
.layer-signup .signup-layer[data-index="0"] input {
  text-indent: 0;
}
.layer-signup .is-verified .input-email-container,
.layer-signup .is-verified .input-email-code {
  pointer-events: none;
}
.layer-signup .is-verified #verify-code,
.layer-signup .is-verified select,
.layer-signup .is-verified .input-email-container input {
  color: rgba(255, 255, 255, 0.5) !important;
}
.layer-signup .is-verified .button-verify-code {
  pointer-events: none;
  opacity: 0.2;
}

.button-verify-code {
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1), transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.button-verify-code:focus-within {
  transform: scale(0.9) !important;
  transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}

.error-verify {
  position: relative;
  margin: 0 20px;
  width: calc(100% - 20px);
  padding: 0;
  margin: 3px auto 17px;
}
.error-verify .error-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-color: var(--Raw-Primary-Black);
}

.layer-login.layer-init .content {
  min-height: 100dvh;
  max-height: 100dvh;
  justify-content: space-between;
}
.layer-login.layer-init .content .inner {
  width: 100%;
}
.layer-login.layer-init .button-show-password {
  right: 20px;
}

[data-screen=signup] .header {
  z-index: 1000;
}
[data-screen=signup] .layer-loading {
  display: none;
}

.button-login {
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}

.button-login.is-disabled {
  pointer-events: none;
  opacity: 0.2;
}

input:-webkit-autofill {
  -webkit-text-fill-color: var(--Raw-Primary-White);
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
  -webkit-text-fill-color: var(--Raw-Primary-White) !important;
  transition-delay: 9999s;
}

input[type=password]::-webkit-contacts-auto-fill-button,
input[type=password]::-webkit-credentials-auto-fill-button {
  visibility: hidden;
  display: none !important;
  pointer-events: none;
  height: 0;
  width: 0;
  margin: 0;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  border: none;
  outline: none;
  text-decoration: none;
}

:focus-within {
  border: none;
}

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

html, body {
  font-size: 10px;
  background-color: var(--Raw-Primary-Black);
}

::-webkit-scrollbar {
  display: none;
}

a:focus, a:visited, a:active {
  outline: none;
}

*:focus {
  outline: none;
}

input,
textarea,
button,
select,
a {
  -webkit-tap-highlight-color: transparent;
}

:root {
  --gap: 20px;
  --maxWidth: 500px;
  --minWidth: 320px;
  --Raw-Primary-Black: #0F0F0F;
  --Raw-Primary-White: #F9FEFF;
  --Raw-Primary-Blue: #2E6FF1;
  --Raw-Primary-Green: #14DC46;
  --Raw-Primary-Red: #DD3333;
  --Raw-Secondary-Red: #340707;
  --Social-Kakao: #FEE500;
  --Gray-Gray-10: #F9FEFF;
  --Gray-Gray-20: #C5C6CD;
  --Gray-Gray-30: #A4A5AC;
  --Gray-Gray-40: #83858B;
  --Gray-Gray-50: #73757A;
  --Gray-Gray-60: #73757A;
  --Gray-Gray-70: #5B5D63;
  --Gray-Gray-80: #42444A;
  --Gray-Gray-90: #20242A;
  --Gray-Gray-100: #0F0F0F;
  --Screening: rgba(15, 15, 15, 0.8);
}

.form-container {
  display: flex;
  flex-direction: column;
  gap: var(--gap);
}

.input-container {
  display: flex;
  flex-direction: column;
  gap: var(--gap);
}
.app {
  width: 100vw;
  min-height: var(--vh);
}

.view {
  width: 100vw;
  max-width: var(--maxWidth);
  margin: 0 auto;
}

.logo {
  font-size: 0;
}

.item-container {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: var(--gap) 0;
}
.item-container.grid-view {
  width: 100% !important;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px !important;
}
.item-container.grid-view .item-image {
  margin-top: 0 !important;
  transform: none !important;
  opacity: 1 !important;
  max-width: unset !important;
}
.item-container.grid-view .information-deck {
  flex-wrap: nowrap;
}
.item-container.grid-view .tag-text {
  font-size: 1.1rem;
}
.item-container.grid-view .tag {
  padding: 6px 12px;
}
.item-container.grid-view .tag-reaction,
.item-container.grid-view .tag-reactions {
  flex-wrap: nowrap;
}
.item-container.grid-view .tag-userinfo {
  white-space: nowrap;
  overflow: hidden;
}
.item-container.grid-view .tag-userinfo .tag-leading {
  overflow: hidden;
}
.item-container.grid-view .tag-userinfo .tag-leading .tag-text {
  overflow: hidden;
  text-overflow: ellipsis;
}
.item-container.grid-view .tag .tag-leading, .item-container.grid-view .tag .tag-trailing {
  min-height: 14px;
}
.item-container.grid-view .tag .tag-trailing {
  overflow: hidden;
}
.item-container.grid-view .tag .tag-trailing .tag-text.tag-name {
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}
.item-container.grid-view .tag-reaction .symbol {
  width: 12px;
  height: 12px;
}
.item-container.grid-view .button-delete {
  width: 28px;
  height: 28px;
  transform-origin: bottom right;
}
.item-container.grid-view:has(.empty-text) {
  grid-template-columns: repeat(1, 1fr);
}

.frame-guide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/guide.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 1;
  pointer-events: none;
  overflow: visible;
}
.frame-guide img {
  position: absolute;
  width: auto;
  height: 100%;
  right: 0;
}

.layer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: var(--maxWidth);
  margin: auto;
}
.layer.is-selected {
  z-index: 999;
}
.layer::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  pointer-events: none;
}
.layer .thumb-container {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 2;
  align-items: center;
  width: 76%;
  margin: 0 auto;
}
.layer .thumb-container .thumb-inner {
  margin: 0 auto;
}
.layer .floating {
  position: relative;
  width: 100%;
  max-width: unset;
  justify-content: center;
  gap: 8px;
  padding-bottom: calc(env(safe-area-inset-top) + 28px);
}

.swiper-pagination {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: -moz-max-content !important;
  width: max-content !important;
  left: 0;
  right: 0;
  padding: 8px 12px;
  margin: 0 auto;
  gap: 8px !important;
  border-radius: 50px;
  opacity: 0;
}
.swiper-pagination .swiper-pagination-bullet {
  margin: 0 !important;
  background: var(--Raw-Primary-White) !important;
  opacity: 0.3 !important;
}
.swiper-pagination .swiper-pagination-bullet-active {
  opacity: 1 !important;
}

.center-section:has(.swiper-pagination) .swiper-pagination {
  bottom: 0;
}

.swiper-wrap {
  position: relative;
  width: 100%;
  padding-bottom: 50px;
}
.swiper-wrap:has(.swiper-slide) .swiper-pagination {
  opacity: 1;
}
.swiper-wrap .swiper-slide {
  opacity: 0;
  max-width: calc((100dvh - 200px) * 0.45) !important;
}

.swiper {
  max-width: calc((100dvh - 140px) * 0.62) !important;
}

.swiper-slide .item-image {
  max-width: unset;
}

body[data-screen=image],
body[data-screen=generate] {
  position: fixed;
  overflow: hidden;
}
body[data-screen=image] .app,
body[data-screen=generate] .app {
  position: relative;
  height: var(--vh);
  max-height: var(--vh);
  overflow: hidden;
  z-index: 2;
}

[data-screen=generate] .view {
  position: relative;
  z-index: 2;
}

[data-type=SelectionFrame] .floating.row-container {
  position: fixed !important;
}

.layer-generate {
  visibility: hidden;
  right: 0;
  margin: auto;
}
.layer-generate .error {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 15px;
  margin: auto;
}
.layer-generate .layer-container {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  min-height: var(--vh);
}
.layer-generate .floating {
  z-index: 10;
}
.layer-generate .row-container {
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 12px 0 calc(env(safe-area-inset-bottom) + 46px);
}
.layer-generate[data-index="0"] .item-image {
  overflow: visible;
}
.layer-generate[data-index="0"] .item-image .thumb {
  overflow: hidden;
}
.layer-generate[data-index="1"] .thumb-container {
  width: 100%;
}
.layer-generate[data-index="1"] .thumb-container .swiper-container {
  width: 100%;
}
.layer-generate.guide .column-container {
  gap: 20px;
  padding: 20px 20px calc(env(safe-area-inset-bottom) + 30px);
}
.layer-generate.guide .input-file-container {
  cursor: pointer;
  pointer-events: auto;
  z-index: 10;
}
.layer-generate.guide .input-file-container input {
  width: 100%;
  height: 100%;
}
.layer-generate[data-type=SelectionFrame] .thumb-container {
  padding-top: 58px;
}
.layer-generate[data-type=Share] .layer-container {
  padding: 12px 0 0;
}
.layer-generate[data-type=Share] .sub.text-container {
  min-height: 36px;
}
.layer-generate[data-type=Share] .item-image {
  max-width: calc((100dvh - 190px) * 0.4);
  min-width: unset;
}
.layer-generate[data-type=Share] .item-image img {
  opacity: 0;
}
.layer-generate[data-type=Share] .thumb-container {
  position: relative;
  z-index: 3;
}
.layer-generate[data-type=Share] .video {
  left: 50%;
  width: 100vh;
  max-width: calc(var(--maxWidth) * 2);
  max-height: calc(var(--maxWidth) * 2);
  transform: translateX(-50%);
}
.layer-generate[data-type=Share] .floating.row-container {
  flex-direction: column;
}
.layer-generate[data-type=Share] .floating.row-container .button-share-container {
  padding: 22px 0 16px;
}
.layer-generate[data-type=Share] .floating.row-container .floating-noti {
  color: var(--Gray-Gray-70);
  text-align: center;
  font-family: "Pretendard";
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
}

.info-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
  padding: 12px;
}
.info-container .info-indicator {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 16px;
  background-color: var(--Raw-Primary-Blue);
  border-radius: 40px;
  color: var(--Gray-Gray-10);
  font-family: "neue-haas-grotesk-text";
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.5;
  text-transform: uppercase;
}
.info-container .info-label {
  width: 100%;
  min-height: 24px;
  text-align: center;
  color: var(--Raw-Primary-White);
  font-feature-settings: "dlig" on, "ss01" on, "ss03" on, "ss06" on;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
}

.has-file .thumb-inner .input-file-container {
  display: none;
}

.cropper-container {
  border-radius: 8px;
  overflow: hidden;
}

.background-gradient {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 225%;
  height: 0;
  padding-bottom: 21.4%;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(assets/images/layer-gradient.png);
}

.floating.column-container {
  padding: 12px 0 calc(env(safe-area-inset-bottom) + 4px);
  gap: 4px;
  width: 100%;
  align-items: center;
  justify-content: center;
}

.layer[data-type=Crop] {
  opacity: 0;
}
.layer[data-type=Crop] .sub.text-container {
  min-height: 36px;
}

body.is-lock {
  overflow: hidden;
}

.game-hint {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0;
  display: none;
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.game-hint img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 93.5%;
  height: 93.5%;
  margin: auto;
  -o-object-fit: contain;
     object-fit: contain;
  opacity: 0.9;
  border-radius: 10px;
  overflow: hidden;
}

body {
  -webkit-overflow-scrolling: touch;
}

.app {
  position: relative;
  min-height: var(--vh);
  opacity: 0;
}

body {
  scroll-behavior: smooth;
}

:root {
  --vh: 100dvh;
}

.bridge-background {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: var(--vh);
  z-index: 10;
}
.bridge-background::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 1;
}
.bridge-background::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/splash-background.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 3;
}

.layer.layer-list {
  position: relative;
  min-height: var(--vh);
  z-index: 8;
}
.layer.layer-list.account {
  opacity: 0;
}
.layer.layer-list.account:has(.empty-text) {
  display: flex;
  flex-direction: column;
}
.layer.layer-list.account:has(.empty-text) .item-container {
  flex: 2;
  justify-content: center;
  align-items: center;
  width: calc(100% - 40px) !important;
  padding-bottom: 0 !important;
}
.layer.layer-list::before {
  display: none;
}
.layer.layer-list .item-container {
  padding: 0 20px 20vh;
  will-change: auto;
  gap: 0;
  margin-top: 0px;
  width: 82%;
  margin: 0 auto;
  transform-origin: center top;
}
.layer.layer-list .item-image {
  opacity: var(--ox);
  transform: translateX(var(--tx)) scale(var(--sx));
  will-change: opacity, transform;
  transform-origin: center center;
}
.layer.layer-list .item-image .background {
  z-index: 3;
}
.layer.layer-list .item-image:first-of-type {
  left: 2%;
  position: relative;
  margin-top: 0 !important;
}
.layer.layer-list .item-image .thumb img {
  pointer-events: none;
  opacity: 0;
}
.layer.layer-list .layer-title {
  z-index: 30;
  padding: 79px 0 2px;
}
.layer.layer-list .layer-title .text-container.without-y {
  min-height: 33px;
}
.layer.layer-list .layer-title .link-text {
  padding-top: 5px;
  padding-bottom: 10px;
}
.layer.layer-list > .layer-title {
  margin-bottom: 20px;
}
.layer.layer-list .link-text {
  position: relative;
}
@media (hover: hover), (-moz-touch-enabled: 0), (pointer: fine) {
  .layer.layer-list .link-text::before {
    position: absolute;
    left: 0;
    width: calc(100% - 19px) !important;
    bottom: 9px;
    height: 1px;
    content: "";
    background-color: var(--Gray-Gray-30);
    transform: scaleX(0);
    transition: transform 0.15s cubic-bezier(0.33, 1, 0.68, 1);
    transform-origin: 0% 0%;
  }
  .layer.layer-list .link-text:hover::before {
    transform: scaleX(1);
    transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
  }
}
.layer.layer-list .information-deck {
  opacity: 0;
}
.layer.layer-list .information-deck[data-has=true] .tag-count {
  position: relative;
}
.layer.layer-list .information-deck[data-has=true] .tag-count::after {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  transform: translateX(calc(100% + 2.5px));
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: red;
  filter: drop-shadow(0px 0px 16px #FF7F7F) drop-shadow(0px 0px 8px rgba(246, 98, 98, 0.8)) drop-shadow(0px 0px 2px rgba(255, 165, 165, 0.8));
}

.item-result .thumb-result {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding-bottom: 137.5%;
}
.item-result .thumb-frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
.item-result .thumb-frame img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.item-result.hidden {
  min-width: 900px;
}
.item-result.hidden .thumb-result {
  position: absolute;
}

.layer-header {
  display: flex;
  flex-direction: column;
  gap: 6px;
  justify-content: center;
  align-items: center;
  color: var(--Gray-Gray-10);
  padding: 83px 0 27px;
}
.layer-header .row-container {
  gap: 2px;
}
.layer-header .row-container:has(.row-credit) {
  gap: 8px;
}
.layer-header .row-name {
  gap: 4px;
  width: 1005;
  justify-content: center;
}
.layer-header .row-name .team {
  font-family: "neue-haas-grotesk-text";
  font-size: 2.1rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.23;
  color: var(--Gray-Gray-30);
}
.layer-header .row-name .name {
  font-family: "Pretendard";
  font-size: 2.1rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.23;
}
.layer-header .count {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.38;
  color: var(--Gray-Gray-30);
}
.layer-header .icon-photo {
  width: 16px;
  height: 16px;
  background-image: url(assets/images/icon-photo.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.layer-header .row-image-length,
.layer-header .row-credit {
  align-items: center;
}
.layer-header .row-image-length span,
.layer-header .row-credit span {
  min-height: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-position: center center;
}
.layer-header .row-image-length span .icon,
.layer-header .row-credit span .icon {
  background-position: center center;
}
.layer-header .row-credit {
  gap: 1px;
}
.layer-header .row-credit span {
  color: var(--Gray-Gray-10);
  font-family: "Pretendard";
  font-size: 1.4rem;
  font-weight: 600;
}
.thumb-inner {
  position: relative;
  width: 100%;
}

.video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
}
.video .video-poster, .video img, .video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  z-index: 2;
}
.video .video-poster {
  z-index: 1;
}

.swiper-container {
  min-height: unset;
  width: 76%;
}
.swiper-container .swiper-area {
  width: 76%;
  padding-bottom: 180.667%;
}

[data-screen=account] .floating-ui,
[data-screen=index] .floating-ui {
  pointer-events: none;
}
[data-screen=account] .floating-ui button, [data-screen=account] .floating-ui a,
[data-screen=index] .floating-ui button,
[data-screen=index] .floating-ui a {
  pointer-events: auto;
}

.is-lock {
  background-color: #000;
}
.is-lock [data-screen=index] {
  overflow: hidden;
  background-color: #000;
}

[data-screen=index] .floating-ui {
  padding-bottom: calc(env(safe-area-inset-bottom) + 46px);
  transform: translateY(calc(100% + 87px));
  opacity: 0;
}

[data-screen=account] .dimmer {
  opacity: 1;
  pointer-events: none;
}
[data-screen=account] .information-deck {
  pointer-events: none;
  align-items: flex-end;
}
[data-screen=account] .information-deck .button-delete {
  pointer-events: auto;
}

.layer-intro {
  position: fixed;
  display: flex;
  flex-direction: column;
  height: var(--vh);
  z-index: 9999;
  background-color: #000;
}
.layer-intro .button-glow:not(:has(.background)) {
  opacity: 0;
}
.layer-intro .button-glow:not(:has(.background)) .glow-effect {
  opacity: 0;
}
.layer-intro .bridge-background {
  z-index: 0;
}
.layer-intro .splash-content {
  position: relative;
  display: flex;
  flex-direction: column;
  z-index: 2;
  justify-content: space-between;
  max-height: var(--vh);
  height: var(--vh);
}
.layer-intro .layer-title {
  gap: 0;
}
.layer-intro .layer-title .sub {
  margin-top: 16px;
  min-height: calc(var(--swiperSub) * 2 + 16px) !important;
}
.layer-intro .background {
  opacity: 1;
}
.layer-intro .background::before {
  background-image: url(assets/images/splash-background.png);
  background-size: 100% 100%;
  background-position: 50% 100%;
  background-repeat: no-repeat;
}
.layer-intro .splash-logo {
  position: relative;
  width: calc(100% - 70px);
  margin: 90px auto;
  text-align: center;
  transform: translate(1%, 0%);
}
.layer-intro .splash-logo .inner {
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 47%;
  transform: scale(0.6) translateY(70%);
  transform-origin: 50% 100%;
  will-change: auto;
}
.layer-intro .splash-logo .logo-svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(assets/images/logo-fill.png);
  z-index: 3;
  opacity: 0;
}
.layer-intro .splash-logo .logo-gradient {
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(assets/images/logo-background.png);
  z-index: 2;
  opacity: 0;
}
.layer-intro .button-glow {
  margin: 0 auto 20px;
}
.layer-intro .splash-footer {
  width: 100%;
  margin: auto;
  color: var(--Gray-Gray-30);
  text-align: center;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.27;
  letter-spacing: 0.025em;
  opacity: 0;
  padding-bottom: calc(env(safe-area-inset-top) + 26px);
}
.layer-intro .item-image .thumb video, .layer-intro .item-image .thumb img {
  height: 99%;
}
.layer-intro .swiper-slide .item-image {
  border-radius: 16px;
  overflow: hidden;
  min-width: unset;
}
.layer-intro .swiper-slide * {
  -webkit-transform: translateZ(0); /* GPU 가속 강제 */
  backface-visibility: hidden; /* 렌더링 최적화 */
}
.layer-intro .swiper-slide .icon {
  -webkit-transform: translateZ(0) !important;
  backface-visibility: hidden; /* 렌더링 최적화 */
}
@media (hover: hover), (-moz-touch-enabled: 0), (pointer: fine) {
  .layer-intro .swiper-slide {
    transition: transform 0.2s cubic-bezier(0.33, 1, 0.68, 1);
  }
  .layer-intro .swiper-slide:active {
    transform: scale(0.97) !important;
    transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
  }
  .layer-intro .swiper-slide:focus-within {
    transform: scale(0.97) !important;
    transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
  }
}

.bridge-background {
  transform: translateY(100%);
}

.button-glow:not(:has(.background)) {
  opacity: 1;
}
.button-glow:not(:has(.background)) .glow-effect {
  opacity: 1;
  transform: translate(-50%, -50%) scaleX(0.8) scaleY(0.8) !important;
}
.button-glow:not(:has(.background)) .effect-2,
.button-glow:not(:has(.background)) .effect-3 {
  display: none !important;
}

.is-credit-exhausted .button-move-generate {
  display: none;
}

.not-loggedIn .button-glow .glow-effect::before {
  padding-bottom: 50%;
}
.not-loggedIn .button-glow .webm-1 {
  display: none;
}
.not-loggedIn .button-glow .webm-2 {
  display: block;
}

.is-service-hold .floating-ui .button-text:not(.button-service-hold),
.is-service-hold .floating-ui .button-generate {
  display: none !important;
}
.is-service-hold .layer-generate[data-type=Crop] .button-generate {
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1);
  pointer-events: none;
  opacity: 0.2;
}
.is-service-hold .layer-generate[data-type=Onboard] .button-generate {
  pointer-events: none;
  opacity: 0.2;
}
.is-service-hold .button-text {
  transition: opacity 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}

.splash-content .container {
  height: calc(100dvh - 140px);
  min-height: 380px;
}
.splash-content .swiper {
  width: 100%;
  min-width: 240px;
  padding-top: 50px;
  padding-bottom: 50px;
}

.center-section {
  position: relative;
  flex: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.section-swiper {
  display: none;
  opacity: 0;
}

.layer-intro .swiper-slide .thumb {
  padding-bottom: 155%;
  border-radius: 20px;
  overflow: hidden;
  z-index: 1;
}
.layer-intro .swiper-slide .item-image *:not(.hidden-link) {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.layer-intro .swiper-slide .thumb-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/frame-splash.png);
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 20;
  pointer-events: none;
}
.layer-intro .swiper-slide .thumb-bg img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.layer-intro .swiper-slide .thumb-text {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-bottom: 30px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 16px;
  z-index: 32;
}
.layer-intro .swiper-slide .thumb-text .title {
  color: var(--Raw-Primary-White);
  text-align: center;
  font-family: Pretendard;
  font-size: var(--swiperTitle);
  font-style: normal;
  font-weight: 600;
  line-height: 1.21;
  color: var(--color, var(--Raw-Primary-White));
}
.layer-intro .swiper-slide .thumb-text .sub {
  color: #F7E3F7;
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.38;
  font-size: var(--swiperSub);
  min-height: calc(var(--swiperSub) * 2 + 16px) !important;
  text-align: center;
}

.floating-ui:has(.button-info-guide) {
  opacity: 1;
  transform: none;
  min-height: 95px;
  z-index: 10000;
}

.is-credit-exhausted:has(.layer-list) .floating-ui,
.is-credit-exhausted:has(.layer-list) .floating-ui:has(.button-info-guide) {
  min-height: 103px;
}

.button-info-guide {
  position: absolute;
  left: 12px;
  font-size: 0;
  padding: 13px 10px;
  z-index: 2000;
  opacity: 0;
  background-color: transparent;
}
.button-info-guide .icon {
  transform: translateY(calc(100% + 13px));
}

:root {
  --deg: 180deg;
  --color1: #F9FEFF;
  --color2: #AFF2F2;
  --color3: #86C7FC;
}

.layer-use-guide {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  justify-content: center;
  display: none;
}
.layer-use-guide .layer-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(assets/images/layer-guide.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
.layer-use-guide .item-inner {
  max-height: calc(100dvh - 100px);
  overflow-y: auto;
  padding: 30px 45px 30px 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.layer-use-guide .info-text,
.layer-use-guide .text {
  position: relative;
  z-index: 1;
}
.layer-use-guide .item-image {
  max-width: calc(var(--maxWidth) - 100px);
}
.layer-use-guide .info-text {
  padding-top: clamp(50px, 3vw, 140px);
}
.layer-use-guide .layer-inner {
  opacity: 0;
  width: calc(100% - 50px);
  margin: 0 auto;
}
.layer-use-guide .layer-inner .info-text {
  opacity: 0;
}
.layer-use-guide .layer-inner .text-container {
  position: relative;
  overflow: visible;
}
.layer-use-guide .layer-inner .text-container::before {
  display: none;
}
.layer-use-guide .layer-inner .text {
  font-family: "neue-haas-grotesk-text";
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.33;
  background-clip: text !important;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-image: linear-gradient(var(--deg), var(--color1) 0%, var(--color2) 50%, var(--color3) 100%);
  font-size: clamp(12px, 2vw, 1.5rem);
  will-change: auto;
}
.layer-use-guide .layer-inner .text .hide {
  opacity: 0;
}
.layer-use-guide .layer-inner .text.-hidden {
  opacity: 0;
}
.layer-use-guide .layer-inner .text.-show {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
}
.layer-use-guide .button-close-layer {
  padding: 10px;
  position: absolute;
  top: 8px;
  right: 8px;
}

@keyframes test {
  0% {
    background-image: linear-gradient(0deg, var(--color1) 0%, var(--color2) 0%, var(--color3) 0%);
  }
  100% {
    background-image: linear-gradient(var(--deg), var(--color1) 0%, var(--color2) 50%, var(--color3) 100%);
  }
}
.info-text {
  display: flex;
  flex-direction: column;
}
.info-text .outlink {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  padding: 4px 0;
  color: #BA9ACE;
  font-family: "neue-haas-grotesk-text";
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.33;
}
.info-text .sub {
  color: #BA9ACE;
  font-family: "Pretendard";
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: 0.02em;
}

.item-promote {
  border-radius: 20px;
  overflow: hidden;
}
.item-promote .hidden-link {
  z-index: 100;
}
.item-promote .icon-arrow_outward {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 13%;
  height: auto;
  aspect-ratio: 1/1;
  background-size: 80% 80%;
  background-position: center center;
  z-index: 33;
}
.item-promote .thumb {
  overflow: hidden;
  z-index: 1;
}
.item-promote .thumb img {
  opacity: 1 !important;
}
.item-promote .layer-title {
  padding: 0;
  gap: 0;
}
.item-promote .layer-title .sub {
  margin-top: 16px;
  min-height: calc(var(--swiperSub) * 2 + 16px) !important;
}
.item-promote .item-image *:not(.hidden-link) {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.item-promote .thumb-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 20;
  pointer-events: none;
}
.item-promote .thumb-bg img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.item-promote .thumb-text {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-bottom: 30px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 16px;
  z-index: 32;
}
.item-promote .thumb-text .title {
  color: var(--Raw-Primary-White);
  text-align: center;
  font-family: Pretendard;
  font-size: var(--swiperTitle);
  font-style: normal;
  font-weight: 600;
  line-height: 1.21;
  color: var(--color, var(--Raw-Primary-White));
}
.item-promote .thumb-text .sub {
  color: #F7E3F7;
  font-family: "Pretendard";
  font-size: 1.3rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.38;
  font-size: var(--swiperSub);
  text-align: center;
}

.grid-view .item-promote .thumb-bg img {
  -o-object-fit: unset;
     object-fit: unset;
}
.grid-view .item-promote .layer-title {
  transform: scale(0.9);
  transform-origin: center bottom;
}

.layer.layer-detail {
  position: relative;
  padding-top: 48px;
  height: 100dvh;
}
.layer.layer-detail::before {
  display: none;
  width: calc((100vw - var(--maxWidth)) / 2);
  left: 0;
  transform: translateX(-100%);
  pointer-events: none;
  background: linear-gradient(90deg, #000 0%, #000 50%, rgba(0, 0, 0, 0) 100%);
  z-index: 3;
}
.layer.layer-detail::after {
  position: absolute;
  display: none;
  top: 0;
  right: 0;
  content: "";
  background: linear-gradient(-90deg, #000 0%, #000 50%, rgba(0, 0, 0, 0) 100%);
  width: calc((100vw - var(--maxWidth)) / 2);
  height: 100%;
  transform: translateX(100%);
  pointer-events: none;
  z-index: 3;
}
@media screen and (min-width: 500px) {
  .layer.layer-detail::before, .layer.layer-detail::after {
    display: block;
  }
}
.layer.layer-detail .item-image {
  max-width: calc((100vh - 42px) * 0.4);
  margin: 0 auto;
  overflow: visible;
}
.layer.layer-detail .item-image img {
  pointer-events: auto;
  border-radius: 8px;
  transform-origin: center top;
  opacity: 0;
}
.layer.layer-detail .reaction-container {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  pointer-events: none;
  max-width: calc((100vh - 42px) * 0.4);
}
.layer.layer-detail .tag {
  width: -moz-max-content;
  width: max-content;
  padding: 12px;
  margin: 14px auto 0;
  justify-content: center;
  background-color: transparent;
}
.layer.layer-detail .layer-inner {
  padding: 22px 20px calc(env(safe-area-inset-bottom) + 14px);
}
.layer.layer-detail .button-reaction {
  position: absolute;
}
.layer.layer-detail .button-reaction.reaction-confused {
  top: 19%;
  left: 0;
  margin-left: -15%;
  rotate: -10deg;
}
.layer.layer-detail .button-reaction.reaction-confused .inner {
  scale: 0.95;
}
.layer.layer-detail .button-reaction.reaction-dislike {
  top: 66%;
  left: 0;
  margin-left: -12%;
  rotate: -5deg;
}
.layer.layer-detail .button-reaction.reaction-dislike .inner {
  scale: 0.9;
}
.layer.layer-detail .button-reaction.reaction-hot {
  top: 7%;
  left: 100%;
  margin-left: -26%;
  rotate: 15deg;
}
.layer.layer-detail .button-reaction.reaction-hot .inner {
  scale: 0.85;
}
.layer.layer-detail .button-reaction.reaction-like {
  top: 72%;
  left: 100%;
  margin-left: -29.7%;
  rotate: 0deg;
}
.layer.layer-detail .button-reaction.reaction-like .inner {
  scale: 0.95;
}

.icon-renew {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-renew.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-pause {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-pause.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-play {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-play.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-renew {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-renew.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-undo {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-undo.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-check {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-check.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-close {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-close.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-checkbox {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-checkbox.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-reset {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-reset.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-delete {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-delete.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-delete-white {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-delete-white.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-grid {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-grid.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-reaction-empty {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-reaction-empty.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-photo {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-photo.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-dotgroup {
  display: inline-block;
  width: 3px;
  height: 9px;
  background-image: url(assets/images/icon-dotgroup.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-share {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-share.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-guide {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-guide.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-back {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-back.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-error {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-error.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-id {
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url(assets/images/icon-id.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-password {
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url(assets/images/icon-password.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-frame {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-frame.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-kakao {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-kakao.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-naver {
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url(assets/images/icon-naver.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-credit {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url(assets/images/icon-credit.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-slash {
  display: inline-block;
  width: 7px;
  height: 12px;
  background-image: url(assets/images/icon-slash.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-link {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-link.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-social-kakao {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-social-kakao.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-info {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-info.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-outlink-2 {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url(assets/images/icon-outlink-2.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-arrow_outward {
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url(assets/images/icon-arrow_outward.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.icon-random {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(assets/images/icon-random.svg);
  background-size: contain;
  background-repeat: no-repeat;
}/*# sourceMappingURL=common.css.map */
/*!
 * Cropper.js v1.6.2
 * https://fengyuanchen.github.io/cropperjs
 *
 * Copyright 2015-present Chen Fengyuan
 * Released under the MIT license
 *
 * Date: 2024-04-21T07:43:02.731Z
 */

.cropper-container {
  direction: ltr;
  font-size: 0;
  line-height: 0;
  position: relative;
  -ms-touch-action: none;
      touch-action: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.cropper-container img {
    backface-visibility: hidden;
    display: block;
    height: 100%;
    image-orientation: 0deg;
    max-height: none !important;
    max-width: none !important;
    min-height: 0 !important;
    min-width: 0 !important;
    width: 100%;
  }

.cropper-wrap-box,
.cropper-canvas,
.cropper-drag-box,
.cropper-crop-box,
.cropper-modal {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.cropper-wrap-box,
.cropper-canvas {
  overflow: hidden;
}

.cropper-drag-box {
  background-color: #fff;
  opacity: 0;
}

.cropper-modal {
  background-color: #000;
  opacity: 0.5;
}

.cropper-view-box {
  display: block;
  height: 100%;
  outline: 1px solid #39f;
  outline-color: rgba(51, 153, 255, 0.75);
  overflow: hidden;
  width: 100%;
}

.cropper-dashed {
  border: 0 dashed #eee;
  display: block;
  opacity: 0.5;
  position: absolute;
}

.cropper-dashed.dashed-h {
    border-bottom-width: 1px;
    border-top-width: 1px;
    height: calc(100% / 3);
    left: 0;
    top: calc(100% / 3);
    width: 100%;
  }

.cropper-dashed.dashed-v {
    border-left-width: 1px;
    border-right-width: 1px;
    height: 100%;
    left: calc(100% / 3);
    top: 0;
    width: calc(100% / 3);
  }

.cropper-center {
  display: block;
  height: 0;
  left: 50%;
  opacity: 0.75;
  position: absolute;
  top: 50%;
  width: 0;
}

.cropper-center::before,
  .cropper-center::after {
    background-color: #eee;
    content: ' ';
    display: block;
    position: absolute;
  }

.cropper-center::before {
    height: 1px;
    left: -3px;
    top: 0;
    width: 7px;
  }

.cropper-center::after {
    height: 7px;
    left: 0;
    top: -3px;
    width: 1px;
  }

.cropper-face,
.cropper-line,
.cropper-point {
  display: block;
  height: 100%;
  opacity: 0.1;
  position: absolute;
  width: 100%;
}

.cropper-face {
  background-color: #fff;
  left: 0;
  top: 0;
}

.cropper-line {
  background-color: #39f;
}

.cropper-line.line-e {
    cursor: ew-resize;
    right: -3px;
    top: 0;
    width: 5px;
  }

.cropper-line.line-n {
    cursor: ns-resize;
    height: 5px;
    left: 0;
    top: -3px;
  }

.cropper-line.line-w {
    cursor: ew-resize;
    left: -3px;
    top: 0;
    width: 5px;
  }

.cropper-line.line-s {
    bottom: -3px;
    cursor: ns-resize;
    height: 5px;
    left: 0;
  }

.cropper-point {
  background-color: #39f;
  height: 5px;
  opacity: 0.75;
  width: 5px;
}

.cropper-point.point-e {
    cursor: ew-resize;
    margin-top: -3px;
    right: -3px;
    top: 50%;
  }

.cropper-point.point-n {
    cursor: ns-resize;
    left: 50%;
    margin-left: -3px;
    top: -3px;
  }

.cropper-point.point-w {
    cursor: ew-resize;
    left: -3px;
    margin-top: -3px;
    top: 50%;
  }

.cropper-point.point-s {
    bottom: -3px;
    cursor: s-resize;
    left: 50%;
    margin-left: -3px;
  }

.cropper-point.point-ne {
    cursor: nesw-resize;
    right: -3px;
    top: -3px;
  }

.cropper-point.point-nw {
    cursor: nwse-resize;
    left: -3px;
    top: -3px;
  }

.cropper-point.point-sw {
    bottom: -3px;
    cursor: nesw-resize;
    left: -3px;
  }

.cropper-point.point-se {
    bottom: -3px;
    cursor: nwse-resize;
    height: 20px;
    opacity: 1;
    right: -3px;
    width: 20px;
  }

@media (min-width: 768px) {

.cropper-point.point-se {
      height: 15px;
      width: 15px;
  }
    }

@media (min-width: 992px) {

.cropper-point.point-se {
      height: 10px;
      width: 10px;
  }
    }

@media (min-width: 1200px) {

.cropper-point.point-se {
      height: 5px;
      opacity: 0.75;
      width: 5px;
  }
    }

.cropper-point.point-se::before {
    background-color: #39f;
    bottom: -50%;
    content: ' ';
    display: block;
    height: 200%;
    opacity: 0;
    position: absolute;
    right: -50%;
    width: 200%;
  }

.cropper-invisible {
  opacity: 0;
}

.cropper-bg {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC);
}

.cropper-hide {
  display: block;
  height: 0;
  position: absolute;
  width: 0;
}

.cropper-hidden {
  display: none !important;
}

.cropper-move {
  cursor: move;
}

.cropper-crop {
  cursor: crosshair;
}

.cropper-disabled .cropper-drag-box,
.cropper-disabled .cropper-face,
.cropper-disabled .cropper-line,
.cropper-disabled .cropper-point {
  cursor: not-allowed;
}

/**
 * Swiper 11.1.15
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 18, 2024
 */

/* FONT_START */
@font-face {
  font-family: 'swiper-icons';
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
/* FONT_END */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}
:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-horizontal {
  touch-action: pan-y;
}
.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}
/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
          appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform,
        200ms top;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform,
        200ms left;
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform,
    200ms right;
}
/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}
/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-lock {
  display: none;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center;
}
.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  transform: rotate(180deg);
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-lock {
  display: none;
}
/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: 'prev';
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: 'next';
}
/* Navigation font end */


/*# sourceMappingURL=main.css.map*/