@charset "UTF-8";
/*!
 * Default Theme Style for AUIPivot v2.8.2
 *
 * 해당 원본을 직접 수정하지 마시고, 복사하여 사용하거나, CSS 클래스 재정의를 하여 스타일을 변경하십시오.
 * (DO NOT EDIT THIS FILE DIRECTLY. OVERRIDE CSS CLASSES OR COPY THIS FILE TO MAKE YOUR OWN.)
 *
 * Copyright © AUISoft Co., Ltd.
 * www.auisoft.net
 */

/* 피벗 그리드 메인 외곽 DIV */
.aui-pivot {
	font-family: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif;
	font-size: 12px;
	border: 1px solid #c4c4c4;
	background: #ffffff;
	box-sizing: content-box;
	appearance: none;
	-webkit-appearance: none;
	outline: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	touch-action: none;
	-ms-touch-action: none;
}

/* 그리드 table, tr, td 기본 - 셀 기본 */
.aui-pivot .aui-pivot-table,
.aui-pivot .aui-pivot-table tr,
.aui-pivot .aui-pivot-table td {
	padding: 0;
	margin: 0 !important;
	border-spacing: 0 !important;
	border-collapse: collapse !important;
	box-sizing: border-box !important;
	font-size: 12px;
	line-height: 1.5em;
}
.aui-pivot-main-panel .aui-pivot-body-panel .aui-pivot-table tr td {
	padding: 0 4px;
}

/* 체크박스, 라디오  */
.aui-checkbox,
.aui-radio {
	vertical-align: middle;
	margin: 0;
	margin-top: 0 !important;
	padding: 0;
}

/* 그리드 메세지 출력 레이어 */
.aui-pivot-info-layer {
	background: #fff;
	font-size: 20px;
	font-weight: bold;
}

/* 노데이터 메세지 레이어*/
.aui-pivot-nodata-msg-layer {
	background: url(./images/info.png) 0 50% no-repeat;
	position: absolute;
	padding: 54px 0 0 70px;
	margin: 0 auto;
	width: auto;
	height: 72px;
	box-sizing: content-box;
	background-size: 64px 64px;
}

/* 그리드 수평, 수직 라인 만들기 - 바디 */
.aui-pivot-body-panel .aui-pivot-table tr td {
	border-top: none;
	border-right: 1px solid #e3e3e3;
	border-bottom: none;
	border-left: none;
}
.aui-pivot-left-main-panel .aui-pivot-body-panel .aui-pivot-table tr td:last-child {
	border-right: none;
}

/* 그리드 수평, 수직 라인 만들기 - 헤더 */
.aui-pivot-header-panel .aui-pivot-table tr td {
	border-top: none;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #c4c4c4;
	border-left: none;
}
.aui-pivot-left-main-panel .aui-pivot-header-panel .aui-pivot-table tr td:last-child {
	border-right: none;
}

/* 그리드 수평 라인 만들기 - 그룹형  헤더 */
.aui-pivot-group-branch-header {
	border-bottom: 1px solid #dedede !important;
}

/* 그리드 수평, 수직 라인 만들기 - 푸터 */
.aui-pivot-footer-panel .aui-pivot-table tr td {
	border-top: 3px double #c4c4c4;
	border-right: 1px solid #e3e3e3;
	border-bottom: none;
	border-left: none;
}
.aui-pivot-left-main-panel .aui-pivot-footer-panel .aui-pivot-table tr td:last-child {
	border-right: none;
}

/* 그리드 수평, 수직 라인 - 엑셀, PDF */
.aui-pivot-grid-lines-for-export {
	background: #dcdcdc;
}

/* 그리드 오버 선택자 만들기 */
.aui-pivot-body-panel .aui-pivot-table tr td:hover {
	background: #ededed;
	color: #000;
}

/* 그리드 칼럼 리사이즈 시 나타나는 임시 선 */
.aui-pivot-vertical-resizer-rule {
	border-left: 2px dashed #8f8f8f;
	border-top: none;
	border-right: none;
	border-bottom: none;
}

/* 행 번호 칼럼 */
.aui-pivot-row-num-column {
	text-align: center;
	cursor: default;
}

/* 고정 칼럼과 일반 칼럼 경계선 */
.aui-pivot-fixed-column-rule {
	background: #a9a9a9;
	width: 1px;
}

/* 그리드 헤더 정렬 표시자 시작 */
.aui-pivot-multi-sorting-ascending {
	color: #555;
	font-size: 9px;
	text-align: center;
	background: url(./images/icon-up.png) 50% 10px no-repeat;
	background-size: 9px 5px;
}
.aui-pivot-multi-sorting-descending {
	color: #555;
	font-size: 9px;
	text-align: center;
	background: url(./images/icon-down.png) 50% 9px no-repeat;
	background-size: 9px 5px;
}
.aui-pivot-sorting-ascending {
	background: url(./images/icon-up.png) 50% 50% no-repeat;
	background-size: 9px 5px;
}

.aui-pivot-sorting-descending {
	background: url(./images/icon-down.png) 50% 50% no-repeat;
	background-size: 9px 5px;
}
/* 그리드 헤더 정렬 표시자 끝*/

/* 스크롤 시작 */
.aui-scroll-track {
	box-sizing: border-box;
	background: #f6f6f6;
	border: 1px solid #f6f6f6;
}

.aui-hscrollbar .aui-scroll-thumb {
	box-sizing: border-box;
	background: #d5d5d5;
	border: 1px solid #c2c2c2;
	border-radius: 0.5em;
	touch-action: none;
	-ms-touch-action: none;
	transition: background-color 0.15s ease;
}

.aui-hscrollbar .aui-scroll-thumb:hover {
	background: #bcbcbc;
}

.aui-vscrollbar .aui-scroll-thumb {
	box-sizing: border-box;
	background: #d5d5d5;
	border: 1px solid #c2c2c2;
	border-radius: 0.5em;
	touch-action: none;
	-ms-touch-action: none;
	transition: background-color 0.15s ease;
}

.aui-vscrollbar .aui-scroll-thumb:hover {
	background: #bcbcbc;
}

.aui-vscrollbar .aui-scroll-up {
	box-sizing: border-box;
	background: #efefef url(./images/icon-up.png) no-repeat 50% 50%;
	border: 1px solid #efefef;
	background-size: 9px 5px;
}

.aui-vscrollbar .aui-scroll-up:hover {
	background: #dcdcdc url(./images/icon-up.png) no-repeat 50% 50%;
	background-size: 9px 5px;
}

.aui-vscrollbar .aui-scroll-down {
	box-sizing: border-box;
	background: #efefef url(./images/icon-down.png) no-repeat 50% 50%;
	border: 1px solid #efefef;
	background-size: 9px 5px;
}

.aui-vscrollbar .aui-scroll-down:hover {
	background: #dcdcdc url(./images/icon-down.png) no-repeat 50% 50%;
	background-size: 9px 5px;
}

.aui-hscrollbar .aui-scroll-up {
	box-sizing: border-box;
	background: #efefef url(./images/icon-left.png) no-repeat 50% 50%;
	border: 1px solid #efefef;
	background-size: 5px 9px;
}

.aui-hscrollbar .aui-scroll-up:hover {
	background: #dcdcdc url(./images/icon-left.png) no-repeat 50% 50%;
	background-size: 5px 9px;
}

.aui-hscrollbar .aui-scroll-down {
	box-sizing: border-box;
	background: #efefef url(./images/icon-right.png) no-repeat 50% 50%;
	border: 1px solid #efefef;
	background-size: 5px 9px;
}

.aui-hscrollbar .aui-scroll-down:hover {
	background: #dcdcdc url(./images/icon-right.png) no-repeat 50% 50%;
	background-size: 5px 9px;
}
/* 스크롤 끝 */

/* 로딩바 스타일 */
.aui-pivot .aui-ajax-loader-showing {
	/*background: #ffffff url("./images/ajaxloader.gif") no-repeat 50% 50%;*/
	background: url(./images/ajaxloader.png) no-repeat 50% 50%;
	background-size: 32px 32px;
}

/* 내부 처리 로딩바 스타일 */
.aui-pivot .aui-process-loader-showing {
	/* 2배 해상도의 처리 이미지를 132px × 90px로 중앙에 배치합니다. */
	background: url("./images/wait.png") no-repeat 50% 50%;
	background-size: 132px 90px;
}

/* 계층 트리 아이콘 */
.aui-pivot-tree-plus-icon {
	display: inline-block;
	width: 16px;
	height: 16px;
	border: none;
	background: url(./images/arrow-right.png) 50% 50% no-repeat;
	background-size: 16px !important;
	vertical-align: bottom;
	margin: 0 2px 0 0;
}

.aui-pivot-tree-minus-icon {
	display: inline-block;
	width: 16px;
	height: 16px;
	border: none;
	background: url(./images/arrow-downright.png) 50% 50% no-repeat;
	background-size: 16px !important;
	vertical-align: bottom;
	margin: 0 2px 0 0;
}

/* 테이블 형식 계층 트리 아이콘 */
.aui-pivot-tree-table-plus-icon {
	display: inline-block;
	box-sizing: border-box;
	vertical-align: middle;
	width: 16px;
	height: 16px;
	border: 1px solid #c4c4c4;
	background: #fff url(./images/plus_7_7.png) 50% 50% no-repeat;
	margin: 0px 4px 0 0;
	border-radius: 3px;
	background-size: 7px 7px;
}

.aui-pivot-tree-table-minus-icon {
	display: inline-block;
	box-sizing: border-box;
	vertical-align: middle;
	width: 16px;
	height: 16px;
	border: 1px solid #c4c4c4;
	background: #fff url(./images/minus_7_7.png) 50% 50% no-repeat;
	margin: 0px 4px 0 0;
	border-radius: 3px;
	background-size: 7px 7px;
}

.aui-pivot-tree-table-leaf-blank {
	display: inline-block;
	box-sizing: border-box;
	vertical-align: middle;
	width: 16px;
	height: 16px;
	margin: 0 4px 0 0;
}

