/**
 * 通用css样式布局处理
 * Copyright (c) 2019 gangyin
 */

/** 基础通用 **/
.pt5 {
	padding-top: 5px;
}
.pr5 {
	padding-right: 5px;
}
.pb5 {
	padding-bottom: 5px;
}
.mt5 {
	margin-top: 5px;
}
.mr5 {
	margin-right: 5px;
}
.mb5 {
	margin-bottom: 5px;
}
.ml5 {
	margin-left: 5px;
}
.mt10 {
	margin-top: 10px;
}
.mr10 {
	margin-right: 10px;
}
.mb10 {
	margin-bottom: 10px;
}
.ml0 {
	margin-left: 10px;
}
.mt20 {
	margin-top: 20px;
}
.mr20 {
	margin-right: 20px;
}
.mb20 {
	margin-bottom: 20px;
}
.m20 {
	margin-left: 20px;
}
.m50 {
	margin-left: 50px;
}
.img-xs {
  width: 32px;
  height: 32px;
}
.img-sm {
  width: 64px;
  height: 64px;
}
.img-md {
  width: 96px;
  height: 96px;
}
.img-lg {
  width: 120px;
  height: 120px;
}
.section-content {
    min-height: 250px;
    margin-right: auto;
    margin-left: auto;
    padding: 5px 5px 5px 5px;
    width: 100%;
    height: 100%;
    position: absolute;
}

.ibox {
    margin-bottom: 25px;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    height: 100%;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}

.list-group-striped > .list-group-item {
	border-left: 0;
	border-right: 0;
	border-radius: 0;
	padding-left: 0;
	padding-right: 0
}

.ibox-title-gray {
    height: 41px;
    background-color: #f0f3f4;
    color: #333;
    font-weight: 700;
    border-radius: 2px 2px 0 0;
    padding: 13px !important;
    border-bottom: 1px solid #eee;
    display: block;
    clear: both;
}

.dashboard-header h5 {
    padding: 8px 0 0 0;
    display: inline-block;
    font-size: 14px;
    text-overflow: ellipsis;
    float: left;
    font-weight: 400;
}

.ibox-title-gray h5 {
    display: inline-block;
    font-size: 14px;
    margin: 0 0 7px;
    padding: 0;
    text-overflow: ellipsis;
    float: left;
}

/* 导航页签 */
.nav-tabs-custom {
	margin-bottom: 20px;
	background: #fff;
	box-shadow: 0 1px 1px rgba(0,0,0,0.1);
	border-radius: 3px
}

.nav-tabs-custom>.nav-tabs {
	margin: 0;
	border-bottom-color: #f4f4f4;
	border-top-right-radius: 3px;
	border-top-left-radius: 3px
}

.nav-tabs-custom>.nav-tabs>li {
	border-top: 3px solid transparent;
	margin-bottom: -2px;
	margin-right: 5px
}

.nav-tabs-custom>.nav-tabs>li.header {
	padding-left: 5px;
	font-size: 16px;
	line-height: 30px;
}

.nav-tabs-custom>.nav-tabs>li.disabled>a {
	color: #777
}

.nav-tabs-custom>.nav-tabs>li>a {
	color: #444;
	font-weight: normal;
	border-radius: 0
}

.nav-tabs-custom>.nav-tabs>li>a,.nav-tabs-custom>.nav-tabs>li>a:hover {
	background: transparent;
	margin: 0
}

.nav-tabs-custom>.nav-tabs>li>a:hover {
	color: #999
}

.nav-tabs-custom>.nav-tabs>li:not(.active)>a:hover,.nav-tabs-custom>.nav-tabs>li:not(.active)>a:focus,.nav-tabs-custom>.nav-tabs>li:not(.active)>a:active {
	border-color: transparent
}

.nav-tabs-custom>.nav-tabs>li.active {
	border-top-color: #1890ff
}

.nav-tabs-custom>.nav-tabs>li.active>a,.nav-tabs-custom>.nav-tabs>li.active:hover>a {
	background-color: #fff;
	color: #444
}

.nav-tabs-custom>.nav-tabs>li.active>a {
	border-top-color: transparent;
	border-bottom-color: transparent;
	border-left-color: #f4f4f4;
	border-right-color: #f4f4f4
}

.nav-tabs-custom>.tab-content {
	background: #fff;
	padding: 10px;
	border-bottom-right-radius: 3px;
	border-bottom-left-radius: 3px
}

/** 弹层组件 禁用样式 **/
.layer-disabled {
	border: 1px #dedede solid !important;
	background-color: #f1f1f1 !important;
	color: #333 !important;
	pointer-events: none;
}

/** 用户管理 样式布局 **/
.box {
	position: relative;
	border-radius: 3px;
	background: #ffffff;
	border-top: 3px solid #d2d6de;
	margin-bottom: 20px;
	width: 100%;
	box-shadow: 0 1px 1px rgba(0,0,0,0.1)
}

.box-header:before,.box-body:before,.box-footer:before,.box-header:after,.box-body:after,.box-footer:after {
	content: " ";
	display: table
}

.box-header:after,.box-body:after,.box-footer:after {
	clear: both
}

.btn-box-tool {
	padding: 5px;
	font-size: 12px;
	background: transparent;
	color: #97a0b3;
}

.open .btn-box-tool,
.btn-box-tool:hover {
	color: #606c84;
}

.box-main {
	margin: 0;
	border: 0;
	padding-top: 2px;
	border-radius: 0;
	box-shadow: none
}

.box-main>.box-header {
	border-bottom: 1px solid #eee;
	padding: 12px 10px 2px 15px
}

.box-header .box-title {
	display: inline-block;
	font-size: 18px;
	margin: 0;
	line-height: 1;
}

.box-main>.box-header .box-title {
	font-size: 16px;
	margin-bottom: 13px;
	float: left
}

.box-main>.box-header .box-title .fa {
	font-size: 14px;
	padding-right: 3px;
	margin-top: -2px
}

.box-main>.box-header .box-tools {
	position: relative;
	top: -5px;
	right: 0
}

.box-main>.box-header .box-tools .btn {
	padding: 3px 10px 5px 10px;
	font-size: 14px;
	margin-bottom: 2px
}

.box-main>.box-header .box-tools .btn-box-tool {
	padding: 4px 2px
}

.box-main form>.box-footer,.nav-main form>.box-footer {
	background: #fafafa
}

.box-main form>.box-footer .row,.nav-main form>.box-footer .row {
	margin: 5px 0 5px -25px
}

@media ( min-width : 768px) {
	.section-content .about {
		padding-left: 0px
	}
}

/** select2 样式修改 **/
.select2-container--default .select2-selection--multiple .select2-selection__choice {
	background-color: #1AB394;
	border-color: #1AB394;
	padding: 1px 10px;
	color: #fff
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
	margin-right: 5px;
	color: rgba(255,255,255,0.7)
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
	color: #fff
}

.select2-container .select2-selection--single .select2-selection__rendered {
	padding-right: 10px
}

/** 表单验证 样式布局 **/
.control-label.is-required:before {
  content: '* ';
  color: red;
}

label.error {
	position: absolute;
	right: 18px;
	top: 6px;
	color: #ef392b;
	font-size: 12px;
	z-index:99;
}

.input-group label.error {
	z-index:99;
	right: 42px;
}

.input-group input.error + label.error + .input-group-addon>i {
	color: #ed5565;
}

.input-group.date label.error {
	z-index:99;
	right: 42px;
}

.select2-hidden-accessible + label.error, select.error + label.error {
	right: 38px;
}

.Validform_error,input.error,textarea.error,select.error,select.error+label.error+.select2-container--bootstrap .select2-selection--single {
	background-color: #fbe2e2;
	border-color: #c66161;
	color: #c00
}

.Validform_wrong,.Validform_right,.Validform_warning {
	display: inline-block;
	height: 20px;
	font-size: 12px;
	vertical-align: middle;
	padding-left: 25px
}

.i-checks label.error, .check-box label.error, .radio-box label.error {
	right: auto;
	width: 150px;
	left: 210px;
	top: 1px;
	max-width: none;
}

/** 复选框&单选框  **/
.check-box,.radio-box {
	display: inline-block;
	box-sizing: border-box;
	cursor: pointer;
	position: relative;
	padding-left: 25px;
	padding-right: 15px;
	padding-top: 7px;
}

.icheckbox, .icheckbox-blue, .iradio, .iradio-blue, .iradio-purple {
	position: absolute;
	top: 7px;
	left: 0
}

/** iCheck **/
.icheckbox-blue,.iradio-blue {
	display: block;
	margin: 0;
	padding: 0;
	width: 18px;
	height: 18px;
	background: url(../../img/blue.png) no-repeat;
	border: none;
	cursor: pointer
}

.icheckbox-blue,.icheckbox-blue.static:hover {
	background-position: 0 0
}

.icheckbox-blue.hover,.icheckbox-blue:hover {
	background-position: -20px 0
}

.icheckbox-blue.checked {
	background-position: -40px 0
}

.icheckbox-blue.disabled {
	background-position: -60px 0;
	cursor: default
}

.icheckbox-blue.checked.disabled {
	background-position: -80px 0
}

.iradio-blue,.iradio-blue.static:hover {
	background-position: -100px 0
}

.iradio-blue.hover,.iradio-blue:hover {
	background-position: -120px 0
}

.iradio-blue.checked {
	background-position: -140px 0
}

.iradio-blue.disabled {
	background-position: -160px 0;
	cursor: default
}

.iradio-blue.checked.disabled {
	background-position: -180px 0
}

/* ztree */
div.ztree-border {
    margin-top: 10px;
    border: 1px solid #e5e6e7;
    background: #FFFFFF none;
    border-radius:4px;
}

/* 切换开关 */
.toggle-switch {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 0;
	padding-top: 8px;
}
.toggle-switch input {
    height: 0;
    width: 0;
    position: absolute;
    opacity: 0;
}
.toggle-switch span {
	display: inline-block;
	position: relative;
	width: 40px;
	height: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background-color: #ebebeb;
	border: 2px solid #ebebeb;
	cursor: pointer;
	-webkit-transition: all .1s ease;
	-o-transition: all .1s ease;
	transition: all .1s ease
}
.toggle-switch span:after {
	content: '';
	height: 20px;
	width: 20px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	position: absolute;
	left: 1px;
	top: -7px;
	color: #aaa;
	-webkit-transition: all .1s ease;
	-o-transition: all .1s ease;
	transition: all .1s ease;
	text-align: center;
	font-size: 13px;
	background-color: #fff;
	-webkit-box-shadow: rgba(0,0,0,.12) 0 1px 6px,rgba(0,0,0,.12) 0 1px 4px;
	box-shadow: rgba(0,0,0,.12) 0 1px 6px,rgba(0,0,0,.12) 0 1px 4px
}
.toggle-switch input:checked~span:after {
	left: -webkit-calc(100% - 20px);
	left: calc(100% - 20px);
	background-color: #33cabb
}

.toggle-switch.switch-solid span  {
    height: 20px;
}
.toggle-switch.switch-solid span:after {
    top: -2px;
}
.switch-solid input:checked~span {
	background-color: #33cabb;
	border-color: #33cabb
}
.switch-solid input:checked~span:after {
	background-color: #fff;
	color: #33cabb
}

/** 遮罩层 **/
.loaderbox {
	display: inline-block;
	min-width: 125px;
	padding: 10px;
	margin: 0 auto;
	color: #000 !important;
	font-size: 13px;
	font-weight: 400;
	text-align: center;
	vertical-align: middle;
	border: 1px solid #ddd;
	background-color: #eee;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	-ms-border-radius: 2px;
	-o-border-radius: 2px;
	border-radius: 2px;
	-webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
	box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
}

