@charset "utf-8";
/* ==================== 兼容旧版本的页面布局 ==================== */

/* 显隐工具类 */
.hide, .hidden {
	display: none !important;
}

.show {
	display: block !important;
}

.display-initial {
	display: initial !important;
}

.invisible {
	visibility: hidden;
}

/* 清除浮动 */
.clear-b {
	clear: both;
}

.clear-l {
	clear: left;
}

.clear-r {
	clear: right;
}

.pull-right {
	float: right !important;
}

.pull-left {
	float: left !important;
}

/* 文本对齐 */
.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

.text-justify {
	text-align: justify;
}

.text-nowrap {
	white-space: nowrap;
}

/* 文字样式 */
.fb, .text-bold {
	font-weight: bold;
}

.text-lowercase {
	text-transform: lowercase;
}

.text-uppercase {
	text-transform: uppercase;
}

.text-capitalize {
	text-transform: capitalize;
}

.text-tip {
	color: var(--ant-color-error);
}

.font-red{
	color: var(--ant-color-error);
}

/* 分隔线 */
.line {
	height: 1px;
	width: 100%;
	border-bottom: 1px solid var(--ant-color-split);
}

/* 提示框（与 noticebar 保持一致） */
.alert-tip {
	box-sizing: border-box;
	line-height: var(--ant-line-height);
	font-size: var(--ant-font-size);
	padding: var(--ant-padding-sm) var(--ant-padding) var(--ant-padding-sm) 50px;
	margin-bottom: 10px;
	border-radius: var(--ant-border-radius-lg);
	position: relative;
}

.alert-tip:before {
	content: '!';
	display: inline-block;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	text-align: center;
	line-height: 22px;
	font-size: var(--ant-badge-font-size);
	font-weight: bold;
	position: absolute;
	left: 16px;
	top: var(--ant-padding-sm);
	color: var(--ant-color-text-light-solid);
}

.alert-tip ul {
	margin-left: 10px;
}

.alert-tip ul li {
	list-style: none;
}

.alert-primary {
	color: var(--ant-color-text);
	background-color: var(--ant-color-info-bg);
	border: 1px solid var(--ant-color-info-border);
}

.alert-primary:before {
	background: var(--ant-color-info);
}

.alert-secondary {
	color: var(--ant-color-text);
	background-color: #e2e3e5;
	border: 1px solid #838589;
}

.alert-secondary:before {
	background: var(--ant-color-text-tertiary);
}

.alert-success {
	color: var(--ant-color-text);
	background-color: var(--ant-color-success-bg);
	border: 1px solid var(--ant-color-success-border);
}

.alert-success:before {
	background: var(--ant-color-success);
}

.alert-danger {
	color: var(--ant-color-text);
	background-color: var(--ant-color-error-bg);
	border: 1px solid var(--ant-color-error-border);
}

.alert-danger:before {
	background: var(--ant-color-error);
}

.alert-warning {
	color: var(--ant-color-text);
	background-color: var(--ant-color-warning-bg);
	border: 1px solid var(--ant-color-warning-border);
}

.alert-warning:before {
	background: var(--ant-color-warning);
}

.alert-info {
	color: var(--ant-color-text);
	background-color: var(--ant-color-info-bg);
	border: 1px solid var(--ant-color-info-border);
}

.alert-info:before {
	background: var(--ant-color-info);
}

.alert-light {
	color: var(--ant-color-text);
	background-color: var(--ant-color-bg-container);
	border: 1px solid var(--ant-color-border);
}

.alert-light:before {
	background: var(--ant-color-text-quaternary);
}

.alert-dark {
	color: var(--ant-color-text);
	background-color: var(--ant-color-border);
	border: 1px solid var(--ant-color-text-tertiary);
}

.alert-dark:before {
	background: var(--ant-color-text);
}

/* Text Color and A Color */
.text-primary, .text-primary a {
	color: var(--ant-color-primary-text);
}

.text-primary:focus, .text-primary a:focus {
	color: var(--ant-color-primary-text-active);
}

.text-default, .text-default a {
	color: var(--ant-color-text-quaternary);
}

.text-default:focus, .text-default a:focus {
	color: var(--ant-color-text-tertiary);
}

.text-warning, .text-warning a {
	color: var(--ant-color-warning-text);
}

.text-warning:focus, .text-warning a:focus {
	color: var(--ant-color-warning-text-active);
}

.text-success, .text-success a {
	color: var(--ant-color-success-text);
}

.text-success:focus, .text-success a:focus {
	color: var(--ant-color-success-text-active);
}

.text-info, .text-info a {
	color: var(--ant-color-info-text);
}

.text-info:focus, .text-info a:focus {
	color: var(--ant-color-info-text-active);
}

.text-white, .text-white a {
	color: var(--ant-color-text-light-solid);
}

.text-white:focus, .text-white a:focus {
	color: var(--ant-color-border);
}

.text-danger, .text-danger a {
	color: var(--ant-color-error-text);
}

.text-danger:focus, .text-danger a:focus {
	color: var(--ant-color-error-text-active);
}

.text-muted, .text-muted a {
	color: var(--ant-color-text-tertiary);
}

.text-muted:focus, .text-muted a:focus {
	color: var(--ant-color-text-secondary);
}

.text-tip{
	color: var(--ant-color-error-text);
}

/* 标签（与 eu-tag filled 变体保持一致） */
.label {
	display: inline-flex;
	align-items: center;
	box-sizing: border-box;
	padding: 1px 8px;
	font-size: 13px;
	line-height: 20px;
	white-space: nowrap;
	vertical-align: baseline;
	border-radius: var(--ant-border-radius-sm);
	border: 1px solid;
	cursor: default;
}

.label-default {
	background-color: var(--eu-tag-default-bg);
	border-color: var(--eu-tag-default-border);
	color: var(--eu-tag-default-color);
}

.label-primary {
	background-color: var(--eu-tag-processing-bg);
	border-color: var(--eu-tag-processing-border);
	color: var(--eu-tag-processing-color);
}

.label-success {
	background-color: var(--eu-tag-success-bg);
	border-color: var(--eu-tag-success-border);
	color: var(--eu-tag-success-color);
}

.label-info {
	background-color: var(--eu-tag-cyan-bg);
	border-color: var(--eu-tag-cyan-border);
	color: var(--eu-tag-cyan-color);
}

.label-warning {
	background-color: var(--eu-tag-warning-bg);
	border-color: var(--eu-tag-warning-border);
	color: var(--eu-tag-warning-color);
}

.label-danger {
	background-color: var(--eu-tag-error-bg);
	border-color: var(--eu-tag-error-border);
	color: var(--eu-tag-error-color);
}

/* 输入框：基础样式 */
.input-control.checkbox, .input-control.radio, .input-control.switch,
	.input-control.text, .input-control.password, .input-control.select,
	.input-control.textarea {
	display: inline-block;
	position: relative;
}

.input-control.checkbox, .input-control.radio {
	margin: 0 3px 3px 0;
	width: 14px;
	height: 14px;
}

.input-control.text, .input-control.password, .input-control.select,
	.input-control.textarea {
	border: 1px #d9d9d9 solid;
}

.input-control.checkbox .check, .input-control.radio .check {
	width: 14px;
	height: 14px;
	background-color: #ffffff;
	border: 2px #d9d9d9 solid;
	padding: 0;
	margin: 0 5px 0 0;
	position: relative;
	display: inline-block;
	vertical-align: middle;
}

