@charset "utf-8";

/*********************************************************************************
HMG TECH SUMMIT 2026 - 사전등록 신청 (Figma 290:5663 / day active 290:6412)
*********************************************************************************/

.form__page{
	background:#000f30; color:#fff;
	padding:180px 0 54px; box-sizing:border-box;
	flex:1 1 auto; display:flex; flex-direction:column; width:100%;
}
.bg__sub{position:absolute; top:0; left:0; width:100%;}
.form__inner{
	display:flex; flex-direction:column; align-items:center;
	max-width:1500px;
}
.form__page__title{
	margin:0; font-family:'Hyundai Sans Head Pro', 'Hyundai Sans Text Pro', sans-serif;
	font-size:54px; font-weight:700; line-height:59px; letter-spacing:-0.64px;
	color:#fff; text-align:center; text-transform:uppercase;
}
.form__body{
	width:100%; max-width:1500px; margin-top:108px;
	display:flex; flex-direction:column; gap:58px;
}
.form__registration__details[hidden]{display:none !important;}
.form__registration__details:not([hidden]){display:contents;}

/* TYPE A / B 전환 (contents 타이틀·리드 / privacy 제3자) */
.form__contents__title[data-for-type],
.form__contents__lead[data-for-type],
.form__privacy__third{display:none;}
.form__body.is-type-a .form__contents__title[data-for-type="A"],
.form__body.is-type-b .form__contents__title[data-for-type="B"],
.form__body.is-type-a .form__contents__lead[data-for-type="A"],
.form__body.is-type-b .form__contents__lead[data-for-type="B"]{display:block;}
.form__body.is-type-b .form__privacy__third{
	display:flex; flex-direction:column; gap:22px; width:100%;
}
.form__step--06{display:none;}
.form__body.is-type-a .form__step--06,.form__body.is-type-b .form__step--06{display:block;}

/*********************************************************************************
Step head
*********************************************************************************/
.form__step__head{
	display:flex; flex-direction:column; align-items:flex-start; gap:7px;
	margin-bottom:22px;
}
.form__step__title{
	display:flex; align-items:flex-start; gap:4px;
}
.form__step__num{display:none;}
.form__step__name{
	font-size:22px; font-weight:700; line-height:28px; letter-spacing:0.19px;
	color:#fff;
}
.form__step__req{
	font-size:14px; font-weight:700; line-height:16px; letter-spacing:1.75px;
	color:#de0000;
}
.form__step__opt{
	font-size:13px; font-weight:700; line-height:16px; letter-spacing:1.59px;
	color:#8a8a8a;
}
.form__step__hint{
	margin:0; font-size:12px; font-weight:400; line-height:14px;
	letter-spacing:0.09px; color:rgba(255,255,255,0.7);
}

.form__panel{
	border: 1px solid rgba(255, 255, 255, 0.13); border-radius:0;
	padding:22px; box-sizing:border-box;
	overflow:visible;
}
.form__step--03{position:relative; z-index:2;}
.form__step--03.is-select-open{z-index:30;}
.form__panel--contents{padding:36px 22px;}

/*********************************************************************************
STEP 01 – Days (active: 290:6412)
*********************************************************************************/
.form__day__list{
	display:grid; grid-template-columns:repeat(3, 1fr); gap:8px;
}
.form__day__item{
	display:flex; align-items:center; gap:14px;
	min-height:0; padding:22px; box-sizing:border-box;
	cursor:pointer; 
	border-radius:8px;
	border: 1px solid rgba(255, 255, 255, 0.13);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.08) -0.07%, rgba(255, 255, 255, 0.01) 99.97%), rgba(255, 255, 255, 0.02);
}
.form__day__item:has(.form__day__input:checked){
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0.02) 100%), linear-gradient(180deg, rgba(145, 31, 135, 0.08) -0.07%, rgba(145, 31, 135, 0.01) 99.97%), rgba(143, 112, 174, 0.24);
	border: 1px solid #b39cff;
}
.form__day__item.is-closed{opacity:.45; cursor:not-allowed;}
.form__day__item.is-closed:hover{border-color:rgba(255,255,255,.12);}
.form__day__input{position:absolute; opacity:0; pointer-events:none;}
.form__day__check{
	flex-shrink:0; width:23px; height:23px; box-sizing:border-box;
	border: 1px solid rgba(255, 255, 255, 0.13); border-radius:3.5px; background:transparent;
	display:flex; align-items:center; justify-content:center;
}
.form__day__check__mark{
	display:none; width:14px; height:16px; max-width:none;
}
.form__day__input:checked + .form__day__check{
	border-color:#b39cff; background:#b39cff;
}
.form__day__input:checked + .form__day__check .form__day__check__mark{
	display:block;
}
.form__day__text{display:flex; flex-direction:column; gap:3px;}
.form__day__title{
	font-size:18px; font-weight:700; line-height:22px; letter-spacing:0.31px; color:#fff;
}
.form__day__date{
	font-size:12px; font-weight:400; line-height:16px; letter-spacing:0.09px; color:rgba(255,255,255,0.7);
}

