/* ✅ 전체 영역 및 페이지 구조 */
.matching,
.matching .section {
	position: relative;
	width: 100%;
	min-height: 600px;
	overflow: hidden;
}

.matching_con {
	position: absolute;
	width: 100%;
	top: 100px;
	left: 100%;
	opacity: 0;
	transition: all 0.5s ease;
	pointer-events: none;
}
.matching_con.active {
	left: 0;
	opacity: 1;
	pointer-events: auto;
}
.matching_con.to-left  { left: -100%; }
.matching_con.to-right { left: 100%; }

.matching .matching_con {
	padding: 80px 0 200px;
}
.matching .matching_con .inner {
	padding: 0 20px 180px;
}

/* ✅ 인트로 영역 */
.matching .intro {
	text-align: center;
}
.matching .intro .title {
	font-size: 40px;
	line-height: 1.4;
	letter-spacing: -0.03em;
	word-break: keep-all;
	color: #222;
	font-weight: 600;
}
.matching .intro .desc {
	margin-top: 10px;
	font-size: 20px;
	line-height: 1.4;
	letter-spacing: -0.01em;
	color: #3d3d3d;
	word-break: keep-all;
}

/* ✅ 필수/선택 텍스트 */
.matching .req, .matching .cho {
	display: inline-block;
	padding-left: 5px;
	font-size: 15px;
	vertical-align: top;
}
.matching .req { color: #f55; }
.matching .cho { color: #5d5d5d; }

/* ✅ 버튼 그룹 */
.matching .btn_group {
	display: flex;
	justify-content: center;
	gap: 10px;
	width: 100%;
	max-width: 500px;
	margin: 50px auto 0;
}
.matching .btn_group .anchor {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 50px;
	font-size: 22px;
	font-weight: 600;
	border-radius: 30px;
	cursor: pointer;
	transition: 0.3s;
}
.matching .btn_group .anchor.w_100 { width: 100%; }
.matching .btn_group .anchor.w_50  { flex: 0 0 auto; width: calc(50% - 5px); }
.matching .btn_group .anchor.style_1 {
	border: 1px solid #69C6FF;
	color: #69C6FF;
}
.matching .btn_group .anchor.style_1:hover {
	background-color: #2badfd;
	color: #fff;
}
.matching .btn_group .anchor.style_2 {
	border: 1px solid #777;
	color: #777;
}
.matching .btn_group .anchor.style_2:hover {
	background-color: #777;
	color: #fff;
}
.matching .btn_group .anchor.style_3 {
	background-color: #69C6FF;
	color: #fff;
}
.matching .btn_group .anchor.style_3:hover {
	background-color: #2badfd;
}

/* ✅ 너비 클래스 */
.matching .matching_con .item.w_500 { max-width: 500px; margin: 0 auto; }
.matching .matching_con .item.w_600 { max-width: 600px; margin: 0 auto; }
.matching .matching_con .item.w_700 { max-width: 700px; margin: 0 auto; }
.matching .matching_con .item.w_800 { max-width: 800px; margin: 0 auto; }

/* ✅ 프로그레스 바 */
.matching .step_state {
	display: none;
	width: 400px;
	margin: 0 auto 20px;
}
.matching .step_state .ul {
	display: flex;
}
.matching .step_state .li {
	width: calc((100% - 45px) / 10);
	height: 8px;
	margin-right: 5px;
	background-color: #D9D9D9;
	border-radius: 10px;
}
.matching .step_state .li:last-child {
	margin-right: 0;
}
.matching .step_state .li.on {
	background-color: #69C6FF;
}
.matching .step_state .li .text {
	font-size: 0;
	line-height: 0;
}

/* ✅ 인풋 공통 */
.matching .matching_con input {
	width: 100%;
	padding: 12px 16px;
	border: 1px solid #ccc;
	font-size: 20px;
	outline: none;
	transition: all 0.3s ease;
}
.matching .matching_con input:focus {
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* ✅ 셀렉트박스 */
.matching .item.selectbox select {
	position: relative;
	width: 100%;
	height: 55px;
	padding: 0 25px 0 10px;
	font-size: 18px;
	line-height: 1.4;
	appearance: none;
	background: url('/img/select_arrow.png') no-repeat right 10px center;
}

/* ✅ 텍스트에어리어 */
.matching .item textarea {
	width: 100%;
	padding: 15px;
	border: 1px solid #ccc;
	font-size: 16px;
	line-height: 1.3;
	outline: none;
	transition: all 0.3s ease;
}
.matching .item textarea:focus {
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.matching .item textarea::placeholder {
	color: #6d6d6d;
}

/* ✅ 체크박스 */
.matching .item .check_list label {
	font-size: 20px;
	line-height: 1.4;
}

/* ✅ 라디오 UI */
.matching .item.radio .ul {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
	list-style: none;
}
.matching .item.radio .li {
	position: relative;
	width: calc((100% - 20px)/2);
}
.matching .item.radio .li:nth-child(even) {
	margin-left: 20px;
}
.matching .item.radio.style_1 .li { height: 200px; }
.matching .item.radio.style_2 .li { height: 100px; }
.matching .item.radio.style_2 .li:nth-child(n+3) {
	margin-top: 20px;
}
.matching .item.radio .ez-radio {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: none;
}
.matching .item.radio .ez-radio input[type="radio"] {
	width: 100%;
	height: 100%;
	cursor: pointer;
}
.matching .item.radio .ez-radio + .label {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-size: 24px;
	line-height: 1.2;
	border: 1px solid #ccc;
	border-radius: 20px;
	cursor: pointer;
	transition: 0.3s;
}
.matching .item.radio .ez-selected + .label {
	background-color: #69C6FF;
	border-color: #69C6FF;
	color: #fff;
	font-weight: 600;
}

/* ✅ 각 step 개별 커스터마이징은 별도 정리 필요 */
/* ✅ 프로그레스 바 */
.matching .step_state {
	display: none;
	width: 400px;
	margin: 0 auto 20px;
}
.matching .step_state .ul {
	display: flex;
}
.matching .step_state .li {
	width: calc((100% - 45px) / 10);
	height: 8px;
	margin-right: 5px;
	background-color: #D9D9D9;
	border-radius: 10px;
}
.matching .step_state .li:last-child {
	margin-right: 0;
}
.matching .step_state .li.on {
	background-color: #69C6FF;
}
.matching .step_state .li .text {
	font-size: 0;
	line-height: 0;
}


/* ✅ step_00 - 인트로 타이틀 크기 */
.matching .matching_con.step_00 .intro .title {
	font-size: 50px;
}
.matching .matching_con.step_00 .intro .title br {
	display: none;
}


/* ✅ step_03 - 단일 박스 중앙 정렬 */
.matching .matching_con.step_03 .item {
	width: 600px;
	max-width: 100%;
	margin: 0 auto;
}


/* ✅ step_04 - 3열 아이템 배치 */
.matching .matching_con.step_04 .item .ul {
	display: flex;
}
.matching .matching_con.step_04 .item .li {
	width: calc((100% - 40px) / 3);
	margin-right: 20px;
	float: none;
}
.matching .matching_con.step_04 .item .li:nth-child(3n) {
	margin-right: 0;
}
.matching .matching_con.step_04 .item .li .subject {
	margin-bottom: 5px;
	font-size: 22px;
	line-height: 1.4;
	font-weight: 600;
	text-align: center;
}


/* ✅ step_08 - 가격 입력 정렬 */
.matching .matching_con.step_08 .price_input {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}
.matching .matching_con.step_08 .price_input input {
	text-align: right;
	font-weight: 600;
	color: #222;
}


/* ✅ step_09 - 체크박스 리스트 */
.matching .matching_con.step_09 .check_list .ul {
	display: flex;
	flex-wrap: wrap;
}
.matching .matching_con.step_09 .check_list .li {
	position: relative;
	width: calc((100% - 40px) / 3);
	margin-right: 20px;
	padding-left: 23px;
	box-sizing: border-box;
}
.matching .matching_con.step_09 .check_list .li:nth-child(3n) {
	margin-right: 0;
}
.matching .matching_con.step_09 .check_list .li:nth-child(n+4) {
	margin-top: 20px;
}
.matching .matching_con.step_09 .check_list .li .ez-checkbox {
	position: absolute;
	left: 0;
	top: 7px;
	background: url('/img/checkbox4.png') 0 0 no-repeat;
	cursor: pointer;
}
.matching .matching_con.step_09 .check_list .li label {
	display: block;
	line-height: 1.3;
	word-break: keep-all;
}
.matching .matching_con.step_09 .check_list .li .ez-checkbox + label {
	cursor: pointer;
}
.matching .matching_con.step_09 .check_list .li.ez-checked label {
	color: #69C6FF;
}


/* ✅ step_10 - 로딩 상태 */
.matching .matching_con.step_10 .item {
	text-align: center;
}
.matching .matching_con.step_10 .item img {
	width: 50px;
	animation: spin_360 2s linear infinite;
}
.matching .matching_con.step_10 .desc {
	margin-top: 20px;
	font-size: 18px;
	line-height: 1.4;
	color: #00AD92;
	font-weight: 600;
	word-break: keep-all;
	text-align: center;
}

/* ✅ 결과 화면: 타이틀 */
.matching .result .intro .title .not {
	display: block;
	margin-top: 5px;
	font-size: 28px;
}

/* ✅ 결과 아이템 전체 레이아웃 */
.matching .result .item {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 60px;
	box-sizing: border-box;
}

/* ✅ 결과 박스 스타일 */
.matching .result .item .box {
	position: relative;
	width: calc((100% - 40px) / 3);
	margin-right: 20px;
	padding: 20px;
	background-color: #f9f9f9;
	box-sizing: border-box;
}
.matching .result .item .box:nth-child(3n) {
	margin-right: 0;
}
.matching .result .item .box:nth-child(n+4) {
	margin-top: 20px;
}

/* ✅ 박스 내 정보 제목 */
.matching .result .item .info .subject {
	padding: 5px 0;
	font-size: 25px;
	line-height: 1.3;
	text-align: center;
	color: #fff;
	font-weight: 600;
	word-break: keep-all;
	background-color: #4db8fa;
	text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
}

/* ✅ 그룹 정보 블록 */
.matching .result .item .group {
	margin-top: 15px;
}
.matching .result .item .group .li {
	position: relative;
	padding: 10px 15px;
	line-height: 1.4;
	text-align: center;
	word-break: keep-all;
	background-color: #fff;
	border-radius: 20px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.matching .result .item .group .li + .li {
	margin-top: 10px;
}
.matching .result .item .group .dt {
	margin-bottom: 8px;
	padding-bottom: 8px;
	border-bottom: 1px solid #ddd;
	font-size: 17px;
	font-weight: 600;
	color: #000;
}
.matching .result .item .group .dd {
	padding: 0 10px;
	font-size: 16px;
	color: #3d3d3d;
}

/* ✅ 정보번호 태그 */
.matching .result .item .info_number {
	max-width: 80%;
	margin: 0 auto 5px;
	padding: 5px 10px;
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
	font-weight: 600;
	word-break: keep-all;
	color: #fff;
	background-color: #6d6d6d;
	border-radius: 25px;
}

/* ✅ 결과 없음 메시지 */
.matching .result .result_empty {
	width: 100%;
	padding: 80px 0;
	font-size: 22px;
	line-height: 1.3;
	text-align: center;
	font-weight: 600;
	word-break: keep-all;
	background-color: #f9f9f9;
}

/* ✅ 결과 버튼 그룹 */
.matching .result .result_btn_group {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin: 40px auto 0;
}
.matching .result .result_btn_group .anchor {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 40px;
}
.matching .result .result_btn_group .anchor span {
	position: relative;
	display: inline-block;
	padding: 15px 30px 15px 57px;
	font-size: 18px;
	line-height: 1.1;
	font-weight: 600;
	color: #fff;
	border-radius: 40px;
	transition: 0.2s;
}
.matching .result .result_btn_group .anchor span::before {
	content: '';
	position: absolute;
	display: block;
	width: 20px;
	height: 20px;
	left: 30px;
	top: 50%;
	transform: translateY(-50%);
}

/* ✅ 버튼 개별 스타일 */
.matching .result .result_btn_group .anchor.btn_start_go span {
	background-color: #3d3d3d;
}
.matching .result .result_btn_group .anchor.btn_start_go span::before {
	background: url('/img/matching_start_go.png') no-repeat center center / contain;
}
.matching .result .result_btn_group .anchor.btn_start_go span:hover {
	background-color: #4db8fa;
}

.matching .result .result_btn_group .anchor.btn_print span {
	background-color: #0320b2;
}
.matching .result .result_btn_group .anchor.btn_print span::before {
	background: url('/img/matching_print_btn.png') no-repeat center center / contain;
}
.matching .result .result_btn_group .anchor.btn_print span:hover {
	background-color: #021366;
}

/* ✅ 공통: 선택형 박스 스타일 */
.ul.type_box {
	display: flex;
	justify-content: center;
	gap: 20px;
}
.ul.type_box .li {
	position: relative;
}
.ul.type_box input[type="radio"] {
	display: none;
}
.ul.type_box label {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 180px;
	height: 180px;
	padding: 10px;
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	cursor: pointer;
	border: 1px solid #ccc;
	border-radius: 20px;
	background-color: #fff;
	color: #333;
	transition: 0.3s;
	box-sizing: border-box;
}
.ul.type_box input[type="radio"]:checked + label {
	background-color: #69C6FF;
	border-color: #69C6FF;
	color: #fff;
}

.radio-selector {
	display: flex;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
	margin-top: 30px;
}

.radio-selector label {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 180px;
	height: 90px;
	padding: 10px;
	margin: 5px;
	border: 1px solid #ccc;
	border-radius: 15px;
	font-size: 18px;
	font-weight: 600;
	color: #333;
	background-color: #fff;
	cursor: pointer;
	box-sizing: border-box;
	transition: 0.3s;
	text-align: center;
}

/* 숨김 처리 */
.radio-selector input[type="radio"] {
	display: none;
}

/* 선택 시 스타일 */
.radio-selector input[type="radio"]:checked + span {
	background-color: #69C6FF;
	color: #fff;
	border-radius: 15px;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
}


/* ✅ 로딩 바 */
.loading-bar-container {
	position: relative;
	width: 80%;
	height: 10px;
	margin: 40px auto;
	background: #ddd;
	border-radius: 5px;
	overflow: hidden;
}
.infinite-bar {
	position: absolute;
	width: 30%;
	height: 100%;
	background: linear-gradient(to right, #4fc3f7, #4caf50);
	border-radius: 5px;
	animation: slide-infinite 1.4s ease-in-out infinite;
}
#loading_bar {
	transition: width 0.3s ease;
}

/* ✅ 리스트 박스 스타일 */
.selectbox ul,
.check_list ul {
	display: inline-flex;
}
.selectbox ul li,
.check_list ul li {
	float: left;
}

/* ✅ 옵션 리스트 */
.option:hover {
	background: #f1f1f1;
}
.option_datalist {
	border: 0px solid #ccc;
	max-height: 150px;
	overflow-y: auto;
	background: #fff;
}
.option_datalist .option {
	padding: 5px 10px;
	font-size: 16px;
	cursor: pointer;
}
.option_datalist .option:hover {
	background: #f0f0f0;
}

/* ✅ 자동완성 */
.input_datalist {
	position: relative;
}
.input_datalist input {
	padding-right: 25px;
	background: url('/img/select_arrow.png') no-repeat right 10px center;
}
.input_datalist .option_datalist {
	position: absolute;
	width: 100%;
	max-height: 150px;
	overflow-y: auto;
	top: 100%;
	left: 0;
	z-index: 9999;
	border: 1px solid #ccc;
	border-radius: 8px;
	background-color: #fff;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
	display: none;
}
.input_datalist .option_datalist .option {
	padding: 5px 10px;
	font-size: 16px;
	color: #3d3d3d;
	cursor: pointer;
}
.input_datalist .option_datalist .option:hover {
	background-color: #f0f0f0;
}

/* ✅ 기술 태그 */
.skill-tag {
	display: inline-block;
	background: #e0e0e0;
	padding: 5px 10px;
	border-radius: 10px;
	margin: 3px;
	font-size: 15px;
	line-height: 1.3;
}
.skill-tag a {
	display: inline-block;
	margin-left: 8px;
	width: 10px;
	height: 10px;
	vertical-align: middle;
	cursor: pointer;
	font-size: 0;
	line-height: 0;
	background: url('/img/skill_close.png') no-repeat center center / contain;
}

/* ✅ 단계 상태 표시 */
.step_state {
	display: none;
	margin-bottom: 20px;
}
.step_state .li {
	display: inline-block;
	margin-right: 10px;
}
.step_state .li .text {
	color: #999;
}
.step_state .li.on .text {
	font-weight: bold;
	color: #4caf50;
}

/* ✅ 버튼 그룹 */
.btn-group {
	margin-top: 30px;
	display: flex;
	gap: 15px;
	justify-content: center;
}

/* ✅ 카테고리용 리스트 */
.category_ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	padding: 0;
	margin: 0;
	list-style: none;
}

/* ✅ 박스형 체크박스 */
.form-selector {
	flex: 1 1 140px;
	max-width: 180px;
	min-width: 100px;
	height: 90px;
	padding: 10px;
	margin: 5px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 18px;
	font-weight: 600;
	border: 1px solid #ccc;
	border-radius: 15px;
	background-color: #fff;
	color: #333;
	cursor: pointer;
	box-sizing: border-box;
	transition: 0.3s;
}
.form-selector input[type="checkbox"] {
	display: none;
}
.form-selector span {
	font-size: 18px;
	display: block;
	text-align: center;
}
.form-selector input[type="checkbox"]:checked + span {
	background-color: #69C6FF;
	color: #fff;
	border-radius: 15px;
	font-weight: 700;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}



@keyframes slide-infinite {
	0%   { left: -30%; }
	50%  { left: 100%; }
	100% { left: -30%; }
}
@keyframes spin_360{
	100% {
		transform: rotate(360deg);
	}
}
@keyframes slide-infinite {
	0% {
		left: -30%;
	}
	50% {
		left: 100%;
	}
	100% {
		left: -30%;
	}
}

/* ✅ 반응형 미디어 쿼리 */
@media screen and (max-width: 1200px) {
	.matching .intro .title {
		font-size: 35px;
	}

	.matching .matching_con.step_00 .intro .title {
		font-size: 40px;
	}

	.matching .result .item .box {
		width: calc((100% - 20px) / 2);
	}

	.matching .result .item .box:nth-child(3n) {
		margin-right: 20px;
	}

	.matching .result .item .box:nth-child(even) {
		margin-right: 0;
	}

	.matching .result .item .box:nth-child(+n+3) {
		margin-top: 20px;
	}
}

@media screen and (max-width: 1000px) {
	.matching .req,
	.matching .cho {
		font-size: 14px;
	}

	.matching .intro .title {
		font-size: 30px;
	}

	.matching .intro .desc {
		font-size: 18px;
	}

	.matching .btn_group {
		width: 400px;
		margin-top: 35px;
	}

	.matching .btn_group .anchor {
		font-size: 20px;
	}

	.matching .item.selectbox select {
		height: 45px;
	}

	.matching .matching_con input {
		padding: 8px 12px;
		font-size: 22px;
	}

	.matching .item.radio.style_1 .li {
		height: 100px;
	}

	.matching .item.radio .ez-radio + .label {
		font-size: 22px;
	}

	.matching .matching_con.step_00 .intro .title {
		font-size: 30px;
	}

	.matching .matching_con.step_05 .item .li .subject {
		font-size: 20px;
	}

	.matching .matching_con.step_09 .item {
		max-width: 270px;
	}

	.matching .matching_con.step_09 .check_list .li {
		width: calc((100% - 20px) / 2);
	}

	.matching .matching_con.step_09 .check_list .li:nth-child(3n) {
		margin-right: 20px;
	}

	.matching .matching_con.step_09 .check_list .li:nth-child(even) {
		margin-right: 0;
	}

	.matching .matching_con.step_09 .check_list .li:nth-child(+n+3) {
		margin-top: 20px;
	}
}

@media screen and (max-width: 640px) {
	.matching_con {
		min-height: 600px; /* 또는 100vh */
	}

	.matching .req,
	.matching .cho {
		font-size: 13px;
	}

	.matching .matching_con {
		padding-top: 0;
		padding-bottom: 150px;
	}

	.matching .intro .title {
		font-size: 22px;
	}

	.matching .intro .desc {
		font-size: 15px;
	}

	.matching .btn_group .anchor {
		height: 40px;
		font-size: 17px;
	}

	.matching .btn_group.double {
		display: block;
	}

	.matching .btn_group.double .anchor {
		width: 100%;
	}

	.matching .btn_group.double .anchor + .anchor {
		margin-top: 10px;
	}

	.matching .item {
		margin-top: 30px;
	}

	.matching .step_state {
		max-width: 100%;
		width: 280px;
		margin: 0 auto;
	}

	.matching .step_state .li {
		height: 5px;
	}

	.matching .btn_group {
		max-width: 300px;
	}

	.matching .matching_con input {
		font-size: 17px;
	}

	.matching .item.radio .li {
		width: calc((100% - 10px) / 2);
	}

	.matching .item.radio .li:nth-child(even) {
		margin-left: 10px;
	}

	.matching .item.radio.style_1 .li {
		height: 60px;
	}

	.matching .item.radio.style_2 .li {
		height: 60px;
	}

	.matching .item.radio.style_2 .li:nth-child(+n+3) {
		margin-top: 10px;
	}

	.matching .item.radio .ez-radio + .label {
		font-size: 20px;
		border-radius: 10px;
	}

	.matching .item .check_list label {
		font-size: 18px;
	}

	.matching .item.selectbox select {
		font-size: 17px;
	}

	.matching .matching_con.step_00 .intro .title {
		font-size: 27px;
	}

	.matching .matching_con.step_04 .item .ul {
		display: block;
		max-width: 350px;
		margin-left: auto;
		margin-right: auto;
	}

	.matching .matching_con.step_04 .item .li {
		display: flex;
		width: 100%;
		justify-content: center;
		align-items: center;
		margin-right: 0;
		background-color: #f9f9f9;
	}

	.matching .matching_con.step_04 .item .li + .li {
		margin-top: 10px;
	}

	.matching .matching_con.step_04 .item .li .subject {
		width: 90px;
		margin-bottom: 0;
		padding-left: 15px;
		font-size: 17px;
		text-align: left;
		box-sizing: border-box;
	}

	.matching .matching_con.step_04 .item .li select {
		width: calc(100% - 90px);
		background-color: #fff;
	}

	.matching .result .intro .title .not {
		font-size: 20px;
	}

	.matching .result .item .box {
		width: 100%;
		margin-right: 0;
	}

	.matching .result .item .box:nth-child(3n) {
		margin-right: 0;
	}

	.matching .result .item .box:nth-child(+n+2) {
		margin-top: 20px;
	}

	.matching .result .item .info .subject {
		font-size: 20px;
	}

	.matching .result .item .group .dt {
		margin-bottom: 5px;
		padding-bottom: 5px;
		font-size: 16px;
	}

	.matching .result .item .group .dd {
		font-size: 15px;
	}

	.matching .result .result_btn_group {
		margin-top: 20px;
	}

	.matching .result .result_btn_group .anchor span {
		padding: 13px 25px 13px 55px;
		font-size: 16px;
	}

	.matching .result .result_btn_group .anchor span::before {
		left: 25px;
	}

	.matching .result .result_empty {
		padding-top: 50px;
		padding-bottom: 50px;
		font-size: 18px;
	}

	.matching .result .result_btn_group {
		flex-direction: column;
	}
}

/* ✅ 모바일 대응 */
@media screen and (max-width: 640px) {
	.form-selector {
		flex: 1 1 120px;
		height: 60px;
		font-size: 14px;
	}

	.form-selector span {
		font-size: 14px;
		line-height: 1.2;
	}
}
/* 📱 모바일 (예: 768px 이하) */
@media screen and (max-width: 768px) {
	.radio-selector label {
		width: 100%;
		height: auto;
		font-size: 16px;
		padding: 15px 10px;
	}
}

/* 📱 모바일 반응형 (768px 이하) */
@media screen and (max-width: 768px) {
	.form-selector {
		flex: 1 1 100%;
		max-width: 100%;
		height: auto;
		font-size: 16px;
		padding: 14px 10px;
	}
}