.input-control.checkbox.text-left .check, .input-control.radio.text-left .check
	{
	margin: 0 0 0 5px;
}

.input-control.checkbox:hover .check, .input-control.radio:hover .check
	{
	border-color: #919191;
}

.input-control.checkbox .check:active, .input-control.radio .check:active
	{
	border-color: #1e1e1e;
}

.input-control.checkbox .check:focus, .input-control.radio .check:focus
	{
	border-color: #919191;
}

.input-control.checkbox .check:after, .input-control.radio .check:after
	{
	position: absolute;
	font-size: 9pt;
	line-height: 9pt;
}

.input-control.radio .check {
	border-radius: 50%;
}

.input-control.text, .input-control.password, .input-control.file {
	display: inline-block;
	background-color: #fff;
	outline: 0;
	height: 32px;
	line-height: 32px;
	position: relative;
	width: 100%;
	padding: 0 var(--ant-padding-sm);
	-moz-border-radius: var(--ant-border-radius);
	-webkit-border-radius: var(--ant-border-radius);
	border-radius: var(--ant-border-radius);
}

.input-control.text:focus, .input-control.password:focus, .input-control.file:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgb(0 ,0 ,0 , 0.08), 0 0 8px rgb(102 ,175, 233 , 0.6);
  box-shadow: inset 0 1px 1px rgb(0 ,0 ,0 , 0.08), 0 0 8px rgb(102 ,175, 233 , 0.6);
}

.input-control.text .btn-search, .input-control.password .btn-search,
	.input-control.file .btn-search {
	display: block;
}

.input-control.text .btn-date, .input-control.password .btn-date,
	.input-control.file .btn-date {
	display: block;
}

.input-control.text .btn-file, .input-control.password .btn-file,
	.input-control.file .btn-file {
	display: block;
}

.input-control.text input, .input-control.password input, .input-control.file input
	{
	border: 1px #d9d9d9 solid;
	width: 100%;
	height: 100%;
	padding: 5px;
	z-index: 1;
}

.input-control.select {
	display: inline-block;
	position: relative;
	padding: 5px 5px;
}

.input-control.textarea {
	display: inline-block;
	position: relative;
	width: 100%;
	padding: 5px;
}

.input-control.select select, .input-control.textarea select,
	.input-control.select textarea, .input-control.textarea textarea {
	border: 1px #d9d9d9 solid;
	width: 100%;
	padding: 5px;
}

.input-control.select textarea, .input-control.textarea textarea {
	min-height: 100px;
}

.input-control.text.warning-state input, .input-control.password.warning-state input,
	.input-control.select.warning-state input, .input-control.textarea.warning-state input,
	.input-control.file.warning-state input, .input-control.text.warning-state select,
	.input-control.password.warning-state select, .input-control.select.warning-state select,
	.input-control.textarea.warning-state select, .input-control.file.warning-state select,
	.input-control.text.warning-state textarea, .input-control.password.warning-state textarea,
	.input-control.select.warning-state textarea, .input-control.textarea.warning-state textarea,
	.input-control.file.warning-state textarea {
	border-color: #fa6800;
}

.input-control.text.error-state input, .input-control.password.error-state input,
	.input-control.select.error-state input, .input-control.textarea.error-state input,
	.input-control.file.error-state input, .input-control.text.error-state select,
	.input-control.password.error-state select, .input-control.select.error-state select,
	.input-control.textarea.error-state select, .input-control.file.error-state select,
	.input-control.text.error-state textarea, .input-control.password.error-state textarea,
	.input-control.select.error-state textarea, .input-control.textarea.error-state textarea,
	.input-control.file.error-state textarea {
	border-color: #e51400;
}

.input-control.text.info-state input, .input-control.password.info-state input,
	.input-control.select.info-state input, .input-control.textarea.info-state input,
	.input-control.file.info-state input, .input-control.text.info-state select,
	.input-control.password.info-state select, .input-control.select.info-state select,
	.input-control.textarea.info-state select, .input-control.file.info-state select,
	.input-control.text.info-state textarea, .input-control.password.info-state textarea,
	.input-control.select.info-state textarea, .input-control.textarea.info-state textarea,
	.input-control.file.info-state textarea {
	border-color: #4390df;
}

.input-control.text.success-state input, .input-control.password.success-state input,
	.input-control.select.success-state input, .input-control.textarea.success-state input,
	.input-control.file.success-state input, .input-control.text.success-state select,
	.input-control.password.success-state select, .input-control.select.success-state select,
	.input-control.textarea.success-state select, .input-control.file.success-state select,
	.input-control.text.success-state textarea, .input-control.password.success-state textarea,
	.input-control.select.success-state textarea, .input-control.textarea.success-state textarea,
	.input-control.file.success-state textarea {
	border-color: #60a917;
}

.input-control.file {
	overflow: hidden;
}

.input-control:disabled{
	background-color: #f5f7fa;
}

input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill {
   	background-color: #ffffff;
    background-image: none !important;
    color: rgb(0, 0, 0) !important;
    -webkit-box-shadow: 0 0 0px 1000px white inset;
}

/* 徽章 */
.badge {
	line-height: 1;
	padding: 2px 6px;
	margin-top: 17px;
	margin-right: 5px;
	font-weight: normal;
	color: var(--ant-color-text-light-solid);
	text-align: center;
	white-space: nowrap;
	vertical-align: baseline;
	background-color: #999;
	border-radius: var(--ant-border-radius-sm);
}

.badge.badge-primary {
	background-color: var(--ant-color-primary) !important;
}

.badge.badge-info {
    background-color: var(--ant-blue-8) !important;
}

.badge.badge-success {
	background-color: var(--ant-color-success-active) !important;
}

.badge.badge-warning {
	background-color: var(--ant-orange-6) !important;
}

.badge.badge-danger {
	background-color: var(--ant-red-6) !important;
}

/* 链接 */
.link.is-disabled {
	cursor: not-allowed;
}

.link.link-default {
	color: var(--ant-color-text);
}

.link.link-default:hover {
	color: var(--ant-color-primary);
}

.link.link-default:after {
	border-color: var(--ant-color-primary);
}

.link.link-default.is-disabled {
	color: var(--ant-color-text-disabled);
}

.link.link-primary {
	color: var(--app-base-theme-primary);
}

.link.link-primary:hover {
	color: var(--app-base-theme-primary-hover);
}

.link.link-primary:after {
	border-color: var(--app-base-theme-primary);
}

.link.link-primary.is-disabled {
	color: var(--ant-color-text-disabled);
}

.link.link-primary.is-underline:hover:after {
	border-color: var(--app-base-theme-primary);
}

.link.link-danger {
	color: var(--ant-color-error);
}

.link.link-danger:hover {
	color: var(--ant-color-error-hover);
}

.link.link-danger:after {
	border-color: var(--ant-color-error);
}

.link.link-danger.is-disabled {
	color: var(--ant-color-text-disabled);
}

.link.link-danger.is-underline:hover:after {
	border-color: var(--ant-color-error);
}

.link.link-success {
	color: var(--ant-color-success);
}

.link.link-success:hover {
	color: var(--ant-color-success-hover);
}

.link.link-success:after {
	border-color: var(--ant-color-success);
}

.link.link-success.is-disabled {
	color: var(--ant-color-text-disabled);
}

.link.link-success.is-underline:hover:after {
	border-color: var(--ant-color-success);
}

.link.link-warning {
	color: var(--ant-color-warning);
}

