#app {
  background-color: white;
}

body {
  overscroll-behavior-y: none !important;
  min-height: calc(100% + env(safe-area-inset-top));
  font-family: Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto,
    "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR",
    "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
    sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body,
html {
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smooth: always;
  overscroll-behavior: none;
}

html {
  height: -webkit-fill-available;
}

.overflow-y {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.overflow-x {
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
}

.smooth {
  scroll-behavior: smooth;
}

.overflow-hidden {
  overflow: hidden;
}

.clickable {
  cursor: pointer;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-through {
  text-decoration: line-through;
}

.fit-vh {
  height: 100vh;
}

.fit-vh.offset-bottom {
  height: calc(100vh - 50px);
}

.mt-5 {
  margin-top: 5px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-50 {
  margin-top: 50px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-70 {
  margin-top: 70px;
}

.mt-80 {
  margin-top: 80px;
}

.mt-90 {
  margin-top: 90px;
}

.font-7 {
  font-size: 7px;
}

.font-8 {
  font-size: 8px;
}

.font-9 {
  font-size: 9px;
}

.font-10 {
  font-size: 10px;
}

.font-11 {
  font-size: 11px;
}

.font-12 {
  font-size: 12px;
}

.font-13 {
  font-size: 13px;
}

.font-14 {
  font-size: 14px;
}

.font-15 {
  font-size: 15px;
}

.font-16 {
  font-size: 16px;
}

.font-17 {
  font-size: 17px;
}

.font-18 {
  font-size: 18px;
}

.font-20 {
  font-size: 20px;
}

.font-21 {
  font-size: 21px;
}

.font-22 {
  font-size: 22px;
}

.font-24 {
  font-size: 24px;
}

.font-25 {
  font-size: 25px;
}

.font-26 {
  font-size: 26px;
}

.font-27 {
  font-size: 27px;
}

.font-28 {
  font-size: 28px;
}

.font-30 {
  font-size: 30px;
}

.font-32 {
  font-size: 32px;
}

.font-33 {
  font-size: 33px;
}

.font-35 {
  font-size: 35px;
}

.font-36 {
  font-size: 36px;
}

.font-40 {
  font-size: 40px;
}

.font-41 {
  font-size: 41px;
}

.font-48 {
  font-size: 48px;
}

.font-50 {
  font-size: 50px;
}

.font-100 {
  font-weight: 100;
}

.font-200 {
  font-weight: 200;
}

.font-300 {
  font-weight: 300;
}

.font-400 {
  font-weight: 400;
}

.font-500 {
  font-weight: 500;
}

.font-600 {
  font-weight: 600;
}

.font-700 {
  font-weight: 700;
}

.font-800 {
  font-weight: 800;
}

.font-900 {
  font-weight: 900;
}

.d-flex {
  display: flex;
}

.d-flex.d-row {
  flex-direction: row;
}

.d-flex.d-column {
  flex-direction: column;
}

.gap-10 {
  gap: 10px;
}

.d-wrap {
  flex-wrap: wrap;
}

.d-nowrap {
  flex-wrap: nowrap;
}

.d-fit {
  justify-content: space-between;
}

.d-end {
  justify-content: flex-end;
}

.d-start {
  justify-content: flex-start;
}

.d-cross-axis-center {
  justify-content: center;
}

.d-center {
  justify-content: center;
}

.d-even {
  justify-content: space-evenly;
}

.d-around {
  justify-content: space-around;
}

.d-bottom {
  position: absolute;
  bottom: 0;
}

.d-flex-bottom {
  width: 100%;
  display: inline-block;
  align-self: flex-end;
}

.c-white {
  color: white;
}

.c-black {
  color: #000000;
}

.c-black.deactive {
  color: #6a6a6a;
}

.c-blue {
  color: #0277ed;
}

.c-red {
  color: #f6443b;
}

.c-gray {
  color: #909090;
}

.b-whiteish {
  background-color: #f4f5f7;
}

.b-white {
  background-color: #f1f1f1;
}

.text-underline {
  text-decoration: underline;
}

.wrap-oneline {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wrap-twoline {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: initial;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.wrap-threeline {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: initial;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.circle {
  border-radius: 50%;
}

.s-profile-img {
  border-radius: 50px;
  object-fit: cover; /* Do not scale the image */
  object-position: center; /* Center the image within the element */
  aspect-ratio: 1 / 1;
}

.center-center {
  position: absolute !important;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -40%);
  -ms-transform: translate(-50%, -40%);
  -webkit-transform: translate(-50%, -40%);
}

.center-top {
  position: relative !important;
  top: 40%;
  left: 0%;
  transform: translate(0%, -40%);
  -ms-transform: translate(0%, -40%);
  -webkit-transform: translate(0%, -40%);
}

.height-css ::-webkit-scrollbar {
  height: 0 !important;
  width: 10px !important;
  background-color: #e8e8e9 !important;
  display: block;
}

.height-css ::-webkit-scrollbar-thumb {
  background-color: #2f3242 !important;
  border: 5px solid #2f3242 !important;
  border-radius: 10px;
}

.width-css ::-webkit-scrollbar {
  height: 5px !important;
  width: 0 !important;
  background-color: #e8e8e9 !important;
  display: block;
}

.width-css ::-webkit-scrollbar-thumb {
  background-color: #2f3242 !important;
  border: 2px solid #2f3242 !important;
  border-radius: 10px;
}

::-webkit-scrollbar {
  display: none;
  height: 0;
  width: 0;
  background: transparent;
}

.brightness90 {
  filter: brightness(90%);
}
.one-third:nth-child(1),
.one-third:nth-child(3) {
  width: 10%;
}
.one-third:nth-child(2) {
  width: 80%;
}

.one-quarter {
  width: 25%;
}

.one-half:nth-child(1) {
  width: 50%;
  margin-right: 10px;
}

.one-half:nth-child(2) {
  width: 50%;
  margin-left: 10px;
}

.one-thirds {
  width: 33% !important;
}

.one-thirds:nth-child(1) {
  margin-right: 5px;
}

.one-thirds:nth-child(2) {
  margin-left: 5px;
  margin-right: 5px;
}

.one-thirds:nth-child(3) {
  margin-left: 5px;
}

.required::after {
  content: "";
  flex-shrink: 0;
  display: inline-block;
  background-color: #f57453;
  margin-left: 3px;
  margin-bottom: 5px;
  width: 3px;
  height: 3px;
  border-radius: 50%;
}
