/* ====== #main: 권한코드 입력 ====== */
#page-main {
  background-color: #66108e;
  position: relative;
  overflow: hidden;
  --tile-w: 8.333vw;
  --tile-h: 10.833vw;
}

.license-wrap {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-align: center;
}

.license-content {
  position: relative;
  z-index: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.license-bi-wrap {
  position: relative;
  width: 15.36vw;
  margin-bottom: 0.833vw;
  --line-y: 63%;
  --line-hw: 0.9375vw;
}

.entry-bg__top {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  top: -500vh;
  bottom: -500vh;
  background: url('../../assets/images/00_Entry_BG_pattern_1.png') repeat top / var(--tile-w) var(--tile-h);
  pointer-events: none;
}

.entry-bg__bottom {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  top: calc(var(--line-y) + var(--line-hw));
  bottom: -500vh;
  background: url('../../assets/images/00_Entry_BG_pattern_3.png') repeat top / var(--tile-w) var(--tile-h);
  pointer-events: none;
}

.entry-bg__line {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  top: calc(var(--line-y) - var(--line-hw) - 1px);
  height: calc(var(--line-hw) * 2 + 2px);
  background: url('../../assets/images/00_Entry_BG_pattern_2.png') no-repeat center / 100vw calc(var(--line-hw) * 2 + 2px);
  pointer-events: none;
}

.license-bi {
  width: 100%;
  display: block;
  position: relative;
  z-index: 1;
}

.license-title {
  font-family: 'HelveticaRounded', 'Segoe UI', 'Malgun Gothic', sans-serif;
  font-size: var(--fs-h1);
  color: #ffffff;
  margin-bottom: clamp(20px, 2.417vw, 46px);
}

.license-desc {
  font-family: 'NanumSquare', 'Segoe UI', 'Malgun Gothic', sans-serif;
  font-size: var(--fs-base);
  color: #66108e;
  margin-bottom: clamp(8px, 0.5vw, 12px);
}

.license-input-group {
  display: flex;
  gap: clamp(6px, 0.417vw, 10px);
}

.license-input-group input {
  width: clamp(220px, 14.58vw, 280px);
  padding: clamp(10px, 0.729vw, 16px) clamp(12px, 0.9375vw, 18px);
  border: clamp(2px, 0.15625vw, 3px) solid #f0dcff;
  border-radius: clamp(6px, 0.4167vw, 10px);
  font-family: 'HelveticaRounded', 'Segoe UI', 'Malgun Gothic', sans-serif;
  font-size: var(--fs-base);
  font-weight: 700;
  color: #66108e;
  background-color: #ffffff;
  outline: none;
  text-align: center;
  letter-spacing: clamp(3px, 0.2083vw, 5px);
  box-shadow: 0 0 clamp(6px, 0.4167vw, 10px) rgba(102,16,142,0.1);
  transition: 0.15s;
}

.license-input-group input::placeholder {
  color: #f0dcff;
  font-size: var(--fs-base);
  letter-spacing: clamp(3px, 0.2083vw, 5px);
}

.license-input-group input:focus {
  border-color: #66108e;
  box-shadow: 0 0 clamp(8px, 0.625vw, 14px) rgba(102,16,142,0.2);
}

.license-input-group button {
  padding: clamp(10px, 0.729vw, 16px) clamp(18px, 1.458vw, 28px);
  background: #66108e;
  color: #ffffff;
  border: none;
  border-radius: clamp(8px, 0.625vw, 14px);
  font-family: 'HelveticaRounded', 'Segoe UI', 'Malgun Gothic', sans-serif;
  font-size: var(--fs-base);
  font-weight: 700;
  cursor: pointer;
  transition: 0.15s;
}

.license-input-group button:hover {
  background: #7d14b0;
}

.license-input-group button:disabled {
  opacity: 0.6;
  cursor: default;
}

.license-input-group button:disabled:hover {
  background: #66108e;
}

.license-error {
  margin-top: clamp(8px, 0.625vw, 14px);
  font-size: clamp(11px, 0.729vw, 14px);
  color: #ff3b30;
  min-height: clamp(14px, 1.04vw, 20px);
}

.license-info {
  font-family: 'NanumSquare', 'Segoe UI', 'Malgun Gothic', sans-serif;
  font-size: clamp(12px, 0.9375vw, 16px);
  font-weight: 700;
  color: #f0dcff;
  margin-top: clamp(8px, 0.625vw, 14px);
  margin-bottom: 0;
  text-align: center;
}

.license-ci {
  margin-top: clamp(80px, 9.083vw, 160px);
  width: clamp(90px, 9.375vw, 160px);
}
