@charset "utf-8";
.space-bottom {padding-bottom: var(--space-160);}
.space-top {padding-top: var(--space-160);}

/* page-about-business */
.page-about-business .sec-title {line-height: 1.5em; background: 0; padding: 0;}
.page-about-business .sec-head {gap: var(--space-24);}
.page-about-business .sec-sub {line-height: 1.7em; margin-bottom: var(--space-16);}
.about-business-cards {gap: var(--space-20);}
.about-business-card {gap: var(--space-30); padding: var(--space-70) 15px; border: clamp(2px, calc(4 / var(--inner) * 100vw), 4px) solid #EEE; border-radius: var(--radius-16);}
.field-list {gap: var(--space-20) clamp(40px, calc(80 / var(--inner) * 100vw), 80px);}
.field-item {gap: var(--space-30);}
.field-icon {padding: clamp(10px, calc(32 / var(--inner) * 100vw), 32px); border: 1px solid #EEE; border-radius: var(--radius-16);}
.target-list {flex-wrap: wrap; gap: var(--space-10);}
.target-item {gap: 10px; width: calc((100% - var(--space-10) * 4) / 5); padding: var(--space-24) var(--space-30); background: #F4F8FD; border-radius: var(--radius-16);}
.target-icon {padding: var(--space-20); background: #fff; border-radius: 500px;}
.support-list {gap: clamp(40px, calc(80 / var(--inner) * 100vw), 80px);}
.support-item {gap: var(--space-30);}
.support-head {gap: var(--space-12); flex-wrap: wrap; flex:1;}
.support-head .num {width: 40px; height: 40px; background: var(--primary-color); border-radius: 500px; font-size: var(--font-size-15); font-weight: 600; color: #fff;}
.support-head-txt {gap: 4px;}
.support-step {gap: var(--space-10); height: 216px;}
.step-item {gap: var(--space-20); height: 100%; background: #F8F8F8; border-radius: var(--radius-16);}
.step-num {width: 28px; height: 28px; background: #fff; border: 1px solid #EEE; border-radius: 500px; font-size: var(--font-size-14); font-weight: 600; color: #676767;}
.step-arrow img {width: 12px;}
.support-fee-list {flex-wrap: wrap; gap: var(--space-10);}
.support-fee-item {width: calc((100% - var(--space-10) * 2) / 3); height: 103px; padding: var(--space-24) var(--space-30); background: #F8F8F8; border-radius: var(--radius-16);}
.btn-outline-primary {gap: var(--space-16); padding: 18px var(--space-30); border: 1px solid var(--primary-color); border-radius: 500px; font-weight: 600; color: var(--primary-color);}
.btn-outline-primary:hover {background: var(--primary-color); color: #fff;}
.btn-outline-primary:hover img {filter: brightness(0) invert(1);}
.btn-outline-primary img {width: 10px;}
.btn-delete-file {gap: var(--space-16); padding: 8px var(--space-20); background: none; border: none; cursor: pointer; font-size: var(--font-size-16); font-weight: 600; color: red; transition: all 0.3s;}
.btn-delete-file:hover {background: #fff; color: #0f0c0c;}
.btn-delete-file:hover img {filter: brightness(0) invert(1);}
.btn-delete-file img {width: 18px; height: 18px;}
.process-list {position: relative;}
.process-list:before {content: ''; position: absolute; top: 50%; left: 0; width: 100%; height: 2px; background: #F1F1F1; transform: translateY(-50%);}
.process-item {gap: var(--space-20); aspect-ratio: 1/1; padding-top: 10px; background: #fff; border: 1px solid #EEE; border-radius: 500px; position: relative; z-index: 1;}
.process-item.active {background: var(--primary-color); border-color: var(--primary-color);}
.process-arrow {padding: 0 var(--space-12); margin: 0 var(--space-12); position: relative; z-index: 1; background: #fff;}
.contact-box {padding: var(--space-30) var(--space-40); background: #F8F8F8; border-radius: var(--radius-16);}
.contact-label {padding: var(--space-12) var(--space-20); background: #121212; border-radius: 6px; font-weight: 700; color: #fff;}
.contact-info {gap: var(--space-40);}
.contact-item {gap: var(--space-16);}
.contact-item .label {padding: var(--space-12) var(--space-20); background: #fff; border: 1px solid #EEE; border-radius: 6px; font-weight: 500; color: #878787;}

/* page-about-program */
.program-item {gap: clamp(40px, calc(80 / var(--inner) * 100vw), 80px);}
.program-img {width: 50%; border-radius: var(--radius-16); overflow: hidden;}
.program-img img {width: 100%; height: auto; display: block;}
.program-txt {gap: var(--space-50);}
.program-head {gap: var(--space-30);}
.program-head .num {width: 40px; height: 40px; background: var(--primary-color); border-radius: 500px; font-size: var(--font-size-15); font-weight: 600; color: #fff;}
.intro-item {gap: var(--space-50); padding: var(--space-60) 0; border-bottom: 1px solid #EEE;}
.intro-item:first-child {border-top: 2px solid #2c2c2c;}
.intro-img {width: 22.86%; max-width: 320px; border-radius: var(--radius-16); overflow: hidden;}
.intro-txt {gap: var(--space-16);}
.guide-list {gap: var(--space-20);}
.guide-item {gap: var(--space-40); padding: var(--space-40); border: 1px solid #EEE; border-radius: var(--radius-16);}
.guide-content {gap: 6px;}

/* 일본기술자DB */
#container.specialist {display:flex; gap: var(--space-80); width:100%; max-width:1660px; padding:var(--space-80) var(--container-space) 0; margin:0 auto;}
#container.specialist #contArea {flex: 1; padding-top: 0; min-width: 1%; padding: 0;}

/* 좌측 필터 메뉴 */
.left-menu {width: 320px; flex-shrink: 0; padding-bottom:var(--space-160);}
.filter-section {padding: var(--space-40) 0; border-bottom: 1px solid #EEE;}
.filter-section:first-child {padding-top: 0;}
.filter-label {margin-bottom: var(--space-16);}
.filter-title {line-height: 1.7em;}
.filter-input {display: flex; align-items: center; justify-content: space-between; height: clamp(40px, calc(60 / var(--inner) * 100vw), 60px); padding: 0 var(--space-20); background: #fff; border: 1px solid #EEE; border-radius: 8px;}
.filter-input input {flex: 1; min-width: 1%; height: 100%; border: none; background: transparent; font-size: var(--font-size-16);}
.filter-input input::placeholder {color: #a8a8a8;}
.btn-search {width: 18px; height: 18px; background: none; border: none; cursor: pointer;}
.btn-search img {width: 100%; height: 100%;}
.btn-wishlist {gap: 8px; height: clamp(38px, calc(60 / var(--inner) * 100vw), 60px); padding: 0 20px; background: #fff; border: 2px solid #121212; border-radius: 500px; font-size: var(--font-size-16); font-weight: 600; color: #121212; transition: all 0.3s;}
.btn-wishlist img {width: 18px; height: 18px; filter: brightness(0);}
.btn-wishlist:hover {background: #121212; color: #fff;}
.btn-wishlist:hover img {filter: none;}
.filter-select-list {gap: 6px; margin-top: var(--space-30);}
.filter-select {position: relative;}
.filter-select select {width: 100%; height: clamp(40px, calc(60 / var(--inner) * 100vw), 60px); padding: 0 var(--space-20); background: #fff url('/images/sub/icon-arrow-down.svg') no-repeat right 20px center; background-size: 8px 4px; border: 1px solid #EEE; border-radius: 8px; font-size: var(--font-size-16); color: #a8a8a8; appearance: none; cursor: pointer;}
.filter-head {margin-bottom: 0; cursor: pointer;}
.filter-head.open {margin-bottom: var(--space-30);}
.btn-toggle {width: 18px; height: 18px; background: none; border: none; cursor: pointer;}
.btn-toggle img {width: 100%; height: 100%;}
.filter-check-list {display: none;}
.filter-check-wrap {gap: var(--space-20);}
.filter-check {display: flex; align-items: center; gap: 8px; cursor: pointer;}
.filter-check input[type="checkbox"] {width: 18px; height: 18px; border: 1px solid #ddd; border-radius: 0; appearance: none; cursor: pointer;}
.filter-check input[type="checkbox"]:checked {background: url('/images/sub/icon-checkbox-checked.svg') no-repeat center; background-size: contain; border: none;}
.filter-check span {font-size: var(--font-size-16); font-weight: 500; color: var(--dark-color);}
.filter-reset {padding-top: var(--space-40);}
.btn-reset {gap: 8px; background: none; border: none; cursor: pointer;}
.btn-reset img {width: 18px; height: 18px;}

/* 카드 리스트 */
.list-total {display: flex; align-items: baseline; gap: 8px; margin-bottom: var(--space-30); color: #DFDFDF;}
.card-list {gap: var(--space-20); flex-wrap: wrap;}
.card-item {width: calc((100% - var(--space-20) * 2) / 3); background: #F8F8F8; border-radius: var(--radius-16); overflow: hidden; transition: background 0.3s;}
.card-item a {display: flex; flex-direction: column; gap: var(--space-24); height: 100%; padding: var(--space-24) var(--space-30) var(--space-30);}
.card-head {margin-bottom: 0;}
.card-num {line-height: 1.4em; color: var(--primary-color); transition: color 0.3s;}
.btn-wish {width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: #fff; border: 1px solid #EEE; border-radius: 500px; cursor: pointer; transition: all 0.3s; position: relative; z-index: 2;}
.btn-wish img {width: 18px; height: 18px; content: url('/images/sub/icon-heart-gray.svg');}
.btn-wish.active {background-color: #fff !important;}
.btn-wish.active img {content: url('/images/sub/icon-heart-white.svg') !important;}
.card-age {color: #878787; transition: color 0.3s;}
.card-body {flex: 1; display: flex; flex-direction: column; justify-content: center; gap: var(--space-24); padding: var(--space-20); background: #fff; border-radius: 8px;}
.card-info {display: flex; flex-direction: column; gap: var(--space-10);}
.info-detail {display: flex; flex-direction: column; gap: 4px;}
.info-detail .sub-item {padding-left: 11px; position: relative;}
.info-detail .sub-item:before {content: ''; position: absolute; left: 0; top: 7px; width: 3px; height: 6px; background: #676767; clip-path: polygon(0 0, 100% 50%, 0 100%);}
.card-tags {display: flex; flex-wrap: wrap; gap: 6px;}
.card-tags .tag {padding: 8px 10px; background: #dfdfdf; border-radius: 6px; font-size: var(--font-size-13); font-weight: 600; color: #676767; line-height: 1em; transition: all 0.3s;}
/* 카드 hover 상태 */
.card-item:hover {background: var(--primary-color);}
.card-item:hover .card-num {color: #fff;}
.card-item:hover .card-age {color: #fff;}
.card-item:hover .btn-wish {background: rgba(255,255,255,0.12); border-color: transparent;}
.card-item:hover .btn-wish img {content: url('/images/sub/icon-heart-filled.svg');}
.card-item:hover .card-tags .tag {background: rgba(255,255,255,0.12); color: #fff;}

/* 페이지네이션 */
.paging {gap: 10px; margin-top: var(--space-80);}
.paging a {display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 1px solid #EEE; border-radius: 8px; font-size: var(--font-size-16); color: #a8a8a8; transition: all 0.2s;}
.paging a:hover {border-color: var(--primary-color); color: var(--primary-color);}
.paging a.active {background: var(--primary-color); border-color: var(--primary-color); color: #fff;}
.paging-prev-all:before, .paging-next-all:before {content: ''; display: block; width: 12px; height: 10px; background: #a8a8a8; clip-path: polygon(0 50%, 50% 0, 50% 35%, 100% 35%, 100% 65%, 50% 65%, 50% 100%);}
.paging-prev:before, .paging-next:before {content: ''; display: block; width: 5px; height: 10px; background: #a8a8a8; clip-path: polygon(100% 0, 0 50%, 100% 100%);}
.paging-next:before, .paging-next-all:before {transform: rotate(180deg);}

/* 기술자 상세 페이지 */
.detail-wrap {gap: var(--space-80); width: 100%; max-width:1400px; margin:0 auto; padding-bottom: var(--space-160);}
.profile-box {position: sticky; top: calc(var(--header-height) + var(--space-40)); width: 480px; height: fit-content; flex-shrink: 0; padding: var(--space-40); border: 1px solid #EEE; border-radius: var(--radius-16);}
.profile-head {padding-bottom: var(--space-30);}
.profile-head .fz15 {line-height: 1.4em;}
.profile-num {gap: var(--space-10);}
.profile-num .fz42 {line-height: 1.33em;}
.profile-num .fz16 {line-height: 2.5em;}
.profile-field {padding: var(--space-40) 0; border-top: 1px solid #EEE;}
.field-group {margin-bottom: var(--space-30);}
.field-group:last-child {margin-bottom: 0;}
.field-group .fz18 {line-height: 1.56em;}
.field-detail {margin-top: var(--space-10);}
.field-detail .fz16 {line-height: 1.5em;}
.field-detail .sub-item {padding-left: 11px; position: relative; line-height: 1.4em; margin-top: 4px;}
.field-detail .sub-item:before {content: ''; position: absolute; left: 0; top: 6px; width: 5px; height: 8px; background: url('/images/sub/icon-profile-right.svg') no-repeat center center; background-size: contain;}
.profile-keyword {padding-top: var(--space-40); border-top: 1px solid #EEE;}
.keyword-tags {gap: 6px; flex-wrap: wrap;}
.keyword-tag {padding: 8px 10px; background: #F4F8FD; border-radius: 500px; font-size: var(--font-size-13); font-weight: 600; color: #3A81D7; line-height: 1em;}
.detail-content {display: flex; flex-direction: column; gap: var(--space-50);}
.detail-actions {gap: var(--space-24); justify-content: flex-end;}
.action-btn {gap: var(--space-10); background: none; border: none; cursor: pointer;}
.action-btn .icon {display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid #EEE; border-radius: 500px; transition: all 0.3s;}
.action-btn .icon img {width: 18px; height: 18px; transition: 0.3s;}
.btn-print:hover .icon {background: var(--primary-color); border-color: var(--primary-color);}
.btn-print:hover .icon img {filter: brightness(0) invert(1);}
.btn-add-wish:hover .icon {background: #f4f4f4;}
.btn-add-wish.active .icon img {content:url('/images/sub/icon-heart-white.svg');}
.detail-tab {display: flex; flex-direction: column; gap: var(--space-20);}
.tab-list {gap: var(--space-24); padding-bottom: var(--space-20); border-bottom: 2px solid #EEE;}
.tab-list li {position: relative;}
.tab-list li a {color: #ccc; transition: color 0.3s;}
.tab-list li.active a {color: var(--dark-color);}
.tab-list li.active:after {content: ''; position: absolute; left: 0; bottom: calc(var(--space-20) * -1 - 2px); width: 100%; height: 2px; background: var(--dark-color);}
.detail-body {display: flex; flex-direction: column;}
.sec-title {padding: var(--space-20) var(--space-30); margin-bottom: var(--space-30); background: #F8F8F8; border-radius: 8px;}
.sec-title .fz28 {line-height: 1.5em;}
.detail-body .cert-list,
.detail-body .lang-list,
.detail-body .pub-list,
.detail-body .award-list {padding: 0 var(--space-30);}
.detail-body .cert-list .round-detail {display: inline-block; padding: 0 10px; margin-left: 10px; color: #676767; font-size: var(--font-size-13); font-weight: 600; border-radius: 500px; border: 1px solid #DFDFDF;}
.history-list {padding-left: var(--space-30);}
.detail-body .history-list {padding-left: 0;}
.history-item {flex-wrap: wrap; padding: var(--space-30) 0; border-bottom: 1px solid #EEE;}
.history-item.no-border {padding-bottom: 0; border-bottom: none;}
.history-head {gap: var(--space-16); flex-wrap: wrap;  margin-bottom: var(--space-12);}
.history-head .fz24 {line-height: 1.67em;}
.history-desc {display: flex; flex-direction: column; gap: 4px;}
.history-desc li {line-height: 1.75em; text-indent: -.6em; padding-left: 0.6em;}
.history-desc li:before {content: '- ';}
.etc-list {padding-left: var(--space-30);}
.etc-item {padding: var(--space-30) 0; border-bottom: 1px solid #EEE;}
.etc-item:last-child {border-bottom: none;}
.etc-label {margin-bottom: var(--space-12); line-height: 1.43em;}
.etc-item .fz20 {line-height: 1.7em;}
.etc-row {gap: var(--space-16); margin-bottom: var(--space-12);}
.etc-row .fz16 {line-height: 1.75em;}
.award-list {display: flex; flex-direction: column; gap: 4px;}
.award-row {gap: 2px var(--space-16);}
.award-row .fz20 {line-height: 1.7em;}
.award-row .fz16 {line-height: 1.75em;}
.lang-list {gap: var(--space-24);}
.lang-item {gap: var(--space-10);}
.lang-level {width: 34px; height: 34px; border-radius: 500px; font-size: var(--font-size-16); font-weight: 700;}
.lang-level.level-high {background: var(--primary-color); color: #fff;}
.lang-level.level-mid {background: var(--dark-color); color: #fff;}
.lang-level.level-low {background: #dfdfdf; color: #676767;}
.btn-list {display: inline-block; padding: var(--space-20) 40px; border: 2px solid #EEE; border-radius: 500px; font-size: var(--font-size-20); font-weight: 700; color: var(--dark-color); transition: all 0.3s;}
.btn-list:hover {border-color: var(--dark-color);}

/* 지도가능분야 */
.specialty-grid {gap: var(--space-10);}
.specialty-col {flex: 1;}
.specialty-title {padding: var(--space-20) var(--space-30); background: #f8f8f8; border-radius: 8px; margin-bottom: var(--space-10);}
.specialty-title.full {margin-bottom: var(--space-30);}
.specialty-icons {flex-wrap: wrap; gap: 4px;}
.specialty-icons .col-12 {width: 100%; border: 1px solid #eee; border-radius: 8px; padding: 5px 12px;}
.specialty-col.industry .icon-item {width: calc((100% - 4px * 4) / 5);}
.specialty-col.job .icon-item {width: calc((100% - 4px * 5) / 6);}
.icon-item {display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 12px 0; border: 1px solid #EEE; border-radius: 8px; min-height: 120px;}
.icon-item.active {background: var(--primary-color); border-color: var(--primary-color);}
.icon-circle {width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; background: #f4f4f4; border-radius: 500px; color: var(--gray-color3);}
.icon-item.active .icon-circle {background: rgba(255,255,255,0.12); color: #fff;}
.icon-circle svg {width: 30px; height: 30px;}
.icon-name {font-size: var(--font-size-13); font-weight: 600; color: #a8a8a8; text-align: center; line-height: 1.38em;}
.icon-item.active .icon-name {color: #fff;}
.specialty-desc {padding-left: var(--space-30);}
.specialty-desc li {line-height: 1.75em;}
.specialty-desc li:before {content: '- ';}
.specialty-period {padding-left: var(--space-30);}

/* 지도 및 교육 실적 */
.history-title-box {padding: var(--space-20) var(--space-30); background: #f8f8f8; border-radius: 8px; margin-bottom: var(--space-30);}
.history-list {list-style: none;}
.history-item {gap: var(--space-16); padding: 0 0 var(--space-30) var(--space-30); border-bottom: 1px solid #EEE; margin-bottom: var(--space-30);}
.history-item.no-border {border-bottom: none; margin-bottom: 0; padding-bottom: 0;}

/* 자기PR */
.pr-content {padding: var(--space-30); background: #f8f8f8; border-radius: 8px;}
.pr-content p {color: #676767; line-height: 1.75em; margin-bottom: var(--space-24);}
.pr-content p:last-child {margin-bottom: 0;}

/* ======================================
   사업신청 페이지
====================================== */


/* 지도 유형 선택 카드 */
.apply-type-cards {gap: var(--space-20);}
.apply-type-card {gap: var(--space-30); padding: var(--space-40); background: #f4f8fd; border-radius: var(--radius-16);}
.apply-type-card .card-icon {padding: clamp(10px, calc(25 / var(--inner) * 100vw), 50px); background: #fff; border-radius: 100%;}
.apply-type-card .tag {width: fit-content; padding: 2px 10px; border-radius: 100px; background: var(--primary-color);}
.apply-type-card .card-badges {gap: 6px; flex-wrap:wrap;}
.apply-type-card .badge {padding: 6px 10px; border-radius: 8px; font-size: var(--font-size-14); font-weight: 600; line-height: 1.4286em;}
.apply-type-card .badge.outline {background: #fff; border: 1px solid #134b8e; color: #134b8e;}
.apply-type-card .badge.fill {background: #134b8e; color: #fff;}
.apply-type-card .badge.gray {background: #fff; border: 1px solid #EEE; color: #878787;}

/* 참여 이력 / 환경 선택 카드 (공통) */
.apply-guide-cards {gap: var(--space-20);}
.apply-guide-card {padding: var(--space-50) 0; border: 1px solid #EEE; border-radius: 16px; display: flex; flex-direction: column; align-items: center; gap: 34px;}
.apply-guide-card .card-content .badge {display: inline-block;}
.apply-guide-card .card-note {color: #a8a8a8; padding: 0 var(--space-40);}

/* 배지 공통 */
.badge {padding: 6px 10px; border-radius: 8px; font-size: var(--font-size-14); font-weight: 600;}
.badge.gray {background: #fff; border: 1px solid #EEE; color: #878787;}

/* 유의사항 */
.apply-notice .notice-list {list-style: none;}
.apply-notice .notice-list li {line-height: 1.75em; margin-bottom: 10px;}

/* 신청 유형별 사업절차 */
.apply-process-wrap {padding: var(--space-60); background: #f8f8f8; border-radius: 16px;}
.process-columns {gap: var(--space-20);}
.process-column {padding: var(--space-40); background: #fff; border-radius: 12px;}
.process-steps {display: flex; flex-direction: column; gap: var(--space-24);}
.process-step {gap: var(--space-20);}
.process-step .step-icon {padding: clamp(10px, calc(13 / var(--inner) * 100vw), 13px);border-radius: 500px; display: flex; align-items: center; justify-content: center;}
.process-step .step-icon.primary {background: var(--primary-color);}
.process-step .step-icon.secondary {background: #0b2d55;}
.process-step .step-content {display: flex; flex-direction: column; gap: 6px;}
.process-common {padding: var(--space-40); background: #fff; border-radius: 12px;}
.common-steps {gap: var(--space-24);}
.common-step {display: flex; flex-direction: column; align-items: center; gap: var(--space-20);}
.common-step .step-icon {padding: clamp(10px, calc(13 / var(--inner) * 100vw), 13px);border-radius: 500px; display: flex; align-items: center; justify-content: center;}
.common-step .step-icon.gray {background: #EEE;}
.common-step .step-content {display: flex; flex-direction: column; gap: 6px;}

/* 버튼 공통 */
.btn-primary {border: 0;display: inline-flex; align-items: center; justify-content: center; height: 64px; padding: 0 40px; background: var(--primary-color); color: #fff; border-radius: 500px;}
.btn-dark {border: 0;display: inline-flex; align-items: center; justify-content: center; height: 64px; padding: 0 40px; background: #121212; color: #fff; border-radius: 500px;}
.btn-outline {border: 0;display: inline-flex; align-items: center; justify-content: center; height: 64px; padding: 0 40px; background: #fff; border: 2px solid #EEE; border-radius: 500px;}
.btn-wrap {gap: 10px;}

/* ======================================
   사업신청 - 동의 및 유형 선택 페이지
====================================== */
.mb120 {margin-bottom: var(--space-120);}
.mb30 {margin-bottom: var(--space-30);}
.mt50 {margin-top: var(--space-50);}

/* 동의 박스 */
.agree-box {padding: var(--space-40); border: 1px solid #EEE; border-radius: 16px;}
.agree-item {margin-bottom: var(--space-30);}
.agree-item:last-child {margin-bottom: 0;}
.agree-item p {line-height: 1.875em;}

/* 동의 체크 */
.agree-check {padding: 0; gap: 30px;}
.agree-check p {flex: 1; text-indent: -2.5em; padding-left: 2.5em;}
.radio-wrap {gap: var(--space-30);}
.radio-item {gap: var(--space-8); cursor: pointer;}
.radio-item input[type="radio"] {display: none;}
.radio-circle {width: 18px; height: 18px; border: 1px solid #DDD; border-radius: 500px; display: flex; align-items: center; justify-content: center;}
.radio-item input[type="radio"]:checked + .radio-circle {border-color: var(--primary-color);}
.radio-item input[type="radio"]:checked + .radio-circle:after {content: ''; width: var(--space-8); height: var(--space-8); background: var(--primary-color); border-radius: 500px;}

/* 동의 안내 */
.agree-notice p {line-height: 1.75em; margin-bottom: var(--space-10);}
.agree-notice p:last-child {margin-bottom: 0;}

/* 신청 유형 선택 */
.apply-select-wrap {padding: var(--space-40); background: #f8f8f8; border-radius: 16px;}
.apply-select-row {gap: var(--space-6); margin-bottom: var(--space-24);}
.apply-select-row:last-child {margin-bottom: 0;}
.select-btn {width: 160px;}
.select-btn a {display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: var(--space-16); padding: var(--space-12) var(--space-12) var(--space-12) var(--space-16); background: var(--primary-color); color: #fff; border-radius: 8px; height: 100%; min-height: 106px;}
.select-btn a .icon {margin-left: auto;}
.select-btn a span {line-height: 1.5em;}
.select-options {gap: var(--space-6);}
.select-option {display: block; cursor: pointer;}
.select-option input[type="radio"] {display: none;}
.select-option .option-content {display: flex; flex-direction: column; align-items: center; gap: var(--space-8); height: 100%; padding: var(--space-30) var(--space-20); background: #fff; border: 1px solid #EEE; border-radius: 8px; text-align: center; transition: all 0.3s;}
.select-option .option-content strong {color: var(--dark-color);}
.select-option .option-content p {color: #878787;}
.select-option input[type="radio"]:checked + .option-content {border-color: var(--primary-color);}
.select-option input[type="radio"]:checked + .option-content strong {color: var(--primary-color);}
.select-option input[type="radio"]:checked + .option-content p {color: var(--primary-color);}
.select-option.active .option-content {border-color: var(--primary-color);}
.select-option.active .option-content strong {color: var(--primary-color);}
.select-option.active .option-content p {color: var(--primary-color);}

/* 신청 유형 안내 */
.apply-select-notice li {margin-bottom: var(--space-10);}
.apply-select-notice .sub-notice {padding-left: var(--space-10);}
.apply-select-notice .sub-notice p {margin-bottom: var(--space-4);}
.apply-select-notice li, .agree-notice p, .apply-select-notice .sub-notice p, .pop-wrap p, .pop-wrap2 p.indent-txt {text-indent: -.6em; padding-left: 0.6em;}

/* ======================================
   지원내용 상세보기 팝업
====================================== */
.popup-support-detail {background: #fff; border-radius: 16px; padding: var(--space-34) 0 var(--space-44); max-width: 900px; width: 90vw; margin: 0 auto;}
.popup-header {padding: 0 var(--space-40) var(--space-34); border-bottom: 1px solid #EEE;}
.popup-header .btn-close {width: 20px; height: 20px; background: none; border: none; cursor: pointer; padding: 0;}
.popup-header .btn-close img {width: 100%;}
.popup-section {padding: var(--space-50) var(--space-40) 0;}
.popup-body {max-height: 70vh; overflow-y: auto;}

/* 테이블 스타일 */
.tbl-support {width: 100%; border-top: 2px solid var(--dark-color); border-collapse: collapse;}
.tbl-support th, .tbl-support td {padding: var(--space-16) var(--space-20); border-bottom: 1px solid #dfdfdf; border-right: 1px solid #dfdfdf; font-size: var(--font-size-16); line-height: 1.5em; vertical-align: middle;}
.tbl-support th:last-child, .tbl-support td:last-child {border-right: none;}
.tbl-support thead th {background: #fafafa; font-weight: 700; color: var(--dark-color); text-align: center;}
.tbl-support tbody th {background: #fafafa; font-weight: 700; color: var(--dark-color); text-align: center;}
.tbl-support tbody td {text-align: left;}
.tbl-support tbody td.txt-center {text-align: center;}
.tbl-support .support-item {gap: var(--space-10); margin-bottom: var(--space-12);}
.tbl-support .support-item:last-child {margin-bottom: 0;}
.tbl-support .badge-gray {display: inline-flex; align-items: center; justify-content: center; padding: var(--space-4) var(--space-10); background: #dfdfdf; border-radius: 500px; font-size: var(--font-size-14); font-weight: 600; color: #676767;}
.tbl-support .td-sub {padding: 0;}
.tbl-support .sub-row {width: 100%;}
.tbl-support .sub-th {display: flex; justify-content: center; align-items: center; width: 140px; padding: var(--space-24) var(--space-10); background: #f4f4f4; text-align: center; font-weight: 600; color: var(--dark-color); border-right: 1px solid #dfdfdf;}
.tbl-support .sub-td {flex: 1; padding: var(--space-24) var(--space-20);}

/* 팝업 안내문구 */
.popup-notice {padding: var(--space-60) var(--space-40) 0;}
.popup-notice > p {margin-bottom: var(--space-10);}
.popup-notice .notice-list {padding-left: var(--space-12);}
.popup-notice .notice-list li {line-height: 1.5em; margin-bottom: var(--space-10);}

/* 팝업 버튼 */
.popup-btn-wrap {padding-top: var(--space-60);}
.btn-confirm {display: inline-flex; align-items: center; justify-content: center; padding: var(--space-18) var(--space-30); background: var(--primary-color); color: #fff; border: none; border-radius: 500px; cursor: pointer;}

/* ======================================
   신청서 작성 폼
====================================== */
.page-apply-form .sec-title-wrap {gap: var(--space-16);}

/* 신청유형 확인 박스 */
.apply-type-box {background: #f4f8fd; padding: var(--space-40); border-radius: 16px;}
.type-select-row {gap: var(--space-6); }
.type-select-item .select-box {width: 100%; height: clamp(40px, calc(60 / var(--inner) * 100vw), 60px); padding: 0 var(--space-20); background: #fff url('/images/sub/icon-arrow-down.svg') no-repeat right var(--space-20) center; background-size: 8px 4px; border: 1px solid #EEE; border-radius: 8px; font-size: var(--font-size-16); appearance: none; cursor: pointer;}
.type-notice li {margin-bottom: var(--space-10);}
.type-notice {margin-top: var(--space-40);}

/* 폼 테이블 */
.form-table {border-top: 2px solid var(--dark-color);}
.form-row {display: flex; padding: var(--space-50) 0; border-bottom: 1px solid #EEE;}
.form-row .form-label { width: 180px; flex-shrink: 0;}
.form-row .form-label span.fz14 {display: block;}
.form-row .form-content {flex: 1; flex-wrap: wrap;}
.form-row .form-notice {padding: var(--space-44) 0 0;}
.form-row .form-notice:first-child {padding-top: 0;}
.form-row:has(.form-notice) {padding-bottom: 0; border-bottom: none;}
.form-cols {gap: var(--space-80);}
.form-col {display: flex; align-items: center;}
.form-col .form-label {width: 180px; flex-shrink: 0;}
.form-row:has(.form-cols) {display: block;}

/* 라디오 그룹 */
.checkbox-group {flex-wrap: wrap; gap: var(--space-24);}
.radio-group {gap: var(--space-24); flex-wrap: wrap;}
.radio-group .radio-item .input-text {width: 240px; margin-left: var(--space-16);}
.radio-group-vertical {display: flex; flex-direction: column; gap: var(--space-20);}

/* 인풋 스타일 */
.input-text {height: clamp(40px, calc(60 / var(--inner) * 100vw), 60px); padding: 0 var(--space-20); background: #fff; border: 1px solid #EEE; border-radius: 8px; font-size: var(--font-size-16);}
.input-text::placeholder {color: #a8a8a8;}
.input-text.full {width: 100%;}
.input-text.txt-right {text-align: right;}
.input-unit {position: relative; flex: 1;}
.input-unit .input-text {width: 100%; padding-right: var(--space-40);}
.input-unit .unit {position: absolute; right: var(--space-20); top: 50%; transform: translateY(-50%); color: var(--gray-color);}

/* 주소 입력 */
.address-row {gap: var(--space-6);}
.address-row .input-text {width: 240px;}

/* 기술자 목록 */
.technician-row {gap: var(--space-6); flex-wrap: wrap;}
.page-apply-form .form-row .btn-dark {border-radius: var(--radius-8); height: auto; padding: var(--space-10) var(--space-20);}
.technician-list {gap: var(--space-6);}
.technician-item .input-rank {height: clamp(40px, calc(60 / var(--inner) * 100vw), 60px); padding: 0 var(--space-20); background: #fff; border: 1px solid #EEE; border-radius: 8px;}
.technician-item .input-rank input {width: 4em; border: none; margin-left: var(--space-10); font-size: var(--font-size-16); color: var(--gray-color);}
.technician-item .input-rank input::placeholder {color: #a8a8a8;}

/* 기간 선택 */
.period-select {gap: var(--space-6); align-items: center;}
.period-select .select-box {width: 120px; height: clamp(40px, calc(60 / var(--inner) * 100vw), 60px); padding: 0 var(--space-20); background: #fff; border: 1px solid #EEE; border-radius: 8px; font-size: var(--font-size-16); appearance: none; background-image: url('/images/sub/icon-arrow-down.svg'); background-repeat: no-repeat; background-position: right var(--space-20) center; background-size: 8px 4px;}
.period-select .input-unit {width: 120px; flex: none;}

/* 체크박스 스타일 */
.checkbox-cols {gap: var(--space-80);}
.checkbox-col {display: flex; flex-direction: column; gap: var(--space-20);}
.checkbox-item {cursor: pointer; gap: 10px;}
.checkbox-item input[type="checkbox"] {display: none;}
.checkbox-box {width: 18px; height: 18px; border: 1px solid #DDD; flex-shrink: 0;}
.checkbox-item input[type="checkbox"]:checked + .checkbox-box {background: url('/images/sub/icon-check.svg') no-repeat center center; background-size: contain; border-color: var(--primary-color);}
.checkbox-item .field-name {width: 140px; padding-right: var(--space-16); margin-left: var(--space-8); border-right: 1px solid #EEE; font-weight: 500; color: var(--dark-color);}
.checkbox-item .field-desc {margin-left: var(--space-16); color: var(--gray-color); flex:1;}
.etc-input {gap: var(--space-16);}

/* 제품 사진 입력 */
.product-row .checkbox-item {flex-shrink: 0;}
.product-row .checkbox-item + span.ml16 {min-width:40px; }
.product-row .input-text {width: 340px;}

/* 파일 입력 */
.file-input {gap: var(--space-6);}
.file-input .btn-dark {cursor: pointer;}
.file-input input[type="text"] {cursor: pointer; flex: 1;}
.file-input input[type="file"].hidden {position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0;}

/* 텍스트 영역 */
.textarea-box {width: 100%; height: 340px; padding: var(--space-18) var(--space-20); background: #fff; border: 1px solid #EEE; border-radius: 8px; font-size: var(--font-size-16); resize: none;}
.textarea-box::placeholder {color: #a8a8a8;}

/* 마케팅수출지도용 희망분야 (세로 리스트) */
.checkbox-list-vertical {display: flex; flex-direction: column; gap: var(--space-20);}
.checkbox-list-vertical .checkbox-item .field-name {width: 150px; border-right: 1px solid #eee; margin-right: var(--space-16); padding-right: var(--space-16);}

/* 마케팅 · 수출 자료 */
.marketing-row {gap: var(--space-8);}
.marketing-row .radio-item {gap: var(--space-8);}
.marketing-row .input-text {width: 240px;}
.marketing-data-row {gap: var(--space-8); flex-wrap: wrap;}
.marketing-data-row span.sub-gray-color {min-width: 200px;}
.marketing-data-row .checkbox-item {gap: var(--space-8); margin-right: var(--space-16);}
.marketing-data-row .checkbox-item:last-child {margin-right: 0;}
.marketing-data-row .input-text {width: 240px;}

/* 신청 완료 페이지 */
.complete-box {padding: var(--space-60) var(--space-30); margin-bottom: var(--space-50); border-radius: var(--radius-16);background: #F4F8FD;}

/* ======================================
   Skill-UP 캠프 신청 페이지
====================================== */
.page-skillup-welcome {padding-bottom: var(--space-160);}
.skillup-intro {gap: var(--space-20);}
.skillup-left {gap: var(--space-50);}
.skillup-head {gap: var(--space-30);}
.skillup-num {width: 40px; height: 40px; background: var(--primary-color); border-radius: 500px;}
.skillup-title {line-height: 1.5556em;}
.skillup-desc {line-height: 1.7em;}
.skillup-notice {gap: var(--space-16);}
.skillup-notice .fz24 {line-height: 1.6667em;}
.notice-content {gap: var(--space-8);}
.notice-content .fz16 {line-height: 1.75em;}
.notice-content .fz15 {padding-left: var(--space-10); line-height: 1.7333em;}
.skillup-right {width: 608px; padding: var(--space-40); background: #f8f8f8; border-radius: var(--radius-12);}
.skillup-right-title {margin-bottom: var(--space-40); line-height: 1.6667em;}
.skillup-process {gap: var(--space-24);}
.skillup-process .process-item {gap: var(--space-20); aspect-ratio: auto; background: none; border: 0;}
.skillup-process .process-icon {padding: var(--space-20); background: #fff; border: 1px solid #eee; border-radius: 500px;}
.skillup-process .process-content {gap: 6px;}
.skillup-process .process-head {gap: var(--space-8);}
.skillup-process .process-head .fz18 {line-height: 1.5556em;}
.skillup-process .process-head .fz16 {line-height: 1.5em;}
.skillup-process .process-content .fz15 {line-height: 1.3333em;}
.page-skillup-welcome .btn-wrap {margin-top: var(--space-80);}

/* 마케팅 단계 선택 */
.marketing-stage-list {gap: var(--space-12);}
.marketing-stage-item {padding: var(--space-30); border: 1px solid #EEE; border-radius: 8px; cursor: pointer; transition: border-color 0.3s;}
.marketing-stage-item:has(input:checked) {border-color: var(--primary-color);}
.stage-check {gap: var(--space-8); width: 300px; flex-shrink: 0;}
.stage-check input[type="radio"] {display: none;}
.stage-check .checkbox-box {width: 18px; height: 18px; border: 1px solid #DDD; flex-shrink: 0;}
.stage-check input[type="radio"]:checked + .checkbox-box {background: url('/images/sub/icon-check.svg') no-repeat center center; background-size: contain; border-color: var(--primary-color);}
.stage-content {gap: var(--space-30);}
.stage-info {gap: var(--space-8);}
.stage-info .gray-color {line-height: 1.75em;}
.mb40 {margin-bottom: var(--space-40);}
.mb12 {margin-bottom: var(--space-12);}

/* 연수 프로그램 신청서 - 기술·설비 현황 등 */
.form-label-wide {width: 300px; flex-shrink: 0;}
.level-info {gap: var(--space-16);}
.level-info p {line-height: 1.5em;}
.level-info .gray-color3 {width: 48px; display: inline-block;}
.agree-section {margin-top: var(--space-70);}
.agree-row {gap: var(--space-24);}
.mt70 {margin-top: var(--space-70);}
.border-right {border-right: 1px solid #EEE; padding-right: var(--space-24); margin-right: 0;}

/* 유틸리티 */
.ml16 {margin-left: var(--space-16);}
.ml24 {margin-left: var(--space-24);}
.mt16 {margin-top: var(--space-16);}
.mb24 {margin-bottom: var(--space-24);}

/* ======================================
   일본기술자DB 한눈에 보기
====================================== */

/* 등록 기술자 현황 */
.overview-stat {display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-20);}
.overview-stat .stat-item {display: flex; flex-direction: column; gap: var(--space-10); padding: var(--space-40); background: #F8F8F8; border-radius: var(--radius-16);}
.overview-stat .stat-num .counter {min-width: 2.5em}
.overview-stat .stat-change {gap: var(--space-12);}
.overview-stat .stat-change .arrow {gap: 4px;}
.overview-stat .stat-change.up .value {color: #E74C3C;}
.overview-stat .stat-change.down .value {color: var(--primary-color);}

/* 업종별 현황 */
.overview-industry {display: flex; gap: 30px 20px; padding: var(--space-40); background: #F4F8FD; border-radius: var(--radius-16); overflow: visible; position: relative;}
.overview-industry .field-chart {width: 49.243%; position: relative; overflow: visible !important;}
.overview-industry .field-chart canvas {display: block; width: 100% !important; height: auto !important; max-width: 600px; aspect-ratio: auto;} 
.overview-industry .legend-item {flex-direction: column; align-items: flex-start; justify-content: space-between; gap:0; padding: var(--space-25) var(--space-15);}

/* 직무별 현황 */
.sec-overview-bar {display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-80) 20px;}
.sec-overview-bar .group {display: flex; flex-direction: column;}
.overview-job .bar-list {position: relative; display: flex; flex-direction: column; height: 100%; border: 1px solid #eee; padding: var(--space-40); border-radius: var(--radius-16)}
.overview-job .bar-list:before {z-index: 1; content: ''; position: absolute; top: 0; bottom: 0; left: calc(var(--space-40) + 142px); width: 1px; background: #eee;}
.overview-job .bar-item {position: relative; flex: 1; display: flex; padding: 5px 0;}
.overview-job .bar-label {width: 142px; flex-shrink: 0; text-align: right; padding: 5px var(--space-25); padding-left: 0;}
.overview-job .bar-wrap {display: flex; height: 40px; flex: 1; position: relative;}
.overview-job .bar-container {flex: 1; height: 100%; position: relative;}
.overview-job .bar {height: 100%; background: #DFEBF8; border-radius: 0 100px 100px 0; position: relative; display: flex; align-items: center;}
.overview-job .bar-num {display: flex; align-items: center; padding: 0 var(--space-12); background: #DFEBF8; color: var(--primary-color);}
.overview-job .bar-item.active .bar{background: var(--primary-color);}
.overview-job .bar-item.active .bar-num {background: var(--primary-color);color: #fff;}
.overview-job .bar-item.empty .bar {background: #fff;}
.overview-job .bar-item.empty .bar-num {background: #fff; color: #ccc;}

/* 자격 및 면허 보유 현황 */
.overview-qual {gap: var(--space-30);}
.overview-qual .qual-card {display: flex; flex-direction: column; justify-content: space-between; width: 32.358%; padding: var(--space-40); border: 1px solid #eee; border-radius: var(--radius-16);}
.overview-qual .chart-legend ul {gap: 5px 16px; flex-wrap: wrap; margin-top: var(--space-25);}
.overview-qual .chart-legend .dot {display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 100%; flex-shrink: 0;}
.overview-qual .qual-card.type2 {display: flex;}
.overview-qual .qual-card .card-icon {width: 49.5%; max-width: 180px; border-radius: var(--radius-16); padding: 10px;}
#qualDonutChart {width: 100% !important; height: 100% !important;}
.qual-donut {max-width: 220px; width: 100%; margin: 0 auto;}
.qual-boxes {display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-20)}
.qual-box {display: flex; gap:var(--space-30); padding: var(--space-24); border: 1px solid #eee; border-radius: var(--radius-16);}
.qual-box .icon {display: flex; align-items: center;justify-content: center; padding: var(--space-44);background: #F4F8FD; border-radius: var(--radius-16)}
.qual-box-cnt {padding: var(--space-12) 0; gap: 10px;}

/* 연령별 현황 */
.overview-age {display: flex; border: 1px solid #ddd; border-radius: var(--radius-16);}
.overview-age-title {width: 33.786%; max-width:473px; border-right: 1px solid #ddd; background: #FAFAFA; padding: var(--space-40);}
.overview-age-chart {padding: var(--space-40) 0;}

/* 전문분야별 현황 */
.overview-field .field-filter ul {display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-10);}
.overview-field .filter-btn {display: flex; gap: 5px 12px; padding: var(--space-16) var(--space-20); background: #F4F8FD;; border: 1px solid #F4F8FD; border-radius: var(--radius-12); cursor: pointer; transition: all 0.3s;}
.overview-field .filter-btn:after {content: ''; display: block; width: 24px; background: url('/images/sub/filter-active-chk.png') no-repeat center center; background-size: contain; opacity: 0; transition: .2s;}
.overview-field .filter-btn:hover {border-color: var(--primary-color); color: var(--primary-color);}
.overview-field .active .filter-btn {background: var(--primary-color); border-color: var(--primary-color); color: #fff;}
.overview-field .active .filter-btn span {color: #fff;}
.overview-field .active .filter-btn:after {opacity: 1;}
.overview-field-accordion {display: flex; }
.overview-field-accordion h3 {width: 25%; padding-right: 35px;}
.overview-field .field-accordion {display: flex; flex-direction: column; gap: 0; border-top:2px solid var(--dark-color);}
.overview-field .accordion-item {border-bottom: 1px solid #EEE;}
.overview-field .accordion-item:last-child {border-bottom: none;}
.overview-field .accordion-header {display: flex; align-items: center; gap: var(--space-16); padding: var(--space-30) var(--space-16); cursor: pointer;}
.overview-field .accordion-count {flex:1; flex-shrink: 0;}
.overview-field .accordion-header:after {content: ''; display: block; width: 12px; height: 6px; background: url('/images/sub/icon-arrow-down.svg') no-repeat center center; background-size: contain; flex-shrink: 0; transition: transform 0.3s;}
.overview-field .accordion-item.open .accordion-header:after {transform: scaleY(-1);}
.overview-field .accordion-content {display: none; padding-bottom: var(--space-30);}
.overview-field .accordion-detail {display: flex; align-items: center; gap: var(--space-20); padding: var(--space-16); background: #F8F8F8; border-radius: var(--radius-8); margin-bottom: var(--space-12);}
.overview-field .accordion-detail:last-child {margin-bottom: 0;}
.overview-field .detail-code {width: 140px; flex-shrink: 0;}
.overview-field .detail-code span {margin-left: 10px;}
.overview-field .detail-desc {flex: 1;}
.overview-field .detail-count {width: 100px; text-align: right; flex-shrink: 0;}

/* 팝업 */
.pop-wrap {width:90vw; max-width:980px; border-radius:var(--radius-16); background:#fff; overflow:hidden;}
.pop-wrap.type2 {max-width: 1200px;}
.pop-content {max-height: 80vh; overflow-y: auto;}
.pop-wrap h2, .pop-wrap .content {padding: var(--space-40);}
.pop-wrap .content  {max-height: 80vh; overflow-y: auto;}
.pop-wrap h2 {border-bottom: 1px solid #eee; font-size: var(--font-size-28); line-height: 1.5em; font-weight: 800; color: var(--dark-color);}
.pop-wrap .form-table {border-top: 0;}
.pop-wrap .form-row {gap :6px; padding: 0; border-bottom: 0;}
.pop-wrap .form-row.flex-column, .pop-wrap .form-col.flex-column {gap: var(--space-16); padding: 0; border-bottom:0; align-items: flex-start;}
.pop-wrap .btn-select {display: inline-block; padding: 8px 10px; background: #F4F4F4; border: none; border-radius: var(--radius-8); font-size: var(--font-size-14); font-weight: 600; line-height: 1.4286em; cursor: pointer; color: var(--dark-color); transition: all 0.3s;}
.pop-wrap .btn-select input[type="checkbox"] {display: none;}
.pop-wrap .btn-select.active {background: var(--primary-color); color: #fff;}
.pop-wrap .btn-select.active span {color: #fff;}
.pop-wrap .tbl-support thead th,
.pop-wrap .tbl-support tbody td {padding: var(--space-16); text-align: center;}
.pop-wrap .file-input.full {width: 100%;}


/* 팝업 */
.pop-wrap2 {width: 100%; max-width: 1200px; border-radius: var(--radius-16); background: #fff; overflow: hidden;}
.pop-wrap2.type2 {max-width: 1200px;}
.pop-content {max-height: 80vh; overflow-y: auto;}
.pop-wrap2 h2, .pop-wrap2 .content {padding: var(--space-40);}
.pop-wrap2 .content  {max-height: 80vh; overflow-y: auto;}
.pop-wrap2 h2 {border-bottom: 1px solid #eee; font-size: var(--font-size-28); line-height: 1.5em; font-weight: 800; color: var(--dark-color);}
.pop-wrap2 .form-table {border-top: 0;}
.pop-wrap2 .form-row {gap :6px; padding: 0; border-bottom: 0;}
.pop-wrap2 .form-row.flex-column, .pop-wrap2 .form-col.flex-column {gap: var(--space-16); padding: 0; border-bottom:0; align-items: flex-start;}
.pop-wrap2 .btn-select {display: inline-block; padding: 8px 10px; background: #F4F4F4; border: none; border-radius: var(--radius-8); font-size: var(--font-size-14); font-weight: 600; line-height: 1.4286em; cursor: pointer; color: var(--dark-color); transition: all 0.3s;}
.pop-wrap2 .btn-select input[type="checkbox"] {display: none;}
.pop-wrap2 .btn-select.active {background: var(--primary-color); color: #fff;}
.pop-wrap2 .btn-select.active span {color: #fff;}
.pop-wrap2 .tbl-support thead th,
.pop-wrap2 .tbl-support tbody td {padding: var(--space-16); text-align: center;}
.pop-wrap2 .file-input.full {width: 100%;}


/* 신청 유형 카드 그리드 */
.apply-type-grid {display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-30);}
.apply-type-grid .type-card {display: flex; flex-direction: column; align-items: center; padding: var(--space-50) var(--space-40); background: #fff; border: 2px solid #EEE; border-radius: var(--radius-16);  transition: all 0.3s; position: relative;}
.apply-type-grid .type-card .card-icon {display: flex; align-items: center; justify-content: center; padding: var(--space-15); background: #EBF5FF; border-radius: 500px; margin-bottom: var(--space-30);}
.matching-event-info {background: #F4F8FD; border-radius: var(--radius-16); padding: var(--space-60);}
.matching-event-info h2 {width: fit-content; background: linear-gradient(to left, var(--primary-color), var(--dark-color)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;}
.matching-event-info ul {display: flex; gap: 10px; flex-wrap: wrap;}
.matching-event-info li {display: flex; flex: 1 1 auto; width: calc(50% - 5px); padding: var(--space-35) var(--space-40); border-radius: var(--radius-16); background: #fff;}
.matching-event-info li:first-child {width: 100%;}
.matching-event-info li small {display: inline-block;}
.matching-event-info strong {min-width: 90px; display: flex; align-items: center;}

