.equip-reservation .b-agree-box {
	margin-top: 10px;
}

/* ============================================================
   완료(completed.jsp) — 공유 acnhor 의 .complete-box 는 `.modal .complete-box` 로만 스타일된다.
   완료 화면은 모달이 아니라 페이지 섹션이라 그 규칙을 못 받는다 → 같은 값을 앱 스코프로 직접 준다.
   ============================================================ */
.equip-reservation .equip-completed .complete-box {
	text-align: center;
	padding: 24px 0 8px;
}

.equip-reservation .equip-completed .complete-box img {
	display: block;
	margin: 0 auto 20px auto;
}

.equip-reservation .equip-completed .complete-box .t1 {
	margin-bottom: 12px;
	font-weight: 600;
	font-size: 24px;
	line-height: 120%;
	color: #262626;
}

.equip-reservation .equip-completed .complete-box .t1 span {
	color: #009BB4;
}

.equip-reservation .equip-completed .complete-box .t2 {
	margin-top: 6px;
	font-weight: 500;
	font-size: 18px;
	line-height: 140%;
	color: #767676;
}

@media (max-width: 768px) {
	.equip-reservation .equip-completed .complete-box .t2 {
		font-size: 16px;
	}
}

/* 페이저 — 위치만 잡는다. 번호·화살표의 생김새는 퍼블 정본(iacf.css 가 @import 하는 board.css)의
   .b-paging01.type04 가 담당한다(45x45 · 활성은 #009BB4 원형).
   2026-08-28: 앱에서 36x36 사각 테두리로 다시 그리던 규칙을 제거했다 — 활성만 퍼블이 이기고
   화살표는 앱 규칙이 이겨서 한 페이저 안에 두 디자인이 섞여 있었다. */
.equip-reservation .b-paging-wrap {
	margin-top: 28px;
	text-align: center;
}

/* 번호·화살표 치수를 퍼블 정본(search-industry) 실측값에 맞춘다 — 45x45 · 테두리 없음 ·
   #767676 18px, 활성은 #009BB4 원형. 다른 곳에서 36x28 사각 테두리를 주고 있는데 앱 페이지의
   스타일시트가 CORS 로 잠겨 그 출처를 특정하지 못했다. background 는 축약으로 덮지 않는다 —
   화살표 아이콘이 배경 이미지라 지워지면 안 된다. */
.equip-reservation .b-paging01.type04 .b-paging-wrap ul li a {
	width: 45px;
	min-width: 45px;
	height: 45px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background-color: transparent;
	color: #767676;
	font-size: 18px;
	font-weight: 500;
	line-height: 45px;
}

.equip-reservation .b-paging01.type04 .b-paging-wrap ul li a.active {
	border-radius: 100%;
	background-color: #009BB4;
	color: #fff;
}

/* 페이저 상단 여백 — common-anchor iacf 정본(listLayout.jsp)은 ul 의 padding:50px 하나로 띄운다.
   위 .equip-reservation .b-paging-wrap 의 margin-top:28px 은 연수컨벤션(room-reservation-iacf)
   목록·마이페이지가 쓰는 값이라 건드리지 않고, 이 앱에서만 정본과 같은 50px 이 되게 되돌린다. */
.equipment-reservation-anchor .b-paging-wrap {
	margin-top: 0;
}

/* ============================================================
   목록(list.jsp) — 내용 칸
   장비내용은 관리자 자유입력이라 줄바꿈이 그대로 들어온다. td 는 공백을 접어
   한 줄로 흘러버리므로 pre-line 으로 입력한 줄을 살리고, 목록에서는 두 줄까지만
   보이고 나머지는 말줄임으로 끊는다(전문은 상세에서 본다).
   td 자체에 -webkit-box 를 걸면 display:table-cell 이 풀려 열이 무너진다 → 안쪽 span 에 건다.
   스코프는 ${appKey} — .equip-reservation 은 연수컨벤션(room-reservation-iacf)이 공유한다.
   ============================================================ */
.equipment-reservation-anchor .equip-list-info {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	white-space: pre-line;
	word-break: break-word;
	text-align: left;
	line-height: 1.5;
}

/* ============================================================
   장비 상세(detail.jsp)
   ============================================================ */
