@font-face {
	font-family: 'Noto Sans KR';
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: url('fonts/noto-sans-kr-v39-korean-regular.woff2') format('woff2');
	}

	@font-face {
	font-family: 'Noto Sans KR';
	font-weight: 500;
	font-style: normal;
	font-display: swap;
	src: url('fonts/noto-sans-kr-v39-korean-500.woff2') format('woff2');
	}

	@font-face {
	font-family: 'Noto Sans KR';
	font-weight: 600;
	font-style: normal;
	font-display: swap;
	src: url('fonts/noto-sans-kr-v39-korean-600.woff2') format('woff2');
	}

	@font-face {
	font-family: 'Noto Sans KR';
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	src: url('fonts/noto-sans-kr-v39-korean-700.woff2') format('woff2');
	}


	/* html,body{height:100%;} */
	html,body{height:100%;  font-family: 'Noto Sans KR', system-ui, -apple-system, sans-serif;}
	body{margin:0; padding:0; background-image:url('../image/background.png'); background-repeat:no-repeat; background-size:cover; background-position:0 0;font-family:'Noto Sans KR', sans-serif; color:#333;}
	html {font-size: 20px;  /* 기본 16px → 20px, 약 125% 확대 */}
    input, button, textarea, select { font-family: inherit; }
	div{position:relative; box-sizing:border-box;}
	.wrap{
		width:100%;
		height:100%;
		display:table;
		overflow:hidden;        /* 스크롤 차단 */
	}

	.scale-root{
	width:100%;
	height:100%;
	display:table;
	transform: scale(1.4);
	transform-origin: center center;  /* 중앙 기준 */
	}
	body{overflow:hidden; /* 가로 튐 방지 */}
	.container{width:100%; height:100%; display:table-cell; vertical-align:middle; text-align:center;}


.logo{ display: block;           /* 블록 요소로 만들어서 아래쪽 여백 적용 */
    margin-bottom: 35px;      /* 로고와 텍스트 사이 여백 */
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:16px;                       /* 로고와 제목 간격 */
  padding-top:min(8vh, 0px);
  margin-bottom: 20px;  /* 상단 여유 */
/*position: absolute;
  top: 28%;               /* 텍스트 위로 올리고 싶을 때 조절 */
 /* left: 50%;
  width:300px; height:30px;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 10; */}
.logo img{  width: clamp(200px, 20vw, 320px);  /* 최소 200px, 최대 320px 사이에서 반응형 */
/*max-width:400px;       /* 로고 크기 */
  height: auto;}



	/*.logo{position:absolute; width:178px; height:30px; top:30px; left:30px; z-index:2;}*/
	/*.logo img{width:120%; border:0;}*/

	.header{width:100%; text-align:center;}
	.header h1{font-size: 26px;
    font-weight: 600;
    color: #333;
    text-align: center;
    letter-spacing: -0.7px;}
	.input-label{
  margin: 0 0 14px;            /* 라벨과 입력창 사이 간격 */
  font-size: 14px;             /* 글자 크기 */
  font-weight: 500;
  color: #666;   /* 색상(원하면 더 진하게) */
  text-align: center;          /* 중앙 정렬 */
}
.input-num{
	width:100%; 
	max-width:300px; 
	margin: 18px auto; 
	color: #0b274f; /* 위 여백도 살짝 줄임 */
	text-align:center;
	letter-spacing: -0.3px;
}
.input-num > div.input-num-wrap {
  margin-top: 18px;
}

.input-num input{
  flex: 1 1 auto;
  height: 56px;          /* ✅ 버튼과 동일 */
  margin-top: 0;
  padding: 0 44px 0 24px; /* ✅ 좌우 여백(오른쪽은 X 공간) */
  border: 0;
  background: transparent;
  text-align: left;
  font-size: 20px;
  letter-spacing: 3px;
  font-weight: bold;
  color: #007bff;
  line-height: 56px;     /* ✅ 세로 중앙 맞추기 핵심 */
  outline: none;
}

.input-num input::placeholder{
  color: rgba(11,39,79,.35);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.1px;
}

	.btn-input-num{
	position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 110px;          /* ✅ 버튼 가로 폭 */
  padding: 0;
  border: 0;
  background: #007bff;
  color: #fff;
  font-size: 16px;
  font-weight: 600;;}
	.btn-input-num:hover{background-color:#0056b3;}

	.info-text{width:100%; max-width:300px; margin:10px auto; border:solid 1px #fff; padding:20px; font-size:15px; line-height:1.5em; text-align:center; word-break:keep-all; background-color:#ffffff69;border-radius:3px;color:black;}
	.download-wrap{ width: 100%;
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;   /* ✅ 가운데 정렬 핵심 */
  text-align: center;
}
     
	.download-wrap .download-desc{
  display: block;       /* inline-block이면 왼쪽에 붙는 문제 방지 */
  width: 100%;
  margin: 0 auto 12px;  /* 위0, 좌우 auto, 아래 여백 */
  text-align:center !important;
  white-space: nowrap;  /* 한 줄 고정 */
}

.divider{
  width: 100%;
  max-width: 650px;         /* 필요하면 450~720 사이로 조절 */
  height: 0.8px;
  background: rgba(11,39,79,.18);
  margin: 35px auto;        /* 위아래 간격 */
}

	.btn-download{margin-top:5px; background-color:#6c757d; padding:10px; border:solid 1px #fff; text-align:center; font-size:0.85rem; text-align:center; color:#fff; cursor:pointer;}
	.btn-download:hover{border-color:#004fff;}
	.download-desc{width: 100%;
  margin: 12px 0;        /* 위아래 간격 */
  font-size: 13px;
  color: #777;
  line-height: 1.5;
  white-space: nowrap;   /* 한 줄 고정 */
  text-align: center !important;
}

.copyright{position:absolute; bottom:10px; right:10px; color:#888; font-size:0.75em; text-align:right; z-index:2;}
.copyright span{color:#00a0e9;}
.browser-warning { display: none }
.input-num-wrap {
  position: relative;
  display: flex;
  align-items: stretch; 
  height: 56px;
  width: 100%;
  background: rgba(255,255,255,0.95);
  border: 1px solid rgba(15,23,42,.12);
  border-radius: 9999px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(15,23,42,.08);
  padding-left: 9%;
}
#accesscode{
  width: 100%;
  height: 100%;
}
.input-num-wrap:focus-within{
  border-color:#2563eb;
  box-shadow: 0 0 0 4px rgba(37,99,235,.15), 0 10px 30px rgba(15,23,42,.08);
}
	.input-num-wrap .btn-reset {display:none;position: absolute;
    top: 24px; right: 12px;
		border: 0;
		background-color: transparent;
		cursor: pointer;
		outline: none;
	}
	.input-num-wrap .btn-reset img { width: 20px; }
	input::-ms-clear { display:none; }

	.mobile-info{width:100%; text-align:center; margin-top:30px; font-size:1em; color:black; word-break:keep-all;}
	.btn-mobile-link{display: none; width:90%; height:60px; margin:10px auto; border-radius:4px; overflow:hidden; background-repeat:no-repeat; background-size:auto 100%; background-position:center;}
	.os-android{background-image:url('../image/btn-android.svg'); background-color:#fff; border:solid 1px #B6B7B7; width:60%; border-radius: 30px;}
	.os-ios{background-image:url('../image/btn-ios.svg'); background-color:#fff; border:solid 1px #B6B7B7; width:40%; border-radius: 30px;}

	.access-mobile,
	.access-desktop { display: none; }
	body.mobile .access-desktop,
	body.tablet .access-desktop { display: none; }
	body.desktop .access-desktop { display: block; }
	body.mobile .access-mobile,
	body.tablet .access-mobile { display: block; }

	body.ios .os-ios { display: block; }
	body.android .os-android { display: block; }
	body.ios .os-unknown,
	body.android .os-unknown { display: none; }


    a{text-decoration:none; color:#014099;}
	.text-wrap{position:relative; width:100%; text-align:center; padding-top: 20px;}
	.text-area{display:inline-block; padding:48px; background-color:rgb(235 235 235 / 50%); text-align:left; border:solid 1px #fff;}
	.text-content{padding-left:24px; position:relative; line-height:1.5em;}
	.text-content.num01{margin-bottom:8px;}
	.text-content.num01:before{content:'1'; position:absolute; width:24px; height:1em; top:0; left:0; text-align:center; font-size:1.5em; font-weight:bold; color:#333;}
	.text-content.num02:before{content:'2'; position:absolute; width:24px; height:1em; top:0; left:0; text-align:center; font-size:1.5em; font-weight:bold; color:#333;}
	.btn-download{
    padding: 12px 24px;
    background: #6c757d;
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.2s;}
	.manual-area{width:100%; padding-top:16px; text-align:center;}
	.btn-manual-download{position:relative; display:inline-block; height:36px; line-height:36px; padding:0px 24px; padding-left:50px; font-size:16px; background:#1e2327; color:#fff; border-radius:8px;}
	.btn-manual-download:before{
		content:''; position:absolute; width:24px; height:24px; top:6px; left:24px;
		background-image:url('../image/icon-btn-manual-download.png'); background-repeat:no-repeat; background-size:100% 100%; background-position:center center;
	}



/* [if lt IE 9] */
/* .browser-warning { 
	font-family: 'Malgun Gothic', sans-serif;
	font-size: 14px;
	color: #a0a0a0;
	position: absolute;
	top: 0px; right: 0px;
	display: inline;
	display: inline-block;
	background-color: black;
	padding: 6px 40px;
}
.browser-warning a:visited { color: #a0a0a0; }
.browser-warning a:hover { color: #f0f0f0; }
.container { padding-top: 120px; font-family: 'Malgun Gothic', sans-serif; }
.header h1 { padding-bottom: 10px; }
.input-num { width: 300px !important; }
.info-text { width: 300px !important; }
.download-wrap { width: 310px !important; }
.btn-download {
	font-family: 'Malgun Gothic', sans-serif;
	background-color: #0c0d0d;
	text-decoration: none;
} */
