/*按钮初始化*/
.box-btn {
	text-align:center;
	border-radius:3px;
	border-width: 1px;
	border-style: solid;
	cursor: pointer;
}
/*按钮颜色*/
.btn-primary,
.btn-primary:hover {
	color: #fff;
	border-color:var(--color-primary);
	background-color: var(--color-primary);
}
.btn-default,
.btn-default:hover {
	color: var(--color-primary);
	border-color:var(--color-primary);
	background-color: #fff;
}
.btn-normal,
.btn-normal:hover {
	color: #000;
	border-color: #d9dbde;
	background-color: #fff;
}
.btn-warn-bor {
	color: #f63535;
	border-color: #f63535;
	background-color: #fff;
}
.btn-disabled,
.btn-disabled:hover {
	color:#999999;
	border:1px solid var(--borColor);
	background-color:#f0f0f0;
}

/*文本框/文本域初始化*/
.box-input,
.box-textarea {
	border-radius:3px;
	border:1px solid var(--borColor);
	background-color: #fff;
}
.box-input input {
	padding-left: 9px;
	padding-right: 9px;
}
.box-textarea textarea {
	border-radius: 3px;
}
.box-input-warning,
.box-textarea-warning {
	border-color: #ff584b !important;
}
.box-input-edit,
.box-textarea-edit {
	border-color: #009cff !important;
}
.box-input-disabled,
.box-textarea-disabled {
	color: #000000;
	border-color: var(--borColor);
	background-color: #f2f3f5;
}
.box-input-disabled input,
.box-textarea-disabled textarea{
	color: #000000;
}
/*日期*/
.box-input-date {
	position: relative;
	z-index: 1;
	display: flex;
	flex-flow: row wrap;
	line-height: 32px;
}
.box-input-date div {
	flex: 1;
	min-width: 0;
}
.box-input-date input {
	cursor: default;
}
.box-input-date i {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 9px;
	z-index: -1;
	display: flex;
	align-items: center;
	color:var(--color-lightGray);
}
.box-input-date i:before {

}

/*【单选框】自定义*/
.custom-radio {
	cursor: pointer;
	position: relative;
}
.custom-radio::before {
	content: '';
	position: absolute;
	top: 3px;
	bottom: 3px;
	left: 3px;
	right: 3px;
	z-index: 1;
	width: 9px;
	height: 9px;
	border-radius: 50%;
}
.custom-radio::after {
	position: absolute;
	top: 0;
	content: ' ';
	width: 13px;
	height: 13px;
	border-radius: 50%;
	border: 1px solid #88909b;
	background-color: #fff;
	visibility: visible;
}
/*已选*/
.custom-radio:checked::before {
	background-color: #2aaf2a;
}
.custom-radio:checked::after {
	border-color: #2aaf2a;
}
/*禁选*/
.custom-radio:disabled::after {
	border-color: #cfd0d5;
	background-color: #f6f6f6;
}
/*已选禁改*/
.custom-radio:disabled:checked::before {
	background-color: #cfd0d5;
}
.custom-radio:disabled:checked::after {
	border-color: #cfd0d5;
	background-color: #f6f6f6;
}

/*【复选框】自定义*/
.custom-checkbox {
	cursor: pointer;
	position: relative;
}
.custom-checkbox::before {
	content: '';
	position: absolute;
	top: 2px;
	left: 5px;
	width: 3px;
	height: 6px;
	border: solid transparent;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
	z-index: 1;
}
.custom-checkbox::after {
	position: absolute;
	top: 0;
	display: inline-block;
	content: ' ';
	width: 14px;
	height: 14px;
	color: #fff;
	text-align: center;
	border-radius: 3px;
	box-sizing: border-box;
	border: 1px solid #88909b;
	background-color: #fff;
	visibility: visible;
}
/*已选*/
.custom-checkbox:checked::before {
	border-color: #fff;
}
.custom-checkbox:checked::after {
	border-color: #2aaf2a;
	background-color: #2aaf2a;
}
/*禁选*/
.custom-checkbox:disabled::before {
	border-color: #f6f6f6;
}
.custom-checkbox:disabled::after {
	border-color: #cfd0d5;
	background-color: #f6f6f6;
}
/*已选禁改*/
.custom-checkbox:disabled:checked::before {
	border-color: #fff;
}
.custom-checkbox:disabled:checked::after {
	border-color: #cfd0d5;
	background-color: #cfd0d5;
}