.equip-reservation .equip-detail-head {
	margin-bottom: 20px;
}

.equip-reservation .equip-detail-name {
	margin: 0;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.2;
	color: #101E1B;
}

.equip-reservation .equip-detail-body {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	margin-bottom: 24px;
}

.equip-reservation .equip-detail-img {
	flex: 0 0 320px;
	max-width: 320px;
}

.equip-reservation .equip-detail-img img {
	width: 100%;
	height: auto;
	border-radius: 8px;
}

/* 이미지 없을 때 정보 테이블이 전체 폭을 쓰도록 */
.equip-reservation .equip-detail-info {
	flex: 1 1 320px;
	min-width: 280px;
}

.equip-reservation .equip-detail-section {
	margin-top: 28px;
}

.equip-reservation .equip-detail-subtit {
	margin: 0 0 12px;
	padding-left: 12px;
	border-left: 3px solid #003B90;
	font-size: 18px;
	font-weight: 700;
	color: #101E1B;
}

/* 관리자 자유입력(이스케이프)이라 줄바꿈만 살린다 — HTML 태그가 그대로 노출되지 않게 pre-line */
.equip-reservation .equip-detail-text {
	font-size: 15px;
	line-height: 1.7;
	color: #333;
	white-space: pre-line;
	word-break: break-word;
}

/* 장비내용 값 칸 — 퍼블이 준 클래스에 스타일이 없어 줄바꿈이 접혔다.
   상세는 전문을 보는 화면이라 말줄임 없이 입력한 줄 그대로 편다. */
.equipment-reservation-anchor .b-con-box-textarea {
	white-space: pre-line;
	word-break: break-word;
	line-height: 1.6;
}

/* ============================================================
   정보입력(info-input.jsp) — SB U#82 그리드 폼(라벨=회색 th, 한 행에 라벨|값 2쌍)
   ============================================================ */

/* 구획 제목 */
.equip-reservation .equip-form-subtit {
	margin: 28px 0 12px;
	padding-left: 12px;
	border-left: 3px solid #003B90;
	font-size: 18px;
	font-weight: 700;
	color: #101E1B;
}
.equip-reservation .equip-form-subtit:first-of-type {
	margin-top: 0;
}

/* 그리드 표 — 라벨(th)=회색 고정폭, 값(td). 분류|값|회원레벨|값 처럼 4열 페어 */
.equip-reservation .equip-form-table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	margin-bottom: 8px;
}
.equip-reservation .equip-form-table th,
.equip-reservation .equip-form-table td {
	border: 1px solid #dce0e6;
	padding: 11px 16px;
	font-size: 15px;
	line-height: 1.5;
	text-align: left;
	vertical-align: middle;
	word-break: break-word;
}
.equip-reservation .equip-form-table th {
	background: #f4f5f7;
	font-weight: 600;
	color: #333;
}
.equip-reservation .equip-form-table th.req::after {
	content: " *";
	color: #e03131;
}
.equip-reservation .equip-form-table td input[type="text"] {
	width: 100%;
	height: 38px;
	box-sizing: border-box;
	padding: 0 10px;
	border: 1px solid #cfd4dc;
	border-radius: 4px;
	font-size: 15px;
}

.equip-reservation .equip-form-note {
	margin-left: 6px;
	font-size: 13px;
	font-weight: 400;
	color: #888;
}

/* 사용료 표 — 금액 우측 정렬 + 합계 강조 */
.equip-reservation .equip-form-table.fee td {
	text-align: right;
}
.equip-reservation .equip-fee-amount {
	font-weight: 700;
}
.equip-reservation .equip-fee-total {
	font-size: 18px;
	color: #003B90;
}

/* 부가 내용 선택 표 — 헤더/체크 중앙, 금액 우측, 설명 보조 텍스트 */
.equip-reservation .equip-form-table.surcharge thead th {
	text-align: center;
}
.equip-reservation .equip-form-table td.tx-c {
	text-align: center;
}
.equip-reservation .equip-form-table td.tx-r {
	text-align: right;
}

/* ============================================================
   상세(detail)/시간팝업 표 라벨 정렬 — 라벨 칸 폭 고정(줄바꿈 방지)
   (정보입력은 .equip-form-table 그리드로 분리됨)
   ============================================================ */
