.cont03{display: none;}
.noselect { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}

.box_img1 { max-width: 800px; margin: 0 auto; padding-bottom: 1.5rem; }
input[type=text], input[type=button] { -webkit-appearance: none; -webkit-border-radius: 0; }

#s_rand { width:60%; }

.cont .lay .timer{ float: right; width: 15%; max-width: 65px; height: 34px; font-size: 14px; color: rgb(234, 0, 44); }
.cont .lay .timer span{ line-height: 34px; }

:root { --active-color: #3617CE; }
.btn-backcolor { background-color: var(--active-color) !important; color: #fff !important; }
.btn-reverse-backcolor { color: var(--active-color) !important; background-color: #fff !important; }

/* 팝업 버튼 레이아웃 */
.wrap_popup .pop_cont ul{
  width: 200px;
  margin: 0 auto;
  padding: 40px 0 40px 0;
  display: flex;
  justify-content: center;
  gap: 20px;
}
.wrap_popup .pop_cont ul li{ float: none; }

.wrap_popup .pop_cont .btn_close {
  position: absolute; top: 12px; right: 12px;
  width: 36px; height: 36px;
  border: 0; background: transparent; cursor: pointer;
  font-size: 28px; line-height: 36px; text-align: center;
  color: #666;
}
.wrap_popup .pop_cont .btn_close:hover { color: #000; }

input::placeholder {
 	color: #5f5555 !important;
}

input::-webkit-input-placeholder{
 	color: #5f5555 !important;
}

input:-ms-input-placeholder{
 	color: #5f5555 !important;
}

.btn_gray {
  margin-top: 10px;
  width: 100%;
  height: 50px;
  border-radius: 8px;
  font-size: 18px;
  background-color: #8e8e8e;
  color: #fff;
  font-weight: bold;
}

/* 기본 가입 버튼 스타일 */
.btn_join {
  background-color: rgb(234, 0, 44) !important;
  color: rgb(255, 255, 255) !important;
}

/* ✅ disabled 대신: 비활성처럼 보이게만 */
.btn_join.is-disabled{
  background-color: #d72d2d !important;
  color:#fff !important;
  cursor: not-allowed;
}

.btn_join.is-disabled.btn_type_gray { background-color: #8e8e8e !important; }


#header h1 {
  padding: 9px 17px;
  font-size: 15px;
  color: #464646;
  background: #ececec;
  font-weight: 600;
  position: relative;
  text-align: left;
}

.point_txt { color: #ee2941 !important; font-weight: 600; }

/* ===== Custom Alert Modal ===== */
.sl-modal {
  position: fixed;
  inset: 0;
  display: none;
  z-index: 99999; /* 기존 팝업보다 위 */
}

.sl-modal.is-open {
  display: block;
}

.sl-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.45);
}

.sl-modal__dialog {
  position: relative;
  width: 80%;
  max-width: 420px;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 16px 40px rgba(0,0,0,.2);
  padding: 18px 18px 16px;
}

.sl-modal__close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 34px;
  height: 34px;
  border: 0;
  background: transparent;
  font-size: 24px;
  line-height: 34px;
  color: #666;
  cursor: pointer;
}

.sl-modal__header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-right: 34px;
}

.sl-modal__icon {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(234,0,44,.1);
  color: rgb(234,0,44);
  font-weight: 1200;
  font-size: 15px;
}

.sl-modal__title {
  margin: 0;
  font-size: 18px;
  font-weight: 800;
  color: #222;
}

.sl-modal__body {
  padding: 12px 0 8px;
}

.sl-modal__message {
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
  color: #444;
  white-space: pre-line; /* \n 줄바꿈 반영 */
}

.sl-modal__footer {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 8px;
}

.sl-modal__btn {
  min-width: 92px;
  height: 38px;
  border-radius: 10px;
  border: 0;
  cursor: pointer;
  font-weight: 700;
  font-size: 14px;
}

.sl-modal__btn--primary {
  background: #3617ce;
  color: #fff;
}

/* body 스크롤 잠금(원하시면 사용) */
body.sl-modal-open {
  overflow: hidden;
}