/*********************************************************************************
STEP 02 – Type cards
*********************************************************************************/
.form__type__list{
	display:grid; grid-template-columns:1fr 1fr; gap:8px;
}
.form__type__item{
	display:flex; flex-direction:column; align-items:flex-start; gap:7px;
	min-height:0; padding:22px; box-sizing:border-box;
	border-radius:8px;
	border: 1px solid rgba(255, 255, 255, 0.13);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.08) -0.07%, rgba(255, 255, 255, 0.01) 99.97%), rgba(255, 255, 255, 0.02);
	cursor:pointer;
}
.form__type__item.is-active{
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0.02) 100%), linear-gradient(180deg, rgba(145, 31, 135, 0.08) -0.07%, rgba(145, 31, 135, 0.01) 99.97%), rgba(143, 112, 174, 0.24);

	border: 1px solid #B39CFF;
}
.form__type__input{position:absolute; opacity:0; pointer-events:none;}
.form__type__badge{display:none;}
.form__type__body{display:flex; flex-direction:column; gap:8px; width:100%;}
.form__type__title{
	font-family:'Hyundai Sans Head Pro', 'Hyundai Sans Text Pro', sans-serif;
	font-size:18px; font-weight:700; line-height:24px; letter-spacing:0.0781px;
	color:#fff; margin:0;
	word-break:break-word;
	-webkit-text-size-adjust:100%;
	text-size-adjust:100%;
}
.form__type__desc{
	display:block;
	font-family:'Hyundai Sans Text Pro', sans-serif;
	font-size:12px; font-weight:400; line-height:18px; letter-spacing:0.0938px;
	color:rgba(255,255,255,0.7);
	white-space:pre-line;
	word-break:break-word;
	-webkit-text-size-adjust:100%;
	text-size-adjust:100%;
}