.loaderbox .loading-activity {
	float: left;
	width: 18px;
	height: 18px;
	border: solid 2px transparent;
	border-top-color: #000;
	border-left-color: #000;
	border-radius: 10px;
	-webkit-animation: pace-spinner 400ms linear infinite;
	-moz-animation: pace-spinner 400ms linear infinite;
	-ms-animation: pace-spinner 400ms linear infinite;
	-o-animation: pace-spinner 400ms linear infinite;
	animation: pace-spinner 400ms linear infinite;
}

@media (max-width: 767px) {
	.loading-activity {
		width: 18px;
		height: 18px;
	}
}

@-ms-keyframes pace-spinner {
	0% {
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-ms-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes pace-spinner {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/** 表单查询条件  **/
.select-list ul, .layui-layer-content ul {
	margin: 0;
	padding: 0;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

.select-list li, .layui-layer-content li {
	list-style: none;
}

.select-time .time-input {
	display: block;
	width: 100%;
	padding-left: 10px;
}

label {
	font-weight: normal;
}

.container-div {
	padding: 0px 28px;
	height: 100%;
}

.container-div .row {
	height: 100%;
}

.search-collapse,.select-table {
	width: 100%;
	background: #fff;
	border-radius: 6px;
	margin-top: 10px;
	padding-top: 5px;
	padding-bottom: 13px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.2);
}

.search-collapse {
	position: relative;
}

.search-collapse .col-sm-6 .control-label {
	color: #333;
}

@media ( max-width : 768px) {
	.search-collapse {
		display: none;
	}
}

@media ( min-width : 768px) {
	.select-list li {
		float: left;
	}
}

.select-list li {
	color: #333;
	margin: 5px 15px 5px 0px;
}

.select-list li p, .select-list li label:not(.radio-box){
	float: left;
	width: 65px;
	margin: 5px 0px 0px 0px;
	text-align:right;
}

.select-list li input {
	border: 1px solid #ddd;
	border-radius: 4px;
	background: transparent;
	outline: none;
	height: 30px;
	width: 200px;
	padding-left: 5px;
}

.select-list li .submit-btn {
	border: 0px;
	border-radius: 4px;
	background: transparent;
	outline: none;
	width: 40px;
	height: 23px;
}

.select-list li select {
	border: 1px solid #ddd;
	border-radius: 4px;
	background: transparent;
	outline: none;
	height: 30px;
    width: 200px;
}

.bootstrap-select.form-control .btn-default {
    color: inherit;
    padding: 4px 6px 4px;
    border-radius: 4px;
    border: 1px solid #e5e6e7;
	outline: none;
	height: 31px;
	background: #FFFFFF none
}

.file-input .btn-default {
    color: inherit;
    background: white;
    border: 1px solid #e7eaec;
}

.select-list .btn-default {
    color: #555;
    padding: 5px 5px;
    border: 1px solid #ddd;
	border-radius: 4px;
	background: transparent;
	outline: none;
	height: 30px;
	width: 200px;
}

.select-list .btn-default:hover,.select-list .btn-default:focus,.select-list .btn-default:active,.select-list .btn-default.active,.open .dropdown-toggle.btn-default {
	color: #555;
	background-color: #e4e4e4;
	border-color: #b2b2b2
}

.select-list .bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
  height: 30px;
  width: 200px;
}

.select-list .bootstrap-select > .dropdown-toggle.bs-placeholder,
.select-list .bootstrap-select > .dropdown-toggle.bs-placeholder:hover,
.select-list .bootstrap-select > .dropdown-toggle.bs-placeholder:focus,
.select-list .bootstrap-select > .dropdown-toggle.bs-placeholder:active {
  color: inherit;
  font-size: 13px;
}

.select-list .bootstrap-select .dropdown-toggle .caret {
  position: inherit;
}

.select-list .select-selectpicker li {
	float: none;
}

.select-list .dropdown-menu>li>a,.bootstrap-select.form-control .dropdown-menu>li>a {
    line-height: inherit;
}

.select-list .dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a,.bootstrap-select.form-control .dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{
	color: #fff;
	text-decoration: none;
	background-color: #12889a
}

.select-list .select2-container--bootstrap {
	width: 200px!important;
	display: inline-block;
}

.select-list .select2-container--bootstrap .select2-selection {
	border-radius: 6px;
}

.select-list .select2-container--bootstrap .select2-selection--single {
	height: 30px!important;
	padding: 5px 10px;
}

.select-list .select-time input {
	width: 93px;
}

.select-time label,.select-time span,.select-time input {
	float: left;
}

@media (max-width:767px) {
    .select-time label,.select-time span,.select-time input {
	    float: none;
    }
    .select-list .select-time input {
	    width: 200px;
    }
}

.select-time label {
	margin-top: 5px;
}

.select-time span {
	display: block;
	margin: 5px 5px;
}

.search-btn {
	background-color: #1ab394;
	border-color: #1ab394;
	color: #FFF;
	margin-bottom: 5px;
	display: inline-block;
	padding: 6px 12px;
	margin-bottom: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.42857143;
	text-align: center;
	white-space: nowrap;
	border-radius: 3px;
	vertical-align: middle;
	cursor: pointer;
}

.select-title{
	color:#3d5266;
	font-size:15px;
	padding:10px 0px;
	font-weight: normal;
}

/** 表格查询数据 **/
.table-striped {
	min-height: 75%;
}

.table-striped .bootstrap-table, .table-striped .table-bordered {
	border: 0px!important;
}

.table-bordered .table>thead>tr>th, .table-bordered .table>tbody>tr>th {
	font-weight: normal;
	font-size: 13px
}

.table-striped table>thead>tr>th, .table-striped table>tbody>tr>th, .table-striped table>tfoot>tr>th, .table-striped table>thead>tr>td, .table-striped table>tbody>tr>td, .table-striped table>tfoot>tr>td {
	border-bottom: 1px solid #e7eaec!important;
	background-color: transparent;
	border: 0px;
}

.table-bordered table>thead>tr>th:first-child, .table-bordered table>tbody>tr>td:first-child {
    border-left: 1px solid #ddd;
}

.table-bordered table>thead>tr>th:last-child, .table-bordered table>tbody>tr>td:last-child {
	border-right: 1px solid #ddd;
}

.table-bordered table>thead>tr>th, .table-bordered table>tbody>tr>td {
    border-top: 1px solid #ddd!important;
    border-bottom: 1px solid #ddd;
}

.fixed-table-footer {
	border-top: 0px solid #ddd;
}

.fixed-table-container {
	border: 0px solid #ddd;
}

.table-striped .table>thead>tr>th, .table-striped .table>tbody>tr>th {
	border-bottom: 1px solid #ccc!important;
	border-top: 0px!important;
	font-weight: normal;
	font-size: 13px
}

.table-striped table thead {
    background-color: #eff3f8;
}

.fixed-table-container thead th  >.both{
    display: inline-block
}

.editable-input .input-sm {
	height: 32px!important;
}

/** 表格列宽拖动样式 **/
.rc-handle-container {
  position: relative;
}
.rc-handle {
  position: absolute;
  width: 7px;
  cursor: ew-resize;
  margin-left: -3px;
  z-index: 2;
}
table.rc-table-resizing {
  cursor: ew-resize;
}
table.rc-table-resizing thead,
table.rc-table-resizing thead > th,
table.rc-table-resizing thead > th > a {
  cursor: ew-resize;
}

/** 表格冻结列样式 **/
.fixed-columns, .fixed-columns-right {
  position: absolute;
  top: 0;
  height: 100%;
  background-color: #fff;
  box-sizing: border-box;
  z-index: 1;
  border-width: 0 0 0 1px;
  -webkit-box-shadow: 0 0 10px rgba(0,0,0,.12);
  box-shadow: 0 0 10px rgba(0,0,0,.12);
}

.fixed-columns {
  left: 0;
}

.fixed-columns .fixed-table-body {
  overflow: hidden !important;
}

.fixed-columns-right {
  right: 0;
}

.fixed-columns-right .fixed-table-body {
  overflow-x: hidden !important;
}

.bootstrap-table .table-hover > tbody > tr.hover > td {
    background-color: #f5f5f5;
}

/** 表格树样式 **/
.bootstrap-tree-table .treetable-indent {width:16px; height: 16px; display: inline-block; position: relative;}
.bootstrap-tree-table .treetable-expander {width:16px; height: 16px; display: inline-block; position: relative; cursor: pointer;}
.bootstrap-tree-table .treetable-selected{background: #f5f5f5 !important;}
.bootstrap-tree-table .treetable-table{border:0 !important;margin-bottom:0}
.bootstrap-tree-table .treetable-table tbody {display:block;height:auto;overflow-y:auto;}
.bootstrap-tree-table .treetable-table thead, .treetable-table tbody tr {display:table;width:100%;table-layout:fixed;}
.bootstrap-tree-table .treetable-thead th{line-height:24px;border: 0 !important;border-radius: 4px;border-left:0px solid #e7eaec !important;border-bottom:1px solid #ccc!important;text-align: left;}
.bootstrap-tree-table .treetable-thead tr :first-child{border-left:0 !important}
.bootstrap-tree-table .treetable-tbody td{border: 0 !important;border-left:0px solid #e7eaec !important;border-bottom:1px solid #e7eaec!important;white-space: nowrap; text-overflow: ellipsis;}
.bootstrap-tree-table .treetable-tbody tr :first-child{border-left:0 !important}
.bootstrap-tree-table .treetable-bars .tool-left, .bootstrap-tree-table .treetable-bars .tool-right{margin-top: 10px; margin-bottom: 10px;}
.bootstrap-tree-table .treetable-bars .tool-left{float: left;}
.bootstrap-tree-table .treetable-bars .tool-right{float: right;}
.bootstrap-tree-table .treetable-bars .columns li label{display: block;padding: 3px 20px;clear: both;font-weight: 400;line-height: 1.428571429;max-width: 100%;margin-bottom: 5px;cursor:pointer;}
.bootstrap-tree-table .table{border-bottom: 0px solid #e7eaec!important;}
.bootstrap-tree-table .table-bordered .treetable-thead th {border-left: 1px solid #e7eaec!important;}
.bootstrap-tree-table .table-bordered .treetable-tbody td {border-right: 1px solid #e7eaec!important;}
.bootstrap-tree-table .fixed-table-pagination .pagination-detail {margin-top: 10px;margin-bottom: 10px;}

/** 首页样式 **/
.ax_close_max {
	position: fixed;
	top: 5px;
	left: 5px;
	z-index: 9999;
	display: none;
	color: #ccc;
}
.navbar-right > .user-menu > .dropdown-menu {
	border-top-right-radius:0;
	border-top-left-radius:0;
	padding:1px 0 0 0;
	border-top-width:0;
	width:138px;
}
.navbar-right > .user-menu .user-image {
	float:left;
	width:27px;
	height:27px;
	border-radius:50%;
	margin-right:8px;
	margin-top:-3px;
}
@media (max-width:767px) {
	.navbar-right > .user-menu .user-image {
	float:none;
	margin-right:0;
	margin-top:-8px;
	line-height:10px;
}
}.dropdown-menu > li > a > .glyphicon,.dropdown-menu > li > a > .fa,.dropdown-menu > li > a > .ion {
	margin-right:10px;
}
.dropdown-menu > li > a:hover {
	background-color:#e1e3e9;
	color:#333;
}
.dropdown-menu > .divider {
	background-color:#eee;
}

/** 表单布局 **/
.form-header {
    font-size:15px;
	color:#6379bb;
	border-bottom:1px solid #ddd;
	margin:8px 10px 25px 10px;
	padding-bottom:5px
}

.form-control-plaintext {
    display: block;
    width: 100%;
    padding-top: .286rem;
    padding-bottom: .286rem;
    margin-bottom: 0;
    line-height: 1.57142857;
    color: #212529;
    background-color: transparent;
    border: solid transparent;
    border-width: 1px 0;
    font-weight: 500;
    border-bottom: 1px dashed #ccd5db;
    min-height: 25px
}

.form-control-plaintext-no-content {
    display: block;
    width: 100%;
    padding-top: .286rem;
    padding-bottom: .286rem;
    margin-bottom: 0;
    line-height: 1.57142857;
    color: #ddd !important;
    background-color: transparent;
    border: solid transparent;
    border-width: 1px 0;
    border-bottom: 1px dashed #ccd5db;
    min-height: 25px
}

.main-content {
    background-color: #ffffff;
    color: inherit;
    padding: 10px 15px 15px 15px;
    border-color: #e7eaec;
    -webkit-border-image: none;
    -o-border-image: none;
    border-image: none;
    border-width: 1px 0px;
}

/** 表格跳转样式 **/
.pageGo input {
    height: 32px;
    width: 50px;
    margin-left: 5px;
    margin-right: 5px;
    text-align: center;
    display: block;
    float:left;
}
.pageGo button {
    height: 32px;
    display: block;
    float:left;
}

/** 表格行拖拽样式 **/
.reorder-rows-on-drag-class td {
    color:yellow!important;
	background-color:#999!important;
	text-shadow:0 0 10px black,0 0 10px black,0 0 8px black,0 0 6px black,0 0 6px black;
	box-shadow:0 12px 14px -12px #111 inset,0 -2px 2px -1px #333 inset
}

/** 表格列拖拽样式 **/
.dragtable-sortable {
    list-style-type: none; margin: 0; padding: 0; -moz-user-select: none;
}

.dragtable-sortable li {
    margin: 0; padding: 0; float: left; font-size: 1em; background: white;
}

.dragtable-sortable th, .dragtable-sortable td{
    border-left: 0px;
}

.dragtable-sortable li:first-child th, .dragtable-sortable li:first-child td {
    border-left: 1px solid #CCC;
}

.ui-sortable-helper {
    opacity: 0.7;filter: alpha(opacity=70);
}

.ui-sortable-placeholder {
    -moz-box-shadow: 4px 5px 4px #C6C6C6 inset;
    -webkit-box-shadow: 4px 5px 4px #C6C6C6 inset;
    box-shadow: 4px 5px 4px #C6C6C6 inset;
    border-bottom: 1px solid #CCCCCC;
    border-top: 1px solid #CCCCCC;
    visibility: visible !important;
    background: #EFEFEF !important;
    visibility: visible !important;
}

.ui-sortable-placeholder * {
    opacity: 0.0; visibility: hidden;
}

/** 表格选中样式 **/
.bootstrap-table .fixed-table-container .table tbody tr.selected td {
    background-color: #E8F7FD;
    color: #1890ff;
}

/** 滚动条样式 **/
::-webkit-scrollbar-track {
    background-color: #F5F5F5;
}

/** 气泡弹出框样式 **/
.popover {
	font-size: 13px;
	max-width: unset;
}

.popover-title {
	padding: 8px 14px;
	margin: 0 !important;
	font-size: 14px;
	background-color: #f7f7f7;
	border-bottom: 1px solid #ebebeb;
	border-radius: 5px 5px 0 0;
}

.popover-content {
	padding: 5px;
}

/** 向上滚动样式 **/
#scroll-up {
	border-width: 0;
	position: fixed;
	right: 2px;
	z-index: 99;
	-webkit-transition-duration: .3s;
	transition-duration: .3s;
	opacity: 0;
	filter: alpha(opacity=0);
	bottom: -24px;
	visibility: hidden;
	background-color: #aaa;
	color: #fff;
	font-size: 14px;
	display: none;
}

#scroll-up.display {
	opacity: .7;
	filter: alpha(opacity=70);
	bottom: 2px;
	visibility: visible;
}

/* 设置菜单样式 */
.menu-content {
	padding: 10px 10px 10px 25px !important;
}

.tab-content > .tab-pane {
    display: none;
}

.tab-content > .active {
    display: block;
}

.height-full {
    height: 100% !important;
}

/* 设置详细样式 */
.detail-wrap {
    max-width: 860px;
    margin: 20px auto;
    padding: 0 16px 32px;
    font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
    font-size: 13px;
    color: #333;
}

/* 详细分组卡片 */
.detail-card {
    background: #fff;
    border: 1px solid #e8ecf0;
    border-radius: 6px;
    margin-bottom: 14px;
    overflow: hidden;
}
.detail-card-title {
    padding: 10px 18px;
    background: #f7f9fb;
    border-bottom: 1px solid #e8ecf0;
    font-size: 13px;
    font-weight: 600;
    color: #555;
}
.detail-card-title i {
    margin-right: 6px;
    color: #888;
}

/* 详细表格行 */
.detail-table {
    width: 100%;
    border-collapse: collapse;
}
.detail-table tr {
    border-bottom: 1px solid #f0f2f5;
}
.detail-table tr:last-child {
    border-bottom: none;
}
.detail-table th {
    width: 110px;
    padding: 11px 18px;
    text-align: right;
    color: #888;
    font-weight: normal;
    vertical-align: top;
    white-space: nowrap;
}
.detail-table td {
    padding: 11px 18px 11px 0;
    color: #333;
    vertical-align: top;
    word-break: break-all;
}

.detail-table tr td+th {
    border-left:1px solid #f0f2f5;
    padding-left:18px
}

/* 详细状态标签 */
.tag-ok {
    display: inline-block;
    padding: 2px 10px;
    background: #f0faf4;
    color: #27ae60;
    border: 1px solid #b7dfca;
    border-radius: 3px;
    font-size: 12px;
}
.tag-err {
    display: inline-block;
    padding: 2px 10px;
    background: #fff5f5;
    color: #e74c3c;
    border: 1px solid #f5c6c6;
    border-radius: 3px;
    font-size: 12px;
}

/* 设置滚动条样式 */
::-webkit-scrollbar {
   width:10px!important;
   height:10px!important;
   -webkit-appearance:none;
   background:#f1f1f1
}

::-webkit-scrollbar-thumb {
    height:5px;
    border:1px solid transparent;
    border-top:0;
    border-bottom:0;
    border-radius:6px;
    background-color:#ccc;
    background-clip:padding-box
}

/* 设置placeholder样式 */
::-webkit-input-placeholder {
	color: #b3b3b3!important;
}

:-moz-placeholder {
	color: #b3b3b3!important;
}

::-moz-placeholder {
	color: #b3b3b3!important;
}

:-ms-input-placeholder {
	color: #b3b3b3!important;
}

/* Modern theme override */
:root {
    --gy-bg: #f6f8fb;
    --gy-surface: #ffffff;
    --gy-surface-soft: #f9fbfd;
    --gy-border: #e6ebf2;
    --gy-border-strong: #d8e0ea;
    --gy-text: #1f2937;
    --gy-text-soft: #526274;
    --gy-muted: #8a97a8;
    --gy-primary: #2563eb;
    --gy-primary-hover: #1d4ed8;
    --gy-primary-soft: #eff6ff;
    --gy-success: #0f9f6e;
    --gy-info: #0891b2;
    --gy-warning: #d97706;
    --gy-danger: #dc2626;
    --gy-sidebar: #111827;
    --gy-sidebar-soft: #1f2937;
    --gy-sidebar-text: #cbd5e1;
    --gy-sidebar-active: #ffffff;
    --gy-shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);
    --gy-shadow-md: 0 10px 24px rgba(15, 23, 42, .08);
    --gy-radius: 8px;
    --gy-radius-sm: 6px;
}

html,
body {
    background: var(--gy-bg);
    color: var(--gy-text);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
    font-size: 13px;
    letter-spacing: 0;
}

body.gray-bg,
.gray-bg,
#page-wrapper.gray-bg {
    background: var(--gy-bg);
}

a {
    color: var(--gy-primary);
}

a:hover,
a:focus {
    color: var(--gy-primary-hover);
    text-decoration: none;
}

::selection {
    background: rgba(37, 99, 235, .16);
}

::-webkit-scrollbar {
    width: 10px !important;
    height: 10px !important;
    background: transparent;
}

::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 999px;
    background-color: #cbd5e1;
    background-clip: padding-box;
}

::-webkit-scrollbar-thumb:hover {
    background-color: #94a3b8;
}

::-webkit-input-placeholder {
    color: var(--gy-muted) !important;
}

:-moz-placeholder {
    color: var(--gy-muted) !important;
}

::-moz-placeholder {
    color: var(--gy-muted) !important;
}

:-ms-input-placeholder {
    color: var(--gy-muted) !important;
}

#wrapper {
    background: var(--gy-sidebar);
}

#page-wrapper {
    background: var(--gy-bg);
}

body.fixed-sidebar .navbar-static-side,
body.canvas-menu nav.navbar-static-side,
.navbar-static-side {
    background: var(--gy-sidebar);
    box-shadow: 6px 0 20px rgba(15, 23, 42, .12);
}

nav .logo {
    background: var(--gy-sidebar);
    color: #fff;
    border-bottom: 1px solid rgba(148, 163, 184, .18);
    font-size: 17px;
    font-weight: 700;
    letter-spacing: .2px;
}

.sidebar-collapse .user-panel {
    padding: 16px 14px;
    border-bottom: 1px solid rgba(148, 163, 184, .14);
    background: linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, 0));
}