.equip-reservation .bn-write-common01 .b-table-box .b-row-box .b-title-box {
	width: 140px;
	white-space: nowrap;
}

/* ============================================================
   상세 하단 버튼 — [목록][예약] 우측 정렬
   퍼블 정본은 [목록] / [이용료 계산하기][예약하기] 3개를 space-between 으로 양끝에 붙이지만,
   이 앱은 「이용료 계산하기」가 없어 두 버튼이 화면 양끝으로 벌어진다. 한 덩어리로 모아 우측에 붙인다.
   스코프를 ${appKey}(.equipment-reservation-anchor)로 잡아 .equip-reservation 을 공유하는
   연수컨벤션(room-reservation-iacf)에 영향이 가지 않게 한다.
   ============================================================ */
.equipment-reservation-anchor .bn-write-common01.type04 .b-pager-box {
	justify-content: flex-end;
}

/* ============================================================
   정보 입력(info-input.jsp) — 부가 내용 표
   제목이 관리자 자유입력이라 길이를 보장할 수 없다. 공통 라벨 규칙(width:140px + white-space:nowrap)
   이면 긴 제목이 칸을 넘어 오른쪽 체크박스 위로 겹친다. 이 표만 넓히고 줄바꿈을 허용한다.
   스코프는 ${appKey} — .equip-reservation 은 연수컨벤션이 공유한다.
   ============================================================ */
.equipment-reservation-anchor .equip-surcharge-list .b-table-box .b-row-box .b-title-box {
	width: 220px;
	white-space: normal;
	word-break: keep-all;
}

/* 체크박스(.b-checkbox 22px)와 금액·설명 줄을 세로 가운데로 맞춘다 */
.equipment-reservation-anchor .equip-surcharge-list .b-input-group {
	align-items: center;
}

/* ------------------------------------------------------------
   안내 문구(.b-msg-info) 여백
   퍼블 iacf.css 는 margin-top:12px 을 주는데, 같은 퍼블의 iacf-etc.css 가
   `.signup-wrap.type02 .bn-write-common01.type04 .b-msg-info{margin:0}` 으로 덮는다(회원가입 폼 전제).
   예약 절차 화면이 그 래퍼를 빌려 쓰는 탓에 느낌표 안내가 표에 딱 붙는다 → 앱 스코프에서만 되돌린다.
   인라인으로 붙는 span(수량 안내)은 건드리지 않는다 — flex 행에서 밀려 내려간다.
   ------------------------------------------------------------ */
.equipment-reservation-anchor .signup-wrap.type02 .bn-write-common01.type04 p.b-msg-info {
	margin-top: 16px;
}

.equipment-reservation-anchor .signup-wrap.type02 .bn-write-common01.type04 .b-title-box label .b-msg-info {
	margin-top: 6px;
}

/* ------------------------------------------------------------
   완료(STEP4) 안내 문구 — 가운데 정렬
   퍼블 정본은 본문 문단을 `.box-final .con-final > p` 로 감싸 가운데 정렬한다(iacf-etc.css:198).
   이 화면은 그 회색 박스 래퍼 없이 .b-msg-info 를 바로 쓰는 탓에 제목·버튼만 가운데가 되고
   안내 문구만 왼쪽으로 흘렀다. 정본과 같은 정렬로 맞춘다.
   ------------------------------------------------------------ */
.equipment-reservation-anchor .box-final .b-msg-info {
	text-align: center;
}

/* ============================================================
   달력(calendar.jsp) — room 규칙을 그대로 재스코프
   ============================================================ */

/* 예약 가능일만 클릭 가능함을 커서로 알린다(불가일은 기본 커서 유지) */
.equip-reservation .calendar-box .fc td.fc-daygrid-day.day-available {
	cursor: pointer;
}

/* 이번 달의 지난 날짜 — 셀 전체를 흐리게(FullCalendar 다른 달 처리와 같은 opacity:.3). 오늘은 제외됨 */
.equip-reservation .calendar-box .fc td.fc-daygrid-day.fc-day-past:not(.fc-day-other) .fc-daygrid-day-frame {
	opacity: 0.3;
}

