/* font */
@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.banggooso.com/assets/fonts/PretendardVariable.woff2') format('woff2');
  font-weight: 400;
}
@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.banggooso.com/assets/fonts/PretendardVariable.woff2') format('woff2');
  font-weight: 500;
}
@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.banggooso.com/assets/fonts/PretendardVariable.woff2') format('woff2');
  font-weight: 600;
}
@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.banggooso.com/assets/fonts/PretendardVariable.woff2') format('woff2');
  font-weight: 700;
}
@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.banggooso.com/assets/fonts/PretendardVariable.woff2') format('woff2');
  font-weight: 800;
}
@font-face {
  font-family: NanumSquareRound;
  src: url('https://cdn.banggooso.com/assets/fonts/NanumSquareRoundR.ttf') format('truetype');
  font-weight: 400;
}
@font-face {
  font-family: NanumSquareRound;
  src: url('https://cdn.banggooso.com/assets/fonts/NanumSquareRoundB.ttf') format('truetype');
  font-weight: 600;
}
@font-face {
  font-family: NanumSquareRound;
  src: url('https://cdn.banggooso.com/assets/fonts/NanumSquareRoundEB.ttf') format('truetype');
  font-weight: 800;
}

/* 
reset.css 
TODO: 히스토리 파악 후 공통으로 뺄 것 
*/
html,
body {
  font-size: 16px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  overscroll-behavior: none;
  font-family: 'Pretendard';
  text-align: center;
}
input:focus {
  outline: none;
}
button {
  cursor: pointer;
}

@media (max-width: 500px) {
  html,
  body {
    font-size: 3.2vw;
  }
}

/* 이미지 wrapper */
.image-wrapper > img {
  width: 100%;
  height: 100%;
}
.image-wrap > img {
  object-fit: contain;
  width: 100%;
}

/* 전체 배경 영역 */
.game-wrapper {
  background: #fffef1;
}

/* 헤더 */
.game-wrapper.basic .app-header {
  height: 3.75rem;
  background: transparent;
  border: none;
}
.game-wrapper.basic .app-header.intro:not(.question) {
  background: #fff;
}