.sidebar-collapse .user-panel .image > img,
.navbar-right > .user-menu .user-image {
    border: 2px solid rgba(255, 255, 255, .22);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .18);
}

.sidebar-collapse .user-panel > .info > p {
    color: #fff;
    font-size: 13px;
    font-weight: 700;
}

.sidebar-collapse .user-panel > .info a {
    color: var(--gy-sidebar-text);
}

.nav > li > a {
    color: var(--gy-sidebar-text);
    padding: 12px 18px 12px 22px;
    font-weight: 600;
    line-height: 20px;
}

.navbar-default .nav > li > a:hover,
.navbar-default .nav > li > a:focus {
    background: rgba(255, 255, 255, .07);
    color: #fff;
}

.nav > li.active {
    border-left: 0;
    background: transparent;
}

.nav > li.active > a,
.nav > li.active > a:hover,
.nav > li.active > a:focus {
    position: relative;
    background: rgba(37, 99, 235, .18);
    color: var(--gy-sidebar-active);
}

.nav > li.active > a:before {
    content: "";
    position: absolute;
    left: 8px;
    top: 10px;
    bottom: 10px;
    width: 3px;
    border-radius: 999px;
    background: var(--gy-primary);
}

.nav > li > a > i {
    width: 18px;
    margin-right: 9px;
    color: #93a4b8;
    text-align: center;
}

.nav > li.active > a > i,
.navbar-default .nav > li > a:hover > i {
    color: #fff;
}

.nav-second-level li,
.nav-third-level li {
    padding-left: 0;
    padding-right: 0;
}

.nav-second-level li a,
.nav-third-level li a,
.nav-four-level li a {
    color: #aebccd;
    font-size: 13px;
    font-weight: 500;
}

.nav-second-level li a:hover,
.nav-third-level li a:hover,
.nav-four-level li a:hover {
    background: rgba(255, 255, 255, .06);
    color: #fff;
}