/* 선택된 날짜 — 하늘색 배경. 오늘(.fc-day-today 흰 배경 강제)을 선택해도 이기도록 셀렉터를 같은 수준으로 잡는다 */
.equip-reservation .calendar-box .fc td.fc-daygrid-day.day-selected,
.equip-reservation .calendar-box .fc td.fc-daygrid-day.fc-day-today.day-selected {
	background: #EAF4FB;
}

/* 지난 달로 갈 수 없을 때의 이전 버튼 — 흐리게 + 커서로 '누를 수 없음'을 알린다 */
.equip-reservation .calendar-wrap .calendar-top .fc-button-group a.fc-prev-button.is-disabled {
	opacity: 0.3;
	cursor: default;
}

/* 휴일 셀의 '예약불가' 표기 — 휴일명은 제자리에 두고 '예약불가' 하나만 셀 우하단으로 띄운다 */
.equip-reservation .calendar-box .fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events:has(.e-color01):has(.e-color02) {
	position: static;
}

.equip-reservation .calendar-box .fc .fc-daygrid-day-events:has(.e-color01) .fc-daygrid-event-harness:has(.e-color02) {
	position: absolute;
	right: 0;
	bottom: 2px;
}

/* 모바일은 '예약불가'도 흐름 배치로 되돌린다(좁은 셀에서 휴일명 위 겹침 방지) */
@media (max-width: 768px) {
	.equip-reservation .calendar-box .fc .fc-daygrid-day-events:has(.e-color01) .fc-daygrid-event-harness:has(.e-color02) {
		position: relative;
		right: auto;
		bottom: auto;
	}
}

/* ------------------------------------------------------------
   달력 머리말(장비명) — room 의 Figma 실측값 재스코프
   ------------------------------------------------------------ */
.equip-reservation .calendar-wrap .calendar-head {
	margin-bottom: 16px;
}

.equip-reservation .calendar-wrap .calendar-place {
	margin: 2px 0 0;
	font-weight: 700;
	font-size: 36px;
	line-height: 120%;
	color: #101E1B;
}

/*
 * 앱 팝업 공통 골격.
 * 보유기기예약은 산학협력단 iacf.css를 사용하지만, 시설예약 원본이 의존하던
 * acnhor-program.css의 .modal 규칙은 iacf 번들에 없다. JS가 display:flex를
 * 설정해도 position/height/z-index가 없어 높이 0으로 열리던 문제를 앱 안에서 보완한다.
 */
.equip-reservation .modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: flex-start;
	overflow: auto;
	background: rgba(0, 0, 0, 0.4);
}

.equip-reservation .modal-content {
	display: block;
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 600px;
	margin: 50px 0;
	padding: 42.5px 30px;
	border-radius: 30px;
	background: #fff;
	box-shadow: 4px 4px 8px 0 rgba(0, 0, 0, 0.25);
}

.equip-reservation .modal-content .img-box {
	margin-top: 30px;
}

.equip-reservation .modal-content .tit {
	padding-bottom: 15px;
}

.equip-reservation .modal-content .tit p + p {
	margin-top: 20px;
}

.equip-reservation .modal-content .tit .t1 {
	margin-bottom: 10px;
	font-weight: 600;
	font-size: 20px;
	line-height: 120%;
	color: #262626;
}

.equip-reservation .modal-content .tit .t2 {
	font-weight: 500;
	font-size: 18px;
	line-height: 140%;
	color: #262626;
}

.equip-reservation .modal-content .tit .t2 span {
	color: #009BB4;
}

.equip-reservation .modal .close {
	position: absolute;
	top: 40px;
	right: 40px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	font-size: 0;
	background: url('/_res/nsu/_share/img/board/ico-close-popup.png') no-repeat center;
}

.equip-reservation .modal.complete .modal-content {
	max-width: 400px;
}

.equip-reservation .modal .complete-box {
	text-align: center;
}

.equip-reservation .modal .complete-box img {
	display: block;
	margin: 0 auto 20px;
}

.equip-reservation .modal .complete-box .t1 {
	margin-bottom: 10px;
	font-weight: 600;
	font-size: 20px;
	line-height: 120%;
	color: #262626;
}