/*下拉列表容器（可选可搜索）*/
.select-dropdown {
	position: relative;
	z-index: 2;
}
.select-dropdown .box-input-query {
	position: relative;
	z-index: 1;
}
.select-dropdown .box-input-query input {
	padding-right: 25px;
	background-color: transparent;
	cursor: pointer;
}
.select-dropdown .box-input-query .arrow-down {
	position: absolute;
	top:0;
	bottom: 0;
	right: 6px;
	z-index:-1;
	display: flex;
	align-items: center;
	color: #999999;
}
.select-dropdown .box-input-query .arrow-down:before {
	content: "\e60b";
}
.select-dropdown .selector-wrap {
	position: absolute;
	top: 32px;
	left: 0;
	right: 0;
	display: none;
	border:1px solid #e1e1e1;
	border-radius: 0 0 4px 4px;
	box-shadow: 0 4px 10px rgba(124,135,144,0.1);
	background-color: #fff;
	box-sizing: border-box;
}
.select-dropdown .selector-wrap .box-input-search {
	margin: 4px;
	border-color: #e5e6eb;
	border-radius: 0;
	box-sizing: border-box;
}
.select-dropdown .select-item {
	max-height: 200px;
	overflow-y: auto;
}
.select-dropdown .select-item li {
	display: flex;
	align-items: flex-start;
	padding: 6px 9px;
	font-size: 13px;
	line-height: 20px;
	text-align: left;
	color: #000;
	cursor: pointer;
}
.select-dropdown .select-item li:hover {
	background-color: #e8f4f4;
}
.select-dropdown .select-item li .item-con {
	flex: 1;
}
.select-dropdown .select-bottom {
	display: flex;
	align-items: center;
	padding: 4px 9px;
	font-size: 13px;
	border-top: 1px solid #e5e6eb;
}
.select-dropdown .select-bottom div {
	flex: 1;
	color: #23b130;
}
.select-dropdown .select-bottom .box-count {
	margin-left: 3px;
	margin-right: 3px;
}
.select-dropdown .select-bottom .box-btn {
	padding-left: 7px;
	padding-right: 7px;
	font-size: 13px;
	line-height: 24px;
}
.select-dropdown .select-item li.sub-title {
	color: #657076;
	cursor: default;
}
.select-dropdown .select-item li.sub-title i {
	float: left;
	margin-top: 7px;
	margin-right: 5px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #c6cace;
}
.select-dropdown .select-item li.sub-title:hover {
	background-color: transparent;
}

/*多级联动选择容器*/
.cascade-selector {
	position: relative;
}
.cascade-selector .selector-wrap {
	position: absolute;
	left: -1px;
	top: 0;
	z-index: 9;
	width:100%;
	max-height: 192px;
	background-color: #fff;
	border:1px solid #e1e1e1;
	border-radius: 0 0 3px 3px;
	box-shadow: 0 4px 10px rgba(124,135,144,0.1);
	overflow-y: auto;
}
.cascade-selector .select-level {
	display: flex;
}
.cascade-selector .select-level ul {
	border-right:1px solid #e1e1e1;
}
.cascade-selector .select-level ul:last-child {
	border: none;
}
.cascade-selector .select-level ul li {
	display: flex;
	align-items: center;
	padding: 7px 8px 7px 10px;
	font-size: 13px;
	line-height: 18px;
	text-align: left;
	color: #999;
	cursor: pointer;
}
.cascade-selector .select-level ul li .box-name {
	flex: 1;
	color: #000;
}
.cascade-selector .select-level ul li:hover,
.cascade-selector .select-level ul li.box-cur {
	background-color: #e8f4f4;
}
.cascade-selector .select-level ul li .icon-right-arrow:before {
	content: "\e608";
}
.cascade-selector .select-level .select-level-2 {
	border: none;
	display: none;
}
.cascade-selector .mask{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,0);
	z-index:8;
	display: none;
}
.cascade-selector .box-arrow {
	position: relative;
	z-index: 1;
}
.cascade-selector .box-arrow input {
	padding-right: 25px;
	cursor: pointer;
}
.cascade-selector .box-arrow .arrow-down {
	position: absolute;
	top:0;
	bottom: 0;
	right: 6px;
	z-index:-1;
	display: flex;
	align-items: center;
	color: #999999;
}
.cascade-selector.box-input .arrow-down:before {
	content: "\e60b";
}