.navbar-static-top {
    min-height: 52px;
    background: rgba(255, 255, 255, .96);
    border-bottom: 1px solid var(--gy-border);
    box-shadow: var(--gy-shadow-sm);
}

.navbar-header {
    height: 52px;
}

.minimalize-styl-2,
.navbar-minimalize.minimalize-styl-2 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    margin: 9px 8px 0 14px;
    border-radius: var(--gy-radius-sm);
    background: var(--gy-surface-soft);
    color: var(--gy-text-soft) !important;
}

.minimalize-styl-2:hover,
.navbar-minimalize.minimalize-styl-2:hover {
    background: var(--gy-primary-soft);
    color: var(--gy-primary) !important;
}

.nav.navbar-top-links > li > a {
    height: 52px;
    min-height: 52px;
    padding: 16px 12px;
    color: var(--gy-text-soft);
    font-weight: 600;
}

.nav.navbar-top-links > li > a:hover,
.nav.navbar-top-links > li > a:focus {
    background: var(--gy-primary-soft);
    color: var(--gy-primary);
}

.nav.navbar-top-links > li > a > i {
    width: auto;
    margin-right: 4px;
    color: inherit;
}

.navbar-top-links .dropdown-menu,
.dropdown-menu {
    border: 1px solid var(--gy-border);
    border-radius: var(--gy-radius);
    box-shadow: var(--gy-shadow-md);
    overflow: hidden;
}

.dropdown-menu > li > a {
    border-radius: var(--gy-radius-sm);
    color: var(--gy-text-soft);
}

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
    background: var(--gy-primary-soft);
    color: var(--gy-primary);
}

.content-tabs {
    height: 44px;
    padding: 5px 8px;
    background: var(--gy-bg);
    border-bottom: 1px solid var(--gy-border);
    line-height: 34px;
}

.content-tabs .roll-nav,
.content-tabs button {
    width: 34px;
    height: 34px;
    border: 1px solid transparent;
    border-radius: var(--gy-radius-sm);
    background: transparent;
    color: var(--gy-muted);
}

.content-tabs .roll-left,
.content-tabs .roll-right {
    border-left: 0;
    border-right: 0;
}

.content-tabs .roll-nav:hover,
.content-tabs button:hover {
    background: var(--gy-surface);
    border-color: var(--gy-border);
    color: var(--gy-primary);
}

nav.page-tabs {
    height: 34px;
    margin-left: 38px;
}

.page-tabs a {
    height: 34px;
    margin-right: 6px;
    padding: 0 14px;
    border: 1px solid transparent;
    border-radius: var(--gy-radius-sm);
    color: var(--gy-text-soft);
    line-height: 32px;
}

.page-tabs a:hover {
    background: var(--gy-surface);
    border-color: var(--gy-border);
    color: var(--gy-text);
}

.page-tabs a.active {
    background: var(--gy-surface);
    border-color: var(--gy-border);
    color: var(--gy-primary);
    box-shadow: var(--gy-shadow-sm);
}

.page-tabs a i {
    color: var(--gy-muted);
}

.page-tabs a i:hover {
    color: var(--gy-danger);
}

.container-div {
    padding: 16px 22px 24px;
}

.container-div .row {
    height: auto;
    min-height: 100%;
}

.search-collapse,
.select-table,
.ibox,
.box,
.box-main,
.nav-tabs-custom,
.detail-card,
.project-view-heading,
.gy-dialog-header,
.gy-summary,
.gy-form-panel {
    background: var(--gy-surface);
    border: 1px solid var(--gy-border);
    border-radius: var(--gy-radius);
    box-shadow: var(--gy-shadow-sm);
}

.search-collapse,
.select-table {
    margin-top: 12px;
    padding: 14px 16px;
}

.search-collapse {
    overflow: visible;
}

.ibox,
.box {
    border-top: 1px solid var(--gy-border);
}

.ibox-title,
.ibox-title-gray,
.box-header,
.detail-card-title {
    min-height: 44px;
    background: var(--gy-surface-soft);
    border-bottom: 1px solid var(--gy-border);
    color: var(--gy-text);
    font-weight: 700;
}

.select-list ul,
.layui-layer-content ul {
    margin: 0;
}

.select-list li {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    margin: 4px 12px 6px 0;
    color: var(--gy-text-soft);
    gap: 7px;
}

.select-list li p,
.select-list li label:not(.radio-box) {
    width: auto;
    min-width: 0;
    margin: 0;
    color: var(--gy-text-soft);
    text-align: left;
    font-weight: 600;
}

.select-list li input,
.select-list li select,
.select-list .btn-default,
.form-control,
.single-line,
.bootstrap-select.form-control .btn-default,
.select2-container--bootstrap .select2-selection {
    height: 34px;
    border: 1px solid var(--gy-border-strong);
    border-radius: var(--gy-radius-sm);
    background: #fff;
    color: var(--gy-text);
    box-shadow: none;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.select-list li input,
.select-list li select,
.select-list .btn-default {
    padding: 6px 10px;
}

.form-control,
.single-line {
    padding: 6px 10px;
}

.select-list li input:hover,
.select-list li select:hover,
.select-list .btn-default:hover,
.form-control:hover,
.single-line:hover,
.bootstrap-select.form-control .btn-default:hover,
.select2-container--bootstrap .select2-selection:hover {
    border-color: #b7c3d3;
}

.select-list li input:focus,
.select-list li select:focus,
.form-control:focus,
.single-line:focus,
.bootstrap-select.form-control.open .btn-default,
.select2-container--bootstrap.select2-container--focus .select2-selection,
.select2-container--bootstrap.select2-container--open .select2-selection {
    border-color: var(--gy-primary);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
    outline: none;
}

textarea.form-control {
    height: auto;
    min-height: 84px;
}

.btn,
.search-btn,
.layui-layer-btn a {
    border-radius: var(--gy-radius-sm);
    border-width: 1px;
    font-weight: 700;
    box-shadow: none;
    transition: background .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.btn:hover,
.search-btn:hover,
.layui-layer-btn a:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(15, 23, 42, .10);
}

.btn:active,
.search-btn:active,
.layui-layer-btn a:active {
    transform: translateY(0);
    box-shadow: none;
}

.btn-rounded {
    border-radius: var(--gy-radius-sm);
}

.btn-primary,
.btn-primary.btn-outline:hover,
.btn-primary.btn-outline:focus,
.search-btn,
.layui-layer-btn .layui-layer-btn0 {
    background: var(--gy-primary);
    border-color: var(--gy-primary);
    color: #fff;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary,
.search-btn:hover,
.layui-layer-btn .layui-layer-btn0:hover {
    background: var(--gy-primary-hover);
    border-color: var(--gy-primary-hover);
    color: #fff;
}

.btn-success,
.btn-success.btn-outline:hover,
.btn-success.btn-outline:focus {
    background: var(--gy-success);
    border-color: var(--gy-success);
    color: #fff;
}

.btn-info,
.btn-info.btn-outline:hover,
.btn-info.btn-outline:focus {
    background: var(--gy-info);
    border-color: var(--gy-info);
    color: #fff;
}

.btn-warning,
.btn-warning.btn-outline:hover,
.btn-warning.btn-outline:focus {
    background: var(--gy-warning);
    border-color: var(--gy-warning);
    color: #fff;
}

.btn-danger,
.btn-danger.btn-outline:hover,
.btn-danger.btn-outline:focus {
    background: var(--gy-danger);
    border-color: var(--gy-danger);
    color: #fff;
}

.btn-default,
.btn-white,
.layui-layer-btn .layui-layer-btn1 {
    background: #fff;
    border-color: var(--gy-border-strong);
    color: var(--gy-text-soft);
}

.btn-default:hover,
.btn-default:focus,
.btn-white:hover,
.btn-white:focus,
.layui-layer-btn .layui-layer-btn1:hover {
    background: var(--gy-surface-soft);
    border-color: #b7c3d3;
    color: var(--gy-text);
}

.btn-xs {
    padding: 2px 8px;
    font-size: 12px;
    line-height: 1.5;
}

.btn-sm {
    padding: 5px 10px;
}

.btn-group-sm > .btn,
.btn-group-sm .btn {
    margin-right: 6px;
}

#toolbar.btn-group-sm {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
    margin-bottom: 0;
}

#toolbar.btn-group-sm .btn {
    margin-right: 0;
}

.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
    opacity: .52;
    transform: none;
    box-shadow: none;
}

.select-table {
    overflow: hidden;
}

.table-striped {
    min-height: 75%;
}

.bootstrap-table .fixed-table-toolbar {
    margin-bottom: 8px;
}

.fixed-table-toolbar .columns,
.fixed-table-toolbar .search,
.fixed-table-toolbar .pull-right {
    margin-top: 0;
}

.fixed-table-container {
    border: 1px solid var(--gy-border) !important;
    border-radius: var(--gy-radius);
    overflow: hidden;
}

.table-striped .bootstrap-table,
.table-striped .table-bordered {
    border: 0 !important;
}

.table,
.bootstrap-table .table {
    margin-bottom: 0;
    color: var(--gy-text);
}

.table-striped table thead,
.fixed-table-container thead th {
    background: #f8fafc;
}

.table-striped .table > thead > tr > th,
.table-striped .table > tbody > tr > th,
.table-bordered .table > thead > tr > th,
.table-bordered .table > tbody > tr > th,
.fixed-table-container thead th {
    height: 42px;
    padding: 10px 12px !important;
    border-color: var(--gy-border) !important;
    color: var(--gy-text-soft);
    font-size: 13px;
    font-weight: 700;
    vertical-align: middle;
}

.table-striped table > thead > tr > td,
.table-striped table > tbody > tr > td,
.table-striped table > tfoot > tr > td,
.bootstrap-table .table > tbody > tr > td {
    padding: 10px 12px !important;
    border-color: var(--gy-border) !important;
    color: var(--gy-text);
    vertical-align: middle;
}

.table-striped .table > tbody > tr:nth-of-type(odd),
.table-striped > tbody > tr:nth-of-type(odd) {
    background: #fff;
}

.bootstrap-table .table-hover > tbody > tr:hover > td,
.bootstrap-table .table-hover > tbody > tr.hover > td {
    background: var(--gy-primary-soft) !important;
}

.bootstrap-table .table > tbody > tr.selected > td,
.bootstrap-table .fixed-table-container .table tbody tr.selected td {
    background: #e0f2fe !important;
}

.fixed-table-pagination {
    padding: 10px 2px 0;
    color: var(--gy-text-soft);
}

.pagination > li > a,
.pagination > li > span {
    min-width: 32px;
    margin: 0 2px;
    border: 1px solid var(--gy-border);
    border-radius: var(--gy-radius-sm) !important;
    color: var(--gy-text-soft);
}

.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
    background: var(--gy-primary-soft);
    border-color: #bfdbfe;
    color: var(--gy-primary);
}

.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
    background: var(--gy-primary);
    border-color: var(--gy-primary);
    color: #fff;
}

.fixed-table-toolbar .btn,
.fixed-table-pagination .btn,
.page-list .btn {
    background: #fff;
    border-color: var(--gy-border-strong);
    color: var(--gy-text-soft);
}

.fixed-table-toolbar .btn:hover,
.fixed-table-pagination .btn:hover,
.page-list .btn:hover {
    background: var(--gy-surface-soft);
    color: var(--gy-primary);
}

.label,
.badge {
    border-radius: 999px;
    font-weight: 700;
}

.label-primary,
.badge-primary {
    background: var(--gy-primary);
}

.label-success,
.badge-success {
    background: var(--gy-success);
}

.label-info,
.badge-info {
    background: var(--gy-info);
}

.label-warning,
.badge-warning {
    background: var(--gy-warning);
}