/*********************************************************************************
STEP 03 – Fields
*********************************************************************************/
.form__fields{
	display:grid; grid-template-columns:1fr 1fr; gap:14px 8px;
	overflow:visible;
}
.form__fields.form__fields--a,
.form__fields.form__fields--b{display:none;}
.form__body.is-type-a .form__fields.form__fields--a,
.form__body.is-type-b .form__fields.form__fields--b{display:grid;}
.form__field{display:flex; flex-direction:column; align-items:stretch; gap:14px; min-width:0; position:relative;}
.form__field:has(.form__select.is-open){z-index:40;}
.form__label{
	margin:0; font-size:13px; font-weight:700; line-height:16px;
	letter-spacing:0; color:#d8d8d8;
}
.form__field__control{display:flex; flex-direction:column; gap:8px; width:100%;}
/* iOS/Android: 16px 미만이면 focus 시 자동 확대 — 기본값을 16px로 고정 */
.form__input{
	width:100%; height:41px; min-height:41px; padding:0 18px; box-sizing:border-box;
	border:1px solid rgba(255, 255, 255, 0.13); border-radius:4px; background:rgba(255, 255, 255, 0.06);
	font-family:inherit; font-size:16px; font-weight:400; line-height:40px;
	letter-spacing:0.11px; color:#fff; outline:none;
	-webkit-text-size-adjust:100%;
	text-size-adjust:100%;
}
.form__input::placeholder{color:rgba(255,255,255,.6); font-size:16px;}
.form__input:focus{border-color:#b39cff;}
.form__input.is-invalid,
.form__input.is-invalid:focus{
	border-color:#ff6b6b;
	box-shadow:0 0 0 1px rgba(255,107,107,0.45);
}
.form__input--full{width:100%;}
/* Chrome autofill / keychain 흰 배경 방지 */
.form__input:-webkit-autofill,
.form__input:-webkit-autofill:hover,
.form__input:-webkit-autofill:focus,
.form__input:-webkit-autofill:active{
	-webkit-text-fill-color:#fff;
	caret-color:#fff;
	font-size:16px;
	box-shadow:0 0 0 1000px #111 inset;
	transition:background-color 99999s ease-in-out 0s;
}
.form__help{
	margin:0; font-size:12px; font-weight:400; line-height:14px;
	letter-spacing:0.09px; color:rgba(255,255,255,0.7);
}
.form__help.is-invalid{color:#ff6b6b;}

.form__phone__row{
	display:flex; align-items:stretch; gap:8px;
}
.form__input--phone{flex:1; min-width:0;}
.form__verify__btn,
.form__otp__confirm{
	flex:0 0 auto; width:auto; min-width:103px; height:41px; min-height:41px;
	padding:0 14px; box-sizing:border-box; overflow:visible;
	border:1px solid #b39cff; border-radius:4px; background:#b39cff;
	font-family:inherit; font-size:12px; font-weight:700; line-height:1;
	letter-spacing:0.375px; color:#000f30; white-space:nowrap; cursor:pointer;
	display:inline-flex; align-items:center; justify-content:center;
}
.form__otp__confirm{color:#111;}
.form__verify__btn:hover{opacity:.85;}
.form__otp__confirm:hover{opacity:.9;}
.form__otp__confirm:disabled{opacity:.7; cursor:default;}

/* OTP row (인증번호 클릭 후) */
.form__otp{margin-top:0;}
.form__otp[hidden]{display:none !important;}

/* 직책/회사 기타 직접 입력 */
.form__input--other{margin-top:0;}
.form__input--other[hidden]{display:none !important;}
.form__field--title.is-other .form__input--other,
.form__field--company.is-other .form__input--other{
	border-color:#b39cff;
}

/*********************************************************************************
Custom select
*********************************************************************************/
.form__select{position:relative; width:100%; z-index:1;}
.form__select.is-open{z-index:50;}
.form__select__trigger{
	display:flex; align-items:center; justify-content:space-between; gap:11px;
	width:100%; height:41px; min-height:41px; padding:0 18px; box-sizing:border-box;
	border: 1px solid rgba(255, 255, 255, 0.13); border-radius:4px; background: linear-gradient(0deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.06) 100%), rgba(255, 255, 255, 0.02);
	cursor:pointer;
	font-family:inherit; text-align:left; color:#fff;
}
.form__select.is-open .form__select__trigger{border-color:#b39cff;}
.form__select__value{
	font-size:16px; font-weight:400; line-height:1.4; letter-spacing:0.11px; color:#fff;
}
.form__select__value.is-placeholder{color:rgba(255,255,255,.6);}
.form__select__chevron{
	display:block; width:16px; height:16px; flex-shrink:0;
	transition:transform .2s; pointer-events:none;
}
.form__select.is-open .form__select__chevron{transform:rotate(180deg);}
.form__select__list{
	position:absolute; left:0; right:0; top:calc(100% + 4px); z-index:60;
	margin:0; padding:14px 18px; list-style:none; box-sizing:border-box;
	display:none; flex-direction:column; align-items:stretch; gap:7px;
	border: 1px solid rgba(255, 255, 255, 0.13); border-radius:4px; background: #0f1d3c;
	max-height:288px; overflow:auto;
}
.form__field--company .form__select__list{max-height:324px;}
.form__field--company .form__select__option{white-space:normal;}
.form__select.is-open .form__select__list{display:flex;}
.form__select__option{
	padding:4px 0; font-size:14px; font-weight:400; line-height:17px;
	letter-spacing:0.11px; color:#fff; cursor:pointer; white-space:nowrap;
}
.form__select__option:hover,
.form__select__option.is-active{color:#b39cff;}
.form__select__option.is-placeholder{color:#757575;}

/*********************************************************************************
STEP 04 – Interest
*********************************************************************************/
.form__interest{display:flex; flex-direction:column; gap:14px;}
.form__interest__q{
	margin:0; font-size:20px; font-weight:700; line-height:23px; letter-spacing:0.08px; color:#fff;
}
.form__interest__guide{
	margin:0; font-size:14px; font-weight:400; line-height:1.5; letter-spacing:0.11px; color:#a8a8a8;
}
.form__interest__head{display:flex; flex-direction:column; gap:8px;}

/*********************************************************************************
STEP 05/06 – Contents
*********************************************************************************/
.form__contents{
	display:flex; flex-direction:column; gap:22px; width:100%;
}
.form__contents__title{
	margin:0; font-size:20px; font-weight:700; line-height:23px; letter-spacing:0.08px; color:#fff;
}
.form__contents__intro{
	display:flex; flex-direction:column; gap:8px;
}
.form__contents__sub{
	margin:0; font-size:14px; font-weight:700; line-height:1.5; letter-spacing:0.11px;
	color:rgba(255,255,255,.7);
}
.form__contents__lead{
	margin:0; max-width:none;
	font-size:14px; font-weight:400; line-height:1.5; letter-spacing:0.11px; color:#a8a8a8;
}
.form__contents__divider{
	width:100%; height:0; border:0; border-top:1px solid rgba(255, 255, 255, 0.13); margin:0;
}
.form__contents__block{
	display:flex; flex-direction:column; gap:8px; width:100%;
}
.form__contents__req__label{
	margin:0; font-size:14px; font-weight:700; line-height:1.5; letter-spacing:0.125px; color:#fff;
}
.form__contents__table{
	width:100%; border-collapse:collapse; table-layout:fixed; margin:0;
}
.form__contents__table th,
.form__contents__table td{
	padding:13px 14px; border:1px solid rgba(255, 255, 255, 0.13);
	font-size:14px; font-weight:400; line-height:1.5; letter-spacing:0.11px;
	vertical-align:middle; text-align:left;
	box-sizing:border-box; word-break:keep-all; overflow-wrap:anywhere;
}
.form__contents__table th{
	width:151px; background:rgba(255, 255, 255, 0.08); font-weight:700; color:#fff;
}
.form__contents__table td{color:#a8a8a8;}
.form__contents__note{
	margin:0; font-size:14px; font-weight:400; line-height:1.5; letter-spacing:0.11px; color:#a8a8a8;
}
.form__contents__agree{
	display:flex; flex-direction:column; align-items:flex-start; gap:14px;
}
.form__contents__agree__text{
	margin:0; font-size:14px; font-weight:700; line-height:1.5; letter-spacing:0.125px; color:#fff;
}
.form__contents__btns{display:flex; align-items:center; gap:8px;}
.form__agree__btn{
	display:inline-flex; align-items:center; justify-content:center;
	min-width:0; height:40px; padding:9px 18px; box-sizing:border-box;
	border:1px solid #b39cff; border-radius:4px; background:transparent; cursor:pointer;
	font-size:12px; font-weight:700; line-height:20px; letter-spacing:0.375px; color:#b39cff;
}
.form__agree__input{position:absolute; opacity:0; pointer-events:none;}
.form__agree__btn:has(.form__agree__input:checked),
.form__agree__btn.is-active{
	border-color:#b39cff; background:#b39cff; color:#000;
}
.form__agree__error{
	margin:0;
	font-size:12px; font-weight:400; line-height:16px;
	letter-spacing:0.09px; color:#ff6b6b;
	word-break:keep-all;
}
.form__agree__error[hidden]{display:none !important;}

/* step 06 */
.form__confidentiality .form__contents__block{
	gap: 4px;	
}
.form__confidentiality .form__contents__req__label{
	margin-bottom: 4px;
}

/*********************************************************************************
Submit
*********************************************************************************/
.form__submit{
	display:flex; flex-direction:column; align-items:center; justify-content:center;
	border:0; background:transparent; padding:0; min-height:0;
}
.form__submit__btn{
	display:inline-flex; align-items:center; justify-content:center; gap:7px;
	flex-shrink:0; min-width:0; height:50px; padding:0 32px; box-sizing: border-box;
	border:1px solid #0f1d3c; border-radius:9px; background:#0f1d3c;
	font-family:inherit; font-size:16px; font-weight:500; line-height:24px;
	letter-spacing:-0.18px; color:rgba(255,255,255,0.5); cursor:not-allowed;
}
.form__submit__btn img{
	display:none; width:12px; height:14px; opacity:.35;
	transition:transform .3s, opacity .3s;
}
.form__submit__btn.is-ready{
	background:#fff; border-color:#fff; color:#000; cursor:pointer;
}
.form__submit__btn.is-ready img{display:block; opacity:1;}
.form__submit__btn.is-ready:hover{opacity:.9;}
.form__submit__error{
	margin:12px 0 0; color:#ff5b67; font-size:14px; font-weight:500; line-height:1.45;
	text-align:center;
}
.form__submit__error[hidden]{display:none;}
@media (pointer: fine) {
	.form__submit__btn.is-ready:hover img{transform:translateX(5px);}
}

/*********************************************************************************
Type A complete modal
*********************************************************************************/
body.is-form-modal-open{
	overflow:hidden;
}
.form__modal{
	position:fixed; inset:0; z-index:2000;
	display:flex; align-items:center; justify-content:center;
	padding:22px; box-sizing:border-box;
}
.form__modal[hidden]{display:none !important;}
.form__modal__dim{
	position:absolute; inset:0;
	background:rgba(0, 8, 28, 0.82);
}
.form__modal__panel{
	position:relative; z-index:1;
	width:100%; max-width:648px;
	padding:43px 36px;
	border:1px solid rgba(255,255,255,0.13);
	background:#000f30;
	box-sizing:border-box;
	text-align:center;
	color:#fff;
}
.form__modal__title{
	margin:0 0 22px;
	font-family:'Hyundai Sans Head Pro', 'Hyundai Sans Text Pro', sans-serif;
	font-size:29px; font-weight:700; line-height:1.3;
	letter-spacing:-0.4px; color:#fff; word-break:keep-all;
}
.form__modal__desc{
	margin:0 0 29px;
	font-size:16px; font-weight:400; line-height:1.6;
	letter-spacing:-0.18px; color:#fff; word-break:keep-all;
}
.form__modal__actions{
	display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:11px;
}
.form__modal__actions .main__btn__a{
	appearance:none; -webkit-appearance:none;
	font-family:inherit; cursor:pointer; text-decoration:none;
	background:transparent; color:#fff;
}
.form__modal__actions .main__btn__a--fill{
	background:#fff; color:#000;
}
.form__modal__actions .main__btn__a img{
	width:12px; height:14px;
}

/*********************************************************************************
Complete (사전등록 완료)
*********************************************************************************/
.form__complete__section{
	position:relative; height:100vh; height:100svh; height:var(--app-svh, 100svh); background:#111;
}
.form__complete__pin{
	position:relative; height:100%; overflow:hidden;
}
.form__complete__video__wr{
	position:absolute; inset:0; z-index:0; overflow:hidden;
}
.form__complete__video{
	position:absolute; inset:0;
	width:100%; height:100%;
	object-fit:cover; object-position:center;
	display:block; max-width:none;
}
.form__complete__stage{
	position:relative; z-index:2; height:100%;
}
.form__complete__inner{
	display:flex; flex-direction:column; align-items:center;
	justify-content:center; box-sizing:border-box;
	height:100%; text-align:center;
	gap: 36px;
}
.form__complete__title{
	margin:0;
	font-family:'Hyundai Sans Head Pro', 'Hyundai Sans Text Pro', sans-serif;
	font-size:90px; font-weight:700; line-height:1.1;
	letter-spacing:-1.776px; color:#fff; word-break:keep-all;
	opacity:0;
}
.form__complete__bottom{
	display:flex; flex-direction:column; align-items:center; gap:36px;
	width:100%; max-width:801px;
}
.form__complete__desc{
	margin:0; font-size:22px; font-weight:400; line-height:1.6;
	letter-spacing:-0.576px; color:#fff;
	opacity:0;
}
.form__complete__home{
	opacity:0;
	will-change:transform, opacity;
}
.form__complete__actions{
	display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:11px;
}
.form__complete__home .main__btn__a img,
.form__complete__home img{
	width:12px; height:14px;
}
@media (prefers-reduced-motion: reduce){
	.form__complete__title,
	.form__complete__desc,
	.form__complete__home{opacity:1;}
}

/*********************************************************************************
Lookup (참가내역 조회)
*********************************************************************************/
.lookup__lead{
	margin:0; max-width:576px; text-align:center;
	font-size:16px; font-weight:400; line-height:1.6; letter-spacing:-0.18px; color:#a8a8a8;
}
.lookup__auth{
	width:100%; max-width:576px; margin-top:43px;
	display:flex; flex-direction:column; align-items:stretch; gap:36px;
}
.lookup__auth__form{display:flex; flex-direction:column; gap:36px;}
.lookup__auth__panel{
	display:flex; flex-direction:column; gap:22px;
}
.lookup__auth[hidden],
.lookup__result[hidden]{display:none !important;}
.lookup__result{
	width:100%; max-width:none; margin-top:72px;
	align-self:stretch;
}
.lookup__result__body{
	display:flex; flex-direction:column; gap:58px;
	width:100%;
}
.lookup__result .form__step{width:100%;}
.lookup__readonly{pointer-events:none;}
.lookup__readonly .form__day__item,
.lookup__readonly .form__type__item{cursor:default;}
.lookup__result .form__day__list,
.lookup__result .form__type__list,
.lookup__result .form__panel,
.lookup__result .lookup__status{
	width:100%; box-sizing:border-box;
}
.lookup__result .form__day__list{grid-template-columns:repeat(3, minmax(0, 1fr));}
.lookup__result .form__type__list{grid-template-columns:1fr;}
.lookup__result .form__type__item{max-width:none; width:100%;}
.lookup__status{
	display:flex; align-items:center; gap:14px 22px; flex-wrap:wrap;
	padding:22px; box-sizing:border-box;
	border:1px solid rgba(255, 255, 255, 0.13);
	border-radius:8px;
}
.lookup__status__badge{
	display:none; align-items:center; justify-content:center;
	min-width:79px; height:40px; padding:9px 18px; box-sizing:border-box;
	border-radius:4px;
	font-size:13px; font-weight:700; line-height:20px; letter-spacing:0.2px;
	white-space:nowrap;
}
.lookup__status__badge--wait{
	border:1px solid #8a8a8a; background:transparent; color:#c8c8c8;
}
.lookup__status__badge--confirmed{
	border:1px solid #b39cff; background:#b39cff; color:#000;
}
.lookup__status[data-status="wait"] .lookup__status__badge--wait,
.lookup__status[data-status="confirmed"] .lookup__status__badge--confirmed{
	display:inline-flex;
}
.lookup__status[data-status="confirmed"]{
	background:#17132a; border-color:#b39cff;
}
.lookup__status__desc{
	margin:0; font-size:14px; font-weight:400; line-height:1.5;
	letter-spacing:0.11px; color:#a8a8a8;
}
.lookup__status__desc--confirmed,
.lookup__status[data-status="confirmed"] .lookup__status__desc--wait{display:none;}
.lookup__status[data-status="confirmed"] .lookup__status__desc--confirmed{display:block;}
.lookup__info__panel{padding:0; overflow:hidden;}
.lookup__info__table{margin:0;}
.lookup__info__table th,
.lookup__info__table td{border-left:0; border-right:0;}
.lookup__info__table tr:first-child th,
.lookup__info__table tr:first-child td{border-top:0;}
.lookup__info__table tr:last-child th,
.lookup__info__table tr:last-child td{border-bottom:0;}
.lookup__interest{
	margin:0; font-size:20px; font-weight:700; line-height:23px; letter-spacing:0.08px; color:#fff;
}
.lookup__agree__list{
	margin:0; padding:0; list-style:none;
	display:flex; flex-direction:column; gap:14px;
}
.lookup__agree__item{
	display:flex; align-items:center; justify-content:space-between; gap:14px;
	padding-bottom:14px; border-bottom:1px solid rgba(255, 255, 255, 0.13);
}
.lookup__agree__item:last-child{padding-bottom:0; border-bottom:0;}
.lookup__agree__label{
	font-size:14px; font-weight:700; line-height:1.5; letter-spacing:0.125px; color:#fff;
}
.lookup__agree__badge{
	display:inline-flex; align-items:center; justify-content:center;
	height:40px; padding:9px 18px; box-sizing:border-box;
	border:1px solid #b39cff; border-radius:4px; background:#b39cff;
	font-size:12px; font-weight:700; line-height:20px; letter-spacing:0.375px; color:#000;
	white-space:nowrap;
}
.lookup__page{padding-bottom:72px;}

/*********************************************************************************
Responsive
*********************************************************************************/
@media screen and (max-width:1280px){
	.form__page{padding:140px 0 48px;}
	.lookup__page{padding-bottom:64px;}
	.form__page__title{font-size:44px; line-height:1.15;}
	.form__body{margin-top:80px; gap:48px;}
	.lookup__lead{font-size:16px;}
	.lookup__auth{margin-top:36px; gap:32px;}
	.lookup__result{margin-top:56px;}
	.lookup__result__body{gap:48px;}
	.lookup__interest{font-size:18px; line-height:1.3;}
	.form__step__name{font-size:22px;}
	.form__interest__q,
	.form__contents__title{font-size:18px; line-height:1.3;}
	.form__panel{padding:20px;}
	.form__panel--contents{padding:32px 20px;}
	.form__contents__table th{width:132px; padding:12px 14px;}
	.form__contents__table td{padding:12px 14px;}
	.form__complete__title{font-size:56px;}
	.form__complete__inner{padding:140px 0 64px;}
	.form__complete__desc{font-size:18px;}
	.form__modal__panel{padding:40px 28px;}
	.form__modal__title{font-size:28px;}
	.form__modal__desc{font-size:16px;}
}
@media screen and (max-width:900px){
	.form__day__list,
	.lookup__result .form__day__list,
	.form__type__list,
	.form__fields{grid-template-columns:1fr;}
	.form__phone__row{flex-direction:column;}
	.form__verify__btn,
	.form__otp__confirm{width:100%;}
	.form__submit__btn{width:100%;}
	.form__complete__bottom{gap:28px;}
	/* 동의 테이블: 라벨/내용 세로 스택, 테두리 중복 제거 */
	.form__contents__table{
		display:block; width:100%;
		border:0; border-collapse:separate; border-spacing:0;
		table-layout:auto;
	}
	.form__contents__table tbody{
		display:flex; flex-direction:column; gap:8px;
	}
	.form__contents__table tr{
		display:block; width:100%;
		border:1px solid rgba(255, 255, 255, 0.13); box-sizing:border-box; overflow:hidden;
	}
	.form__contents__table th,
	.form__contents__table td{
		display:block; width:100%;
		border:0; padding:12px 14px;
	}
	.form__contents__table th{
		border-bottom:1px solid rgba(255, 255, 255, 0.13);
	}
}
@media screen and (max-width:768px){
	/*.form__page{padding:110px 0 40px;}*/
	.lookup__page{padding-bottom:56px;}
	.form__page__title{font-size:32px;}
	.form__body{margin-top:56px; gap:40px;}
	.lookup__lead{font-size:14px;}
	.lookup__auth{margin-top:28px; gap:28px;}
	.lookup__result{margin-top:40px;}
	.lookup__result__body{gap:40px;}
	.lookup__agree__item{flex-direction:column; align-items:flex-start; gap:10px;}
	.form__step__head{margin-bottom:16px;}
	.form__step__name{font-size:20px; line-height:1.3;}
	.form__day__item{padding:18px;}
	.form__type__item{padding:20px;}
	.form__panel{padding:16px;}
	.form__panel--contents{padding:24px 16px;}
	.form__contents__table th,
	.form__contents__table td{
		padding:12px; font-size:13px; line-height:1.55;
	}
	.form__complete__title{font-size:36px;}
	.form__complete__inner{padding:110px 0 48px;}
	.form__complete__desc{font-size:16px; line-height:1.6;}
	.form__submit__btn{font-size:16px; height:46px; border-radius:4px;}
	.form__modal{padding:16px;}
	.form__modal__panel{padding:32px 20px;}
	.form__modal__title{font-size:24px;}
	.form__modal__desc{font-size:15px; margin-bottom:24px;}
	.form__modal__actions{flex-direction:column; align-items:stretch;}
	.form__modal__actions .main__btn__a{width:100%;}
}

/*********************************************************************************
iOS focus zoom 방지 (모든 텍스트 입력 필드 16px 강제)
*********************************************************************************/
.form__page input[type="text"],
.form__page input[type="email"],
.form__page input[type="tel"],
.form__page input[type="number"],
.form__page input[type="search"],
.form__page input[type="password"],
.form__page input:not([type]),
.form__page textarea,
.form__page select,
.lookup__page input[type="text"],
.lookup__page input[type="email"],
.lookup__page input[type="tel"],
.lookup__page input[type="number"],
.lookup__page input[type="search"],
.lookup__page input[type="password"],
.lookup__page input:not([type]),
.lookup__page textarea,
.lookup__page select{
	font-size:16px !important;
	line-height:1.4 !important;
	-webkit-text-size-adjust:100%;
	text-size-adjust:100%;
}
