/*modal style*/
.modal-layer { display: none; position: relative; width: 286px; max-width: calc(100% - 60px); max-height: calc(100% - 60px); border-radius: 16px; box-sizing: border-box; background: #fff; }

.dim-layer { display: none; position: fixed; _position: fixed; top: 0; left: 0; z-index: 2000; width: 100%; height: 100%; }
.dim-layer-on { display: flex; }
.dim-layer .dim-bg { position: fixed; top: 0; left: 0; right: 0; width: 100%; height: 100%; margin: 0 auto; background-color: rgba(0, 0, 0, 0.8); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.dim-layer .modal-layer { display: block; }

.modal-group { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; height: 100%; }
.modal-container { height: 100%; background: #fff; overflow: auto; }
.modal-container .box-modal { overflow-y: auto; }
.modal-top { display: flex; justify-content: space-between; align-items: center; padding: 24px 16px 16px 24px; box-sizing: border-box; }
.modal-top .modal-tit { font-size: 18px; font-weight: 700; color: var(--primary-color-black01); letter-spacing: -0.05px; line-height: 21px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.modal-top .modal-close { flex-shrink: 0; width: 36px; height: 36px; border: none; background: url('../images/common/ico_x2.svg') center center no-repeat; }


/*메시지 모달창*/
.modal-group-message .modal-layer { padding: 20px 14px 28px; box-sizing: border-box; }
.modal-group-message .modal-message { margin-bottom: 28px; text-align: center; }
.modal-group-message .modal-message .ico { margin-bottom: 16px; }
.modal-group-message .modal-message .ico img { display: block; margin: 0 auto; zoom: 0.5; }
.modal-group-message .modal-message .tit { font-size: 18px; font-weight: 700; color: var(--primary-color-black01); letter-spacing: -0.05px; line-height: 21px; }
.modal-group-message .modal-message .tit span { color: var(--main-color); }
.modal-group-message .modal-message .txt { margin-top: 14px; font-size: 15px; font-weight: 400; color: var(--primary-color-black02); letter-spacing: -0.05px; line-height: 26px; }
.modal-group-message .img-coin { position: absolute; top: -90px; left: 0; right: 0; margin: 0 auto; }
.modal-group-message .img-coin + .box-modal .modal-message { padding-top: 20px; box-sizing: border-box; }


/*룰렛 모달창*/
.modal-group-roulette .modal-close { position: fixed; top: 20px; right: 20px; z-index: 1; width: 48px; height: 48px; border: none; background: url('../images/common/ico_x1.svg') center center no-repeat; }
.modal-group-roulette .modal-layer { max-width: 100%; max-height: 100%; border-radius: 0; background: none; }
.modal-group-roulette .modal-container { background: none; }
.modal-group-roulette .roulette-group .top-section { margin-bottom: 60px; }
.modal-group-roulette .roulette-group .top-section .tit { font-size: 24px; font-weight: 700; color: #fff; text-align: center; line-height: 28px; }
.modal-group-roulette .roulette-group .top-section .txt { margin-top: 8px; font-size: 14px; font-weight: 400; color: rgba(255, 255, 255, 0.8); line-height: 18px; }
.modal-group-roulette .btn-custom { margin-top: 65px; }


/*바텀시트 모달창*/
.modal-group-bottomsheet { justify-content: flex-end; }
.modal-group-bottomsheet .modal-layer { width: 100%; max-width: var(--main-width); max-height: calc(100% - 30px); border-radius: 20px 20px 0 0; box-sizing: border-box; background: #fff; animation: modalMotion .5s ease-out; }
.modal-group-bottomsheet .modal-container { height: calc(100% - 76px); padding-bottom: 56px; box-sizing: border-box; }
.modal-group-bottomsheet .frm { padding: 0 24px 24px; box-sizing: border-box; }
.modal-group-bottomsheet .frm2 { padding: 16px 24px 32px; box-sizing: border-box; }

/*motion*/
@keyframes modalMotion {
  0% {
     bottom: -100%;
  }
  100% {
      bottom: 0;
  }
}


@media only screen and (max-width: 360px) {
	.modal-group-roulette .modal-close { top: 5.556vw; right: 5.556vw; width: 13.333vw; height: 13.333vw; }
	.modal-group-roulette .modal-layer { max-width: calc(100% - 16.667vw); }
	.modal-group-roulette .roulette-group .top-section { margin-bottom: 16.667vw; }
	.modal-group-roulette .roulette-group .top-section .tit { font-size: 6.667vw; line-height: 7.778vw; }
	.modal-group-roulette .roulette-group .top-section .txt { margin-top: 2.2222vw; font-size: 3.889vw; line-height: 5vw; }
	.modal-group-roulette .roulette { width: 77.778vw; height: 77.778vw; }
	.modal-group-roulette .roulette .circle { width: 71.389vw; height: 71.389vw; }
	.modal-group-roulette .roulette .img-object { width: 18.333vw; height: 18.333vw; }
	.modal-group-roulette .roulette .img-pin { top: -10.556vw; width: 18.056vw; height: 21.111vw; }
	.modal-group-roulette .btn-custom { height: 13.333vw; margin-top: 18.056vw; border-radius: 2.222vw; font-size: 4.444vw; }
}