.label-danger,
.badge-danger {
    background: var(--gy-danger);
}

.progress,
.project-progress-bar {
    height: 8px;
    border-radius: 999px;
    background: #e8eef6;
    box-shadow: none;
}

.progress-bar,
.project-progress-bar span {
    border-radius: 999px;
    background: linear-gradient(90deg, var(--gy-primary), var(--gy-info));
}

.project-view-heading {
    padding: 13px 16px;
    margin-bottom: 12px;
}

.project-view-title {
    color: var(--gy-text);
    font-size: 16px;
}

.project-view-desc,
.project-progress-text,
.gy-summary-label,
.gy-segment-desc {
    color: var(--gy-muted);
}

.project-products-detail {
    background: #f8fafc;
    border-color: var(--gy-border);
    border-radius: var(--gy-radius-sm);
}

.project-products-detail th {
    background: #eef4ff;
    color: var(--gy-text-soft);
}

.project-products-empty {
    border-color: var(--gy-border-strong);
    border-radius: var(--gy-radius-sm);
    color: var(--gy-muted);
}

.project-exception-tag {
    border-radius: 999px;
    background: var(--gy-danger);
    font-weight: 700;
}

.detail-wrap {
    color: var(--gy-text);
}

.detail-card-title {
    color: var(--gy-text-soft);
}

.detail-table tr,
.detail-table tr td + th {
    border-color: var(--gy-border);
}

.detail-table th {
    color: var(--gy-muted);
}

.detail-table td {
    color: var(--gy-text);
}

.tag-ok,
.tag-err {
    border-radius: 999px;
    font-weight: 700;
}

.gy-dialog {
    padding: 18px;
}

body.gy-modal-body {
    background: var(--gy-bg);
    color: var(--gy-text);
}

.gy-dialog-header h3,
.gy-summary-title,
.gy-segment-title {
    color: var(--gy-text);
}

.gy-dialog-header p,
.gy-form-panel .help-block {
    color: var(--gy-muted);
}

.gy-choice-row .radio-box,
.gy-segment-card {
    border-color: var(--gy-border-strong);
    border-radius: var(--gy-radius);
    background: #fff;
}

.gy-choice-row .radio-box:hover,
.gy-segment-item:hover .gy-segment-card {
    border-color: #b7c3d3;
    background: var(--gy-surface-soft);
}

.gy-segment-item input:checked + .gy-segment-card {
    border-color: var(--gy-primary);
    background: var(--gy-primary-soft);
    box-shadow: inset 0 0 0 1px var(--gy-primary);
}

.gy-segment-item input:checked + .gy-segment-card .gy-segment-icon {
    background: var(--gy-primary);
}

.layer-ext-moon .layui-layer-title,
.layui-layer-title {
    background: var(--gy-surface);
    border-bottom: 1px solid var(--gy-border);
    color: var(--gy-text);
    font-weight: 700;
}

.layui-layer,
.layui-layer-dialog,
.layui-layer-page {
    border-radius: var(--gy-radius) !important;
    box-shadow: var(--gy-shadow-md) !important;
    overflow: hidden;
}

.layui-layer-setwin a {
    opacity: .7;
}

.layui-layer-setwin a:hover {
    opacity: 1;
}

.layui-layer-btn {
    border-top: 1px solid var(--gy-border);
    background: var(--gy-surface-soft);
}

.modal-content,
.popover,
.panel {
    border: 1px solid var(--gy-border);
    border-radius: var(--gy-radius);
    box-shadow: var(--gy-shadow-md);
}

.panel-heading,
.modal-header {
    background: var(--gy-surface-soft);
    border-bottom-color: var(--gy-border);
}

.panel-footer,
.modal-footer {
    background: var(--gy-surface-soft);
    border-top-color: var(--gy-border);
}

.check-box,
.radio-box {
    color: var(--gy-text-soft);
}

.icheckbox-blue,
.iradio-blue {
    border-color: var(--gy-border-strong);
}

.icheckbox-blue.checked,
.iradio-blue.checked {
    border-color: var(--gy-primary);
    background-color: var(--gy-primary);
}

#scroll-up {
    right: 18px;
    bottom: 18px;
    border-radius: 999px;
    background: var(--gy-sidebar);
    border-color: var(--gy-sidebar);
    box-shadow: var(--gy-shadow-md);
}

@media (max-width: 768px) {
    .container-div {
        padding: 12px;
    }

    .search-collapse {
        display: none;
    }

    .select-table {
        padding: 10px;
    }

    .nav.navbar-top-links > li > a {
        padding-left: 9px;
        padding-right: 9px;
    }
}

/* Modern list refinement */
:root {
    --gy-primary-line: #bfdbfe;
    --gy-success-soft: #ecfdf5;
    --gy-success-line: #bbf7d0;
    --gy-info-soft: #ecfeff;
    --gy-info-line: #a5f3fc;
    --gy-warning-soft: #fffbeb;
    --gy-warning-line: #fde68a;
    --gy-danger-soft: #fef2f2;
    --gy-danger-line: #fecaca;
}

.search-collapse {
    padding: 16px;
    border-color: #dfe7f1;
}

.search-collapse .select-list > ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
}

.search-collapse .select-list > ul > li {
    float: none !important;
    min-height: 36px;
    margin: 0;
    gap: 8px;
}

.search-collapse .select-list > ul > li:last-child {
    margin-left: auto;
}

.search-collapse .select-list > ul > li > label,
.search-collapse .select-list > ul > li > p {
    color: #475569;
    font-size: 13px;
    white-space: nowrap;
}

.search-collapse .select-list li input,
.search-collapse .select-list li select,
.search-collapse .select-list .btn-default,
.search-collapse .select-list .bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn),
.search-collapse .select-list .select2-container--bootstrap {
    width: 188px !important;
}

.search-collapse .select-list li input,
.search-collapse .select-list li select,
.search-collapse .select-list .btn-default,
.search-collapse .select-list .select2-container--bootstrap .select2-selection--single {
    height: 36px !important;
}

.search-collapse .select-list .select-time input {
    width: 96px !important;
}

.search-collapse .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 6px 12px;
}

.search-collapse .btn + .btn {
    margin-left: 6px;
}

.search-collapse .btn-warning {
    background: #fff;
    border-color: var(--gy-border-strong);
    color: var(--gy-text-soft);
}

.search-collapse .btn-warning:hover,
.search-collapse .btn-warning:focus {
    background: var(--gy-warning-soft);
    border-color: var(--gy-warning-line);
    color: var(--gy-warning);
}

#toolbar.btn-group-sm {
    align-items: center;
    padding: 13px 0 4px;
}

#toolbar.btn-group-sm .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 6px 11px;
    background: #fff;
    border-color: var(--gy-border-strong);
    color: var(--gy-text-soft);
}

#toolbar.btn-group-sm .btn i {
    margin-right: 5px;
}

#toolbar.btn-group-sm .btn-success {
    background: var(--gy-success-soft);
    border-color: var(--gy-success-line);
    color: #047857;
}

#toolbar.btn-group-sm .btn-primary {
    background: var(--gy-primary-soft);
    border-color: var(--gy-primary-line);
    color: var(--gy-primary);
}

#toolbar.btn-group-sm .btn-info {
    background: var(--gy-info-soft);
    border-color: var(--gy-info-line);
    color: var(--gy-info);
}

#toolbar.btn-group-sm .btn-warning {
    background: var(--gy-warning-soft);
    border-color: var(--gy-warning-line);
    color: var(--gy-warning);
}

#toolbar.btn-group-sm .btn-danger {
    background: var(--gy-danger-soft);
    border-color: var(--gy-danger-line);
    color: var(--gy-danger);
}

#toolbar.btn-group-sm .btn:hover,
#toolbar.btn-group-sm .btn:focus {
    background: #fff;
    border-color: #b7c3d3;
    color: var(--gy-text);
}

#toolbar.btn-group-sm .btn.disabled,
#toolbar.btn-group-sm .btn[disabled],
#toolbar.btn-group-sm .btn.disabled:hover,
#toolbar.btn-group-sm .btn[disabled]:hover {
    background: #f8fafc;
    border-color: var(--gy-border);
    color: var(--gy-muted);
}

.select-table {
    padding: 0;
}

.select-table .bootstrap-table {
    padding: 0;
}

.bootstrap-table .fixed-table-toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    min-height: 48px;
    margin: 0;
    padding: 8px 12px;
    border-bottom: 1px solid var(--gy-border);
    background: var(--gy-surface-soft);
}

.fixed-table-toolbar .columns,
.fixed-table-toolbar .search,
.fixed-table-toolbar .pull-right {
    margin-bottom: 0;
}

.fixed-table-toolbar .search input {
    height: 34px;
    min-width: 220px;
    border: 1px solid var(--gy-border-strong);
    border-radius: var(--gy-radius-sm);
    box-shadow: none;
}

.fixed-table-toolbar .search input:focus {
    border-color: var(--gy-primary);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}

.fixed-table-container {
    border: 0 !important;
    border-radius: 0;
}

.fixed-table-body {
    background: #fff;
}

.table-striped .table > thead > tr > th,
.table-bordered .table > thead > tr > th,
.fixed-table-container thead th {
    height: 44px;
    background: #f8fafc;
    color: #475569;
    letter-spacing: 0;
}

.bootstrap-table .table > tbody > tr > td,
.table-striped table > tbody > tr > td {
    height: 48px;
}

.bootstrap-table .table > tbody > tr:nth-child(even) > td {
    background: #fcfdff;
}

.bootstrap-table .table-hover > tbody > tr:hover > td,
.bootstrap-table .table-hover > tbody > tr.hover > td {
    background: #f2f7ff !important;
}

.bootstrap-table .table td .btn-xs {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 24px;
    margin: 2px 4px 2px 0;
    padding: 3px 8px;
    border-radius: 999px;
    border: 1px solid transparent;
    background: #f8fafc;
    color: var(--gy-text-soft);
    line-height: 16px;
    box-shadow: none;
}

.bootstrap-table .table td .btn-xs:hover,
.bootstrap-table .table td .btn-xs:focus {
    transform: none;
    box-shadow: none;
}

.bootstrap-table .table td .btn-xs i {
    margin-right: 0;
}

.bootstrap-table .table td .btn-xs.btn-primary {
    background: var(--gy-primary-soft);
    border-color: #dbeafe;
    color: var(--gy-primary);
}

.bootstrap-table .table td .btn-xs.btn-success {
    background: var(--gy-success-soft);
    border-color: var(--gy-success-line);
    color: #047857;
}

.bootstrap-table .table td .btn-xs.btn-info {
    background: var(--gy-info-soft);
    border-color: var(--gy-info-line);
    color: var(--gy-info);
}

.bootstrap-table .table td .btn-xs.btn-warning {
    background: var(--gy-warning-soft);
    border-color: var(--gy-warning-line);
    color: var(--gy-warning);
}

.bootstrap-table .table td .btn-xs.btn-danger {
    background: var(--gy-danger-soft);
    border-color: var(--gy-danger-line);
    color: var(--gy-danger);
}

.bootstrap-table .table td .btn-xs.btn-default,
.bootstrap-table .table td .btn-xs.btn-white {
    background: #f8fafc;
    border-color: var(--gy-border);
    color: var(--gy-text-soft);
}

.bootstrap-table .table td .btn-xs.btn-primary:hover,
.bootstrap-table .table td .btn-xs.btn-success:hover,
.bootstrap-table .table td .btn-xs.btn-info:hover,
.bootstrap-table .table td .btn-xs.btn-warning:hover,
.bootstrap-table .table td .btn-xs.btn-danger:hover,
.bootstrap-table .table td .btn-xs.btn-default:hover,
.bootstrap-table .table td .btn-xs.btn-white:hover {
    background: #fff;
    border-color: #b7c3d3;
    color: var(--gy-text);
}