.aui-pivot-tree-table-leaf-icon {
	margin: 0 4px 0 0;
}
/* 테이블 형식 계층 트리 아이콘 끝 */

.aui-pivot-tree-branch-icon {
	display: inline-block;
	width: 18px;
	height: 16px;
	background: url(./images/b_folder2.png) 50% 50% no-repeat;
	background-size: 16px !important;
	vertical-align: bottom;
	margin: 0 2px 0 0;
}

.aui-pivot-tree-branch-open-icon {
	display: inline-block;
	width: 18px;
	height: 16px;
	background: url(./images/b_folderopen2.png) 50% 50% no-repeat;
	background-size: 16px !important;
	vertical-align: bottom;
	margin: 0 2px 0 0;
}

.aui-pivot-tree-leaf-icon {
	display: inline-block;
	width: 16px;
	height: 16px;
	vertical-align: bottom;
	margin: 0 2px 0 4px;
}
/* 계층 트리 아이콘 끝*/

/*디폴트 헤더 스타일*/
.aui-pivot-default-header {
	overflow: hidden !important;
	text-align: center;
	font-weight: bold;
	font-size: 1.1em;
	background: #f1f1f1;
	background: -webkit-linear-gradient(top, #fbfbfb, #efefef);
	background: -moz-linear-gradient(top, #fbfbfb, #efefef);
	background: -ms-linear-gradient(top, #fbfbfb, #efefef);
	background: -o-linear-gradient(top, #fbfbfb, #efefef);
	background: linear-gradient(to bottom, #fbfbfb, #efefef);
	cursor: pointer;
}

.aui-pivot-default-header:hover {
	background: #e4e4e4;
	background: -webkit-linear-gradient(top, #f7f7f7, #e3e3e3);
	background: -moz-linear-gradient(top, #f7f7f7, #e3e3e3);
	background: -ms-linear-gradient(top, #f7f7f7, #e3e3e3);
	background: -o-linear-gradient(top, #f7f7f7, #e3e3e3);
	background: linear-gradient(to bottom, #f7f7f7, #e3e3e3);
}

.aui-pivot-group-branch-header {
	cursor: default;
	text-align: left;
}

.aui-pivot-group-branch-header-plus-icon {
	display: inline-block;
	width: 16px;
	height: 16px;
	border: none;
	background: url(./images/arrow-right.png) 50% 50% no-repeat;
	background-size: 16px !important;
	vertical-align: bottom;
	margin: 0 2px 0 0;
}

.aui-pivot-group-branch-header-minus-icon {
	display: inline-block;
	width: 16px;
	height: 16px;
	border: none;
	background: url(./images/arrow-downright.png) 50% 50% no-repeat;
	background-size: 16px !important;
	vertical-align: bottom;
	margin: 0 2px 0 0;
}

/* 행 번호 헤더 */
.aui-pivot-row-num-header {
	text-align: center;
	cursor: default;
	vertical-align: bottom;
	line-height: 2em !important;
}

/* 행 상태 헤더*/
.aui-pivot-row-state-header {
	cursor: default;
}

/* 값 영역 정보 헤더 스타일 */
.aui-pivot-value-field-header {
	text-align: center;
	color: #4374d9;
}

/* 행 영역 필드명 헤더 스타일 */
.aui-pivot-row-label-field-header {
	text-align: center;
	vertical-align: bottom;
	line-height: 2em !important;
}

/* 열 영역 필드명 헤더 스타일 */
.aui-pivot-column-label-field-header {
	text-indent: 8px;
}

/* 행 영역에 해당되는 칼럼의 헤더에 있는 필터 아이콘 */
.aui-pivot-header-filter-icon {
	background: #fff url(./images/filter_ico.png) 50% 50% no-repeat;
	border: 1px solid #bdbdbd;
	box-sizing: border-box;
	cursor: pointer;
	background-size: 12px 12px;
}
.aui-pivot-header-filter-icon:hover {
	background: #e3e3e3 url(./images/filter_ico.png) 50% 50% no-repeat;
	background-size: 12px 12px;
}
/* 필터링 된 경우*/
.aui-pivot-header-filter-icon-filtered {
	background: #5b8def url(./images/filter_ico_white.png) 50% 50% no-repeat;
	background-size: 12px 12px;
}
.aui-pivot-header-filter-icon-filtered:hover {
	background: #4374d9 url(./images/filter_ico_white.png) 50% 50% no-repeat;
	background-size: 12px 12px;
}

/*디폴트 푸터 스타일 */
.aui-pivot-default-footer {
	overflow: hidden !important;
	background: #f3f3f3;
	border: 1px solid #d9d9d9;
	border-right: none;
	border-left: none;
	font-weight: bold;
	font-size: 1em;
	color: #000;
	text-align: right;
	cursor: default;
}

/* 푸터 썸머리 텍스트 스타일 */
.aui-pivot-default-footer-sum-text {
	overflow: hidden !important;
	text-align: center;
	color: #550;
}

/** 그리드 툴팁 외형 */
.aui-pivot-tooltip-wrapper {
	padding: 4px 8px;
	border: 1px solid #c6c6c6;
	background: #f4f4f4;
	background: -webkit-linear-gradient(top, #fdfdfd, #f1f1f1);
	background: -moz-linear-gradient(top, #fdfdfd, #f1f1f1);
	background: -ms-linear-gradient(top, #fdfdfd, #f1f1f1);
	background: -o-linear-gradient(top, #fdfdfd, #f1f1f1);
	background: linear-gradient(to bottom, #fdfdfd, #f1f1f1);
	border-radius: 5px;
	z-index: 999;
	box-shadow:
		0 4px 12px rgba(0, 0, 0, 0.14),
		0 1px 3px rgba(0, 0, 0, 0.08);
	-webkit-box-shadow:
		0 4px 12px rgba(0, 0, 0, 0.14),
		0 1px 3px rgba(0, 0, 0, 0.08);
	-moz-box-shadow:
		0 4px 12px rgba(0, 0, 0, 0.14),
		0 1px 3px rgba(0, 0, 0, 0.08);
}

/* 디폴트 칼럼 스타일 */
.aui-pivot-default-column {
	text-align: right;
	font-size: 1em;
	cursor: default;
	box-sizing: border-box !important;
	overflow: hidden !important;
	text-overflow: ellipsis;
	white-space: nowrap !important;
}

/* 피벗 행 필드 칼럼 스타일 */
.aui-pivot-row-label-field-column {
	text-align: left;
}

/* 피벗 행 필드 칼럼 스타일 추가로 지정할 스타일 */
.aui-pivot-row-label-field-extra-column {
	text-align: center;
}

/* 피벗 행 필드 칼럼 스타일 - 테이블 셀 병합 형식인 경우*/
.aui-pivot-row-label-field-merge-column {
	text-align: left;
	vertical-align: top;
	padding-top: 2px !important;
}

/* 피벗 썸머리 칼럼 스타일 */
.aui-pivot-summary-column {
	background: #f2f2f2;
}

/* 피벗 썸머리 토탈 칼럼 스타일 */
.aui-pivot-total-summary-column {
	background: #e6e6e6;
}

/* 셀력션 대표 백그라운드 스타일 */
.aui-pivot-selection-bg {
	background: inherit;
	color: inherit;
}

/* 셀렉션의 대표 셀 보더(테두리) 색상 스타일*/
.aui-pivot-selection-cell-border-lines {
	background: #22741c;
}

/* 셀력션 행번호 칼럼 스타일 */
.aui-pivot-selection-row-num-column {
	font-weight: bold !important;
	color: #000 !important;
	background: #e1e1e1 !important;
	background: -webkit-linear-gradient(top, #ececec, #e0e0e0) !important;
	background: -moz-linear-gradient(top, #ececec, #e0e0e0) !important;
	background: -ms-linear-gradient(top, #ececec, #e0e0e0) !important;
	background: -o-linear-gradient(top, #ececec, #e0e0e0) !important;
	background: linear-gradient(to bottom, #ececec, #e0e0e0) !important;
}
/* 셀렉션 헤더 칼럼 스타일 */
.aui-pivot-selection-header-column {
	font-weight: bold !important;
	background: #e1e1e1 !important;
	background: -webkit-linear-gradient(top, #ececec, #e0e0e0) !important;
	background: -moz-linear-gradient(top, #ececec, #e0e0e0) !important;
	background: -ms-linear-gradient(top, #ececec, #e0e0e0) !important;
	background: -o-linear-gradient(top, #ececec, #e0e0e0) !important;
	background: linear-gradient(to bottom, #ececec, #e0e0e0) !important;
}

/* 그리드 Row 배경색 */
.aui-pivot-row-background {
	background: rgb(250, 250, 250);
}

/* 그리드 Row 다음 배경색*/
.aui-pivot-alternative-row-background {
	background: rgb(250, 250, 250);
}

/* 상태 칼럼에 출력 시킬 스타일 */

/* 현재 행 상태 스타일 */
.aui-pivot-row-state-current {
	background: url(./images/arrow_icon.png) 50% 50% no-repeat !important;
	background-size: 16px 16px !important;
}
/* 상태 칼럼에 출력 시킬 스타일 끝*/

/* 모든 칼럼 렌더러의 베이스 */
.aui-pivot-renderer-base {
	text-overflow: ellipsis;
	box-sizing: content-box;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
}

/* 컨텍스트 메뉴 */
.aui-pivot-context-popup-layer {
	font-size: 12px;
	min-width: 180px;
	max-width: 300px;
	padding: 6px 0px;
	background: #fff;
	border: 1px solid #c4c4c4;
	border-radius: 4px;
	box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-webkit-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-moz-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	z-index: 99999;
}
.aui-pivot-context-list-ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
/* 컨텍스트 아이템 */
.aui-pivot-context-item {
	position: relative;
	cursor: default;
	text-align: left;
	height: 28px;
	line-height: 28px;
	padding: 0 24px 0 24px;
	white-space: nowrap;
	margin: 0 4px;
	text-overflow: ellipsis;
	overflow: hidden;
	border-radius: 3px;
}

.aui-pivot-context-item:hover {
	background-color: #ebebeb;
}

.aui-pivot-context-item-disable {
	color: #b8b8b8 !important;
	background: transparent !important;
	cursor: default !important;
}

/* 컨텍스트 아이템 구분 라인 */
.aui-pivot-context-item-line {
	height: 1px;
	padding: 0 10px 0 24px;
	margin: 4px 0;
	border-bottom: 1px solid #e3e3e3;
}

/* 컨텍스트 서브 메뉴*/
.aui-pivot-context-list-ul-sub {
	position: absolute;
	list-style: none;
	margin: 0;
	padding: 0;
	min-width: 180px;
	max-width: 300px;
	padding: 6px 0px;
	background: #fff;
	border: 1px solid #c4c4c4;
	border-radius: 4px;
	box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-webkit-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-moz-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	z-index: 99999;
}
.aui-pivot-context-item-has-sub-menu {
	background-size: 16px 16px;
	background-position: right 8px center;
	background-image: url(./images/arrow-right.png);
	background-repeat: no-repeat;
	overflow: visible !important;
}

/* 내보내기 진행 표시 스타일 */
.aui-pivot-export-progress-container {
	width: 280px;
	height: 80px;
	border: 1px solid #c4c4c4;
	box-sizing: border-box !important;
	margin: 0 auto;
	background: #f7f7f7;
	background: -webkit-linear-gradient(top, #fdfdfd, #f1f1f1);
	background: -moz-linear-gradient(top, #fdfdfd, #f1f1f1);
	background: -ms-linear-gradient(top, #fdfdfd, #f1f1f1);
	background: -o-linear-gradient(top, #fdfdfd, #f1f1f1);
	background: linear-gradient(to bottom, #fdfdfd, #f1f1f1);
	box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-webkit-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-moz-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	border-radius: 4px;
}
.aui-pivot-export-progress-wrapper {
	position: relative;
	width: 260px;
	margin-left: 10px;
	margin-top: 14px;
	height: 20px;
	overflow: hidden;
	box-sizing: border-box !important;
	background-color: #f5f5f5;
	border: 1px solid #d0d0d0;
	-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	border-radius: 3px;
}
.aui-pivot-export-progress-bar {
	background-color: #337ab7;
	width: 0%;
	height: 20px;
}
.aui-pivot-export-progress-percent {
	position: absolute;
	display: inline-block;
	top: 1px;
	left: 48%;
	color: #555;
	font-weight: bold;
}
.aui-pivot-export-progress-title {
	margin-top: 10px;
	margin-right: 40px;
	text-indent: 10px;
	color: #000000;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
/* 내보내기 진행 표시 스타일 끝 */

/**************************************************************************************************/
/*                                 디폴트 동적 행 스타일                                                        */
/**************************************************************************************************/

.aui-pivot-row-fn-top-level-branch-style {
	font-weight: bold;
	border-bottom: 1px solid #b2ccff;
}
.aui-pivot-row-fn-top-level-branch-bottom-style {
	font-weight: bold;
	border-top: 1px solid #b2ccff;
	border-bottom: 1px solid #b2ccff;
}
.aui-pivot-row-fn-branch-style {
	font-weight: bold;
}
.aui-pivot-row-fn-last-branch-style {
	font-weight: bold;
	border-bottom: 1px solid #e3e3e3;
}
.aui-pivot-row-fn-last-style {
	border-bottom: 1px solid #e3e3e3;
}

/**************************************************************************************************/
/*                                 피벗 패널 스타일                                                              */
/**************************************************************************************************/

/* 피벗 패널 메인*/
.aui-pivot-panel-main {
	font-family: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif;
	font-size: 12px;
	border: 1px solid #c4c4c4;
	box-sizing: border-box;
	overflow: hidden;
	background: #fff;
	z-index: 1049;
	box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-webkit-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-moz-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	border-radius: 4px;
}

/* 피벗 패널 상단 메인 타이틀*/
.aui-pivot-panel-title {
	font-size: 20px;
	line-height: 1em;
	height: 30px;
	font-weight: bold;
	box-sizing: border-box;
}

/* 피벗 패널 닫기 버턴 */
.aui-pivot-panel-close-btn {
	width: 16px;
	height: 16px;
	background: url(./images/close.png) 50% 50% no-repeat;
	position: absolute;
	right: 10px;
	top: 10px;
	cursor: pointer;
	background-size: 16px 16px;
}

/*피벗 패널 필드 리스트 상단 타이틀*/
.aui-pivot-panel-field-list-title {
	border-top: 1px solid #e3e3e3;
	padding-top: 6px;
	line-height: 1em;
	height: 30px;
	box-sizing: border-box;
}

/* 피벗 패널 필드 리스트의 체크박스 아이템*/
.auipivot-panel-field-check-label {
	display: block;
	box-sizing: content-box;
}
.auipivot-panel-field-check-label:hover {
	background: #eaf0fd;
}

/* 피벗 패널 필드 리스트의 체크박스 안의 텍스트 span */
.auipivot-panel-field-check-label span {
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	padding: 2px 4px;
	cursor: move;
	box-sizing: content-box;
}

/* 피벗 패널 피벗팅 영역 상단 타이틀  */
.aui-pivot-panel-field-area-title {
	border-top: 1px solid #e3e3e3;
	line-height: 1em;
	padding-top: 5px;
	height: 30px;
	box-sizing: border-box;
}

/* 피벗 패널 피벗팅 영역 */
.aui-pivot-panel-field-area {
	background: #fff;
}

/* 제목 글자를 영역의 세로 중앙에 놓아 배경 아이콘의 중앙과 맞춥니다. */
.aui-pivot-panel-field-area-filter-title,
.aui-pivot-panel-field-area-column-title,
.aui-pivot-panel-field-area-row-title,
.aui-pivot-panel-field-area-value-title {
	display: flex;
	align-items: center;
}

/* 피벗 패널 피벗팅 영역 - 필터 타이틀 */
.aui-pivot-panel-field-area-filter-title {
	padding-left: 20px;
	box-sizing: border-box;
	line-height: 1.5em;
	cursor: default;
	background: url(./images/filter_ico.png) 4px 50% no-repeat;
	background-size: 12px 12px;
}
/* 피벗 패널 피벗팅 영역 - 열 타이틀 */
.aui-pivot-panel-field-area-column-title {
	padding-left: 24px;
	box-sizing: border-box;
	line-height: 1.5em;
	cursor: default;
	background: url(./images/column_icon.png) 8px 50% no-repeat;
	background-size: 12px 12px;
}
/* 피벗 패널 피벗팅 영역 - 행 타이틀 */
.aui-pivot-panel-field-area-row-title {
	padding-left: 20px;
	box-sizing: border-box;
	line-height: 1.5em;
	cursor: default;
	background: url(./images/row_icon.png) 4px 50% no-repeat;
	background-size: 12px 12px;
}
/* 피벗 패널 피벗팅 영역 - 값 타이틀 */
.aui-pivot-panel-field-area-value-title {
	padding-left: 24px;
	box-sizing: border-box;
	line-height: 1.5em;
	cursor: default;
	background: url(./images/value_icon.png) 8px 50% no-repeat;
	background-size: 12px 12px;
}

/* 피벗 패널 피벗팅 영역 가운데 수평, 수직 라인*/
.aui-pivot-panel-field-area-vertical-line,
.aui-pivot-panel-field-area-horizontal-line {
	background: #e3e3e3;
}


/* 피벗 패널 하단 업데이트 메인*/
.aui-pivot-panel-bottom-update-panel {
	line-height: 1em;
	height: 30px;
	box-sizing: border-box;
	vertical-align: middle;
}
.aui-pivot-panel-bottom-update-panel:after {
	display: block;
	clear: both;
	content: '';
}

/* 피벗 패널 하단 "나중에 업데이트" */
.aui-pivot-panel-bottom-update-check {
	margin-top: 14px;
	line-height: 1em;
	box-sizing: border-box;
	float: left;
}
.aui-pivot-panel-bottom-update-check span {
	padding-left: 4px;
	cursor: default;
}

/* 피벗 패널 하단 업데이트 버턴 */
.aui-pivot-panel-bottom-update-btn {
	color: #000000;
	background: #f2f2f2;
	background: linear-gradient(to bottom, #fdfdfd, #ededed);
	border: 1px solid #bdbdbd;
	background-clip: padding-box;
	line-height: 1em;
	border-radius: 3px;
	appearance: none;
	-webkit-appearance: none;
	font-weight: bold;
	text-align: center;
	cursor: pointer;
	margin-top: 5px;
	padding: 6px 12px;
	float: right;
	box-sizing: border-box;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.aui-pivot-panel-bottom-update-btn:hover {
	background: #e6e6e6;
	background: linear-gradient(to bottom, #f7f7f7, #e2e2e2);
}

/* 피벗 패널 하단 업데이트 버턴 비활성화 */
.aui-pivot-panel-bottom-update-btn-disable {
	color: #ddd;
	background: #eee;
	border: 1px solid #e0e0e0;
	background-clip: padding-box;
	line-height: 1em;
	border-radius: 3px;
	appearance: none;
	-webkit-appearance: none;
	font-weight: bold;
	text-align: center;
	cursor: default;
	margin-top: 5px;
	padding: 6px 12px;
	float: right;
	box-sizing: border-box;
}

/* 피벗 패널 필드 아이템 드랍다운리스트 시작 */
.aui-pivot-panel-drop-down-list {
	background: #fafafa;
	border: 1px solid #c4c4c4;
	border-radius: 3px;
	display: block;
	color: #000 !important;
	font-weight: normal !important;
	font-size: 1em;
	line-height: 1em;
	margin: 4px 0;
	box-sizing: border-box;
	overflow: hidden;
	white-space: nowrap;
}
.aui-pivot-panel-drop-down-list:hover {
	border: 1px solid #b2ccff;
}

.aui-pivot-panel-drop-list-content {
	display: inline-block;
	border-radius: 0px;
	margin: 0;
	padding: 0;
	cursor: pointer;
	overflow: hidden;
	font-size: 1em;
	line-height: 2em;
	vertical-align: top;
	text-align: center;
}

.aui-pivot-panel-drop-list-icon {
	display: inline-block;
	border-left: 1px solid #dddddd;
	background: url(./images/icon-down.png) 50% 50% no-repeat;
	cursor: pointer;
	height: 22px;
	background-size: 9px 5px;
}

/* 상단 필드와 항목 순서의 button 메뉴도 패널의 li 메뉴와 같은 테마 규칙을 사용합니다.
   외부 페이지의 버튼 장식은 먼저 초기화하고 항목의 높이와 간격은 아래에서 공유합니다. */
.aui-pivot-grid-fields .aui-pivot-grid-field-menu button,
.aui-pivot-item-order .aui-pivot-item-order-menu button {
    all: unset;
    box-sizing: border-box;
    display: block;
    position: relative;
    width: 100%;
    font: inherit;
    color: inherit;
}

/* 피벗 패널, 상단 필드와 항목 순서 메뉴의 글꼴, 테두리, 배경 및 그림자를 함께 관리합니다. */
.aui-pivot-panel-drop-list-item-wrapper,
.aui-pivot-grid-fields .aui-pivot-grid-field-menu,
.aui-pivot-item-order .aui-pivot-item-order-menu {
	font-family: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif;
	background: #fff;
	font-size: 12px;
	border: 1px solid #c4c4c4;
	overflow-y: auto;
	overflow-x: hidden;
	text-align: center;
	border-radius: 3px;
	z-index: 1049;
	max-height: 300px;
	box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-webkit-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-moz-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	padding: 0;
	font-weight: normal;
	letter-spacing: normal;
	color: #000;
}

.aui-pivot-panel-drop-list-ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.aui-pivot-panel-drop-list-item,
.aui-pivot-grid-fields .aui-pivot-grid-field-menu button,
.aui-pivot-item-order .aui-pivot-item-order-menu button {
	cursor: default;
	text-align: left;
	height: 24px;
	line-height: 24px;
	padding: 0 10px 0 24px;
	white-space: nowrap;
	margin: 0;
}
.aui-pivot-panel-drop-list-item-line {
	/*구분 라인*/
	height: 1px;
	padding: 0 10px 0 24px;
	margin: 0;
	border-bottom: 1px solid #e3e3e3;
}
.aui-pivot-panel-drop-list-item-disable,
.aui-pivot-grid-fields .aui-pivot-grid-field-menu button:disabled,
.aui-pivot-item-order .aui-pivot-item-order-menu button:disabled {
	/*disable 처리된 아이템*/
	color: #b8b8b8;
	cursor: default;
	text-align: left;
	height: 24px;
	line-height: 24px;
	padding: 0 10px 0 24px;
	white-space: nowrap;
	margin: 0;
}
.aui-pivot-panel-drop-list-item-row {
	/*행 아이콘*/
	background-image: url(./images/row_icon.png);
	background-position: 6px 50%;
	background-repeat: no-repeat;
	background-size: 12px 12px;
}
.aui-pivot-panel-drop-list-item-column {
	/*열 아이콘*/
	background-image: url(./images/column_icon.png);
	background-position: 6px 50%;
	background-repeat: no-repeat;
	background-size: 12px 12px;
}
.aui-pivot-panel-drop-list-item-filter {
	/*필터 아이콘*/
	background-image: url(./images/filter_ico.png);
	background-position: 6px 50%;
	background-repeat: no-repeat;
	background-size: 12px 12px;
}
.aui-pivot-panel-drop-list-item-value {
	/*값 아이콘*/
	background-image: url(./images/value_icon.png);
	background-position: 6px 50%;
	background-repeat: no-repeat;
	background-size: 12px 12px;
}
.aui-pivot-panel-drop-list-item-remove {
	/*제거 아이콘*/
	background-image: url(./images/delete_icon.png);
	background-size: 13px 13px;
	background-position: 6px 50%;
	background-repeat: no-repeat;
}
.aui-pivot-panel-drop-list-item-setting {
	/*설정 아이콘*/
	background-image: url(./images/setting_icon.png);
	background-size: 13px 13px;
	background-position: 6px 50%;
	background-repeat: no-repeat;
}
.aui-pivot-panel-drop-list-item:hover,
.aui-pivot-grid-fields .aui-pivot-grid-field-menu button:hover:not(:disabled),
.aui-pivot-grid-fields .aui-pivot-grid-field-menu button:focus-visible:not(:disabled),
.aui-pivot-item-order .aui-pivot-item-order-menu button:hover:not(:disabled),
.aui-pivot-item-order .aui-pivot-item-order-menu button:focus-visible:not(:disabled) {
	background-color: #4374d9;
	color: #fff;
}
/* 피벗 패널 필드 아이템 드랍다운리스트 끝 */

/* 피벗 패널에서 필드 드래깅 할 때 보이는 이미지 */
.aui-pivot-panel-dragging-proxy {
	background: #f7f7f7 url(./images/accept-not.png) 98% 50% no-repeat;
	-ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=92)';
	filter: alpha(opacity = 92);
	opacity: 0.92;
	border: 1px solid #bdbdbd;
	cursor: default;
	font-weight: bold;
	text-align: center;
	padding: 3px 26px 3px 16px;
	font-size: 12px;
	z-index: 9999;
	border-radius: 3px;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.16);
	background-size: 16px 16px;
}

/* 피벗 패널에서 필드 드래깅 할 때 보이는 Accept 이미지 */
.aui-pivot-panel-dragging-proxy-accept {
	background: #f7f7f7 url(./images/accept-ok.png) 98% 50% no-repeat;
	background-size: 16px 16px;
}

/* 피벗 패널에서 개별 영역의 위치 표시하는 라인*/
.aui-pivot-panel-field-dragging-proxy-line {
	background: #22741c;
}

/* 피벗 필터 패널 스타일 */
.aui-pivot-filter-panel {
	font-family: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif;
	font-size: 12px;
	font-size: 12px;
	color: #000;
	background: #fff;
	border: 1px solid #c4c4c4;
	border-bottom: none;
	border-radius: 0px;
	box-sizing: border-box;
	overflow: hidden;
}

/* 피벗 필터 패널 헤더 아이템 */
.aui-pivot-filter-menu-header-item {
	text-align: center;
	display: inline-block;
	background: #f1f1f1;
	background: -webkit-linear-gradient(top, #fbfbfb, #efefef);
	background: -moz-linear-gradient(top, #fbfbfb, #efefef);
	background: -ms-linear-gradient(top, #fbfbfb, #efefef);
	background: -o-linear-gradient(top, #fbfbfb, #efefef);
	background: linear-gradient(to bottom, #fbfbfb, #efefef);
	border: 1px solid #c4c4c4;
	border-radius: 3px;
	font-weight: normal;
	line-height: 1em;
	box-sizing: border-box;
	overflow: hidden;
	white-space: nowrap;
	margin: 8px 6px;
}
.aui-pivot-filter-menu-header-item-content {
	display: inline-block;
	margin: 0;
	padding: 0;
	overflow: hidden;
	font-size: 1em;
	line-height: 2em;
	vertical-align: top;
	box-sizing: content-box;
}
.aui-pivot-filter-menu-header-item-icon {
	display: inline-block;
	background: url(./images/filter_ico.png) 50% 50% no-repeat;
	border-left: 1px solid #d0d0d0;
	box-sizing: border-box;
	cursor: pointer;
	background-size: 12px 12px;
}
.aui-pivot-filter-menu-header-item-icon:hover {
	background: #e3e3e3 url(./images/filter_ico.png) 50% 50% no-repeat;
	background-size: 12px 12px;
}
/* 필터링 된 경우*/
.aui-pivot-filter-menu-header-item-icon-filtered {
	background: #5b8def url(./images/filter_ico_white.png) 50% 50% no-repeat;
	background-size: 12px 12px;
}
.aui-pivot-filter-menu-header-item-icon-filtered:hover {
	background: #4374d9 url(./images/filter_ico_white.png) 50% 50% no-repeat;
	background-size: 12px 12px;
}
/* 피벗 필드 지정 시 그리드 상단의 필터 헤더 아이템 끝*/

/* 값 설정 창은 현재 화면 중앙에 배치하고 작은 화면에서도 내부 내용을 스크롤합니다. */
.aui-pivot-modal {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1050;
	display: flex;
	box-sizing: border-box;
	padding: 12px;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	outline: 0;
}

/* 슬라이서 삽입은 호스트의 dialog/button 기본값을 지운 뒤 기존 값 설정 테마를 공유합니다. */
dialog.aui-pivot-slicer-dialog { all:initial; color:var(--pivot-ui-text); font:12px/1.5 var(--pivot-ui-font); }
dialog.aui-pivot-slicer-dialog button { all:initial; box-sizing:border-box; font:inherit; color:inherit; cursor:pointer; }

.aui-pivot-modal-dialog,
dialog.aui-pivot-slicer-dialog {
	font-family: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif;
	font-size: 12px;
	position: relative;
	width: 340px;
	margin: auto;
	flex: 0 0 auto;
	max-width: 100%;
	max-height: 100%;
	overflow: auto;
	background-color: #fff;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	border: 1px solid #999;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 6px;
	outline: 0;
	-webkit-box-shadow:
		0 16px 48px rgba(0, 0, 0, 0.26),
		0 2px 8px rgba(0, 0, 0, 0.1);
	box-shadow:
		0 16px 48px rgba(0, 0, 0, 0.26),
		0 2px 8px rgba(0, 0, 0, 0.1);
	box-sizing: border-box;
}

.aui-pivot-modal-dialog-header,
.aui-pivot-slicer-dialog-header {
	min-height: 18px;
	padding: 15px;
	border-bottom: 1px solid #ebebeb;
}

.aui-pivot-modal-dialog-header .aui-pivot-modal-header-title,
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-title {
	font-size: 1.2em;
	font-weight: bold;
}

.aui-pivot-modal-dialog-body {
	position: relative;
	padding: 5px 15px 15px 15px;
}

.aui-pivot-modal-dialog-body ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.aui-pivot-modal-dialog-footer,
.aui-pivot-slicer-dialog-footer {
	padding: 15px;
	text-align: right;
	border-top: 1px solid #ebebeb;
	background: #fafafa;
	border-radius: 0 0 6px 6px;
}

.aui-pivot-modal-dialog-body .aui-pivot-modal-body-container li input[type='text'] {
	font-size: 12px;
	padding: 4px;
	width: 160px;
}

.aui-pivot-modal-dialog-body .aui-pivot-modal-body-container li select {
	font-size: 12px;
	padding: 4px;
}

.aui-pivot-modal-dialog-body .aui-pivot-modal-body-container > li {
	cursor: default;
	padding: 6px 4px;
}

.aui-pivot-modal-dialog-body .aui-pivot-operation-container,
.aui-pivot-slicer-dialog-list {
	max-height: 140px;
	border: 1px solid #e3e3e3;
	overflow-x: hidden;
	overflow-y: auto;
	border-radius: 3px;
}
.aui-pivot-modal-dialog-body .aui-pivot-operation-container ul {
	padding: 0;
	margin: 0;
	list-style: none;
}

.aui-pivot-modal-dialog-body .aui-pivot-operation-container ul li,
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-field {
	padding: 2px 4px;
	margin: 0;
}

.aui-pivot-modal-dialog-body .aui-pivot-operation-container li input[type='radio'] {
	margin: 0 4px 0 0;
	vertical-align: middle;
}

.aui-pivot-modal-dialog-body .aui-pivot-operation-container li label {
	margin: 0;
	display: inline-block;
	font-weight: normal;
}

/* 계산 편집 버튼은 전역 button 꾸밈을 초기화하고 아래 값 설정 버튼의 테마를 공유합니다. */
.aui-pivot-calculation-editor .aui-pivot-calculation-actions > button {
    all: initial;
    box-sizing: border-box;
    font: inherit;
    font-size: 12px;
    color: #000;
}

/* 필드 설정 확인, 취소와 계산 편집 버튼의 공통 테마입니다. */
.aui-pivot-modal-dialog-footer .aui-button,
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-footer > button,
.aui-pivot-calculation-editor .aui-pivot-calculation-actions > button {
	background: #f2f2f2;
	background: linear-gradient(to bottom, #fdfdfd, #ededed);
	border: 1px solid #bdbdbd;
	background-clip: padding-box;
	display: inline-block;
	line-height: 1em;
	border-radius: 3px;
	appearance: none;
	-webkit-appearance: none;
	font-weight: bold;
	text-align: center;
	cursor: pointer;
	padding: 4px 2em;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.aui-pivot-modal-dialog-footer .aui-button:hover,
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-footer > button:hover:not(:disabled),
.aui-pivot-calculation-editor .aui-pivot-calculation-actions > button:hover:not(:disabled) {
	background: #e6e6e6;
	background: linear-gradient(to bottom, #f7f7f7, #e2e2e2);
}

/**************************************************************************************************/
/*                                 필터 팝업 윈도우                                                               */
/**************************************************************************************************/

/* 필터 팝업 레이어 */
.aui-pivot-filter-popup-layer {
	font-family: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif;
	font-size: 12px;
	background: #fff;
	border: 1px solid #c4c4c4;
	border-radius: 4px;
	box-sizing: border-box;
	box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-webkit-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	-moz-box-shadow:
		0 6px 18px rgba(0, 0, 0, 0.14),
		0 1px 4px rgba(0, 0, 0, 0.08);
	z-index: 1049;
}

/* 필터 팝업 레이어 헤더 */
.aui-pivot-filter-popup-layer-header {
}

/* 필터 팝업 상단 이동 레이어 */
.aui-pivot-filter-popup-mover {
	display: block;
	height: 10px;
	cursor: move;
}

/* 필터 전체 초기화 */
.aui-pivot-filter-popup-clear-all-text {
	background: url(./images/filter_clear_icon.png) 0 50% no-repeat;
	margin: 2px 5px;
	display: block;
	padding: 4px;
	padding-left: 20px;
	line-height: 18px;
	border-top: 1px solid #e3e3e3;
	background-size: 16px 16px;
}
.aui-pivot-filter-popup-clear-all-text:hover {
	background-color: #4374d9;
	color: #fff;
	cursor: pointer;
}
.aui-pivot-filter-popup-clear-all-text-disable {
	margin: 2px 5px;
	display: block;
	padding: 4px;
	line-height: 18px;
	border-top: 1px solid #e3e3e3;
	color: #b8b8b8;
}
/* 필터 초기화*/
.aui-pivot-filter-popup-clear-text {
	margin: 2px 5px;
	display: block;
	padding: 4px;
	line-height: 18px;
}
.aui-pivot-filter-popup-clear-text:hover {
	background-color: #4374d9;
	color: #fff;
	cursor: pointer;
}
.aui-pivot-filter-popup-clear-text-disable {
	margin: 2px 5px;
	display: block;
	padding: 4px;
	line-height: 18px;
	color: #b8b8b8;
}

/* 필드 선택 텍스트*/
.aui-pivot-filter-popup-fled-select-text {
	font-weight: bold;
	margin: 2px 5px;
	display: block;
	padding: 4px;
	line-height: 18px;
}
/* 필드 선택 select */
.aui-pivot-filter-popup-fled-selector {
	font-family: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif;
	font-size: 12px;
	margin: 2px 5px 5px 5px;
	display: block;
	padding: 1px;
	border: 1px solid #cdcdcd;
	border-radius: 3px;
}

/* 필터 스크롤 컨테이너 영역*/
.aui-pivot-filter-popup-layer .aui-container {
	border: 1px solid #d2d2d2;
	margin: 10px 5px;
	border-radius: 3px;
}

/* 필터 스크롤 컨테이너 스크롤 재정의*/
.aui-pivot-filter-popup-layer .aui-container .aui-hscrollbar .aui-scroll-thumb,
.aui-pivot-filter-popup-layer .aui-container .aui-vscrollbar .aui-scroll-thumb {
	background: #c6c6c6;
}

/* 필터 안의 Too may Items..문구 */
.aui-pivot-filter-popup-layer .aui-container .aui-pivot-filter-info-message {
	padding-left: 4px;
	font-weight: bold;
	cursor: default;
}

/* 필터 체크박스 아이템*/
.aui-pivot-filter-popup-layer .aui-container .aui-checkLabelBox {
	padding: 2px 6px;
	cursor: default;
}
.aui-pivot-filter-popup-layer .aui-container .aui-checkLabelBox:hover {
	background: #ececec;
}

.aui-pivot-filter-popup-layer .aui-container .aui-checkLabelBox .aui-checkbox {
	vertical-align: middle;
	margin-right: 4px !important;
	margin-top: 0 !important;
}
/* 필터 자동완성 검색 인풋 시작 */
.aui-pivot-filter-popup-layer .aui-autocomplete-input {
	overflow: hidden;
	position: relative;
	height: 20px;
	margin: 5px 5px;
	border: 1px solid #cdcdcd;
	vertical-align: middle;
	border-radius: 3px;
}

.aui-pivot-filter-popup-layer .aui-autocomplete-input .aui-input-text {
	width: 166px;
	height: 18px;
	border: 0;
	font-size: 12px;
	outline: none;
	line-height: 18px;
	vertical-align: middle;
	padding: 0 4px;
	box-sizing: border-box;
}

.aui-pivot-filter-popup-layer .aui-autocomplete-input .aui-autocomplete-btn {
	position: absolute;
	top: 2px;
	right: 3px;
	display: inline-block;
	background: url(./images/search.png) 0 0 no-repeat;
	width: 16px;
	height: 16px;
	background-size: 16px 16px;
}

/* 필터 레이어 푸터 */
.aui-pivot-filter-popup-layer-footer {
	text-align: right;
	padding-right: 5px;
	padding-bottom: 5px;
}

/* 필터 레이어 확인, 취소 버턴 */
.aui-pivot-filter-popup-layer .aui-button {
	background: #f2f2f2;
	background: linear-gradient(to bottom, #fdfdfd, #ededed);
	border: 1px solid #bdbdbd;
	background-clip: padding-box;
	display: inline-block;
	line-height: 1em;
	border-radius: 3px;
	appearance: none;
	-webkit-appearance: none;
	font-weight: bold;
	text-align: center;
	cursor: pointer;
	padding: 4px 2em;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.aui-pivot-filter-popup-layer .aui-button:hover {
	background: #e6e6e6;
	background: linear-gradient(to bottom, #f7f7f7, #e2e2e2);
}
/* 버턴 disable 스타일*/
.aui-button-disable,
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-footer > button:disabled {
	cursor: default !important;
	border: 1px solid #ddd !important;
	color: #ccc !important;
}
.aui-button-disable:hover,
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-footer > button:disabled:hover {
	background: #eee !important;
}

.aui-pivot-filter-popup-layer .filer-layer-resizer {
	background: url(./images/grid-dot-icon.png) 0 0 no-repeat;
	cursor: se-resize;
	right: 1px;
	bottom: 1px;
	width: 8px;
	height: 8px;
	background-size: 8px 8px;
}

/* 행/추가 셀 선택은 반투명 강조를 겹칩니다. 히트맵/데이터바와 기존 숫자·셀 크기는 유지합니다. */
.aui-pivot-selection-row-bg,
.aui-pivot-selection-others-bg {
	background: #d7d7d7 !important;
	color: inherit;
}

/* 2.8 설정 창과 슬라이서는 값 설정의 테마를 공유하며 본문 12px, 제목 1.2em을 유지합니다. */
.aui-pivot-slicer, .aui-pivot-slicer-dialog, .aui-pivot-calculation-editor, .aui-pivot-subtotal-dialog {
    --pivot-ui-error: #b3261e;
    --pivot-ui-bg: #fff;
    --pivot-ui-text: #000;
    --pivot-ui-muted: #666;
    --pivot-ui-border: #c4c4c4;
    --pivot-ui-line: #ebebeb;
    --pivot-ui-footer: #fafafa;
    --pivot-ui-input: #fff;
    --pivot-ui-hover: #f0f0f0;
    --pivot-ui-button: linear-gradient(to bottom, #fdfdfd, #ededed);
    --pivot-ui-buttonHover: linear-gradient(to bottom, #f7f7f7, #e2e2e2);
    --pivot-ui-buttonBorder: #bdbdbd;
    --pivot-ui-buttonText: #000;
    --pivot-ui-selected: #d7d7d7;
    --pivot-ui-selectedText: #000;
    --pivot-ui-accent: #666;
    --pivot-ui-radius: 6px;
    --pivot-ui-smallRadius: 3px;
    --pivot-ui-shadow: 0 12px 32px #0003;
    --pivot-ui-buttonShadow: 0 1px 1px rgba(0, 0, 0, 0.05);
    --pivot-ui-backdrop: #17253666;
    --pivot-ui-scheme: light;
    --pivot-ui-font: 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif;
    --pivot-ui-close: url(./images/close.png);
}
.aui-pivot-slicer { position:relative; box-sizing:border-box; display:flex; flex-direction:column; height:280px; min-width:160px; padding:10px; border:1px solid var(--pivot-ui-border); border-radius:var(--pivot-ui-radius); background:var(--pivot-ui-bg); color:var(--pivot-ui-text); font:12px/1.4 var(--pivot-ui-font); color-scheme:var(--pivot-ui-scheme); }
.aui-pivot-slicer *, .aui-pivot-slicer *::before, .aui-pivot-slicer *::after { box-sizing:border-box; }
.aui-pivot-slicer-header { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
.aui-pivot-slicer .aui-pivot-slicer-title { margin:0; padding:0; font:bold 1.2em/1.4 var(--pivot-ui-font); color:inherit; flex:1; min-width:60px; overflow-wrap:anywhere; }
/* 전역 버튼 규칙이 삽입 창, 항목, 도구 버튼 및 크기 조절 손잡이에 섞이지 않게 합니다. */
.aui-pivot-slicer button, .aui-pivot-subtotal-dialog button {
    all:initial; box-sizing:border-box; appearance:none; display:inline-flex; align-items:center; justify-content:center;
    font:12px/1.4 var(--pivot-ui-font); color:var(--pivot-ui-buttonText); background:var(--pivot-ui-button);
    border:1px solid var(--pivot-ui-buttonBorder); border-radius:var(--pivot-ui-smallRadius); cursor:pointer; text-align:center;
}
.aui-pivot-slicer button::before, .aui-pivot-slicer button::after,
.aui-pivot-slicer-dialog button::before, .aui-pivot-slicer-dialog button::after,
.aui-pivot-subtotal-dialog button::before, .aui-pivot-subtotal-dialog button::after { content:none; display:none; }
.aui-pivot-slicer .aui-pivot-slicer-header > button { color:var(--pivot-ui-buttonText); padding:4px 6px; white-space:nowrap; box-shadow:var(--pivot-ui-buttonShadow); }
.aui-pivot-slicer .aui-pivot-slicer-header > button:hover:not(:disabled) { background:var(--pivot-ui-buttonHover); }
.aui-pivot-slicer .aui-pivot-slicer-header > button[aria-pressed="true"] { background:var(--pivot-ui-selected); border-color:var(--pivot-ui-accent); color:var(--pivot-ui-selectedText); }
.aui-pivot-slicer button:focus-visible, .aui-pivot-slicer input:focus-visible,
.aui-pivot-slicer-dialog button:focus-visible, .aui-pivot-subtotal-dialog button:focus-visible { outline:2px solid var(--pivot-ui-accent); outline-offset:2px; }
.aui-pivot-slicer .aui-pivot-slicer-search { all:initial; box-sizing:border-box; width:100%; flex:none; padding:6px; margin:0 0 8px; border:1px solid var(--pivot-ui-buttonBorder); border-radius:var(--pivot-ui-smallRadius); background:var(--pivot-ui-input); color:var(--pivot-ui-text); font:12px/1.4 var(--pivot-ui-font); }
.aui-pivot-slicer .aui-pivot-slicer-search::placeholder { color:var(--pivot-ui-muted); opacity:1; }
.aui-pivot-slicer .aui-pivot-slicer-search[hidden] { display:none; }
.aui-pivot-slicer-viewport { flex:1; min-height:36px; overflow:auto; position:relative; }
.aui-pivot-slicer-space { position:relative; }
/* 가상 행의 높이/좌표는 기존 계약을 유지하고 선택, 후보 없음, 잠금의 색상만 분리합니다. */
.aui-pivot-slicer .aui-pivot-slicer-item { position:absolute; display:block; height:30px; padding:4px 8px; text-align:left; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; background:var(--pivot-ui-input); color:var(--pivot-ui-text); border-color:var(--pivot-ui-buttonBorder); }
.aui-pivot-slicer .aui-pivot-slicer-item:hover:not([aria-disabled="true"]) { background:var(--pivot-ui-hover); border-color:var(--pivot-ui-accent); }
.aui-pivot-slicer .aui-pivot-slicer-item[aria-pressed="true"] { background:var(--pivot-ui-selected); border-color:var(--pivot-ui-accent); color:var(--pivot-ui-selectedText); }
/* 선택된 항목과 복수 선택 버튼은 hover 중에도 선택 색과 글자 대비를 유지합니다. */
.aui-pivot-slicer .aui-pivot-slicer-header > button[aria-pressed="true"]:hover:not(:disabled),
.aui-pivot-slicer .aui-pivot-slicer-item[aria-pressed="true"]:hover:not([aria-disabled="true"]) { background:var(--pivot-ui-selected); color:var(--pivot-ui-selectedText); box-shadow:inset 0 0 0 1px var(--pivot-ui-selectedText); }
.aui-pivot-slicer .aui-pivot-slicer-item[data-available="false"] { opacity:.5; }
.aui-pivot-slicer .aui-pivot-slicer-item[aria-disabled="true"] { cursor:default; }
.aui-pivot-slicer button:disabled { background:var(--pivot-ui-button); color:var(--pivot-ui-buttonText); opacity:.45; cursor:default; }
.aui-pivot-slicer-status { min-height:18px; padding-top:6px; font-size:12px; color:var(--pivot-ui-muted); }

/* 슬라이서의 기존 배치 공간을 보존하며 제목 이동/우하단 크기 조절을 기본 제공합니다. */
.aui-pivot-slicer-frame { position:relative; }
.aui-pivot-slicer[data-movable="true"] .aui-pivot-slicer-header { cursor:move; }
.aui-pivot-slicer[data-movable="true"] .aui-pivot-slicer-title { user-select:none; }
.aui-pivot-slicer-title:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
/* 기존 피벗 패널의 8px 점 모양 손잡이를 두 UI에 동일하게 사용합니다. */
.aui-pivot-panel-resizer,
.aui-pivot-slicer > button.aui-pivot-slicer-resizer { position:absolute; right:1px; bottom:1px; width:8px; height:8px; padding:0; border:0; background:url(./images/grid-dot-icon.png) 0 0 / 8px 8px no-repeat; opacity:1; cursor:se-resize; }
.aui-pivot-panel-resizer[hidden],
.aui-pivot-slicer > button.aui-pivot-slicer-resizer[hidden] { display:none; }
.aui-pivot-slicer-status { padding-right:16px; }

/* 제목의 이동 커서와 같은 키보드 포커스 표시를 제공합니다. */
.aui-pivot-panel-title { user-select:none; }
.aui-pivot-panel-title:focus-visible, .aui-pivot-panel-resizer:focus-visible { outline:2px solid currentColor; outline-offset:2px; }

/* 필드 글자를 직접 끌어 이동합니다. 빈 공간과 메뉴 화살표의 목록 스크롤은 유지합니다. */
.aui-pivot-panel-main .aui-pivot-panel-field-drag-target {
    touch-action: none;
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
}

/* 그룹은 제목 버튼으로 접고 펼치며 색상은 각 테마의 패널 글자색을 따릅니다. */
.aui-pivot-panel-main .aui-pivot-field-group-toggle {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    border: 0;
    padding: 5px 3px;
    margin: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-weight: bold;
    text-align: left;
    cursor: grab;
    /* 제목을 손가락으로 끌 때 브라우저 스크롤로 전환되지 않게 합니다. */
    touch-action: none;
}
.aui-pivot-panel-main .aui-pivot-field-group-toggle::before {
    content: "";
    width: 0;
    height: 0;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 5px solid currentColor;
    flex: 0 0 auto;
}
.aui-pivot-panel-main .aui-pivot-field-group-toggle[aria-expanded="true"]::before { transform: rotate(90deg); }
.aui-pivot-panel-main .aui-pivot-field-group-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.aui-pivot-panel-main .aui-pivot-field-group-children { padding-left: 14px; }
.aui-pivot-panel-main .aui-pivot-field-group-children[hidden] { display: none; }

/* 표 안의 필드 편집: 셀, 헤더, 기존 패널의 버튼 스타일에는 적용하지 않습니다. */
.aui-pivot-grid-fields {
    --field-bg: #f4f6f8; --field-chip: #fff; --field-text: #263442; --field-border: #bbc5cf; --field-accent: #337ab7;
    box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 2px; height: 84px; padding: 1px;
    border: 1px solid var(--field-border); background: var(--field-bg); color: var(--field-text);
    /* 아래 필터 영역 또는 그리드의 상단 테두리와 겹치지 않도록 구분선은 아래쪽 영역에 맡깁니다. */
    border-bottom: 0;
    font: 12px/1.4 Arial, 'Malgun Gothic', sans-serif; position: relative;
}
.aui-pivot-grid-fields.aui-pivot-grid-fields-narrow { grid-template-columns: minmax(0, 1fr); grid-template-rows: repeat(4, minmax(0, 1fr)); height: 164px; }
.aui-pivot-grid-fields .aui-pivot-grid-field-zone { display: flex; align-items: center; min-width: 0; box-sizing: border-box; padding: 2px 6px; border: 1px solid transparent; }
.aui-pivot-grid-fields .aui-pivot-grid-field-title { flex: 0 0 auto; min-width: 36px; margin-right: 6px; font-weight: bold; }
.aui-pivot-grid-fields .aui-pivot-grid-field-list { display: flex; align-items: center; gap: 5px; min-width: 0; flex: 1; overflow-x: auto; scrollbar-width: thin; height: 34px; }
.aui-pivot-grid-fields .aui-pivot-grid-field-chip { box-sizing: border-box; flex: 0 0 auto; max-width: 220px; height: 27px; padding: 3px 9px; margin: 0; border: 1px solid var(--field-border); border-radius: 3px; background: var(--field-chip); color: var(--field-text); font: inherit; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: grab; touch-action: none; user-select: none; }
.aui-pivot-grid-fields .aui-pivot-grid-field-chip:hover { border-color: var(--field-accent); }
.aui-pivot-grid-fields .aui-pivot-grid-field-chip:focus-visible { outline: 2px solid var(--field-accent); outline-offset: -2px; }
.aui-pivot-grid-fields .aui-pivot-grid-field-empty { white-space: nowrap; opacity: .7; pointer-events: none; }
.aui-pivot-grid-fields .aui-pivot-grid-field-zone-active { border-color: var(--field-accent); }
.aui-pivot-grid-fields .aui-pivot-grid-field-before { box-shadow: inset 3px 0 var(--field-accent); }
.aui-pivot-grid-fields .aui-pivot-grid-field-at-end { box-shadow: inset -3px 0 var(--field-accent); }
.aui-pivot-grid-fields .aui-pivot-grid-field-status { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
/* 위치와 키보드 조작은 상단 메뉴가 담당하고 외형은 위의 패널 메뉴 규칙을 따릅니다. */
.aui-pivot-grid-fields .aui-pivot-grid-field-menu { position: fixed; z-index: 1101; min-width: 150px; }
/* 패널의 배경 아이콘과 같은 왼쪽 6px 위치, 12px 크기로 맞춰 글자 시작점을 유지합니다. */
.aui-pivot-grid-fields .aui-pivot-grid-field-menu-icon { position: absolute; left: 6px; top: 50%; width: 12px; height: 12px; transform: translateY(-50%); background-position: center; pointer-events: none; }

/* 항목 이동 손잡이는 한 인스턴스에 하나만 만들고 실제 보이는 셀 경계에 표시합니다. */
.aui-pivot-item-order { --item-bg: #fff; --item-text: #222729; --item-border: #c4ccd6; --item-accent: #337ab7; }
.aui-pivot-item-order [hidden] { display: none !important; }
.aui-pivot-item-order-handle { position: fixed; z-index: 1102; box-sizing: border-box; width: 18px; height: 22px; padding: 0; border: 1px solid var(--item-accent); border-radius: 2px; background: var(--item-bg); color: var(--item-accent); cursor: grab; font: 18px/20px sans-serif; touch-action: none; }
/* 드래그 중에는 손잡이 대신 항목 이름을 테마 글꼴로 표시하며 대상 셀 입력을 가리지 않습니다. */
.aui-pivot-item-order-handle.is-dragging { width: auto; min-width: 18px; max-width: min(360px, calc(100vw - 24px)); height: auto; min-height: 22px; padding: 2px 8px; font: 12px/20px 'Malgun Gothic', '맑은 고딕', 'Apple SD Gothic Neo', AppleSDGothicNeo-Light, sans-serif; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #000; pointer-events: none; cursor: grabbing; }
.aui-pivot-item-order-line { position: fixed; z-index: 1103; pointer-events: none; background: var(--item-accent); }
/* 위치만 별도로 관리하고 메뉴 외형은 위의 패널 메뉴 선언을 그대로 사용합니다. */
.aui-pivot-item-order .aui-pivot-item-order-menu { position: fixed; z-index: 1104; box-sizing: border-box; min-width: 150px; max-width: calc(100vw - 8px); }
/* 제목과 적용 범위 안내도 메뉴와 같은 글꼴과 좌우 간격을 사용합니다. */
.aui-pivot-item-order-menu strong, .aui-pivot-item-order-menu p { display: block; box-sizing: border-box; margin: 0; padding: 0 10px 0 24px; font: inherit; line-height: 24px; text-align: left; }
.aui-pivot-item-order-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }

/* 계산 편집창은 제품 테마만 사용하며 기본 대화상자의 초점 관리와 키보드 닫기를 유지합니다. */
/* 값 제목은 Flex 배치이므로 float 대신 자동 왼쪽 여백으로 버튼을 오른쪽 끝에 놓습니다.
   전역 button 규칙의 영향을 초기화하고 버튼 크기, 글꼴과 상태를 제품 안에서 정의합니다. */
.aui-pivot-panel-main .aui-pivot-panel-field-area-value-title > button.aui-pivot-calculation-open {
    all: initial;
    box-sizing: border-box;
    appearance: none;
    -webkit-appearance: none;
    display: block;
    position: static;
    float: none;
    flex: 0 1 auto;
    align-self: center;
    width: auto;
    min-width: 0;
    max-width: calc(100% - 4px);
    height: 20px;
    min-height: 20px;
    max-height: 20px;
    margin: 0 4px 0 auto;
    padding: 0 7px;
    /* 기존 테마 버튼의 배경과 글자색을 사용하며 외부 button 색상은 상속하지 않습니다. */
    border: 1px solid #bdbdbd;
    border-radius: 3px;
    background: #f2f2f2;
    background-image: linear-gradient(to bottom, #fdfdfd, #ededed);
    color: #222222;
    font: 600 12px/18px Arial, 'Malgun Gothic', sans-serif;
    letter-spacing: normal;
    word-spacing: normal;
    text-align: center;
    text-indent: 0;
    text-transform: none;
    text-decoration: none;
    text-shadow: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-shadow: none;
    outline: none;
    opacity: 1;
    visibility: visible;
    /* 주변 필드 배치를 바꾸지 않고 버튼 표시 위치만 2px 내립니다. */
    transform: translateY(2px);
    transition: none;
    animation: none;
    cursor: pointer;
    pointer-events: auto;
    user-select: none;
    touch-action: manipulation;
    /* all 속성이 초기화하지 않는 방향 속성도 버튼 안에서는 명시합니다. */
    direction: ltr;
    unicode-bidi: isolate;
}
.aui-pivot-panel-main .aui-pivot-panel-field-area-value-title > button.aui-pivot-calculation-open:hover:not(:disabled) {
    background: #e6e6e6;
    background-image: linear-gradient(to bottom, #f7f7f7, #e2e2e2);
    border-color: #bdbdbd;
    color: #222222;
}
.aui-pivot-panel-main .aui-pivot-panel-field-area-value-title > button.aui-pivot-calculation-open:active:not(:disabled) {
    background: #d8d8d8;
    border-color: #999999;
    color: #222222;
}
.aui-pivot-panel-main .aui-pivot-panel-field-area-value-title > button.aui-pivot-calculation-open:focus-visible {
    outline: 2px solid #555555;
    outline-offset: -3px;
}
.aui-pivot-panel-main .aui-pivot-panel-field-area-value-title > button.aui-pivot-calculation-open:disabled {
    background: #eeeeee;
    border-color: #dddddd;
    color: #999999;
    cursor: default;
}
/* 페이지 공통 버튼에 붙인 장식 아이콘도 계산 필드 버튼에는 추가하지 않습니다. */
.aui-pivot-panel-main .aui-pivot-panel-field-area-value-title > button.aui-pivot-calculation-open::before,
.aui-pivot-panel-main .aui-pivot-panel-field-area-value-title > button.aui-pivot-calculation-open::after {
    all: initial;
    content: none;
    display: none;
}
/* 계산 편집은 값 필드 설정처럼 본문 12px, 제목 1.2em으로 표시합니다. */
.aui-pivot-calculation-editor { --calc-bg: var(--pivot-ui-bg); --calc-text: var(--pivot-ui-text); --calc-border: var(--pivot-ui-border); box-sizing: border-box; width: 660px; max-width: calc(100vw - 24px); max-height: calc(100vh - 24px); padding: 22px; border: 1px solid var(--calc-border); border-radius: var(--pivot-ui-radius); background: var(--calc-bg); color: var(--calc-text); box-shadow: var(--pivot-ui-shadow); color-scheme: var(--pivot-ui-scheme); font: 12px/1.5 var(--pivot-ui-font); overflow: auto; }
/* 기본 dialog 스타일에 의존하지 않고 화면 크기가 바뀌어도 중앙을 유지합니다. */
dialog.aui-pivot-calculation-editor, dialog.aui-pivot-subtotal-dialog {
    position: fixed; inset: 0; margin: auto; height: fit-content;
    max-height: calc(100dvh - 24px);
}
.aui-pivot-calculation-editor::backdrop { background: var(--pivot-ui-backdrop); }
.aui-pivot-calculation-editor h2 { font-size: 1.2em; margin: 0 28px 16px 0; color: inherit; }
.aui-pivot-calculation-editor label { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 10px; align-items: center; margin: 8px 0; }
.aui-pivot-calculation-editor input, .aui-pivot-calculation-editor select, .aui-pivot-calculation-editor textarea { box-sizing: border-box; min-width: 0; width: 100%; border: 1px solid var(--calc-border); border-radius: 4px; padding: 7px; background: var(--pivot-ui-input); color: var(--calc-text); font: inherit; }
.aui-pivot-calculation-editor [hidden] { display: none !important; }
.aui-pivot-calculation-operands { display: grid; grid-template-columns: minmax(0, 1fr) 70px minmax(0, 1fr); gap: 12px; align-items: center; }
.aui-pivot-calculation-operands fieldset { min-width: 0; border: 1px solid var(--calc-border); border-radius: 5px; padding: 10px; }
.aui-pivot-calculation-operands label { display: block; }
.aui-pivot-calculation-operands label > span { display: none; }
.aui-pivot-calculation-editor p { font-size: 12px; margin: 10px 0; }
.aui-pivot-calculation-editor .aui-pivot-calculation-preview-title { font-size: 12px; margin: 16px 0 6px; }
.aui-pivot-calculation-preview { display: block; min-height: 24px; padding: 8px; border: 1px solid var(--calc-border); white-space: pre-wrap; }
.aui-pivot-calculation-editor .aui-pivot-calculation-error { color: var(--pivot-ui-error); min-height: 18px; }
.aui-pivot-calculation-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
/* 제목 오른쪽 닫기 버튼도 테마의 기존 X 아이콘을 사용합니다. */
.aui-pivot-subtotal-dialog > button.aui-pivot-subtotal-close,
.aui-pivot-calculation-editor > button.aui-pivot-calculation-close {
    all: initial; box-sizing: border-box; position: absolute; top: 10px; right: 10px;
    width: 24px; height: 24px; border: 0; border-radius: 3px;
    background: url(./images/close.png) center / 16px 16px no-repeat; cursor: pointer;
}
.aui-pivot-subtotal-dialog > button.aui-pivot-subtotal-close:focus-visible,
.aui-pivot-calculation-editor > button.aui-pivot-calculation-close:focus-visible,
.aui-pivot-calculation-editor .aui-pivot-calculation-actions > button:focus-visible { outline: 2px solid var(--pivot-ui-accent); outline-offset: 2px; }
.aui-pivot-subtotal-dialog > button.aui-pivot-subtotal-close::before,
.aui-pivot-calculation-editor > button.aui-pivot-calculation-close::before,
.aui-pivot-subtotal-dialog > button.aui-pivot-subtotal-close::after,
.aui-pivot-calculation-editor > button.aui-pivot-calculation-close::after,
.aui-pivot-calculation-editor .aui-pivot-calculation-actions > button::before,
.aui-pivot-calculation-editor .aui-pivot-calculation-actions > button::after { content: none; display: none; }
.aui-pivot-calculation-editor .aui-pivot-calculation-actions > button:disabled { opacity: .55; cursor: default; }
.aui-pivot-calculation-editor :disabled { opacity: .55; cursor: default; }
@media (max-width: 520px) { .aui-pivot-calculation-editor { padding: 16px; } .aui-pivot-calculation-editor label { grid-template-columns: 1fr; gap: 3px; } .aui-pivot-calculation-operands { grid-template-columns: 1fr; gap: 6px; } }

/* 행 부분합 설정은 제품 테마 안에서 표시하며 좁은 화면에서도 가로 넘침을 만들지 않습니다. */
.aui-pivot-subtotal-open { display: block; box-sizing: border-box; width: 100%; border: 0; padding: 7px 12px; background: transparent; color: inherit; text-align: left; font: inherit; cursor: pointer; }
.aui-pivot-subtotal-open:hover, .aui-pivot-subtotal-open:focus-visible { background: #337ab7; color: #fff; }
.aui-pivot-subtotal-dialog { --subtotal-bg: var(--pivot-ui-bg); --subtotal-text: var(--pivot-ui-text); --subtotal-border: var(--pivot-ui-border); box-sizing: border-box; width: 440px; max-width: calc(100vw - 24px); max-height: calc(100vh - 24px); padding: 22px; border: 1px solid var(--subtotal-border); border-radius: var(--pivot-ui-radius); background: var(--subtotal-bg); color: var(--subtotal-text); box-shadow: var(--pivot-ui-shadow); color-scheme: var(--pivot-ui-scheme); font: 12px/1.5 var(--pivot-ui-font); overflow: auto; }
.aui-pivot-subtotal-dialog::backdrop { background: var(--pivot-ui-backdrop); }
.aui-pivot-subtotal-dialog h2 { font-size: 1.2em; margin: 0 28px 12px 0; color: inherit; }
.aui-pivot-subtotal-dialog p { margin: 12px 0; overflow-wrap: anywhere; }
.aui-pivot-subtotal-dialog label { display: flex; gap: 8px; align-items: center; padding: 8px 0; }
.aui-pivot-subtotal-dialog input { accent-color: var(--pivot-ui-accent); }
.aui-pivot-subtotal-dialog .aui-pivot-subtotal-error { color: var(--pivot-ui-error); min-height: 22px; }
.aui-pivot-subtotal-actions { display: flex; justify-content: flex-end; gap: 8px; }
.aui-pivot-subtotal-dialog .aui-pivot-subtotal-actions > button { color:var(--pivot-ui-buttonText); padding: 4px 2em; font-weight: bold; line-height: 1em; box-shadow: var(--pivot-ui-buttonShadow); }
.aui-pivot-subtotal-dialog .aui-pivot-subtotal-actions > button:hover:not(:disabled) { background: var(--pivot-ui-buttonHover); }
.aui-pivot-subtotal-dialog button:disabled { background:var(--pivot-ui-button); color:var(--pivot-ui-buttonText); }
.aui-pivot-subtotal-dialog :disabled { opacity: .55; cursor: default; }

/* 자유 수식 입력도 현재 테마의 배경과 글자색을 사용합니다. */
.aui-pivot-calculation-editor textarea { resize: vertical; font-family: Consolas, monospace; }
.aui-pivot-calculation-editor input[type="checkbox"] { width: auto; justify-self: start; }

/* 외형은 위의 값 설정 규칙을 공유하고, 삽입 창에 필요한 중앙 배치와 목록 높이만 지정합니다. */
dialog.aui-pivot-slicer-dialog {
    position:fixed; inset:0; margin:auto; height:fit-content; padding:0;
    max-width:calc(100vw - 24px); max-height:calc(100dvh - 24px);
    display:none; overflow:hidden;
}
.aui-pivot-slicer-dialog[open] { display:flex; flex-direction:column; }
.aui-pivot-slicer-dialog::backdrop { background:var(--pivot-ui-backdrop); }
.aui-pivot-slicer-dialog *, .aui-pivot-slicer-dialog *::before, .aui-pivot-slicer-dialog *::after { box-sizing:border-box; }
.aui-pivot-slicer-dialog-header { position:relative; flex-shrink:0; padding-right:42px; }
.aui-pivot-slicer-dialog-title { display:block; margin:0; padding:0; color:inherit; }
.aui-pivot-slicer-dialog-hint { flex-shrink:0; margin:12px 15px 8px; padding:0; font:inherit; color:inherit; }
.aui-pivot-slicer-dialog-list { flex:0 1 240px; min-height:0; height:240px; max-height:240px; margin:0 15px 15px; padding:0; }
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-field { display:flex; align-items:center; gap:4px; font:inherit; color:inherit; cursor:pointer; overflow-wrap:anywhere; }
.aui-pivot-slicer-dialog-field:hover:not(:has(input:disabled)), .aui-pivot-slicer-dialog-field:has(input:checked) { background:var(--pivot-ui-hover); }
/* 키보드 초점만 가는 점선으로 구분합니다. 처음 열린 창의 굵은 행 테두리는 없앱니다. */
.aui-pivot-slicer-dialog-field:has(input:focus-visible) { outline:1px dotted var(--pivot-ui-accent); outline-offset:-1px; }
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-field input { all:initial; box-sizing:border-box; appearance:auto; width:13px; height:13px; flex:0 0 13px; margin:0; accent-color:inherit; color-scheme:var(--pivot-ui-scheme); cursor:pointer; }
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-field:has(input:disabled) { color:var(--pivot-ui-muted); cursor:default; }
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-field input:disabled { opacity:.5; cursor:default; }
.aui-pivot-slicer-dialog-field small { margin-left:auto; font:inherit; color:var(--pivot-ui-muted); white-space:nowrap; }
.aui-pivot-slicer-dialog-empty { margin:8px; font:inherit; color:var(--pivot-ui-muted); }
.aui-pivot-slicer-dialog-footer { display:flex; flex-shrink:0; justify-content:flex-end; gap:10px; }
/* 버튼 크기와 비활성 색상은 값 설정의 공통 규칙이 결정합니다. */
.aui-pivot-slicer-dialog .aui-pivot-slicer-dialog-footer > button { margin:0; white-space:nowrap; }
.aui-pivot-slicer-dialog button.aui-pivot-slicer-dialog-close { position:absolute; top:8px; right:8px; }
/* 기존 닫기 이름과 클릭 영역은 유지하고 테마의 X 아이콘만 표시합니다. */
.aui-pivot-slicer-dialog button.aui-pivot-slicer-dialog-close,
.aui-pivot-slicer .aui-pivot-slicer-header > button.aui-pivot-slicer-close {
    flex:0 0 26px; width:26px; min-width:26px; height:26px; padding:0; margin:0; font-size:0;
    border:1px solid transparent; background:var(--pivot-ui-close) center / 16px 16px no-repeat; box-shadow:none;
}
.aui-pivot-slicer-dialog button.aui-pivot-slicer-dialog-close:hover,
.aui-pivot-slicer .aui-pivot-slicer-header > button.aui-pivot-slicer-close:hover { background:var(--pivot-ui-close) center / 16px 16px no-repeat var(--pivot-ui-hover); border-color:var(--pivot-ui-buttonBorder); }
/* 자동 영역만 문서 위의 독립 창으로 표시하며 수동 배치 영역은 변경하지 않습니다. */
.aui-pivot-slicer-floating { position:absolute; box-sizing:border-box; height:330px; }
.aui-pivot-slicer-floating .aui-pivot-slicer { box-shadow:var(--pivot-ui-shadow); }