/* 헤더 로고 */
.game-wrapper .app-header .app-logo {
  background-image: url(https://cdn.banggooso.com/assets/images/common/logo_2024.png);
  width: 9.3025rem;
  background-position-y: 1.06rem;
}

.share-sns-list {
  margin: 0;
  display: flex;
  width: 100%;
  padding: 2.625rem 0rem 3.125rem 0rem;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

/* 공유하기 타이틀 영역 */
.share-sns-list .list-title {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

/* 공유하기 타이틀 텍스트 */
.share-sns-list .list-title span {
  color: #515151;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 600;
  line-height: 2.125rem; /* 141.667% */
  letter-spacing: -0.015rem;
}

/* 공유하기 카운트 영역 */
.share-sns-list .list-title .countBox {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  margin: 0;
  opacity: 0.6;
}

/* 공유하기 카운트 이미지 */
.share-sns-list .list-title .countBox .countImg {
  padding: 0;
  width: 1.25rem;
  height: 1.25rem;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/icon/share.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

/* 공유하기 카운트 수 */
.share-sns-list .list-title .countBox .countNumber {
  color: #515151;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.25rem; /* 100% */
  letter-spacing: -0.0125rem;
}

.share-sns-list .list li + li {
  margin-left: 0.88rem;
}

/* 공유하기 버튼 */
.share-sns-list .btn-share {
  width: 3.375rem;
  height: 3.375rem;
  flex-shrink: 0;
  border-radius: 100%;
  background-color: #000000;
  background-size: 1.36125rem;
}

/* 공유하기 버튼 - 카카오 */
.share-sns-list .btn-share.kakao {
  background-image: url(https://cdn.banggooso.com/assets/images/game238/icons/kakao.png);
}
/* 공유하기 버튼 - 트위터 */
.share-sns-list .btn-share.twitter {
  background-image: url(https://cdn.banggooso.com/assets/images/game238/icons/twitter.png);
}
/* 공유하기 버튼 - 인스타 */
.share-sns-list .btn-share.instagram {
  background-image: url(https://cdn.banggooso.com/assets/images/game238/icons/instagram.png);
}
/* 공유하기 버튼 - 인스타 */
.share-sns-list .btn-share.facebook {
  background-image: url(https://cdn.banggooso.com/assets/images/game238/icons/facebook.png);
  background-size: 0.6875rem;
}
/* 공유하기 버튼 - 링크 */
.share-sns-list .btn-share.link-copy {
  background-image: url(https://cdn.banggooso.com/assets/images/game238/icons/link.png);
}

/* 인트로 페이지 */
.game-wrapper.basic .game-intro {
  background-image: url(https://cdn.banggooso.com/assets/images/game244/intro/background.png);
  background-size: contain;
  background-position: top;
  padding-bottom: 0;
  height: 100%;
  background-repeat: repeat-y;
}

/* 인트로 하단 영역 */
.game-intro .container {
  display: flex;
  width: 100%;
  padding: 0rem 1.875rem 6.25rem 1.875rem;
  flex-direction: column;
  align-items: center;
  background: url(https://cdn.banggooso.com/assets/images/game244/intro/background.png) lightgray 50% / cover no-repeat;
  box-shadow: 0 -0.2rem 0.938rem -0.1rem rgba(63, 63, 63, 0.15);
}

/* 인트로 말풍선 */
.game-intro .intro-bubble {
  width: 9.375rem;
  height: 3.50706rem;
  margin: 1.375rem 0rem 0.5rem 0rem;
}

/* 인트로 게임시작 영역 */
.game-intro .start-btn-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  width: 100%;
}

/* 인트로 유저이름 인풋 */
.game-intro .nickname {
  display: flex;
  width: 25rem;
  padding: 1.25rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  border-radius: 0.625rem;
  border: 0.094rem solid #515151;
  background: #fff;
  color: #515151;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 400;
  line-height: 2rem; /* 145.455% */
}
.game-intro .nickname::placeholder {
  color: rgba(81, 81, 81, 0.5);
}

/* 인트로 시작 버튼 */
.game-intro .start-btn {
  display: flex;
  height: 5.5rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  align-self: stretch;
  border-radius: 0.75rem;
  background: #000;
  color: #fff;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.75rem;
  font-style: normal;
  font-weight: 800;
  line-height: 2.375rem; /* 135.714% */
  letter-spacing: -0.0175rem;
}

/* 인트로 참여자 수 영역 */
.game-intro .game-count {
  margin: 0;
  display: flex;
  width: 27.5rem;
  padding: 2.5rem 0rem 1rem 0rem;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  border-bottom: 1px solid rgba(81, 81, 81, 0.2);
}

/* 인트로 참여자 수 제목 */
.game-intro .game-count .count-label {
  color: #515151;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 2.125rem; /* 141.667% */
  letter-spacing: -0.015rem;
}
/* 인트로 참여자 수 하단 아웃라인 삭제 */
.game-intro .game-count .count-label:before {
  display: none;
}

/* 인트로 참여자 수 숫자 */
.game-intro .game-count .count-num {
  color: #515151;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 2.75rem;
  font-style: normal;
  font-weight: 800;
  line-height: 3.375rem; /* 122.727% */
  letter-spacing: -0.0275rem;
}

/* 인트로 공유하기 영역 */
.game-intro .share-sns-list {
  margin: 0;
  display: flex;
  width: 27.5rem;
  padding: 2.625rem 0rem 3.125rem 0rem;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

/* 문제 페이지 테스트명 헤더 영역 */
.game-wrapper.basic .test-progress-header {
  padding: 0;
  border-bottom: 1.5px solid #e7e7e7;
}
.game-wrapper.basic .test-controller-top {
  margin: 0;
  display: flex;
  width: 100%;
  height: 3.75rem;
  padding: 0.875rem 0.75rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
}

/* 문제 페이지 테스트명 헤더 게임 타이틀 */
.game-wrapper.basic .game-title.page {
  color: #373529;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.01375rem;
}

/* 문제 페이지 테스트명 헤더 - 뒤로가기, 진행률바 미사용 */
.game-wrapper.basic .test-progress-header .back-btn-wrap,
.game-wrapper.basic .test-progress-header .test-controller-bottom,
.game-wrapper.basic .test-progress-header .game-stage-wrap {
  display: none;
}

/* 문제 페이지 본문 영역 */
.game-wrap .game-body {
  display: flex;
  padding: 2rem 1.875rem 6.25rem 1.875rem;
  flex-direction: column;
  align-items: center;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/page/background.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position-y: 15.93756rem;
}

/* 문제 페이지 스테이지 */
.game-wrap .game-body::before {
  display: flex;
  padding: 0.25rem 0.375rem 0.125rem 0.375rem;
  justify-content: center;
  align-items: center;
  background: #fff253;
  color: #373529;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  align-self: start;
}
.game-wrap .game-body.test-step-1::before {
  content: '퀴즈 1/12';
}
.game-wrap .game-body.test-step-2::before {
  content: '퀴즈 2/12';
}
.game-wrap .game-body.test-step-3::before {
  content: '퀴즈 3/12';
}
.game-wrap .game-body.test-step-4::before {
  content: '퀴즈 4/12';
}
.game-wrap .game-body.test-step-5::before {
  content: '퀴즈 5/12';
}
.game-wrap .game-body.test-step-6::before {
  content: '퀴즈 6/12';
}
.game-wrap .game-body.test-step-7::before {
  content: '퀴즈 7/12';
}
.game-wrap .game-body.test-step-8::before {
  content: '퀴즈 8/12';
}
.game-wrap .game-body.test-step-9::before {
  content: '퀴즈 9/12';
}
.game-wrap .game-body.test-step-10::before {
  content: '퀴즈 10/12';
}
.game-wrap .game-body.test-step-11::before {
  content: '퀴즈 11/12';
}
.game-wrap .game-body.test-step-12::before {
  content: '퀴즈 12/12';
}

/* 문제 페이지 문제 텍스트 */
.game-wrap .game-body .question-title {
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 1.75rem;
  font-style: normal;
  font-weight: 800;
  line-height: 2.4375rem; /* 139.286% */
  letter-spacing: -0.0175rem;
  margin: 0.75rem 0 0;
  text-align: left;
  width: 100%;
}

/* 문제 페이지 문제 이미지 */
.game-wrap .game-body .question-image {
  width: 21.875rem;
  height: 17.93944rem;
  margin: 1.125rem 0 0;
}

/* 문제 페이지 답안 영역 */
.question-options {
  width: 100%;
  margin-top: 2rem;
}

/* 문제 페이지 답안 버튼 */
.game-wrap .game-body .question-options button.question-option {
  display: flex;
  height: 6.875rem;
  padding: 2rem 1.25rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  align-self: stretch;
  border-radius: 0.75rem;
  border-radius: 0.75rem;
  border: 0.094rem solid #373529;
  background: #fff;
  color: #373529;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.875rem; /* 150% */
  letter-spacing: -0.0125rem;
}
@media screen and (max-width: 500px) {
  .game-wrapper.basic .game-body .question-options .question-option {
    font-size: 1.25rem;
  }
}

/* 문제 페이지 답안 버튼 */
.game-wrap .game-body .question-options button.question-option:active,
.game-wrap .game-body .question-options button.question-option:focus {
  border-color: #000;
  background: #000;
  color: #fff;
}

/* 결과 페이지 */
.game-wrapper.basic .game-result {
  padding: 0;
}

/* 결과페이지 결과명 영역 */
.game-wrapper .game-result .game-title {
  display: flex;
  padding: 2rem 5rem calc(2rem - 0.375rem) 1.875rem;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 0.5rem;
  align-self: stretch;
  background-color: transparent;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/result/top.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position-y: 1.31rem;
}

/* 결과페이지 결과명 부제목 */
.game-wrapper .game-result .game-title .subtitle {
  color: #515151;
  font-family: NanumSquareRound;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.01375rem;
}

/* 결과페이지 결과명 제목 */
.game-wrapper .game-result .game-title .title {
  display: flex;
  margin: 0;
  flex-wrap: wrap;
}
.game-wrapper .game-result .game-title .title > span {
  display: flex;
  padding: 0.25rem 0.375rem;
  justify-content: center;
  align-items: center;
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 2rem;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  letter-spacing: -0.02rem;
  background: #fff253;
  margin-bottom: 0.375rem;
}

/* 생활기록부 영역 */
.school-record {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/* 생활기록부 이미지 포괄 영역 */
.school-record-cover-wrap {
  width: 26.051rem;
}

/* 생활기록부 이미지 테두리 */
.school-record-image-wrap {
  border-radius: 1.25rem;
  border: 0.094rem solid #515151;
  box-shadow: 0px 0.25rem 0.25rem 0px rgba(0, 0, 0, 0.15);
  overflow: auto;
}

/* 생활기록부 이미지 영역 */
.school-record-image {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  gap: 0.6875rem;
  background: #fff0f4;
  padding: 1rem 1.25rem;
}

/* 생활기록부 박스 */
.school-record-title-box,
.school-record-score-box,
.school-record-checklist-box {
  border: 0.094rem solid #515151;
  background: #fff;
}

/* 생활기록부 타이틀 영역 */
.school-record-title-box {
  display: flex;
  padding: 1.1875rem 1.25rem;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
}

/* 생활기록부 부제목 */
.school-record-subtitle {
  color: #ff4893;
  font-family: NanumSquareRound;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.01rem;
}

/* 생활기록부 제목 */
.school-record-title {
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 1.625rem;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  letter-spacing: -0.01625rem;
}

/* 생활기록부 점수 영역 */
.school-record-score-box {
  padding: 0 1rem;
}

/* 생활기록부 점수 테이블 */
.school-record-score-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}

/* 생활기록부 점수 테이블 헤더 */
.school-record-score-table th {
  padding: 0.75rem 0.5rem 0;
  color: #ff4893;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.00813rem;
}

/* 생활기록부 점수 테이블 셀 */
.school-record-score-table td {
  padding: 0.75rem 0.5rem;
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.00938rem;
}

/* 생활기록부 점수 테이블 행 */
.school-record-score-table tbody tr:not(:last-child) td {
  border-bottom: 1px dashed #ff4893;
}

/* 생활기록부 점수 교과 행 */
.school-record-score-table .school-record-subject-area {
  width: 3rem;
}
/* 생활기록부 점수 성취도 행 */
.school-record-score-table .school-record-grade {
  width: 3.75rem;
}

/* 생활기록부 특징 제목 */
.school-record-checklist-title {
  display: flex;
  padding: 0.6875rem 1.25rem;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
  align-self: stretch;
  border-bottom: 0.094rem solid #515151;
  background: #fccad4;
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 1rem;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  letter-spacing: -0.01rem;
}

/* 생활기록부 특징 내부 영역 */
.school-record-checklist {
  display: flex;
  padding: 1.1875rem 1.25rem;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
  align-self: stretch;
}

/* 생활기록부 특징 리스트 */
.school-record-checklist li {
  display: flex;
  height: 1.625rem;
  align-items: flex-start;
  gap: 0.5rem;
  align-self: stretch;
}

/* 생활기록부 특징 텍스트 영역 */
.school-record-checklist-text-wrap {
  display: flex;
  padding: 0rem 0.125rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  align-self: stretch;
}

/* 생활기록부 특징 텍스트 */
.school-record-checklist-text-wrap p {
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 1.063rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.01rem;
  height: 1rem;
}

/* 생활기록부 특징 체크박스 */
.school-record-checklist-checkbox {
  width: 1.0185rem;
  height: 1.25rem;
  display: flex;
  cursor: pointer;
}
.school-record-checklist-checkbox-default {
  display: block;
}
.school-record-checklist-checkbox-active-IP,
.school-record-checklist-checkbox-active-IJ,
.school-record-checklist-checkbox-active-EP,
.school-record-checklist-checkbox-active-EJ {
  display: none;
}
.school-record-checklist li.checked .school-record-checklist-text-wrap {
  background: #ffa4b8;
}
.school-record-checklist li.checked .school-record-checklist-checkbox-default {
  display: none;
}

/* 생활기록부 데코레이션 이미지 영역 */
.school-record-decoration {
  position: absolute;
  width: 35%;
  height: 100%;
  top: 0;
  right: 0;
  overflow: auto;
}
.school-record-decoration > img {
  height: 100%;
  object-fit: cover;
  right: 0;
  position: absolute;
  display: none;
}

/* 생활기록부 스프링 이미지 영역 */
.school-record-spring {
  position: absolute;
  top: 50%;
  left: -0.37rem;
  width: 1.375rem;
  height: 34.875rem;
  transform: translateY(-50%);
  flex-shrink: 0;
}

/* 생활기록부 결과별 스타일 */
.school-record.IJ .school-record-image {
  background: #eef7ff;
}
.school-record.IJ .school-record-subtitle,
.school-record.IJ .school-record-score-table th {
  color: #2292ff;
}
.school-record.IJ .school-record-score-table tbody tr:not(:last-child) td {
  border-bottom-color: #2292ff;
}
.school-record.IJ .school-record-checklist-title {
  background: #c5e3ff;
}
.school-record.IJ li.checked .school-record-checklist-text-wrap {
  background: #a4d1fd;
}
.school-record.IJ li.checked .school-record-checklist-checkbox-active-IJ {
  display: block;
}
.school-record.IJ .school-record-decoration-IJ {
  display: block;
}

.school-record.IP .school-record-image {
  background: #f2ffe5;
}
.school-record.IP .school-record-subtitle,
.school-record.IP .school-record-score-table th {
  color: #6bda00;
}
.school-record.IP .school-record-score-table tbody tr:not(:last-child) td {
  border-bottom-color: #6bda00;
}
.school-record.IP .school-record-checklist-title {
  background: #d6ffae;
}
.school-record.IP li.checked .school-record-checklist-text-wrap {
  background: #caefa7;
}
.school-record.IP li.checked .school-record-checklist-checkbox-active-IP {
  display: block;
}
.school-record.IP .school-record-decoration-IP {
  display: block;
}

.school-record.EP .school-record-image {
  background: #fff6e3;
}
.school-record.EP .school-record-subtitle,
.school-record.EP .school-record-score-table th {
  color: #ff9417;
}
.school-record.EP .school-record-score-table tbody tr:not(:last-child) td {
  border-bottom-color: #ff9417;
}
.school-record.EP .school-record-checklist-title {
  background: #ffe3ae;
}
.school-record.EP li.checked .school-record-checklist-text-wrap {
  background: #fdcc93;
}
.school-record.EP li.checked .school-record-checklist-checkbox-active-EP {
  display: block;
}
.school-record.EP .school-record-decoration-EP {
  display: block;
}

.school-record.EJ .school-record-image {
  background: #fff0f4;
}
.school-record.EJ .school-record-subtitle,
.school-record.EJ .school-record-score-table th {
  color: #ff4893;
}
.school-record.EJ .school-record-score-table tbody tr:not(:last-child) td {
  border-bottom-color: #ff4893;
}
.school-record.EJ .school-record-checklist-title {
  background: #fccad4;
}
.school-record.EJ li.checked .school-record-checklist-text-wrap {
  background: #ffa4b8;
}
.school-record.EJ li.checked .school-record-checklist-checkbox-active-EJ {
  display: block;
}
.school-record.EJ .school-record-decoration-EJ {
  display: block;
}

/* 생활기록부 다운로드 버튼 영역 */
.school-record .image-download-button-wrap {
  display: flex;
  padding: 1.25rem 0rem 3.75rem 0rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.88rem;
}

/* 생활기록부 다운로드 버튼 안내 문구 */
.school-record .image-download-button-wrap p {
  color: #515151;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 1.6875rem */
  letter-spacing: 0;
}

.school-record .image-download-button-wrap p span {
  padding: 0rem 0.25rem;
  background: #fef260;
  display: inline-block;
}

/* 생활기록부 다운로드 버튼 */
.school-record .image-download-button {
  display: flex;
  width: 15.625rem;
  height: 3.75rem;
  padding: 0rem 0.75rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  border-radius: 0.75rem;
  background: #000;
  color: #fff;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.875rem; /* 136.364% */
  letter-spacing: -0.01375rem;
  align-self: center;
}

/* 결과 궁합 영역 */
.game-wrapper.basic .game-result .result-box.type {
  padding: 0 1.88rem 1rem;
  position: static;
  border: none;
  border-radius: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  align-self: stretch;
}

/* 결과 궁합 타이틀 */
.game-result .result-box .result-box-title {
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 1.75rem;
  font-style: normal;
  font-weight: 800;
  line-height: 2.375rem; /* 135.714% */
  letter-spacing: -0.0175rem;
  margin: 0;
  width: 100%;
  text-align: left;
}
.game-result .result-box.type .result-box-title:before {
  content: none;
}

/* 결과 궁합 박스 */
.game-result .result-box.type .img-halt-box {
  margin: 0;
  width: 100%;
  height: 25.5rem;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/result/relation-bg.png);
  background-size: contain;
  background-repeat: no-repeat;
}
.game-result .result-box.type .img-halt-box::before {
  content: '';
  position: absolute;
  top: calc(-3.75rem + 0.7rem);
  right: calc(4.5rem - 1.88rem);
  width: 4.0625rem;
  height: 3.75rem;
  flex-shrink: 0;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/result/relation-deco.png);
  background-size: contain;
  background-repeat: no-repeat;
}

/* 결과 궁합 리스트 영역 */
.game-result .img-halt-box .list {
  display: flex;
  height: 100%;
  padding: 2.375rem 1.25rem 2.25rem 1.25rem;
  justify-content: center;
  align-items: center;
}

/* 결과 궁합 리스트 */
.game-result .img-halt-box .list li {
  cursor: pointer;
}

/* 결과 궁합 타입 텍스트 */
.game-wrapper.basic .game-result .good,
.game-wrapper.basic .game-result .bad {
  padding: 0.8rem 0.8rem 0.44rem 0.93rem;
  flex-shrink: 0;
  margin-bottom: 0.75rem;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/result/relation-pen.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  color: #373529;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.25rem; /* 90.909% */
  letter-spacing: -0.01375rem;
  width: 8.99988rem;
  height: 2.63175rem;
  padding-top: 0.75rem;
  padding-left: 0.8rem;
  text-align: left;
}

/* 결과 궁합 타입 이미지 */
.game-result .img-halt-box .list li img {
  max-width: 9.6875rem;
  border-radius: 0.5rem;
  border: 0.094rem solid #515151;
  box-shadow: 0px 0.25rem 0.25rem 0px rgba(0, 0, 0, 0.15);
}

/* 결과 궁합 타입명 */
.game-wrapper.basic .result-box .img-halt-box ul.list > li span.label-bottom {
  color: #373529;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: -0.01125rem;
  margin: 1.25rem 0 0;
}

/* 결과 궁합 기존 css */
.btn-gray-round {
  display: none;
}

/* 결과 상품 홍보란 영역 */
.product-wrap {
  display: flex;
  padding: 4.375rem 1.88rem 0;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
}

/* 결과 상품 홍보란 제목 */
.product-title {
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 1.75rem;
  font-style: normal;
  font-weight: 800;
  line-height: 2.375rem; /* 135.714% */
  letter-spacing: -0.0175rem;
  text-align: left;
  margin-bottom: 1rem;
}

/* 결과 상품 랜딩 버튼 */
.product-button {
  display: flex;
  height: 5rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  align-self: stretch;
  border-radius: 1rem;
  background: #000;
  color: #fff;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.875rem; /* 125% */
  letter-spacing: -0.015rem;
  margin-top: 1.25rem;
}

/* 결과 비디오 영역 */
.game-result .video-wrap {
  display: flex;
  padding: 4.375rem 1.88rem 3.75rem;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
}

/* 결과 비디오 타이틀 */
.game-result .video-title {
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 1.75rem;
  font-style: normal;
  font-weight: 800;
  line-height: 2.375rem; /* 135.714% */
  letter-spacing: -0.0175rem;
  margin-bottom: 1rem;
}

/* 결과 비디오 */
.game-result .video-area {
  width: 100%;
  height: 17.5rem;
}

/* 결과 이벤트 이미지 영역 */
.game-result .event-wrap {
  background-image: url(https://cdn.banggooso.com/assets/images/game244/result/event-bg.png);
  background-size: cover;
  background-repeat: no-repeat;
}

/* 결과 이벤트 버튼 영역 */
.game-result .event-button-wrap {
  display: flex;
  padding: 0 1.88rem 3.125rem;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
}

/* 결과 이벤트 버튼 */
.game-result .event-button {
  display: flex;
  width: 100%;
  height: 5rem;
  justify-content: center;
  align-items: center;
  border-radius: 0.625rem;
  background: #000;
  color: #fff;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.625rem;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
}

/* 결과 공유하기 영역 */
.game-result .share-sns-list {
  margin: 0;
  padding: 3.5rem 0 0;
}

/* 가장 많은 유형 영역 */
.game-wrapper.basic .game-result .result-box.most {
  padding: 0 1.88rem;
  border: none;
  border-radius: 0;
  margin: 0;
}
.game-result .result-box.most > *:first-child {
  padding-top: 4.375rem;
}
.game-result .result-box.most > *:nth-child(2) {
  padding-bottom: 1rem;
}

/* 가장 많은 유형 타이틀 기존 스타일 제거 */
.game-result .result-box.most .result-box-title:before {
  content: none;
}

/* 가장 많은 유형 타이틀 부제 */
.game-result .result-box.most .result-box-title2 {
  color: #373529;
  font-family: NanumSquareRound;
  font-style: normal;
  font-weight: 400;
  line-height: 1.75rem; /* 155.556% */
  letter-spacing: -0.01125rem;
  margin: 0;
  text-align: left;
}
.game-result .result-box.most .result-box-title2 > small {
  font-size: 1.125rem;
}

/* 가장 많은 유형 박스 영역 */
.game-result .result-box.most .img-halt-box {
  margin: 0;
  width: 100%;
  height: 32.375rem;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/result/most-type-bg.png);
  background-size: contain;
  background-repeat: no-repeat;
}

/* 가장 많은 유형 순위 텍스트 */
.game-wrapper.basic .result-box.most .img-halt-box ul.list > li span.label-top {
  color: #373529;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  margin-bottom: 0.25rem;
  text-shadow: none;
}

/* 가장 많은 유형 순위 텍스트 배경 이미지 */
.game-wrapper.basic .result-box.most .img-halt-box ul.list > li span.label-top::before {
  content: '';
  position: absolute;
  width: 3.5rem;
  height: 1.25rem;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/result/pen-bg.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

/* 가장 많은 유형 타이틀 영역 */
.game-wrapper.basic .result-box.most .img-halt-box ul.list > li span.label-bottom {
  margin: 0 0 0.75rem;
  gap: 0.25rem;
  display: flex;
  flex-direction: column;
}

/* 가장 많은 유형 타이틀 */
.result-box .img-halt-box ul.list > li a span {
  color: #373529;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.625rem; /* 118.182% */
}

/* 가장 많은 유형 퍼센트 */
.result-box.most .img-halt-box ul.list > li span.label-bottom > em {
  color: #373529;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem; /* 171.429% */
}

/* 가장 많은 유형 버튼 영역 */
.game-result .btn_myranking {
  position: absolute;
  bottom: 2.5rem;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  padding: 0 3.76rem;
  margin: 0;
}

/* 가장 많은 유형 버튼 */
.game-wrapper.basic .game-result .btn_myranking > a {
  display: flex;
  height: 4.6875rem;
  padding: 0.625rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  align-self: stretch;
  border-radius: 0.625rem;
  border: 2px solid #000;
  background: #000;
  color: #fff;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.625rem; /* 108.333% */
  box-shadow: none;
}
.game-wrapper.basic .game-result .result-box .btn_myranking > a::after {
  display: none;
}

/* 결과 다시하기 버튼 */
.game-result .btn_retest {
  display: flex;
  margin: 0;
  padding: 3.125rem 0rem 5rem 0rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  align-self: stretch;
  width: 100%;
}

/* 결과 다시하기 버튼 */
.game-wrapper.basic .game-result .btn_retest > a {
  display: flex;
  width: 12.5rem;
  height: 5rem;
  padding: 1.5rem 0;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  border-radius: 1rem;
  background: #000;
  color: #fff;
  text-align: center;
  font-family: NanumSquareRound;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.875rem;
  border: none;
  box-shadow: none;
}

/* 결과 다시하기 버튼 아이콘 */
.game-wrapper.basic .game-result .btn_retest > a::after {
  content: '';
  background-image: url(https://cdn.banggooso.com/assets/images/common/re-test-w.png);
  width: 1.5rem;
  height: 1.5rem;
  background-size: 75%;
  background-repeat: no-repeat;
  background-position: calc(50% + 0.1rem) calc(50% - 0.1rem);
}

/* 방구소 더보기 영역 */
.game-result .contents-more {
  margin-bottom: 2.19rem;
  flex-direction: column;
  background: transparent;
}

/* 방구소 더보기 제목 영역 */
.game-result .contents-more .contents-main {
  padding: 0 2rem 1rem;
  align-items: baseline;
  gap: 0.33331rem;
  margin: 0;
}

/* 방구소 더보기 방구소 로고 */
.game-result .contents-more .contents-main .contents-logo {
  width: 8.72094rem;
}

/* 방구소 더보기 방구소 제목 */
.game-result .contents-more .contents-main .sub-text {
  color: #333;
  font-family: Pretendard;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: 2.125rem; /* 141.667% */
  margin: 0;
}

/* 방구소 더보기 리스트 */
.game-result .contents-more .contents-list {
  margin: 0;
  padding: 0;
  border: none;
}

/* 방구소 더보기 버튼 */
.game-result .contents-more .contents-list .game-btn {
  border: 0;
  border-top: 0.083rem solid #333;
  border-radius: 0;
  background: transparent;
  padding: 1.66669rem 2rem;
  margin: 0;
}

/* 방구소 더보기 버튼 텍스트 */
.game-result .contents-more .contents-list .game-btn > a {
  color: #333;
  font-family: Pretendard;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

/* 방구소 더보기 버튼 아이콘 */
.game-result .contents-more .contents-list .game-btn::before {
  width: 2rem;
  height: 2rem;
  left: 87%;
  background-size: 30%;
  background-position: center center;
}

/* 결과 콘텐츠 추천 */
.game-result .recommend-list {
  margin: 0;
}

/* 결과 콘텐츠 추천 배경 색상 */
.game-result .recommend-list:before {
  background: #fff253;
  height: 16.125rem;
}

/* 결과 콘텐츠 추천 제목 */
.game-result .recommend-list .inner .title {
  color: #2c2b2f;
  font-family: 'Pretendard';
  font-size: 1.50013rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.033rem;
  margin: -0.13rem 0 0.46rem 1.46rem;
  padding: 0;
}

/* 결과 콘텐츠 추천 카드 */
.game-result .recommend-list .swiper-container {
  padding-left: 2.17rem;
  padding-bottom: 3.25rem;
}
.game-result .recommend-list .swiper-slide {
  width: 10.83988rem;
  height: 13.37894rem;
}
.game-result .recommend-list .slide-box {
  border: 0.33rem solid #000;
  border-radius: 0;
  background-color: #000;
}
.game-result .recommend-list .slide-box .link {
  width: 100%;
  height: 100%;
  padding: 0;
  display: block;
}
.game-result .recommend-list .slide-box .link > * {
  width: 100%;
  margin: 0;
  position: absolute;
  left: 0;
}

/* 결과 콘텐츠 추천 카드 이미지 */
.game-result .recommend-list .slide-box .img-box {
  top: 0.063rem;
  height: calc(100% - 2.1rem);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

/* 결과 콘텐츠 추천 카드 콘텐츠명 */
.game-result .recommend-list .slide-box .slide-text {
  display: flex;
  justify-content: center;
  align-items: center;
  bottom: 0;
  color: #fff;
  font-family: Pretendard;
  font-size: 1.00006rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.02rem;
  background-color: #000000;
  padding: 0.66rem;
  height: auto;
}

/* 결과 다시하기 버튼 영역 */
.game-result .recommend-list .btn-wrap {
  display: flex;
  justify-content: center;
  padding-bottom: 4rem;
}
.game-result .recommend-list .btn-wrap > a {
  display: flex;
  width: 15.25rem;
  height: 4.00025rem;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  border-radius: 2.00013rem;
  background: var(--Background-Default-Default, #fff);
  color: #000;
  text-align: center;
  font-size: 1.25006rem;
  font-style: normal;
  line-height: normal;
  letter-spacing: -0.025rem;
}

/* 유형 순위 타이틀 영역 */
.list-type .game-title {
  background-color: transparent;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/result/top.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position-y: 1.31rem;
  display: flex;
  padding: 2rem 1.88rem;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 0rem;
  align-self: stretch;
}

/* 유형 순위 타이틀 부제 */
.list-type .game-title h4 {
  color: #515151;
  font-family: NanumSquareRound;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 400;
  line-height: 2.2rem;
  letter-spacing: -0.01375rem;
}

/* 유형 순위 타이틀 */
.list-type .game-title h2 {
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 2rem;
  font-style: normal;
  font-weight: 800;
  line-height: 2.625rem;
  letter-spacing: -0.02rem;
}

/* 유형 순위 기존 타이틀 제거 */
.game-wrapper.basic .rank_title_wrap {
  display: none;
}

/* 유형 순위 리스트 */
.test-lists-wrap .test-lists {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  align-self: stretch;
  padding: 0rem 1.88rem;
}

/* 유형 순위 아이템 박스 */
.list-type .list-item-wrap {
  display: flex;
  width: 100%;
  height: 12.5rem;
  padding: 1.25rem 1.875rem 1.25rem 2.25rem;
  justify-content: space-between;
  align-items: center;
  background-image: url(https://cdn.banggooso.com/assets/images/game244/list/list-item.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
}

/* 유형 순위 아이템 내용 */
.list-type .list-item {
  display: flex;
  padding: 1.25rem 0rem 0.75rem 0rem;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  flex: 1 0 0;
  align-self: stretch;
}

/* 유형 순위 아이템 순위 */
.list-type .list-item-rank {
  color: #515151;
  font-family: NanumSquareRound;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  letter-spacing: -0.015rem;
}

/* 유형 순위 아이템 타이틀 영역 */
.list-type .list-item-title-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.375rem;
}

/* 유형 순위 아이템 타이틀 부제 */
.list-type .list-item-subtitle {
  color: #515151;
  font-family: NanumSquareRound;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.25rem; /* 111.111% */
}

/* 유형 순위 아이템 타이틀 부제 */
.list-type .list-item-title {
  display: flex;
  padding: 0.125rem 0.375rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  background: #fff253;
  color: #373529;
  font-family: NanumSquareRound;
  font-size: 1.75rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.875rem; /* 107.143% */
}

/* 유형 순위 아이템 이미지 */
.list-type .list-item-image {
  width: 6.45831rem;
  border-radius: 0.5rem;
  overflow: auto;
  box-shadow: 0px 0.25rem 0.25rem 0px rgba(0, 0, 0, 0.15);
  border: 0.094rem solid #515151;
}

/* 유형 순위 아이템 스프링 이미지 */
.list-type .list-item-spring {
  width: 1.375rem;
  height: 10rem;
  position: absolute;
  left: -0.5rem;
  top: 50%;
  transform: translateY(-50%);
}

/* Modal */
.modal {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 1000;
}
.modal .modal-header {
  width: 100%;
  text-align: right;
  top: 0;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  align-items: end;
  padding-bottom: 0.62rem;
}
.modal .modal-header p {
  color: #fff;
  text-overflow: ellipsis;
  font-family: 'Pretendard Variable';
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.875rem; /* 136.364% */
  letter-spacing: -0.01375rem;
  padding-left: 0.44rem;
}
.modal .modal-header .btn-close {
  background: transparent;
}
.modal .modal-header .btn-close > img {
  width: 1.875rem;
  aspect-ratio: 1/1;
}
.modal .modal-content {
  display: flex;
  flex-direction: column;
  position: relative;
  margin: 5.62rem;
}
.modal .capture-image {
  border-radius: 0.998rem;
  border: 0.075rem solid #515151;
  box-shadow: 0px 0.2rem 0.2rem 0px rgba(0, 0, 0, 0.15);
  overflow: auto;
}
.modal .modal-content .capture-image > img {
  -webkit-touch-callout: default !important;
}