.label,
.badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: 3px 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 12px;
    line-height: 1.2;
}

.label-default,
.badge-default {
    background: #f1f5f9;
    border-color: #e2e8f0;
    color: #64748b;
}

.label-primary,
.badge-primary {
    background: var(--gy-primary-soft);
    border-color: var(--gy-primary-line);
    color: var(--gy-primary);
}

.label-success,
.badge-success {
    background: var(--gy-success-soft);
    border-color: var(--gy-success-line);
    color: #047857;
}

.label-info,
.badge-info {
    background: var(--gy-info-soft);
    border-color: var(--gy-info-line);
    color: var(--gy-info);
}

.label-warning,
.badge-warning {
    background: var(--gy-warning-soft);
    border-color: var(--gy-warning-line);
    color: var(--gy-warning);
}

.label-danger,
.badge-danger {
    background: var(--gy-danger-soft);
    border-color: var(--gy-danger-line);
    color: var(--gy-danger);
}

.project-progress {
    min-width: 170px;
}

.project-progress-line {
    gap: 10px;
}

.project-progress-bar {
    height: 7px;
    background: #e5edf7;
}

.project-progress-text {
    min-width: 66px;
    color: #64748b;
    font-weight: 700;
}

.project-exception-tag {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    margin-left: 8px;
    padding: 3px 9px;
    border: 1px solid var(--gy-danger-line);
    background: var(--gy-danger-soft);
    color: var(--gy-danger);
}

.project-progress-bar {
    height: 7px !important;
    background: #e5edf7 !important;
}

.project-progress-bar span {
    background: linear-gradient(90deg, var(--gy-primary), var(--gy-info)) !important;
}

.project-exception-tag {
    border-radius: 999px !important;
    border: 1px solid var(--gy-danger-line) !important;
    background: var(--gy-danger-soft) !important;
    color: var(--gy-danger) !important;
}

.fixed-table-pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    padding: 12px;
    border-top: 1px solid var(--gy-border);
    background: #fff;
}

.fixed-table-pagination .pagination-detail,
.fixed-table-pagination div.pagination {
    margin-top: 0;
    margin-bottom: 0;
}

.fixed-table-pagination .pagination-info {
    color: var(--gy-muted);
}

.form-horizontal.m,
.form-horizontal:not(.gy-form-panel) {
    padding-top: 14px;
}

.form-horizontal .form-group {
    margin-bottom: 16px;
}

.form-horizontal .control-label {
    color: #475569;
    font-weight: 700;
}

.form-control-plaintext,
.form-control-plaintext-no-content {
    color: var(--gy-text);
}

@media (max-width: 992px) {
    .search-collapse .select-list > ul > li:last-child {
        margin-left: 0;
    }

    .fixed-table-toolbar {
        justify-content: flex-start;
    }
}

/* Layout fixes */
.content-tabs .roll-nav.tabReload,
.content-tabs a.roll-nav.tabReload {
    right: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 64px;
    height: 34px;
    padding: 0 9px;
    white-space: nowrap;
    line-height: 32px;
}

.content-tabs .roll-nav.tabReload i,
.content-tabs a.roll-nav.tabReload i {
    margin: 0;
}

.content-tabs .roll-right.tabRight {
    right: 70px;
}

.bootstrap-table .fixed-table-toolbar {
    justify-content: flex-start;
}

.fixed-table-toolbar .pull-left,
.fixed-table-toolbar .pull-right,
.fixed-table-toolbar .bs-bars,
.fixed-table-toolbar .columns,
.fixed-table-toolbar .search {
    float: none !important;
}

.fixed-table-toolbar .bs-bars {
    order: 1;
    margin-right: auto;
}

.fixed-table-toolbar .search {
    order: 2;
}

.fixed-table-toolbar .columns,
.fixed-table-toolbar .columns-right {
    order: 3;
}

/* Modern interaction polish */
@keyframes gy-dialog-in {
    from {
        opacity: 0;
        transform: translate3d(0, 10px, 0) scale(.985);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(1);
    }
}

@keyframes gy-row-flash {
    from {
        background-color: rgba(37, 99, 235, .08);
    }
    to {
        background-color: rgba(37, 99, 235, 0);
    }
}

.layui-layer-shade {
    background-color: rgba(15, 23, 42, .34) !important;
    backdrop-filter: blur(2px);
}

.layui-layer:not(.layui-layer-loading) {
    border: 1px solid rgba(226, 232, 240, .9) !important;
    border-radius: 12px !important;
    box-shadow: 0 22px 54px rgba(15, 23, 42, .18) !important;
    animation: gy-dialog-in .18s cubic-bezier(.16, 1, .3, 1);
}

.layui-layer-iframe {
    background: var(--gy-bg) !important;
}

.layui-layer-title {
    height: 50px !important;
    padding: 0 56px 0 18px !important;
    background: linear-gradient(180deg, #fff, #f8fafc) !important;
    color: var(--gy-text) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 50px !important;
}

.layui-layer-setwin {
    top: 17px !important;
    right: 16px !important;
}

.layui-layer-setwin a {
    transition: opacity .15s ease, transform .15s ease;
}

.layui-layer-setwin a:hover {
    transform: scale(1.08);
}

.layui-layer-content {
    background: var(--gy-bg);
}

.layui-layer-iframe .layui-layer-content {
    background: var(--gy-bg);
}

.layui-layer-btn {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 16px !important;
    background: #fff !important;
}

.layui-layer-btn a {
    min-width: 76px;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    line-height: 32px !important;
    text-align: center;
}

body:not(.fixed-sidebar):not(.full-height-layout) {
    background: var(--gy-bg);
}

.form-horizontal.m,
.form-horizontal:not(.gy-form-panel) {
    max-width: 980px;
    margin-right: auto;
    margin-left: auto;
    padding: 18px 20px 12px;
}

.form-horizontal .form-group {
    position: relative;
    padding: 0 4px;
    transition: background .15s ease;
}

.form-horizontal .form-group:hover {
    background: rgba(248, 250, 252, .72);
}

.form-horizontal .control-label {
    padding-top: 8px;
    color: #334155;
    font-size: 13px;
}

.control-label.is-required:before {
    content: "";
}

.control-label.is-required:after {
    content: "*";
    display: inline-block;
    margin-left: 4px;
    color: var(--gy-danger);
    font-weight: 800;
    line-height: 1;
}

.form-horizontal .help-block,
.help-block {
    color: var(--gy-muted);
    font-size: 12px;
    line-height: 1.6;
}

.help-block .fa {
    color: var(--gy-info);
}

.form-control,
.single-line,
.select2-container--bootstrap .select2-selection,
.bootstrap-select.form-control .btn-default {
    min-height: 36px;
    border-color: #d7e1ed;
    border-radius: 8px;
}

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

.input-group-addon {
    border-color: #d7e1ed;
    background: #f8fafc;
    color: var(--gy-muted);
}

input.error,
textarea.error,
select.error,
.Validform_error,
select.error + label.error + .select2-container--bootstrap .select2-selection--single {
    background: #fff !important;
    border-color: var(--gy-danger) !important;
    color: var(--gy-text) !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, .10) !important;
}

label.error {
    top: auto;
    right: 20px;
    bottom: -18px;
    min-height: 18px;
    padding: 1px 7px;
    border-radius: 999px;
    background: var(--gy-danger-soft);
    color: var(--gy-danger);
    font-weight: 700;
    line-height: 16px;
}

.input-group label.error,
.input-group.date label.error,
.select2-hidden-accessible + label.error,
select.error + label.error {
    right: 20px;
}

.check-box,
.radio-box {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    margin: 0 8px 8px 0;
    padding: 7px 12px 7px 34px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: #fff;
    color: #475569;
    transition: background .15s ease, border-color .15s ease, color .15s ease;
}

.check-box:hover,
.radio-box:hover {
    border-color: #dbeafe;
    background: var(--gy-primary-soft);
    color: var(--gy-primary);
}

.icheckbox-blue,
.iradio-blue {
    top: 8px;
    left: 10px;
    width: 16px;
    height: 16px;
    border: 1px solid #cbd5e1;
    background: #fff !important;
    box-shadow: inset 0 0 0 2px #fff;
}

.iradio-blue {
    border-radius: 999px;
}

.icheckbox-blue {
    border-radius: 5px;
}

.icheckbox-blue.checked,
.iradio-blue.checked {
    border-color: var(--gy-primary);
    background: var(--gy-primary) !important;
}