.link.link-warning:hover {
	color: var(--ant-color-warning-hover);
}

.link.link-warning:after {
	border-color: var(--ant-color-warning);
}

.link.link-warning.is-disabled {
	color: var(--ant-color-text-disabled);
}

.link.link-warning.is-underline:hover:after {
	border-color: var(--ant-color-warning);
}

.link.link-info {
	color: var(--ant-color-info);
}

.link.link-info:hover {
	color: var(--ant-color-info-hover);
}

.link.link-info:after {
	border-color: var(--ant-color-info);
}

.link.link-info.is-disabled {
	color: var(--ant-color-text-disabled);
}

.link.link-info.is-underline:hover:after {
	border-color: var(--ant-color-info);
}

/* 面板（与 eu-panel filled 变体保持一致） */
.panel-default .panel-header {
	background: var(--ant-color-bg-container);
	border-color: var(--ant-color-border);
	width: auto !important;
}

.panel-default .panel-body {
	border-color: var(--ant-color-border);
	width: auto !important;
}

.panel-primary .panel-header .panel-title, .panel-info .panel-header .panel-title,
	.panel-success .panel-header .panel-title, .panel-warning .panel-header .panel-title,
	.panel-danger .panel-header .panel-title {
	color: var(--ant-color-text-light-solid);
}

.panel-primary .panel-header {
	background: var(--ant-color-primary);
	border-color: var(--ant-color-primary);
}

.panel-primary .panel-body {
	border-color: var(--ant-color-primary);
}

.panel-success .panel-header {
	background: var(--ant-color-success);
	border-color: var(--ant-color-success);
}

.panel-success .panel-body {
	border-color: var(--ant-color-success);
}

.panel-info .panel-header {
	background: var(--ant-color-info);
	border-color: var(--ant-color-info);
}

.panel-info .panel-body {
	border-color: var(--ant-color-info);
}

.panel-warning .panel-header {
	background: var(--ant-color-warning);
	border-color: var(--ant-color-warning);
}

.panel-warning .panel-body {
	border-color: var(--ant-color-warning);
}

.panel-danger .panel-header {
	background: var(--ant-color-error);
	border-color: var(--ant-color-error);
}

.panel-danger .panel-body {
	border-color: var(--ant-color-error);
}

/* 按钮（与 eu-button filled 变体保持一致） */
.btn-default {
	color: var(--ant-color-text);
	background: var(--ant-color-bg-container);
	border-color: var(--ant-color-border);
}

.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.activ {
	color: var(--ant-color-primary-hover);
	background: var(--ant-color-bg-container);
	border-color: var(--ant-color-primary-hover);
}