.equip-reservation .modal .complete-box .t1 span {
	display: block;
	color: #009BB4;
}

.equip-reservation .modal .complete-box .t2 {
	font-weight: 500;
	font-size: 18px;
	line-height: 140%;
	color: #767676;
}

/* 시간/수량 팝업 라벨 칸 — 줄바꿈 방지(예약 시간/수량/날짜) */
.equip-reservation .modal .bn-write-common01 .b-table-box .b-row-box .b-title-box {
	width: 140px;
	white-space: nowrap;
}

/* 예약 시간: 공통 .b-select width:100% 때문에 시작·종료가 세 줄로 쌓이지 않도록 한 행에 균등 배치 */
body.iacf-site .equip-reservation .modal.reserve #reserveForm .b-flex-box {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 10px;
	width: 100%;
	white-space: nowrap;
}

body.iacf-site .equip-reservation .modal.reserve #reserveForm .b-flex-box .b-select {
	flex: 1 1 0;
	width: auto;
	min-width: 0;
}

body.iacf-site .equip-reservation .modal.reserve #reserveForm .b-flex-box > span {
	flex: 0 0 auto;
}

/* 날짜 선택 안내 팝업의 강조 문구를 한 줄로 흘린다(완료 팝업의 span=block 규칙을 이 팝업에만 덮는다) */
.equip-reservation .modal.select-date .complete-box .t1 span {
	display: inline;
}

/* ------------------------------------------------------------
   반응형
   ------------------------------------------------------------ */
@media (max-width: 768px) {
	.equip-reservation .modal-content {
		width: 90%;
		padding: 30px 20px;
	}

	.equip-reservation .modal-content .tit {
		padding-bottom: 20px;
	}

	.equip-reservation .modal-content .tit > p {
		font-size: 25px;
	}

	.equip-reservation .modal .close {
		top: 30px;
		right: 20px;
	}

	.equip-reservation .calendar-wrap .calendar-head {
		margin-bottom: 12px;
	}

	.equip-reservation .calendar-wrap .calendar-place {
		font-size: 26px;
	}

	/* 좁은 폭에서는 라벨 칸이 block+100% 로 쌓인다 — nowrap 불필요(긴 라벨 넘침 방지) */
	.equip-reservation .bn-write-common01 .b-table-box .b-row-box .b-title-box,
	.equip-reservation .modal .bn-write-common01 .b-table-box .b-row-box .b-title-box {
		white-space: normal;
	}

	/* 상세 이미지는 위로 쌓고 전체 폭 */
	.equip-reservation .equip-detail-img {
		flex: 1 1 100%;
		max-width: 100%;
	}

	.equip-reservation .equip-detail-name {
		font-size: 26px;
	}

	

	
}

@media (min-width: 1920px) {
	.equip-reservation .modal {
		align-items: center;
	}
}

/* ============================================================
   마이페이지 예약내역(mypage) — 2026-08-28 목록화면 모달에서 별도 페이지로 승격.
   표 골격·컬럼폭·모바일 카드 전환은 퍼블 정본(iacf.css 가 @import 하는 common01-04.css·
   board.css)의 .bn-list-common01.type04 가 전부 담당한다. 여기에는 퍼블에 없는 것만 둔다 —
   화면 제목, 상태 배지, 요금 내역 펼침.
   ============================================================ */
.equip-reservation .equip-mypage-head {
	margin-bottom: 20px;
	padding-bottom: 16px;
	border-bottom: 1px solid #ddd;
}

.equip-reservation .equip-mypage-head .t1 {
	font-size: 24px;
	font-weight: 700;
	color: #101E1B;
	line-height: 1.4;
}

.equip-reservation .equip-mypage-head .t2 {
	margin-top: 6px;
	font-size: 15px;
	color: #767676;
}

/* 빈 상태 문구는 가운데. 퍼블 common01-04.css 의
   `.bn-list-common01.type04 table tbody td.b-td-left{text-align:left !important}` 를 덮어야 하는데,
   b-td-left 는 모바일에서 이 칸이 숨겨지지 않게 하려고 유지해야 한다 → 특정성을 한 단계 올려 되돌린다. */