.icheckbox-blue.checked:after {
    content: "";
    position: absolute;
    left: 4px;
    top: 1px;
    width: 6px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.iradio-blue.checked:after {
    content: "";
    position: absolute;
    left: 4px;
    top: 4px;
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #fff;
}

input[type="file"].form-control {
    height: auto;
    min-height: 42px;
    padding: 8px;
    border-style: dashed;
    background: #fbfdff;
}

.file-input .btn-default,
.file-input .btn-primary,
.fileinput .btn-default,
.fileinput .btn-primary {
    border-radius: 8px;
}

.select2-container--bootstrap .select2-selection--multiple {
    min-height: 36px;
    border-color: #d7e1ed;
    border-radius: 8px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice,
.select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
    border: 1px solid var(--gy-primary-line);
    border-radius: 999px;
    background: var(--gy-primary-soft);
    color: var(--gy-primary);
    font-weight: 700;
}

.bootstrap-table .fixed-table-container .table > tbody > tr {
    transition: background .15s ease, box-shadow .15s ease;
}

.bootstrap-table .fixed-table-container .table > tbody > tr:hover {
    animation: none;
}

.fixed-table-loading {
    background: linear-gradient(90deg, #f8fafc, #eef4ff, #f8fafc);
    background-size: 200% 100%;
    color: var(--gy-muted);
    animation: gy-loading-pan 1.2s ease-in-out infinite;
}

@keyframes gy-loading-pan {
    from {
        background-position: 200% 0;
    }
    to {
        background-position: -200% 0;
    }
}

.no-records-found td,
.bootstrap-table .no-records-found td {
    height: 96px !important;
    color: var(--gy-muted);
    font-weight: 700;
}

.page-tabs a,
.content-tabs .roll-nav,
.nav > li > a {
    transition: background .16s ease, color .16s ease, border-color .16s ease, transform .16s ease;
}

.page-tabs a.active {
    transform: translateY(-1px);
}

.nav > li.active > a:before {
    transition: top .16s ease, bottom .16s ease, background .16s ease;
}

.nav > li.active > a:hover:before {
    top: 8px;
    bottom: 8px;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *:before,
    *:after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
    }
}

/* Wide business forms */
@media (min-width: 769px) {
    body .fd-page {
        padding: 16px 20px 80px;
    }
}

.fd-page > .form-horizontal.m,
.fd-page .form-horizontal.m {
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
}

.fd-page .fd-section {
    max-width: none;
}

@media (min-width: 1440px) {
    body .fd-page {
        padding-right: 24px;
        padding-left: 24px;
    }
}

/* Image upload interaction */
.gy-image-uploader {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 168px;
    padding: 16px;
    border: 1px dashed #b9c8dc;
    border-radius: 10px;
    background: linear-gradient(180deg, #fbfdff, #f6f9fc);
    color: var(--gy-muted);
    cursor: pointer;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.gy-image-uploader:hover,
.gy-image-uploader.dragover,
.gy-image-drop-target.dragover {
    border-color: var(--gy-primary) !important;
    background: #eef6ff !important;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .12);
}

.gy-image-uploader.dragover,
.gy-image-drop-target.dragover {
    transform: translateY(-1px);
}

.gy-image-input {
    position: absolute;
    inset: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.gy-image-uploader-empty {
    text-align: center;
    pointer-events: none;
}

.gy-image-uploader-empty i {
    display: block;
    margin-bottom: 10px;
    color: var(--gy-primary);
    font-size: 28px;
}

.gy-image-uploader-empty div {
    color: #52677d;
    font-weight: 700;
}

.gy-image-uploader-empty small {
    display: block;
    margin-top: 6px;
    color: #8190a3;
    font-weight: 600;
}

.gy-image-preview-wrap {
    display: none;
    width: 100%;
    text-align: center;
    pointer-events: none;
}

.gy-image-uploader.has-preview .gy-image-uploader-empty {
    display: none;
}

.gy-image-uploader.has-preview .gy-image-preview-wrap {
    display: block;
}

.gy-image-preview,
.gy-ratio-preview-img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 420px;
    margin: 0 auto;
    border-radius: 8px;
    background: #fff;
    object-fit: contain;
}

.gy-image-file-name {
    margin-top: 10px;
    overflow: hidden;
    color: #60758c;
    font-size: 12px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gy-image-uploader ~ #imagePreviewWrap {
    display: none !important;
}

.gy-image-drop-target {
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fd-uploader {
    min-height: 170px !important;
    padding: 14px !important;
    overflow: visible !important;
}

.fd-uploader-empty {
    border-radius: 10px;
}

.fd-uploader-preview-wrap {
    position: relative !important;
    inset: auto !important;
    display: none !important;
    min-height: 170px;
    padding: 12px;
    border-radius: 10px;
    background: #fff;
    text-align: center;
}

.fd-uploader-preview-wrap.active {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.fd-uploader-preview {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 420px !important;
    margin: 0 auto !important;
    border-radius: 8px;
    object-fit: contain !important;
}

.fd-uploader-actions {
    position: relative !important;
    z-index: 4;
    display: flex;
    justify-content: center;
    margin-top: 10px;
    padding: 0 !important;
    background: transparent !important;
}

.fd-uploader-delete {
    top: 10px !important;
    right: 10px !important;
    z-index: 4 !important;
}

.seal-preview img,
.form-group img[style*="max-width:160px"],
.form-group img[style*="max-width: 160px"] {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 360px !important;
    object-fit: contain !important;
}

/* Premium detail polish */
.layui-layer-btn {
    position: sticky;
    bottom: 0;
    z-index: 6;
    align-items: center;
    min-height: 58px;
    border-top: 1px solid rgba(226, 232, 240, .95) !important;
    background: rgba(255, 255, 255, .94) !important;
    box-shadow: 0 -12px 24px rgba(15, 23, 42, .06);
    backdrop-filter: blur(8px);
}

.layui-layer-btn a {
    min-width: 88px;
    height: 36px !important;
    border-radius: 8px !important;
    font-weight: 800;
    line-height: 34px !important;
}

.fd-section {
    border: 1px solid rgba(214, 226, 240, .92) !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .045) !important;
}

.fd-section-title {
    position: relative;
    padding-bottom: 12px;
    border-bottom: 1px solid #eef2f7;
}

.fd-section-title h4 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #172033 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}

.fd-section-title h4:before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 16px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--gy-primary), var(--gy-info));
}

.fd-section-title .fd-tip {
    color: #7b8ba0 !important;
    font-weight: 600;
}

.fd-product-card {
    border-color: #dbe6f2 !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .04);
}

.fd-product-card-head {
    background: linear-gradient(180deg, #f8fbff, #eef5ff) !important;
}

.fd-product-card-head strong {
    color: #1e2b3f !important;
    font-weight: 800 !important;
}

.form-horizontal .form-group {
    border-radius: 8px;
}

.form-horizontal .form-control[readonly],
.form-horizontal .form-control[disabled],
.form-horizontal fieldset[disabled] .form-control {
    border-color: #e1e8f0;
    background: #f6f8fb !important;
    color: #66778a;
}

.gy-image-uploader {
    border-width: 2px;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .68);
}

.gy-image-uploader.has-preview {
    align-items: stretch;
    background: #fff;
}

.gy-image-preview-wrap {
    padding: 12px;
    border: 1px solid #e4ecf5;
    border-radius: 10px;
    background: linear-gradient(180deg, #fff, #fbfdff);
    box-shadow: 0 8px 18px rgba(15, 23, 42, .05);
}

.gy-image-preview,
.fd-uploader-preview {
    box-shadow: 0 1px 0 rgba(15, 23, 42, .04);
}

.fd-uploader-preview-wrap {
    border: 1px solid #e4ecf5;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .05);
}

.fd-uploader-actions {
    opacity: .08;
    transform: translateY(4px);
    transition: opacity .16s ease, transform .16s ease;
}

.fd-uploader:hover .fd-uploader-actions,
.fd-uploader:focus-within .fd-uploader-actions {
    opacity: 1;
    transform: translateY(0);
}

.fd-uploader-delete {
    opacity: .12;
    transition: opacity .16s ease, transform .16s ease, background .16s ease;
}

.fd-uploader:hover .fd-uploader-delete,
.fd-uploader:focus-within .fd-uploader-delete {
    opacity: 1;
}

.bootstrap-table .table > thead > tr > th {
    position: sticky;
    top: 0;
    z-index: 2;
    border-bottom: 1px solid #dfe8f2 !important;
    background: linear-gradient(180deg, #fbfdff, #f3f7fb) !important;
    color: #334155 !important;
    font-weight: 800;
}

.bootstrap-table .table > tbody > tr > td {
    border-top-color: #edf2f7 !important;
}

.bootstrap-table .table > tbody > tr:hover > td:first-child {
    box-shadow: none;
}

.bootstrap-table .table td .label,
.bootstrap-table .table td .badge,
.gy-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    min-height: 24px;
    padding: 4px 10px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #f1f5f9;
    color: #64748b;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .42);
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

.bootstrap-table .table td .label-default,
.bootstrap-table .table td .badge-default {
    background: #f1f5f9;
    border-color: #e2e8f0;
    color: #64748b;
}

.bootstrap-table .table td .label-primary,
.bootstrap-table .table td .badge-primary {
    background: var(--gy-primary-soft);
    border-color: var(--gy-primary-line);
    color: var(--gy-primary);
}

.bootstrap-table .table td .label-success,
.bootstrap-table .table td .badge-success {
    background: var(--gy-success-soft);
    border-color: var(--gy-success-line);
    color: #047857;
}

.bootstrap-table .table td .label-info,
.bootstrap-table .table td .badge-info {
    background: var(--gy-info-soft);
    border-color: var(--gy-info-line);
    color: var(--gy-info);
}

.bootstrap-table .table td .label-warning,
.bootstrap-table .table td .badge-warning {
    background: var(--gy-warning-soft);
    border-color: var(--gy-warning-line);
    color: var(--gy-warning);
}

.bootstrap-table .table td .label-danger,
.bootstrap-table .table td .badge-danger {
    background: var(--gy-danger-soft);
    border-color: var(--gy-danger-line);
    color: var(--gy-danger);
}

.gy-status-pending_review,
.fd-status-pending_review {
    border-color: var(--gy-warning-line) !important;
    background: var(--gy-warning-soft) !important;
    color: var(--gy-warning) !important;
}

.gy-status-in_production,
.fd-status-in_production {
    border-color: var(--gy-primary-line) !important;
    background: var(--gy-primary-soft) !important;
    color: var(--gy-primary) !important;
}

.gy-status-partial_completed,
.fd-status-partial_completed {
    border-color: var(--gy-info-line) !important;
    background: var(--gy-info-soft) !important;
    color: var(--gy-info) !important;
}

.gy-status-completed,
.fd-status-completed {
    border-color: var(--gy-success-line) !important;
    background: var(--gy-success-soft) !important;
    color: #047857 !important;
}

.gy-status-cancel_pending,
.fd-status-cancel_pending {
    border-color: #fed7aa !important;
    background: #fff7ed !important;
    color: #c2410c !important;
}

.gy-status-cancelled,
.fd-status-cancelled {
    border-color: var(--gy-danger-line) !important;
    background: var(--gy-danger-soft) !important;
    color: var(--gy-danger) !important;
}

.gy-status-closed,
.fd-status-closed {
    border-color: #d8dee8 !important;
    background: #f1f5f9 !important;
    color: #475569 !important;
}

.project-exception-tag,
.fd-badge.exception,
.fd-badge.danger,
.notify-badge-urgent {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .38);
}

.no-records-found td,
.bootstrap-table .no-records-found td {
    position: relative;
    height: 132px !important;
    background: linear-gradient(180deg, #fff, #fbfdff) !important;
    color: #6b7c90;
    font-weight: 800;
}

.no-records-found td:before,
.bootstrap-table .no-records-found td:before {
    content: "\f1c0";
    display: block;
    width: 34px;
    height: 34px;
    margin: 0 auto 8px;
    border-radius: 10px;
    background: #eef5ff;
    color: var(--gy-primary);
    font-family: FontAwesome;
    font-size: 15px;
    line-height: 34px;
}

.project-view-heading {
    border-radius: 10px !important;
    border-color: #dbe6f2 !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .045);
}

.project-view-title {
    color: #172033 !important;
    font-weight: 800 !important;
}

.project-view-desc {
    color: #728196 !important;
    font-weight: 600;
}

@media (hover: none) {
    .fd-uploader-actions,
    .fd-uploader-delete {
        opacity: 1;
        transform: none;
    }
}

/* Final product polish */
.layui-layer-dialog {
    border-radius: 12px !important;
}

.layui-layer-dialog .layui-layer-content {
    min-width: 280px;
    padding: 22px 24px !important;
    color: #344256;
    font-size: 14px !important;
    line-height: 1.7 !important;
}

.layui-layer-dialog .layui-layer-padding {
    padding-left: 58px !important;
}

.layui-layer-dialog .layui-layer-ico {
    top: 22px !important;
    left: 22px !important;
}

.layui-layer-prompt .layui-layer-input,
.layui-layer-prompt textarea.layui-layer-input,
.layui-layer-content .layui-layer-input {
    width: 100% !important;
    min-height: 38px;
    border: 1px solid #d7e1ed !important;
    border-radius: 8px !important;
    background: #fff;
    color: var(--gy-text);
    box-shadow: none !important;
    transition: border-color .16s ease, box-shadow .16s ease;
}

.layui-layer-prompt textarea.layui-layer-input {
    min-height: 110px;
    padding: 10px 12px;
    line-height: 1.6;
    resize: vertical;
}

.layui-layer-prompt .layui-layer-input:focus,
.layui-layer-content .layui-layer-input:focus {
    border-color: var(--gy-primary) !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .12) !important;
    outline: none;
}

.blockOverlay {
    background: rgba(15, 23, 42, .22) !important;
    opacity: 1 !important;
    backdrop-filter: blur(2px);
}

.blockMsg,
.blockPage {
    width: auto !important;
    min-width: 220px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: transparent !important;
    box-shadow: none !important;
}

.blockUI.blockMsg.blockPage {
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
}

body.fixed-sidebar .blockUI.blockMsg.blockPage {
    top: calc(50% + 50px) !important;
    left: calc(50% + 108px) !important;
}

body.fixed-sidebar.mini-navbar .blockUI.blockMsg.blockPage {
    left: calc(50% + 35px) !important;
}

@media (max-width: 768px) {
    body.fixed-sidebar .blockUI.blockMsg.blockPage {
        top: 50% !important;
        left: 50% !important;
    }
}

.loaderbox {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 220px;
    padding: 16px 18px !important;
    border: 1px solid rgba(226, 232, 240, .92) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .96) !important;
    color: #263244 !important;
    font-weight: 800 !important;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .18) !important;
    backdrop-filter: blur(8px);
}

