@charset "utf-8";

/* ========== 소재공급신청 / 희망소재신청 게시판 ========== */
/* page-board.css의 .tbl-board 기본 스타일을 재사용하되, 추가 요소(자물쇠/상태 뱃지/설명문)는 .supply-board-section 하위로 스코핑 */

.supply-board-section{margin-top:80px;}
.sub-content > .supply-board-section:first-child{margin-top:0;}
.supply-board-section h3.h3{margin-bottom:15px;}
.supply-board-section .board-desc{margin:0 0 30px;font-size:16px;color:#555;line-height:1.5;}

/* 소재명 셀 — 자물쇠 아이콘 자리 확보 */
.supply-board-section .tbl-board td.material-name{position:relative;text-align:left;padding-left:35px;cursor:pointer;}
.supply-board-section .tbl-board td.material-name:hover{text-decoration:underline;}
.supply-board-section .tbl-board td.material-name .lock{position:absolute;left:10px;top:50%;transform:translateY(-50%);display:inline-block;width:14px;height:18px;background:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2014%2018%27%20fill%3D%27%23555%27%3E%3Cpath%20d%3D%27M11%208V5.5a4%204%200%200%200-8%200V8H1.5A.5.5%200%200%200%201%208.5v8.999A.5.5%200%200%200%201.5%2018h11a.5.5%200%200%200%20.5-.5V8.5a.5.5%200%200%200-.5-.5H11zM7%2014a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203zm2.5-6h-5V5.5a2.5%202.5%200%201%201%205%200V8z%27%2F%3E%3C%2Fsvg%3E") no-repeat center center;background-size:contain;}

/* 진행현황 뱃지 */
.supply-board-section .tbl-board .status-tag.done{color:#03ae52;}

/* ========== 신청 폼 (소재 공급 신청) ========== */
.sub-content .table-title{position:relative;margin:40px 0 14px;padding-left:16px;font-size:18px;font-weight:bold;color:#000;line-height:1.3;}
.sub-content .table-title:first-of-type{margin-top:10px;}
.sub-content .table-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:#03ae52;}

/* 행 — 셀 정렬/사이즈 */
#inputSection .tbl-data{margin-bottom:0;}
#inputSection .tbl-data dl{min-height:60px;}
#inputSection .tbl-data dt{width:200px;text-align:left;padding:18px 20px;font-size:15px;vertical-align:middle;}
#inputSection .tbl-data dt.req:before{margin-right:4px;}
#inputSection .tbl-data dd{padding:14px 24px;vertical-align:middle;}

/* 입력 요소 공통 */
#inputSection .tbl-data dd input.input-text{width:100%;max-width:520px;height:42px;line-height:42px;padding:0 14px;font-size:14px;border:1px solid #c9c9c9;box-sizing:border-box;}
#inputSection .tbl-data dd input.input-text:focus{border-color:#03ae52;outline:none;}
#inputSection .tbl-data dd .textarea{width:100%;max-width:680px;min-height:80px;padding:12px 14px;font-size:14px;border:1px solid #c9c9c9;box-sizing:border-box;resize:vertical;}
#inputSection .tbl-data dd .textarea:focus{border-color:#03ae52;outline:none;}
#inputSection .tbl-data dd input[type="file"]{font-size:13px;}

/* 주소 그룹 */
#inputSection .tbl-data dd .group-form.address{display:flex;gap:8px;margin-bottom:6px;max-width:680px;}
#inputSection .tbl-data dd .group-form.address button{flex:0 0 110px;height:42px;background:#7d7d7d;color:#fff;border:none;font-size:14px;font-weight:500;cursor:pointer;}
#inputSection .tbl-data dd .group-form.address button:hover{background:#666;}
#inputSection .tbl-data dd .group-form.address .input-text{flex:1;max-width:none;}
#inputSection .tbl-data dd input.input-text.address{max-width:680px;}

/* 연락처 (유선/무선) — 줄바꿈 방지 */
#inputSection .tbl-data dd .input-tel{max-width:220px;}
#inputSection .tbl-data dd .lbl-inline{display:inline-flex;align-items:center;gap:8px;margin:0 24px 0 0;white-space:nowrap;vertical-align:middle;}
#inputSection .tbl-data dd .lbl-inline:last-child{margin-right:0;}
#inputSection .tbl-data dd .lbl-inline > .input-text{width:auto;}

/* 라디오/체크박스 */
#inputSection .tbl-data dd .lbl-block{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:14px;}
#inputSection .tbl-data dd .lbl-block:last-child{margin-bottom:0;}
#inputSection .tbl-data dd .input-radio,
#inputSection .tbl-data dd .input-checkbox{flex-shrink:0;width:16px;height:16px;margin:0;cursor:pointer;accent-color:#03ae52;}

/* 소재 분류 체크박스 그룹 */
#inputSection .tbl-data dd .checkbox-group{display:flex;flex-wrap:wrap;gap:8px 16px;}
#inputSection .tbl-data dd .checkbox-group .lbl-check{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:14px;white-space:nowrap;}
#inputSection .tbl-data dd .checkbox-group .input-etc{flex-basis:100%;margin-top:6px;max-width:520px;}

/* 도움말 */
#inputSection .tbl-data dd .form-help{margin:8px 0 0;font-size:13px;color:#777;line-height:1.5;}
#inputSection .tbl-data dd .form-help.notice{color:#666;font-style:normal;}

/* 비밀번호 도움말 (table-title 하단) */
#inputSection .form-help-section{margin:0 0 12px;font-size:14px;color:#666;line-height:1.5;}

.agree-box{margin:36px 0 24px;padding:18px 20px;border:1px solid #e4e4e4;background:#fafafa;text-align:center;}
.agree-box .lbl-inline{display:inline-flex;align-items:center;gap:8px;font-size:14px;white-space:normal;}
.agree-box .input-checkbox{width:16px;height:16px;accent-color:#03ae52;}
.agree-box .link-underline{margin-left:6px;color:#03ae52;text-decoration:underline;}

.btn-md-gray{display:inline-block;width:160px;height:50px;text-align:center;line-height:50px;font-size:16px;font-weight:500;color:#fff;background:#7d7d7d;border:none;vertical-align:middle;}
.btn-md-gray:hover{background:#666;}

/* ========== 신청 상세 확인 화면 ========== */
.supply-detail-page .board-desc{margin:0 0 30px;font-size:16px;color:#555;line-height:1.5;}
.supply-detail-page .supply-detail-summary{display:flex;gap:18px;margin:0 0 40px;}
.supply-detail-page .supply-detail-summary dl{flex:1;min-height:96px;margin:0;padding:20px 24px;border:1px solid #e4e4e4;background:#fafafa;box-sizing:border-box;}
.supply-detail-page .supply-detail-summary dt{margin:0 0 12px;font-size:14px;font-weight:bold;color:#666;line-height:1.4;}
.supply-detail-page .supply-detail-summary dd{margin:0;font-size:22px;font-weight:bold;color:#000;line-height:1.4;}
.supply-detail-page .supply-detail-summary .status-tag.done{color:#03ae52;}

#detailSection .tbl-data{margin-bottom:0;}
#detailSection .tbl-data dl{min-height:60px;}
#detailSection .tbl-data dt{width:200px;text-align:left;padding:18px 20px;font-size:15px;vertical-align:middle;}
#detailSection .tbl-data dd{padding:14px 24px;vertical-align:middle;}
#detailSection .view-value{display:block;max-width:680px;font-size:14px;line-height:1.7;color:#222;word-break:keep-all;}
#detailSection .view-value.multiline{white-space:pre-line;}
#detailSection .view-file-list{max-width:680px;margin:0;padding:0;list-style:none;}
#detailSection .view-file-list li{position:relative;padding-left:16px;font-size:14px;line-height:1.7;color:#222;word-break:break-all;}
#detailSection .view-file-list li:before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:#03ae52;}
#detailSection .view-image-list{display:flex;flex-wrap:wrap;gap:20px;max-width:820px;margin:0;padding:0;list-style:none;}
#detailSection .view-image-list li{width:180px;}
#detailSection .view-image-list figure{margin:0;}
#detailSection .view-image-list img{display:block;width:100%;height:132px;object-fit:cover;border:1px solid #d9d9d9;box-sizing:border-box;background:#f5f5f5;}
#detailSection .view-image-list figcaption{margin-top:10px;font-size:13px;line-height:1.5;color:#444;word-break:break-all;text-align:center;}
.supply-detail-page .btn-center{margin-top:48px;}

@media all and (max-width:960px){
	.sub-content .table-title{margin:30px 0 10px;font-size:16px;}
	#inputSection .tbl-data dt{width:32%;padding:12px 10px;font-size:13px;}
	#inputSection .tbl-data dd{padding:12px;font-size:13px;}
	#inputSection .tbl-data dd input.input-text,
	#inputSection .tbl-data dd .textarea{max-width:none;height:40px;line-height:40px;}
	#inputSection .tbl-data dd .textarea{height:auto;line-height:1.5;}
	#inputSection .tbl-data dd .input-tel{max-width:none;width:100%;}
	#inputSection .tbl-data dd .group-form.address{flex-direction:column;max-width:none;}
	#inputSection .tbl-data dd .group-form.address button{flex:0 0 40px;width:100%;}
	#inputSection .tbl-data dd input.input-text.address{max-width:none;}
	#inputSection .tbl-data dd .lbl-inline{display:flex;margin:0 0 8px;}
	#inputSection .tbl-data dd .lbl-inline:last-child{margin-bottom:0;}
	#inputSection .tbl-data dd .checkbox-group{gap:6px 10px;}
	#inputSection .tbl-data dd .checkbox-group .lbl-check{font-size:13px;}
	#inputSection .tbl-data dd .lbl-block{font-size:13px;}
	.agree-box{margin:24px 0 16px;padding:14px;}
	.agree-box .lbl-inline{flex-wrap:wrap;justify-content:center;}
	.btn-md-gray{width:48%;font-size:14px;}
	.btn-center.btn2 .btn-md-green{width:48%;font-size:14px;}

	.supply-detail-page .board-desc{margin:0 0 20px;font-size:14px;}
	.supply-detail-page .supply-detail-summary{flex-direction:column;gap:10px;margin-bottom:30px;}
	.supply-detail-page .supply-detail-summary dl{min-height:auto;padding:16px;}
	.supply-detail-page .supply-detail-summary dt{margin-bottom:8px;font-size:13px;}
	.supply-detail-page .supply-detail-summary dd{font-size:18px;}
	#detailSection .tbl-data dt{width:32%;padding:12px 10px;font-size:13px;}
	#detailSection .tbl-data dd{padding:12px;font-size:13px;}
	#detailSection .view-value,
	#detailSection .view-file-list li{font-size:13px;line-height:1.6;word-break:break-word;}
	#detailSection .view-image-list{gap:12px;}
	#detailSection .view-image-list li{width:calc(50% - 6px);}
	#detailSection .view-image-list img{height:118px;}
	#detailSection .view-image-list figcaption{margin-top:8px;font-size:12px;line-height:1.4;}
	.supply-detail-page .btn-center{margin-top:36px;}
}

/* ========== 비밀번호 확인 화면 ========== */
.password-check-section{padding:80px 0 120px;}
.password-check {max-width:480px;margin:0 auto;text-align:center;}
.password-check h3.h3{margin-bottom:30px;text-align:center;}
.password-check .password-form{display:flex;gap:8px;margin:0 auto;}
.password-check .password-form input[type="password"]{flex:1;height:50px;padding:0 16px;font-size:15px;border:1px solid #03ae52;box-sizing:border-box;outline:none;}
.password-check .password-form input[type="password"]:focus{border-color:#028d42;box-shadow:0 0 0 2px rgba(3,174,82,.15);}
.password-check .password-form .btn-confirm{flex:0 0 110px;height:50px;line-height:48px;font-size:15px;font-weight:500;color:#fff;background:#03ae52;border:1px solid #03ae52;cursor:pointer;box-sizing:border-box;}
.password-check .password-form .btn-confirm:hover{background:#028d42;border-color:#028d42;}
.password-check .error-message{margin-top:14px;font-size:14px;color:#e53935;text-align:left;visibility:hidden;}
.password-check .error-message.show{visibility:visible;}
.password-check-section .btn-close-modal { color: #000; width: unset; height: unset; }

@media all and (max-width:960px){
	.supply-board-section{margin-top:50px;}
	.supply-board-section h3.h3{margin-bottom:10px;}
	.supply-board-section .board-desc{margin:0 0 20px;font-size:14px;line-height:1.5;}
	.supply-board-section .tbl-board td.material-name{padding-left:25px;}
	.supply-board-section .tbl-board td.material-name .lock{left:5px;}

	.password-check-section{padding:40px 20px 80px;}
	.password-check{max-width:100%;}
	.password-check h3.h3{margin-bottom:20px;font-size:18px;}
	.password-check .password-form input[type="password"]{height:44px;font-size:14px;}
	.password-check .password-form .btn-confirm{flex:0 0 80px;height:44px;line-height:42px;font-size:14px;}
	.password-check .error-message{margin-top:10px;font-size:13px;}
}