.equipment-reservation-anchor .equip-mypage-list.type04 table tbody td.b-no-data {
	text-align: center !important;
}

/* 컬럼 폭 — 퍼블 b-col-* 는 그쪽 6컬럼 구성용이라 우리 7컬럼과 맞지 않는다.
   골격(.bn-list-common01.type04)은 그대로 쓰고 폭만 여기서 정한다. 예약일시는 한 줄에 들어가야 한다 */
.equip-reservation .equip-mypage-list .equip-col-num { width: 6%; }
.equip-reservation .equip-mypage-list .equip-col-name { width: auto; }
.equip-reservation .equip-mypage-list .equip-col-when { width: 19%; }
.equip-reservation .equip-mypage-list .equip-col-qty { width: 7%; }
.equip-reservation .equip-mypage-list .equip-col-state { width: 10%; }
.equip-reservation .equip-mypage-list .equip-col-amount { width: 12%; }
.equip-reservation .equip-mypage-list .equip-col-cancel { width: 9%; }

/* 예약일시는 줄바꿈 없이 한 줄로 */
.equip-reservation .equip-mypage-list .equip-mypage-when {
	white-space: nowrap;
}

/* 장비명이 펼침 트리거 — 퍼블 .b-title-box a 의 생김새를 유지하고 커서만 바꾼다 */
.equip-reservation .equip-mypage-list .equip-mypage-toggle {
	cursor: pointer;
}

.equip-reservation .equip-mypage-caret {
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 2px;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid #888;
	transition: transform .15s ease;
	vertical-align: middle;
}

.equip-reservation .equip-mypage-row.is-open .equip-mypage-caret {
	transform: rotate(180deg);
}

/* 상태 배지 — 지난 예약의 '이용완료'는 파생값이라 회색으로 눌러 유효 예약과 구분한다 */
.equip-reservation .equip-mypage-state {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 11px;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
}

.equip-reservation .equip-mypage-state.state-ok {
	background: #EAF4FB;
	color: #003B90;
}

.equip-reservation .equip-mypage-state.state-done {
	background: #f1f1f1;
	color: #767676;
}

.equip-reservation .equip-mypage-state.state-reject {
	background: #fdeceb;
	color: #d9534f;
}

/* 승인대기·기간만료 배지 (2026-09-03 승인 흐름 신설).
   기본 형태는 위 .equip-reservation .equip-mypage-state가 주고 색만 앱 스코프로 더한다 —
   .equip-* 는 연수컨벤션이 공유하므로 새 규칙은 ${appKey} 스코프에 넣는다. */
.equipment-reservation-anchor .equip-mypage-state.state-wait {
	background: #fff6e5;
	color: #a05a00;
}

.equipment-reservation-anchor .equip-mypage-state.state-expire {
	background: #f1f1f1;
	color: #999;
}

.equip-reservation .equip-mypage-list .equip-mypage-amount {
	font-weight: 600;
	color: #262626;
	white-space: nowrap;
}

.equip-reservation .equip-mypage-nocancel {
	color: #bbb;
}

/* 요금 내역 펼침 행 */
.equip-reservation .equip-mypage-detail > td {
	padding: 0 !important;
	background: #fafafa;
}

.equip-reservation .equip-mypage-fee {
	max-width: 460px;
	margin: 0 0 0 auto;
	padding: 16px 24px;
	text-align: left;
}

.equip-reservation .equip-mypage-fee li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
	padding: 5px 0;
	font-size: 14px;
	color: #555;
}

.equip-reservation .equip-mypage-fee li .k em {
	margin-left: 4px;
	font-style: normal;
	font-size: 13px;
	color: #888;
}

.equip-reservation .equip-mypage-fee li .v {
	font-weight: 600;
	color: #262626;
	white-space: nowrap;
}

.equip-reservation .equip-mypage-fee li .v.minus {
	color: #009BB4;
}

.equip-reservation .equip-mypage-fee li.total {
	margin-top: 6px;
	padding-top: 10px;
	border-top: 1px solid #ddd;
	font-size: 16px;
}

.equip-reservation .equip-mypage-fee li.total .k,
.equip-reservation .equip-mypage-fee li.total .v {
	font-weight: 700;
	color: #101E1B;
}