.loaderbox .loading-activity {
    float: none !important;
    width: 20px !important;
    height: 20px !important;
    border-width: 2px !important;
    border-top-color: var(--gy-primary) !important;
    border-left-color: var(--gy-primary) !important;
}

.form-horizontal .form-group:has(label.error) {
    margin-bottom: 26px;
}

label.error {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    max-width: calc(100% - 40px);
    border: 1px solid var(--gy-danger-line);
    box-shadow: 0 4px 10px rgba(220, 38, 38, .08);
    white-space: nowrap;
}

label.error:before {
    content: "\f06a";
    font-family: FontAwesome;
    font-size: 11px;
}

.select2-dropdown {
    overflow: hidden;
    border: 1px solid #d7e1ed !important;
    border-radius: 10px !important;
    box-shadow: 0 14px 32px rgba(15, 23, 42, .14);
}

.select2-container--bootstrap .select2-dropdown {
    border-color: #d7e1ed !important;
}

.select2-container--bootstrap .select2-search--dropdown .select2-search__field,
.select2-container--default .select2-search--dropdown .select2-search__field {
    height: 34px;
    border: 1px solid #d7e1ed;
    border-radius: 8px;
    outline: none;
}

.select2-container--bootstrap .select2-search--dropdown .select2-search__field:focus,
.select2-container--default .select2-search--dropdown .select2-search__field:focus {
    border-color: var(--gy-primary);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .10);
}

.select2-container--bootstrap .select2-results__option,
.select2-container--default .select2-results__option {
    padding: 8px 10px;
    color: #334155;
}

.select2-container--bootstrap .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: var(--gy-primary-soft) !important;
    color: var(--gy-primary) !important;
}

.select2-container--bootstrap .select2-results__option[aria-selected=true],
.select2-container--default .select2-results__option[aria-selected=true] {
    background: #eef5ff;
    color: var(--gy-primary);
    font-weight: 800;
}

.datetimepicker,
.datepicker,
.layui-laydate {
    overflow: hidden;
    border: 1px solid #d7e1ed !important;
    border-radius: 12px !important;
    box-shadow: 0 16px 36px rgba(15, 23, 42, .16) !important;
}

.datetimepicker table tr td,
.datetimepicker table tr th,
.datepicker table tr td,
.datepicker table tr th {
    border-radius: 8px !important;
}

.datetimepicker table tr td.active,
.datetimepicker table tr td.active:hover,
.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.layui-laydate .layui-this {
    background: var(--gy-primary) !important;
    color: #fff !important;
}

.datetimepicker table tr td.today,
.datepicker table tr td.today {
    background: var(--gy-primary-soft) !important;
    color: var(--gy-primary) !important;
    font-weight: 800;
}

.fixed-table-loading {
    min-height: 88px;
    border-radius: 10px;
}

.bootstrap-table .fixed-table-container .table td {
    vertical-align: middle !important;
}

.bootstrap-table .table td:last-child {
    min-width: 128px;
}

.bootstrap-table .table td .btn-xs {
    white-space: nowrap;
}

.bootstrap-table .table td .btn-xs.dropdown-toggle {
    min-width: 28px;
    padding-right: 8px;
    padding-left: 8px;
}

.ibox-content,
.panel-body,
.well {
    border-color: #e2eaf3 !important;
    background: #fff;
}

.ibox-content {
    border-radius: 10px;
}

.panel,
.well,
.list-group-item {
    border-color: #e2eaf3 !important;
}

.help-block,
.form-control-static {
    color: #728196;
}

.gy-lightbox {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 28px;
    background: rgba(8, 13, 24, .82);
    backdrop-filter: blur(8px);
}

.gy-lightbox.open {
    display: flex;
    animation: gy-dialog-in .16s cubic-bezier(.16, 1, .3, 1);
}

body.gy-lightbox-open {
    overflow: hidden;
}

.gy-lightbox-stage {
    max-width: min(92vw, 1280px);
    max-height: 90vh;
    margin: 0;
    text-align: center;
}

.gy-lightbox-img {
    display: block;
    width: auto;
    max-width: 92vw;
    height: auto;
    max-height: 82vh;
    margin: 0 auto;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 24px 64px rgba(0, 0, 0, .36);
    object-fit: contain;
}

.gy-lightbox-caption {
    max-width: 92vw;
    margin-top: 12px;
    overflow: hidden;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gy-lightbox-close,
.gy-lightbox-nav {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    transition: background .16s ease, transform .16s ease, border-color .16s ease;
}

.gy-lightbox-close:hover,
.gy-lightbox-nav:hover {
    border-color: rgba(255, 255, 255, .34);
    background: rgba(255, 255, 255, .2);
    transform: translateY(-1px);
}

.gy-lightbox-close {
    top: 22px;
    right: 24px;
    width: 38px;
    height: 38px;
}

.gy-lightbox-nav {
    top: 50%;
    width: 44px;
    height: 44px;
    margin-top: -22px;
    font-size: 26px;
}

.gy-lightbox-prev {
    left: 24px;
}

.gy-lightbox-next {
    right: 24px;
}

.gy-lightbox-trigger {
    cursor: zoom-in;
}

@media (max-width: 768px) {
    .gy-lightbox {
        padding: 18px;
    }

    .gy-lightbox-nav {
        bottom: 18px;
        top: auto;
        margin-top: 0;
    }

    .gy-lightbox-prev {
        left: calc(50% - 54px);
    }

    .gy-lightbox-next {
        right: calc(50% - 54px);
    }
}

/* Visual refinement layer: shell stability, scan-friendly tables and restrained motion. */
:root {
    --gy-line-subtle: #eef3f8;
    --gy-shadow-xs: 0 1px 2px rgba(15, 23, 42, .045);
    --gy-shadow-lg: 0 18px 44px rgba(15, 23, 42, .12);
    --gy-motion-fast: .14s;
    --gy-motion-base: .18s;
    --gy-ease-out: cubic-bezier(.16, 1, .3, 1);
}

body {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.btn,
.page-tabs a,
.content-tabs .roll-nav,
.content-tabs button,
.pagination > li > a,
.pagination > li > span,
.dropdown-menu > li > a {
    transition:
        background var(--gy-motion-fast) ease,
        border-color var(--gy-motion-fast) ease,
        color var(--gy-motion-fast) ease,
        box-shadow var(--gy-motion-fast) ease,
        transform var(--gy-motion-fast) ease;
}

.btn:focus-visible,
.page-tabs a:focus-visible,
.content-tabs .roll-nav:focus-visible,
.content-tabs button:focus-visible,
.pagination > li > a:focus-visible,
.dropdown-menu > li > a:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .14) !important;
}

body .navbar-static-side .nav:not(.navbar-toolbar) > li > a,
body .navbar-static-side .menu-content {
    min-width: 0;
    overflow: hidden;
}

body .navbar-static-side .nav-label,
body .navbar-static-side .menu-content span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body .navbar-static-side .nav:not(.navbar-toolbar) > li > a:hover,
body .navbar-static-side .menu-content:hover {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .055);
}

body .content-tabs {
    display: flex;
    align-items: center;
    gap: 6px;
    overflow: hidden;
}

body nav.page-tabs {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
}

body nav.page-tabs::-webkit-scrollbar {
    display: none;
}

body .page-tabs-content {
    display: flex;
    align-items: center;
    min-width: max-content;
}

body .page-tabs a {
    flex: 0 0 auto;
    max-width: 190px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body .page-tabs a.active,
body .page-tabs a.active:hover,
body .page-tabs a.active:focus {
    transform: translateY(-1px);
}

body .content-tabs .roll-nav.tabReload,
body .content-tabs a.roll-nav.tabReload {
    flex: 0 0 68px;
}

.J_mainContent,
.GangYin_iframe {
    background: var(--gy-bg);
}

.fixed-table-container,
.gy-page-modernized .bootstrap-table {
    box-shadow: var(--gy-shadow-xs);
}

.bootstrap-table .table > tbody > tr > td {
    transition:
        background var(--gy-motion-fast) ease,
        box-shadow var(--gy-motion-fast) ease,
        color var(--gy-motion-fast) ease;
}

.bootstrap-table .table-hover > tbody > tr:hover,
.bootstrap-table .table-hover > tbody > tr.hover {
    background: linear-gradient(90deg, rgba(37, 99, 235, .095), rgba(37, 99, 235, .055) 34%, #f8fbff 100%) !important;
}

.bootstrap-table .table-hover > tbody > tr:hover > td,
.bootstrap-table .table-hover > tbody > tr.hover > td {
    background: transparent !important;
    box-shadow: none;
}

.bootstrap-table .table > tbody > tr.selected,
.bootstrap-table .fixed-table-container .table tbody tr.selected {
    background: linear-gradient(90deg, rgba(37, 99, 235, .14), #e0f2fe 44%, #f7fbff 100%) !important;
}

.bootstrap-table .table > tbody > tr.selected > td,
.bootstrap-table .fixed-table-container .table tbody tr.selected td {
    background: transparent !important;
    box-shadow: none;
}

.fixed-table-toolbar .btn:hover,
.fixed-table-pagination .btn:hover,
.page-list .btn:hover {
    transform: translateY(-1px);
    box-shadow: var(--gy-shadow-xs);
}

.progress,
.project-progress-bar,
.fd-progress {
    position: relative;
    overflow: hidden;
}

.progress-bar,
.project-progress-bar span,
.fd-progress span {
    position: relative;
    overflow: hidden;
    transition: width .28s var(--gy-ease-out);
}

.progress-bar:after,
.project-progress-bar span:after,
.fd-progress span:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .32), transparent);
    transform: translateX(-100%);
    animation: gy-progress-sheen 2.2s ease-in-out infinite;
}

@keyframes gy-progress-sheen {
    0% {
        transform: translateX(-100%);
    }
    58%,
    100% {
        transform: translateX(100%);
    }
}

@media (max-width: 768px) {
    body .content-tabs {
        gap: 4px;
        padding-right: 6px;
        padding-left: 6px;
    }

    body nav.page-tabs {
        margin-left: 0;
    }

    body .page-tabs a {
        max-width: 132px;
        padding-right: 10px;
        padding-left: 10px;
    }

    body .content-tabs .roll-right,
    body .content-tabs .roll-nav.tabReload,
    body .content-tabs a.roll-nav.tabReload {
        position: static;
        flex: 0 0 auto;
    }

    body .nav.navbar-top-links,
    body .navbar.navbar-static-top .navbar-toolbar {
        max-width: calc(100vw - 62px);
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: none;
    }

    body .nav.navbar-top-links::-webkit-scrollbar,
    body .navbar.navbar-static-top .navbar-toolbar::-webkit-scrollbar {
        display: none;
    }

    .fixed-table-toolbar .pull-right,
    .fixed-table-toolbar .columns,
    .fixed-table-toolbar .search {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        width: 100%;
        float: none !important;
    }

    .fixed-table-toolbar .search input {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar:after,
    .project-progress-bar span:after,
    .fd-progress span:after {
        animation: none !important;
    }

    body .page-tabs a.active,
    body .page-tabs a.active:hover,
    body .page-tabs a.active:focus,
    .fixed-table-toolbar .btn:hover,
    .fixed-table-pagination .btn:hover,
    .page-list .btn:hover {
        transform: none !important;
    }
}