.btn-default.l-btn-disabled, .btn-default.l-btn-disabled:hover{
	color: var(--ant-color-text-disabled);
	background: var(--ant-color-bg-base);
	border-color: var(--ant-color-border);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-default.btn-outline {
	color: var(--ant-color-text);
	background: transparent;
	border-color: transparent;
}

.btn-default.btn-outline:hover, .btn-default.btn-outline:focus, .btn-default.btn-outline:active, .btn-default.btn-outline.active { 
	background: var(--ant-color-bg-base);
	border-color: transparent;
	color: var(--ant-color-text);
}

.btn-default.btn-outline.l-btn-disabled, .btn-default.btn-outline.l-btn-disabled:hover{
	color: var(--ant-color-text-disabled);
	background: transparent;
	border-color: transparent;
	opacity: 0.6;
	cursor: not-allowed
}

.btn-primary {
	color: var(--ant-color-text-light-solid);
    background: var(--ant-color-primary);
    border-color: var(--ant-color-primary)
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active {
	background: var(--ant-color-primary-hover);
    border-color: var(--ant-color-primary-hover);
    color: var(--ant-color-text-light-solid)
}

.btn-primary.l-btn-disabled, .btn-primary.l-btn-disabled:hover{
	color: var(--ant-color-text-light-solid);
	background: var(--ant-color-primary);
	border-color: var(--ant-color-primary);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-primary.btn-outline {
	color: var(--ant-color-primary);
    background: transparent;
    border-color: var(--ant-color-primary)
}

.btn-primary.btn-outline:hover, .btn-primary.btn-outline:focus, .btn-primary.btn-outline:active, .btn-primary.btn-outline.active {
	color: var(--ant-color-primary-hover);
	background: var(--ant-color-primary-bg);
	border-color: var(--ant-color-primary-hover)
}

.btn-primary.btn-outline.l-btn-disabled, .btn-primary.btn-outline.l-btn-disabled:hover{
	color: var(--ant-color-primary);
	background: transparent;
	border-color: var(--ant-color-primary);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-success {
	 color: var(--ant-color-text-light-solid);
    background: var(--ant-color-success);
    border-color: var(--ant-color-success)
}

.btn-success:hover, .btn-success:focus, .btn-success:active, .btn-success.active {
	background: var(--ant-color-success-hover);
    border-color: var(--ant-color-success-hover);
    color: var(--ant-color-text-light-solid)
}

.btn-success.l-btn-disabled, .btn-success.l-btn-disabled:hover{
	color: var(--ant-color-text-light-solid);
	background: var(--ant-color-success);
	border-color: var(--ant-color-success);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-success.btn-outline {
	color: var(--ant-color-success);
    background: transparent;
    border-color: var(--ant-color-success)
}

.btn-success.btn-outline:hover, .btn-success.btn-outline:focus, .btn-success.btn-outline:active, .btn-success.btn-outline.active {
	color: var(--ant-color-success-hover);
	background: var(--ant-color-success-bg);
	border-color: var(--ant-color-success-hover)
}

.btn-success.btn-outline.l-btn-disabled, .btn-success.btn-outline.l-btn-disabled:hover{
	color: var(--ant-color-success);
	background: transparent;
	border-color: var(--ant-color-success);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-warning {
	 color: var(--ant-color-text-light-solid);
    background: var(--ant-color-warning);
    border-color: var(--ant-color-warning)
}

.btn-warning:hover, .btn-warning:focus, .btn-warning:active, .btn-warning.active {
	background: var(--ant-color-warning-hover);
    border-color: var(--ant-color-warning-hover);
    color: var(--ant-color-text-light-solid)
}

.btn-warning.l-btn-disabled, .btn-warning.l-btn-disabled:hover{
	color: var(--ant-color-text-light-solid);
	background: var(--ant-color-warning);
	border-color: var(--ant-color-warning);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-warning.btn-outline {
	color: var(--ant-color-warning);
	background: transparent;
	border-color: var(--ant-color-warning)
}

.btn-warning.btn-outline:hover, .btn-warning.btn-outline:focus, .btn-warning.btn-outline:active, .btn-warning.btn-outline.active {  
	color: var(--ant-color-warning-hover);
	background: var(--ant-color-warning-bg);
	border-color: var(--ant-color-warning-hover)
}

.btn-warning.btn-outline.l-btn-disabled, .btn-warning.btn-outline.l-btn-disabled:hover{
	color: var(--ant-color-warning);
	background: transparent;
	border-color: var(--ant-color-warning);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-danger {
	color: var(--ant-color-text-light-solid);
    background: var(--ant-color-error);
    border-color: var(--ant-color-error)
}

.btn-danger:hover, .btn-danger:focus, .btn-danger:active, .btn-danger.active
	{
	background: var(--ant-color-error-hover);
    border-color: var(--ant-color-error-hover);
    color: var(--ant-color-text-light-solid)
}

.btn-danger.l-btn-disabled, .btn-danger.l-btn-disabled:hover{
	color: var(--ant-color-text-light-solid);
	background: var(--ant-color-error);
	border-color: var(--ant-color-error);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-danger.btn-outline {
	color: var(--ant-color-error);
    background: transparent;
    border-color: var(--ant-color-error)
}

.btn-danger.btn-outline:hover, .btn-danger.btn-outline:focus, .btn-danger.btn-outline:active, .btn-danger.btn-outline.active {
	color: var(--ant-color-error-hover);
	background: var(--ant-color-error-bg);
	border-color: var(--ant-color-error-hover)
}

.btn-danger.btn-outline.l-btn-disabled, .btn-danger.btn-outline.l-btn-disabled:hover{
	color: var(--ant-color-error);
	background: transparent;
	border-color: var(--ant-color-error);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-info {
	color: var(--ant-color-text-light-solid);
	background: var(--ant-color-info);
	border-color: var(--ant-color-info);
}

.btn-info:hover, .btn-info:focus, .btn-info:active, .btn-info.active {
	color: var(--ant-color-text-light-solid);
	background: var(--ant-color-info-hover);
	border-color: var(--ant-color-info-hover);
}

.btn-info.l-btn-disabled, .btn-info.l-btn-disabled:hover{
	color: var(--ant-color-text-light-solid);
	background: var(--ant-color-info);
	border-color: var(--ant-color-info);
	opacity: 0.6;
	cursor: not-allowed
}

.btn-info.btn-outline {
	color: var(--ant-color-info);
	background: transparent;
	border-color: var(--ant-color-info);
}

.btn-info.btn-outline:hover, .btn-info.btn-outline:focus, .btn-info.btn-outline:active, .btn-info.btn-outline.active {
	color: var(--ant-color-info-hover);
	background: var(--ant-color-info-bg);
	border-color: var(--ant-color-info-hover);
}

.btn-info.btn-outline.l-btn-disabled, .btn-info.btn-outline.l-btn-disabled:hover{
	color: var(--ant-color-info);
	background: transparent;
	border-color: var(--ant-color-info);
	opacity: 0.6;
	cursor: not-allowed;
}

.btn-clear {
	color: var(--ant-color-text-light-solid);
	background: var(--ant-color-success);
	border-color: var(--ant-color-success);
}

.btn-clear:hover, .btn-clear:focus, .btn-clear:active, .btn-clear.active
	{
	color: var(--ant-color-text-light-solid);
			  
	background: var(--ant-color-success-hover);
	border-color: var(--ant-color-success-hover);
}

.btn-clear.l-btn-disabled, .btn-clear.l-btn-disabled:hover{
	color: var(--ant-color-text-light-solid);
	background-color: var(--ant-color-success);
	border-color: var(--ant-color-success);
	opacity: 0.6;
	cursor: not-allowed;
}

.btn-clear.btn-outline {
	color: var(--ant-color-success);
	background: transparent;
	border-color: var(--ant-color-success);
}

.btn-clear.btn-outline:hover, .btn-clear.btn-outline:focus, .btn-clear.btn-outline:active, .btn-clear.btn-outline.active {	  
	color: var(--ant-color-success-hover);
	background: var(--ant-color-success-bg);
	border-color: var(--ant-color-success-hover);
}

.btn-clear.btn-outline.l-btn-disabled, .btn-clear.btn-outline.l-btn-disabled:hover{
	color: var(--ant-color-success);
	background: transparent;
	border-color: var(--ant-color-success);
	opacity: 0.6;
	cursor: not-allowed;
}

.btn-block {
	display: block;
	width: 100%;
}

.btn-rounded {
	border-radius: 20px;
}

.btn-outline {
	color: inherit;
	background-color: transparent;
	transition: all 0.2s;
}

/* plain select  */
.select-plain .option-block {
	min-width: 60px;
}

.select-plain .date-option {
	width: auto;
}

.select-plain .option-block, .select-plain .date-option {
	float: left;
	text-align: left;
	margin-right: 5px;
	display: inline;
	cursor: pointer;
	border-radius: 2px;
	margin-top: 0px;
	position: relative;
	padding-left: 20px;
	margin-right: 20px;
}

.select-plain .option-block:before,.select-plain .date-option:before {
	content:'';
	display:block;
	width: 14px;
	height: 14px;
	border: 1px solid #DCDFE6;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.select-plain .option-block.selected:before, .select-plain .option-block:hover:before,
	.select-plain .date-option.selected:before, .select-plain .date-option:hover:before {
	border: 4px solid #409eff;
}

/* 定义一些页面主内容区的样式 */
.page-main__content .tree-part {
    width: 270px;
    height: calc(100% - 20px);
    top: 10px;
    float: left;
    position: absolute;
}

.page-main__content .tree-part .tree-node .tree-title {
    max-width: 180px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.page-main__content .tree-part .panel-body {
    padding-bottom: 50px;
    border-radius: 0px;
}

.page-main__content .content-part {
    width: auto;
    margin-left: 280px;
}

.page-main__content .page-content {
    border: 1px solid #ddd;
    min-width: 1000px;
    min-height: 550px;
    height: 500px;
    padding: 5px;
}

.table-search{
    margin-bottom: 10px;
}

.panel + .table-search {
    margin-top: 10px;
}

.panel + .table-main,
.table-main + .panel {
    margin-top: 10px;
}

.table-main:last-child .panel{
    margin-bottom: 0px;
}

.table-main .panel-body{
	border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

/* 用户工作台布局样式 */
.portal-container .portal-row {
    clear: both;
}

.portal-container .row-box {
    padding: 0px;
    position: relative;
}

.portal-container .row-box .element {
    margin-bottom: 10px;
}

.column1 {
    float: left;
    width: 7.875%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column2 {
    float: left;
    width: 16.25%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column3 {
    float: left;
    width: 24.625%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column4 {
    float: left;
    width: 33%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column5 {
    float: left;
    width: 41.375%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column6 {
    float: left;
    width: 49.75%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column7 {
    float: left;
    width: 58.125%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column8 {
    float: left;
    width: 66.5%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column9 {
    float: left;
    width: 74.875%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column10 {
    float: left;
    width: 83.25%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column11 {
    float: left;
    width: 91.625%;
    min-height: 50px;
    padding: 0;
    margin-right: 0.5%;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
}

.column12 {
    float: left;
    width: 100%;
    min-height: 50px;
    padding: 0;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
    overflow: hidden;
}

/* 在出现左侧选择、右侧配置场景的时候，定义左侧选择列样式 */
.list-container {
    position: relative;
    float: left;
    width: 250px;
    overflow: hidden;
    border: 1px solid #ccc;
}

.list-container .list-item {
    color: #777777;
    height: 40px;
    padding: 10px 0 10px 10px;
    text-decoration: none;
    overflow: hidden;
    background: #ffffff;
    border-bottom: 1px solid #ccc;
}

.list-container .list-item.selected,
.list-container .list-item:hover {
    font-weight: bold;
    cursor: pointer;
    background: #f1f1f1 none repeat scroll 0 0;
}

.list-container .list-item:last-child {
    border-bottom: none;
}

/* 查询无数据时候的显示样式 */
.no-data {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.no-data .nodata-img {
    margin-top: 10px;
    text-align: center;
    display: block;
}

.no-data .nodata-tip {
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
}

/* 上传文件列表样式 */
.upload-files li {
    float: left;
    margin-top: 5px;
    margin-right: 5px;
    padding: 5px;
    background: #cde69c none repeat scroll 0 0;
    line-height: 22px;
}

.upload-files li .item-name {
    text-decoration: underline;
}

.upload-files li .delete-btn {
    width: 16px;
    height: 16px;
    margin-left: 5px;
    display: inline-block;
    cursor: pointer;
}

/*显示系统公告通知*/
.assist-notice {
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 100px;
}

.assist-notice .notice-title {
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    padding: 10px;
    line-height: 36px;
}

.assist-notice .notice-time {
    font-size: var(--ant-font-size);
    color: var(--ant-color-text-tertiary);
    text-align: center;
    padding: var(--ant-padding) 0;
	margin-bottom: var(--ant-margin);
    border-bottom: 1px solid var(--ant-color-border);
}

.assist-notice .notice-content {
    font-size: 16px;
}

/* 用户查看反馈意见的样式  */
.comment-add {
    margin-top: var(--ant-margin-sm);
}

.comment-add .comment-item {
    margin-bottom: var(--ant-margin-sm);
    display: flex;
    align-items: flex-start;
    gap: var(--ant-margin-xs);
}

.comment-add .comment-label {
    width: 70px;
    flex: 0 0 70px;
}

.comment-add .comment-input {
    width: 100%;
}

.comment-show {
    width: 100%;
    padding: var(--ant-padding-sm) 0;
    margin-top: var(--ant-margin-sm);
    border-top: 1px solid var(--ant-color-border);
}

.comment-show .comment-show-con-img {
    width: 48px;
    height: 48px;
    margin-top: var(--ant-margin-xxs);
    overflow: hidden;
}

.comment-show .comment-show-con-list {
    width: 100%;
    padding: var(--ant-padding-xs);
    border-bottom: 1px solid var(--ant-color-split);
    border-radius: var(--ant-border-radius-sm);
    transition: background-color var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);
}

.comment-show .comment-show-con-list:hover {
    background-color: var(--ant-color-fill-secondary);
}

.comment-show .comment-show-con-list .comment-avatar {
    position: absolute;
    left: var(--ant-margin-xs);
    top: var(--ant-padding);
}

.comment-show .comment-show-con-list .comment-avatar img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 1px solid var(--ant-color-border);
    transition: border-color var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);
}

.comment-show .comment-show-con-list:hover .comment-avatar img {
    border-color: var(--ant-color-primary);
}

.comment-show .hf-list-con {
    width: 100%;
    margin-top: var(--ant-margin-xs);
    background-color: var(--ant-color-fill-tertiary);
    border-radius: var(--ant-border-radius);
    display: flex;
    flex-direction: column;
}

.comment-show .comment-name,
.comment-show .comment-size-name {
    color: var(--ant-color-primary);
    font-weight: var(--ant-font-weight-semibold);
    transition: color var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);
}

.comment-show .my-pl-con {
    color: var(--ant-color-text-tertiary);
    line-height: 24px;
	width: 100%;
}

.comment-show .date-dz-left {
    color: var(--ant-color-text-tertiary);
    display: block;
    font-size: var(--ant-font-size-sm);
}

.comment-show .comment-time,
.comment-show .comment-pl-block {
	color: var(--ant-color-text-tertiary);
}

.comment-show .comment-pl-block {
    margin-top: 0;
}

.comment-show .removeBlock {
    margin-right: var(--ant-margin-md);
    display: inline-flex;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-2px);
    transition: opacity var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out),
                visibility var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out),
                transform var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);
}

.comment-show .toolbar-btn {
    display: inline-flex;
    align-items: center;
}

.comment-show .all-pl-con {
    width: 100%;
    padding: var(--ant-padding-sm) var(--ant-padding);
    display: flex;
    flex-direction: column;
    gap: var(--ant-margin-xxs);
}

.comment-show .hfpl-text {
    margin-top: 0;
	color: var(--ant-color-text-tertiary);
}

.comment-show .comment-show-con-list:hover .removeBlock {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.comment-header .comment-toolbar,
.reply-header .reply-toolbar {
	margin-right: var(--ant-margin-sm);
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out),
                visibility var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);
}

.comment-show-con-list:hover .comment-header .comment-toolbar,
.reply-list:hover .reply-header .reply-toolbar {
    opacity: 1;
    visibility: visible;
}

.comment-show .hf-list-con .all-pl-con {
    border-top: 1px solid var(--ant-color-split);
    padding-bottom: var(--ant-padding-sm);
}

.comment-show .hf-list-con .all-pl-con:first-child {
    border-top: 0;
}

.organizational-container {
    width: 798px;
    margin: 20px auto;
}

.organizational-top {
    text-align: center;
}

.organizational-info {
    overflow: hidden;
}

.organizational-item {
    float: left;
    box-sizing: border-box;
    text-align: center;
}

.organizational-item.organizational-left .icon {
    width: 58px;
    height: 58px;
    border: 4px solid #e73b02;
    margin: 0 auto;
    border-radius: 50%;
    text-align: center;
}

.organizational-item.organizational-right .icon {
    width: 58px;
    height: 58px;
    border: 4px solid #004ab7;
    margin: 0 auto;
    border-radius: 50%;
}

.organizational-item .icon img {
    margin-top: 6px;
}

.organizational-item .font {
    height: 28px;
}

.organizational-item .font p {
    margin-top: 5px;
    font-size: 14px;
    line-height: 16px;
    color: #333;
}

.organizational-item .font .line {
    width: 1px;
    height: 12px;
    background: #d9d9d9;
    margin: 0 auto;
}

.organizational-item .model {
    position: relative;
}

.organizational-item .model .h-line {
    width: 343px;
    height: 1px;
    background: #d9d9d9;
    margin: 0 auto;
}

.organizational-item.organizational-right .model .h-line {
    width: 343px;
    height: 1px;
    background: #d9d9d9;
    margin: 0 auto;
}

.organizational-item .model .part {
    width: 100px;
    height: 77px;
    margin: 0 7px;
    float: left;
}

.organizational-item .model .part .line {
    width: 1px;
    height: 12px;
    background: #d9d9d9;
    margin: 0 auto;
}

.organizational-item .model .part div {
    margin-top: 1px;
    width: 100px;
    height: 70px;
}

.organizational-item.organizational-left .model .part div.area {
    background: url(/framework/images/console/organizational-orange.png) no-repeat center center;
}

.organizational-item.organizational-right .model .part div.area {
    background: url(/framework/images/console/organizational-blue.png) no-repeat center center;
}

.organizational-item .model .part div h2 {
    font-size: 28px;
    height: 44px;
    line-height: 44px;
    color: #fff;
    margin: 0 !important;
}

.organizational-item .model .part div p {
    height: 26px;
    line-height: 26px;
    color: #fff;
}

/* 人员账号统计信息区域样式 */
.person_info {
    margin-bottom: 3px;
    display: inline-block;
    width: 100%;
}

.person_info .park-label {
    display: inline-block;
    margin-right: 5px;
    font-size: 14px;
}

.person_info .park {
    display: inline-block;
    margin-right: 5px;
    font-size: 14px;
}

.import_main {
    display: inline-block;
    width: 100%;
}

.import_main .park {
    width: 50%;
    float: left;
    position: relative;
    text-align: center;
}

.import_main .park h4 {
    font-size: 14px;
    color: #212121;
    margin-bottom: 30px;
}

.import_main .park .imgBox {
    width: 68px;
    height: 68px;
    margin: 0 auto;
}

.import_main .park .imgBox img {
    width: 100%;
    height: 100%;
}

.import_main .park p {
    color: #212121;
    margin: 12px 0;
}

.import_main .park p b {
    color: #4C97F4;
    cursor: pointer;
}

.import_main .park .button {
    display: inline-block;
}

.import_main .park .tip {
    color: #757575;
    margin-top: 12px;
    display: block;
}

.import_main .park .tip b {
    color: #4C97F4;
    cursor: pointer;
}

.import_tip {
    margin-top: 10px;
    margin-left: 10px;
    border-top: 1px solid #eee;
}

.import_tip h6 {
    color: #757575;
    font-weight: 700;
	font-size: var(--ant-font-size-sm);
    line-height: 30px;
}

.import_tip p b {
    color: #4C97F4;
    cursor: pointer;
}

/* 分割线 */
.splitLine {
    height: 40px;
    position: relative;
    border-bottom: none !important;
}

.splitLine.active .splitLine-con:before {
    border-bottom-color: #f66e1f;
}

.splitLine-con {
    background-color: #fff;
    border-bottom: none;
    height: 44px;
}

.splitLine-con:before {
    content: "";
    display: block;
    width: 100%;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #ddd;
    position: absolute;
    top: 50%;
    left: 0;
}

.splitLine-con.solid:before {
    border-bottom-style: solid;
}

.splitLine-con.dashed:before {
    border-bottom-style: dashed;
}

.splitLine-con .split-tit {
    display: inline-block;
    padding: 0 10px;
    margin: 0 30px;
    height: 44px;
    line-height: 44px;
    background: #fff;
    position: relative;
    z-index: 2;
    font-size: 14px;
}

/* CKEDITOR样式的扩展与优化 */
.cke_dialog_contents_body {
    width: 500px !important;
}

.cke_dialog_body label {
    display: inline-block !important;
    margin-top: 8px !important;
    margin-bottom: 5px !important;
}

.cke_dialog_ui_input_text {
    min-width: 60px !important;
}

input.cke_dialog_ui_input_text, select.cke_dialog_ui_input_select, .cke_combo_text {
    height: 32px !important;
    line-height: 32px;
}

.cke_chrome {
    border: 1px solid #ccc !important;
}

.cke_toolbar {
    height: 35px !important;
}

.cke_top {
    border-bottom: 1px solid #ccc !important;
}

.cke_dialog_title {
    line-height: 30px !important;
}

.cke_inner {
    border: none !important;
}

.cke_dialog_footer_buttons {
    margin: 10px 5px !important;
}

input.cke_dialog_ui_input_text,
input.cke_dialog_ui_input_password,
textarea.cke_dialog_ui_input_textarea {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.cke_reset {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

/*--datagrid style--*/
.datagrid-panel.panel-body {
    padding: 0 var(--ant-padding-sm);
}

.datagrid-header-check input, .datagrid-cell-check input {
    vertical-align: middle;
    width: 16px;
    height: 16px;
}

.datagrid-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: var(--ant-padding-sm) 0px;
}

.datagrid-toolbar.fixed-toolbar{
	position: fixed;
    z-index: 100;
    background: #fff;
    border-bottom: 1px solid var(--ant-color-border, #f0f0f0);
    transition: width 0.15s ease-out, left 0.15s ease-out;
}

.extra_table_header {
    background: #fff;
    border-bottom: 1px solid var(--ant-color-border, #f0f0f0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
    transition: width 0.15s ease-out, left 0.15s ease-out;
}

.datagrid-toolbar .toolbar-button-section{
	display: inline-block;
}

.datagrid-toolbar .reorder-button-section{
    margin-left: auto;
}

.datagrid-toolbar .reorder-button-section .reorder-btn{
    cursor: pointer;
    display: block;
    text-align: center;
    line-height: 22px;
    font-size: var(--ant-font-size);
	padding: var(--linkbutton-medium-padding);
	border: 1px solid transparent;
    border-radius: 6px; 
}

.datagrid-toolbar .reorder-button-section .reorder-btn:hover{
	color: #444444;
    opacity: 0.8;
    background: #dde1e7;
    border-color: #dde1e7;
}

.datagrid-toolbar .reorder-button-section .reorder-btn .sys-icon-paixu{
	position: relative;
    bottom: -2px;
    right: 3px;
}

.datagrid-toolbar .reorder-confirm-section{
	display: none;
	margin-top: 5px;
	margin-bottom: 0px;
    width: 100%;
}

.datagrid-toolbar .reorder-confirm-section .reorder-confirm-tip{
	display: inline-block;
    line-height: 30px;
}

.datagrid-toolbar .reorder-confirm-section .reorder-confirm-bar{
	float: right;
}

.datagrid-toolbar .reorder-confirm-section .reorder-confirm-bar .reorder-cancel-btn, 
.datagrid-toolbar .reorder-confirm-section .reorder-confirm-bar .reorder-confirm-btn{
    display: inline-block;
    width: 60px;
    padding: 3px;
    text-align: center;
    cursor: pointer;
    border-radius: var(--ant-border-radius-sm);
}

.datagrid-mask {
	position: relative;
}

.datagrid-mask-msg {
	position: relative;
	margin-top: 0px;
	padding: 10px 5px 10px 30px;
	border-width: 0px;
	height: 40px;
}

.datagrid-content {
	position: relative;
	overflow: hidden;
}

.datagrid-table-fixed {
	position: absolute;
	left: 0;
	top: 0;
}

.datagrid-table-fixed-l {
	box-shadow: 1px 1px 8px rgba(0, 0, 0, .08);
}

.datagrid-table-fixed-r {
	left: auto;
	right: -1px;
	border-width: 0 0 0 1px;
	box-shadow: -1px 1px 8px rgba(0, 0, 0, .08);
}

.datagrid-pager.pagination {
    padding: var(--ant-padding-sm) 0px;
}

.datagrid-searchbox {
	height: auto;
	padding: 0 var(--ant-padding-xs);
}

.datagrid-searchbox .search-action {
	text-align: center;
	padding: var(--ant-padding);
	padding-top: var(--ant-padding-xs);
}

.datagrid-searchbox .form-action {
	text-align: right;
	padding: var(--ant-padding);
	padding-top: var(--ant-padding-xs);
}

.datagrid-searchbox .cell-form .cell-row {
	background: #ffffff;
}

.datagrid-searchbox .more-search-options {
	position: relative;
	height: 30px;
	top: -1px;
	border: none;
	background: none !important;
}

.datagrid-searchbox .more-search-options .more-search-btn {
	position: absolute;
	display: inline-block;
	zoom: 1;
	height: 26px;
	line-height: 26px;
	border: 1px solid #ccc;
	border-top: 0;
	margin-top: -1px;
	background: #fff;
	text-align: center;
	cursor: pointer;
	width: 100px;
	left: 50%;
	margin-left: -50px;
}

.datagrid-searchbox .more-search-options .more-search-btn div {
	position: relative;
	_display: inline;
	_zoom: 1;
	height: 26px;
	line-height: 26px;
	padding: 0 12px 0 4px;
}

.datagrid-searchbox .more-search-options .more-search-btn b {
	position: absolute;
	display: block;
	height: 16px;
	width: 16px;
	right: 10px;
	top: 5px;
	overflow: hidden;
}

.datagrid-wrapper{
	min-height: 60px; 
	position: relative;
}

.datagrid-loading {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	min-height: 60px;
	background-color: rgba(256,256,256,0.6);
	z-index: 999;
}

.datagrid-loading .loader-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

@keyframes datagrid-loading-scale {
	0%, 80%, 100% { transform: scale(0.4); opacity: 0.5; }
	40% { transform: scale(1); opacity: 1; }
}

.datagrid-loading .ball-pulse>div:nth-child(0) {
	-webkit-animation: datagrid-loading-scale 0.75s 0s infinite cubic-bezier(.2, .68, .18, 1.08);
	animation: datagrid-loading-scale 0.75s 0s infinite cubic-bezier(.2, .68, .18, 1.08);
}

.datagrid-loading .ball-pulse>div:nth-child(1) {
	-webkit-animation: datagrid-loading-scale 0.75s 0.12s infinite cubic-bezier(.2, .68, .18, 1.08);
	animation: datagrid-loading-scale 0.75s 0.12s infinite cubic-bezier(.2, .68, .18, 1.08);
}

.datagrid-loading .ball-pulse>div:nth-child(2) {
	-webkit-animation: datagrid-loading-scale 0.75s 0.24s infinite cubic-bezier(.2, .68, .18, 1.08);
	animation: datagrid-loading-scale 0.75s 0.24s infinite cubic-bezier(.2, .68, .18, 1.08);
}

.datagrid-loading .ball-pulse>div:nth-child(3) {
	-webkit-animation: datagrid-loading-scale 0.75s 0.36s infinite cubic-bezier(.2, .68, .18, 1.08);
	animation: datagrid-loading-scale 0.75s 0.36s infinite cubic-bezier(.2, .68, .18, 1.08);
}

.datagrid-loading .ball-pulse>div {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	margin: 2px 5px;
	background-color: var(--app-base-theme-primary, #87d4f6);
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	display: inline-block;
}

/*--table style--*/
.easyui-extend .table-title {
	color: #000;
	font-size: 14px;
	font-weight: bold;
	height: 18px;
	line-height: 18px;
	text-align: center;
	padding: 10px 0px;
	border: 1px solid #ccc;
}

.easyui-extend table {
	width: 100%;
	max-width: 100%;
	margin-bottom: 0pt;
	background: #ffffff;
	border-spacing: 0;
	position: relative;
}

.easyui-extend.datagrid-table .table {
	table-layout: fixed;
}

.easyui-extend .datagrid-card {
	display: inline-block;
	width: 100%;
}

.easyui-extend .table .datagrid-header {
	background: #fafafa;
}

.easyui-extend .table .datagrid-td-rownumber .datagrid-cell-rownumber,
.easyui-extend .table .datagrid-header-rownumber {
	width: auto;
	height: auto;
	line-height: inherit;
}

.datagrid-header-check, .datagrid-cell-check {
	width: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.easyui-extend .table th, .easyui-extend .table td {
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: var(--ant-table-border-color);
	padding: var(--ant-padding) var(--ant-padding-xxs);
	word-break: break-all;
	overflow: hidden;
	vertical-align: middle;
}

.easyui-extend .table thead th.datagrid-sort {
    cursor: pointer;
}
      
.easyui-extend .table thead th.datagrid-sort .datagrid-cell {
    padding-right: 20px;
    position: relative;
    display: inline;
}

/* 排序箭头基础样式（覆盖主题层） */
.easyui-extend .table thead th.datagrid-sort .datagrid-cell:after,
.easyui-extend .table thead th.datagrid-sort-asc .datagrid-cell:after,
.easyui-extend .table thead th.datagrid-sort-desc .datagrid-cell:after {
    content: '';
    position: absolute;
    right: 0px;
    top: 50%;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px 24px;
}

/* 默认排序状态：上下双箭头均为灰色 */
.easyui-extend .table thead th.datagrid-sort .datagrid-cell:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23c0c4cc' d='M12 6l4 4H8z'/%3E%3Cpath fill='%23c0c4cc' d='M12 18l4-4H8z'/%3E%3C/svg%3E");
}

/* 升序箭头 */
.easyui-extend .table thead th.datagrid-sort.datagrid-sort-asc .datagrid-cell:after {
    opacity: 1;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%234096ff' d='M12 6l4 4H8z'/%3E%3Cpath fill='%23c0c4cc' d='M12 18l4-4H8z'/%3E%3C/svg%3E");
}

/* 降序箭头 */
.easyui-extend .table thead th.datagrid-sort.datagrid-sort-desc .datagrid-cell:after {
    opacity: 1;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23c0c4cc' d='M12 6l4 4H8z'/%3E%3Cpath fill='%234096ff' d='M12 18l4-4H8z'/%3E%3C/svg%3E");
}

.easyui-extend .table th .datagrid-cell, .easyui-extend .table td .datagrid-cell {
	padding: 0px;
	height: auto;
	line-height: 24px;
	font-weight: normal;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}

.easyui-extend .table th .datagrid-cell.break, .easyui-extend .table td .datagrid-cell.break {
	white-space: normal;
}

.easyui-extend .table th .datagrid-cell{
	font-weight: var(--ant-font-weight-semibold);
}

.easyui-extend .table td .datagrid-cell .link-btn:not(:last-of-type) {
    margin-right: var(--ant-margin-xxs);
}

.easyui-extend .table td .datagrid-cell .photo-image{
	max-height: 50px;
	max-width: 50px;
	width: 50px;
	height: 50px;
	border-radius: 4px;
	object-fit: cover;
	display: block;
}

.easyui-extend .table tr.no-data td {
	border-bottom: none;
	padding-left: 10px;
}

.easyui-extend .table tr.last td {
	border-bottom-width	: 0px;
}

.easyui-extend .table.last-row-bordered tr:last-child td {
	border-bottom-width: 1px;
}

.easyui-extend .table input.Wdate {
	width: 230px;
}

.easyui-extend .table thead th {
	vertical-align: middle;
}

.easyui-extend .table .table {
	background: #fefefe;
}

.easyui-extend .table.condensed th, .easyui-extend .table.condensed td {
	padding: 4px 5px;
}

.easyui-extend .table.striped tbody tr:nth-child(odd) {
	background: #fcfcfc;
}

.easyui-extend .table.bordered {
	border: 0;
}

.easyui-extend .table.bordered td, .easyui-extend .table.bordered th {
	border-right: 1px var(--ant-color-border) solid;
	border-bottom: 1px var(--ant-color-border) solid;
}
.easyui-extend .table.bordered td:last-child, .easyui-extend .table.bordered th:last-child {
	border-right: none;
}

.easyui-extend .table.no-border td, .easyui-extend .table.no-border th {
	border: 0;
}

.easyui-extend .table.border {
	border-bottom: 1px var(--ant-color-border) solid !important;
}

.easyui-extend .table tbody tr:hover {
	background: var(--ant-table-row-hover-bg, #fafafa);	
}

.easyui-extend .table tr.success {
	background: #f6ffed !important;
}

.easyui-extend .table tr.danger {
	background: #fff2f0 !important;
}

.easyui-extend .table tr.warning {
	background: #fffbe6 !important;
}

.easyui-extend .table tr.info {
	background: #e6fffb !important;
}

.easyui-extend .table tr.selected {
	background: var(--app-base-theme-primary-alpha-5);
}

/* ===== cell-form 默认（bordered=true）外层边框 ===== */
/* 去掉底边，由最后一个可见 cell-row 的 border-bottom 充当底边，避免双线 */
.easyui-extend.cell-form {
	border: 1px solid var(--ant-color-border, #d9d9d9);
	border-bottom: none;
	border-radius: var(--ant-border-radius, 6px);
	overflow: hidden;
}

.easyui-extend .cell-row {
	height: auto;
	line-height: 32px;
	border-bottom: 1px solid var(--ant-color-border, #d9d9d9);
	display: flex;
	align-items: stretch;
}

.easyui-extend .cell-item {
	display: flex;
	align-items: stretch;
}

.easyui-extend .cell-label {
	flex-shrink: 0;
	width: 110px;
	padding: var(--ant-form-label-padding);
	font-weight: normal;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	background: var(--ant-form-label-background);
	box-sizing: border-box;
	color: var(--ant-color-text, rgba(0,0,0,.88));
	position: relative;
	display: flex;
	align-items: flex-start;
}

.easyui-extend .cell-value {
	position: relative;
	padding: var(--ant-form-control-padding);
	flex: 1;
	word-break: break-all;
	overflow: hidden;
}

.easyui-extend.compact .cell-label {
	padding: var(--ant-form-label-padding-compact);
}

.easyui-extend.compact .cell-value {
	padding: var(--ant-form-control-padding-compact);
}

.easyui-extend .cell-value > .textbox,
.easyui-extend .cell-value > .combo,
.easyui-extend .cell-value > .spinner,
.easyui-extend .cell-value > .searchbox,
.easyui-extend .cell-value > .datebox,
.easyui-extend .cell-value > .datetimebox,
.easyui-extend .cell-value > .filebox,
.easyui-extend .cell-value > .tagbox {
	width: 100% !important;
}

.easyui-extend .cell-value > .textbox > .textbox-text,
.easyui-extend .cell-value > .combo > .combo-text {
	width: 100% !important;
}

/* 控件区右侧的旧星号 — 已迁移到 label 内，隐藏此处；排除嵌套 form 内 cell-label 里的星号 */
.easyui-extend .cell-value .required-asterisk:not(.cell-label .required-asterisk) {
	display: none;
}

/* 表单操作按钮区：居右显示 */
.easyui-extend .cell-action {
	text-align: right;
}

/* ===== cell-form-outline 变体：去掉上左右外框，保留 label 背景色，保留行分隔线 ===== */
.easyui-extend.cell-form.cell-form-outline {
	border: none;
	border-radius: 0;
}

/* ===== cell-form-plain 变体：去掉上左右外框，去掉 label 背景色，保留行分隔线 ===== */
.easyui-extend.cell-form.cell-form-plain {
	border: none;
	border-radius: 0;
}

.easyui-extend.cell-form.cell-form-plain .cell-label {
	background: transparent;
}

/* ===== bordered=false 变体：无边框模式 ===== */
.easyui-extend.cell-form.cell-form-borderless {
	border: none;
	border-radius: 0;
}

.easyui-extend.cell-form.cell-form-borderless .cell-row {
	border-bottom: none;
}

.easyui-extend.cell-form.cell-form-borderless .cell-label {
	background: transparent;
}

/* ===== layout=inline 变体：行内布局模式 ===== */
/* cell-form 本身作为 flex 容器，所有 cell-row 横向排列 */
.easyui-extend.cell-form.cell-form-inline {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	border: none;
	border-radius: 0;
}

.easyui-extend.cell-form.cell-form-inline .cell-row {
	display: flex;
	flex: none;
	align-items: center;
	border-bottom: none;
	margin-right: var(--ant-margin-sm, 8px);
	margin-bottom: var(--ant-margin-sm, 8px);
}

.easyui-extend.cell-form.cell-form-inline .cell-item {
	float: none;
	width: auto !important;  /* 覆盖 FTL 生成的 percent 宽度 */
	display: flex;
	align-items: center;
}

.easyui-extend.cell-form.cell-form-inline .cell-label {
	float: none;
	background: transparent;
	border-right: none;
	width: auto;
	white-space: nowrap;
	padding-right: var(--ant-padding-xs, 4px);
}

.easyui-extend.cell-form.cell-form-inline .cell-value {
	float: none;
	margin-bottom: 0;
	padding-bottom: 5px;
	background: transparent;
	white-space: nowrap;
}

/* ===== view-form 只读控件纯文本展示 ===== */
/* 查看表单中 readonly 控件去除输入框外观，显示为纯文本 */
.view-form .textbox-readonly {
	border: none;
	background: transparent;
}

.view-form .textbox-readonly.textbox-focused {
	border: none;
	box-shadow: none;
}

.view-form .textbox-readonly .textbox-text {
	background: transparent;
	padding-left: 0;
	cursor: default;
	border-color: transparent;
	box-shadow: none;
}

.view-form .textbox-readonly .combo-arrow,
.view-form .textbox-readonly .textbox-addon {
	display: none;
}

/* ===== 星号在 label 内的样式（迁移后使用） ===== */
.easyui-extend .cell-label .required-asterisk {
	color: var(--ant-color-error, #ff4d4f);
	font-size: 13px;
	font-weight: bold;
	flex-shrink: 0;
	position: absolute;
	left: 4px;
	top: 8px;
}

.form-action,
.page-action {
	padding: var(--ant-padding);
	padding-bottom: 0;
	text-align: center;
	clear: both;
}

.form-action .l-btn:not(:last-of-type),
.page-action .l-btn:not(:last-of-type) {
	margin-right: var(--ant-margin-xs);
}

/* 必填标识 */
.required-asterisk {
	color: red;
	font-size: 13px;
	font-weight: bold;
}

/* ===== 弹窗 page-body / page-action 固定底部布局 ===== */
/* 弹窗含 .page-action 时，启用 flex 传递链：内容区滚动，操作区固定底部 */

/* 一、直接子元素传递 flex（排除 tab-switch 布局，仅匹配 div 避免影响 script/style 等隐藏元素） */
.eu-modal-window.panel-body:has(.page-action) > div:not(.page-window__content--tab-switch) {
	flex: 1;
	display: flex;
	flex-direction: column;
	min-height: 0;
	overflow: hidden;
}

/* tab-switch 内含 page-action 时，tab 内容面板切换为 flex 布局（覆盖 easyui-ant-design 的 overflow-y: auto） */
.page-window__content--tab-switch > .panel > .panel-body:has(.page-action) {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

/* 二、page-container 及 page-action 直接父元素传递 flex */
.eu-modal-window.panel-body:has(.page-action) .page-container,
.eu-modal-window.panel-body :has(> .page-action),
.eu-modal-window.panel-body:has(.page-action) > div > :has(.page-action) {
	flex: 1;
	display: flex;
	flex-direction: column;
	min-height: 0;
}

/* 三、page-body：可滚动内容区（仅匹配 page-action 兄弟级的 page-body） */
.eu-modal-window.panel-body :has(> .page-action) > .page-body {
	flex: 1;
	overflow-y: auto;
	min-height: 0;
}

.eu-modal-window.panel-body :has(> .page-action) > .page-body::-webkit-scrollbar {
	width: 4px;
}

.eu-modal-window.panel-body :has(> .page-action) > .page-body::-webkit-scrollbar-thumb {
	background-color: var(--ant-color-fill);
	border-radius: 2px;
}

.eu-modal-window.panel-body :has(> .page-action) > .page-body::-webkit-scrollbar-thumb:hover {
	background: var(--app-base-scrollbar-inverse-hover);
}

/* 四、page-action：固定底部操作区 */
.eu-modal-window.panel-body:has(.page-action) .page-action {
	flex-shrink: 0;
}