.equip-reservation .equip-mypage-reject {
	padding: 16px 24px;
	text-align: left;
	font-size: 14px;
	color: #d9534f;
}

.equip-reservation .equip-mypage-reject strong {
	margin-right: 8px;
	font-weight: 700;
}

/* 문의 안내 — 2026-08-28 표 하단에서 화면 제목 아래로 이동. 헤더 안이라 왼쪽 정렬을 따른다 */
.equip-reservation .equip-mypage-inquiry {
	margin-top: 6px;
	font-size: 14px;
	color: #767676;
}

.equip-reservation .equip-mypage-inquiry span {
	font-weight: 700;
	color: #003B90;
}

@media screen and (max-width: 768px) {
	.equip-reservation .equip-mypage-head .t1 { font-size: 20px; }
	.equip-reservation .equip-mypage-fee { max-width: none; margin: 0; padding: 14px 16px; }

	/* 퍼블 규칙이 tbody tr 을 block 으로 만들고 b-td-left 외 td 를 숨긴다.
	   펼침 행은 그 예외이므로 전폭으로 되살린다 */
	.equip-reservation .equip-mypage-list table tbody tr.equip-mypage-detail {
		padding: 0;
		border-bottom: 1px solid rgba(0, 0, 0, 0.12);
	}

	/* 모바일에서는 b-m-con 안의 배지·금액만 쓰고 데스크톱 셀 복제는 감춘 채로 둔다 */
	.equip-reservation .equip-mypage-list .b-m-con .equip-mypage-state {
		font-size: 12px;
		padding: 1px 8px;
	}
}

/* ============================================================
   견적서 (?mode=estimate — 새 창)
   골격은 STEP3·STEP4 와 같은 퍼블 체인(.signup-wrap.type02 > .signup-box > .signup-inner > .sign-bot,
   표는 .bn-write-common01.type04 > .b-table-box)을 그대로 쓴다. 여기서는 발행 헤더와 인쇄만 정한다.
   스코프는 ${appKey}(.equipment-reservation-anchor) — .equip-* 는 연수컨벤션과 공유하므로 건드리지 않는다.
   ============================================================ */
/* 제목 — .step-heading 의 STEP 번호용 좌측 정렬을 견적서 관례(가운데·자간)로 되돌린다 */
.equipment-reservation-anchor .equip-estimate-title {
	text-align: center;
	letter-spacing: 8px;
}

/* 발행번호·발행일 — 견적서 상단 오른쪽 관례 배치 */
.equipment-reservation-anchor .equip-estimate-issue {
	display: flex;
	justify-content: flex-end;
	gap: 24px;
	margin-bottom: 10px;
	padding-bottom: 16px;
	border-bottom: 2px solid #334D61;
	font-size: 15px;
}

.equipment-reservation-anchor .equip-estimate-issue .k {
	color: #767676;
	margin-right: 6px;
}

.equipment-reservation-anchor .equip-estimate-issue .v {
	font-weight: 600;
	color: #262626;
}

.equipment-reservation-anchor .equip-estimate-foot {
	margin-top: 20px;
}

/* 마이페이지 요금 내역 하단의 [견적서 출력] — .equip-mypage-fee(460px, 우측 정렬)와 같은 폭·정렬로 맞춘다 */
.equipment-reservation-anchor .equip-mypage-fee-action {
	max-width: 460px;
	margin: 10px 0 0 auto;
	padding: 0 24px 4px;
	text-align: right;
}

/* .b-button-box 는 「취소」 두 글자 기준 폭이라 「견적서 출력」이 두 줄로 깨진다(2026-09-03 실측).
   퍼블 정본을 건드리지 않고 이 버튼에서만 줄바꿈을 막는다 */
.equipment-reservation-anchor .equip-mypage-fee-action .b-button-box {
	display: inline-block;
	width: auto;
	padding-left: 14px;
	padding-right: 14px;
	white-space: nowrap;
}

/* 모바일에서는 내역이 전폭으로 풀리므로 버튼도 같이 푼다 */
@media screen and (max-width: 768px) {
	.equipment-reservation-anchor .equip-mypage-fee-action {
		max-width: none;
		margin: 10px 0 0;
		padding: 0 16px 4px;
	}
}