/* 双列表互选选择容器 */
.dual-list-selector {
	display: grid;
	grid-template-columns: 260px 90px 260px;
	grid-gap: 20px;
	grid-template-rows: 240px;
	font-size: 14px;
	overflow: hidden;
}
.dual-list-selector .selector-wrap .selector-search {
	display: flex;
	position: relative;
	border-radius: 4px 4px 0 0;
	background-color: #fff;
	overflow: hidden;
}
.dual-list-selector .selector-wrap .selector-search .box-input {
	flex: 1;
	border-radius: 4px 0 0 0;
	border-right: 0;
	border-bottom: 0;
}
.dual-list-selector .selector-wrap .selector-search .box-input input {
	padding-top: 4px;
	padding-bottom: 4px;
	height: 29px;
}
.dual-list-selector .selector-wrap .selector-search .box-btn {
	padding-left: 18px;
	padding-right: 18px;
	height: 30px;
	line-height: 28px;
	border-radius: 0 4px 0 0;
}
.dual-list-selector .selector-wrap .selector-list {
	height: calc(100% - 32px);
	border-radius: 4px;
	border: 1px solid #e1e1e1;
	background-color:#fff;
	box-sizing: border-box;
	overflow: hidden;
}
.dual-list-selector .selector-wrap:first-child .selector-list {
	border-radius: 0 0 4px 4px;
}
.dual-list-selector .selector-wrap .selector-list select {
	display: block;
	width: 100%;
	height: 100%;
	border:none;
	overflow-y:auto;
}
.dual-list-selector .selector-wrap .selector-list select option {
	padding:5px 9px;
}
.dual-list-selector .selector-controls {
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	margin-top: 30px;
	height: calc(100% - 30px);
}
.dual-list-selector .selector-controls [type="button"] {
	display:block;
	padding-left:0;
	padding-right:0;
	width: 100%;
	font-size: 13px;
	line-height: 28px;
}
.dual-list-selector .selector-controls [type="button"]:not(:last-child) {
	margin-bottom:8px;
}
.dual-list-selector .selector-wrap .selector-loading {
	display: flex;
	height: 100%;
	justify-content: center;
	align-items: center;
}

/* 上传图片 */
.uploadPic:after {
	display: block;
	content: "";
	clear: both;
}
.uploadPic .box-picList {
	display: contents;
}
.uploadPic .box-picList li {
	float: left;
	margin-top: 6px;
	margin-bottom: 6px;
	margin-right: 14px;
	width: 72px;
}
.uploadPic .box-picList li .box-wrap {
	position:relative;
	height: 72px;
	background-color: #f2f3f5;
	border-radius: 3px;
	box-sizing: border-box;
}
.uploadPic .box-picList li .box-edit {
	border: 3px solid #009cff;
}
.uploadPic .box-picList li img {
	display:block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	border-radius: 3px;
}
.uploadPic .box-picList li .box-txt {
	margin-top: 6px;
	font-size: 12px;
	line-height: 14px;
	color: #88909b;
}
.uploadPic .box-picList li .box-del {
	position: absolute;
	top: -6px;
	right: -10px;
	width: 18px;
	height: 18px;
	font-size: 15px;
	font-weight: 600;
	line-height: 16px;
	color: #fff;
	text-align: center;
	border-radius: 50%;
	background-color: #88909b;
	transform-origin-x: 0;
	transform: scale(0.80);
	-webkit-transform-origin-x: 0;
	-webkit-transform: scale(0.80);
	cursor:pointer;
}
.uploadPic .box-picList li .box-loading {
	position:absolute;
	top:0;
	bottom: 0;
	left:0;
	right: 0;
	display: none;
	display: flex;
	align-items: center;
	justify-content:center;
	text-align: center;
	font-size:12px;
	color: #fff;
	background-color: rgba(0,0,0,0.5);
	border-radius: 3px;
}
.uploadPic .box-picList li .box-reUpload {
	position:absolute;
	bottom: 0;
	left:0;
	right: 0;
	display: none;
	font-size:12px;
	line-height: 22px;
	text-align: center;
	color: #fff;
	cursor: pointer;
	background-color: rgba(0,0,0,0.5);
	border-radius: 0 0 3px 3px;
}
.uploadPic .box-addBtn {
	float:left;
	margin-top: 6px;
	margin-bottom: 6px;
	margin-right: 14px;
	width: 72px;
	height: 72px;
	font-size: 13px;
	line-height:normal;
	text-align:center;
	color: #88909b;
	border-radius: 4px;
	background-color: #f2f3f5;
	cursor: pointer;
}
.uploadPic .box-addBtn i {
	display: block;
	margin-bottom: 6px;
}
.uploadPic .box-addBtn em {
	font-size:12px;
}