@import url("../css/bootstrap.css");
@import url("../css/fastadmin.css");
@import url("../css/skins/skin-black-blue.css");
@import url("../css/iconfont.css");
@import url("../libs/font-awesome/css/font-awesome.min.css");
@import url("../libs/toastr/build/toastr.min.css");
@import url("../libs/fastadmin-layer/dist/theme/default/layer.css");
@import url("../libs/bootstrap-table/dist/bootstrap-table.min.css");
@import url("../libs/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css");
@import url("../libs/bootstrap-daterangepicker/daterangepicker.css");
@import url("../libs/nice-validator/dist/jquery.validator.css");
@import url("../libs/bootstrap-select/dist/css/bootstrap-select.min.css");
@import url("../libs/fastadmin-selectpage/selectpage.css");
@import url("../libs/bootstrap-slider/dist/css/bootstrap-slider.css");
.m-0 {
  margin-top: 0px !important;
  margin-right: 0px !important;
  margin-bottom: 0px !important;
  margin-left: 0px !important;
}
.mt-0 {
  margin-top: 0px !important;
}
.mr-0 {
  margin-right: 0px !important;
}
.mb-0 {
  margin-bottom: 0px !important;
}
.ml-0 {
  margin-left: 0px !important;
}
.mx-0 {
  margin-left: 0px !important;
  margin-right: 0px !important;
}
.my-0 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}
.m-1 {
  margin-top: 5px !important;
  margin-right: 5px !important;
  margin-bottom: 5px !important;
  margin-left: 5px !important;
}
.mt-1 {
  margin-top: 5px !important;
}
.mr-1 {
  margin-right: 5px !important;
}
.mb-1 {
  margin-bottom: 5px !important;
}
.ml-1 {
  margin-left: 5px !important;
}
.mx-1 {
  margin-left: 5px !important;
  margin-right: 5px !important;
}
.my-1 {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}
.m-2 {
  margin-top: 10px !important;
  margin-right: 10px !important;
  margin-bottom: 10px !important;
  margin-left: 10px !important;
}
.mt-2 {
  margin-top: 10px !important;
}
.mr-2 {
  margin-right: 10px !important;
}
.mb-2 {
  margin-bottom: 10px !important;
}
.ml-2 {
  margin-left: 10px !important;
}
.mx-2 {
  margin-left: 10px !important;
  margin-right: 10px !important;
}
.my-2 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}
.m-3 {
  margin-top: 15px !important;
  margin-right: 15px !important;
  margin-bottom: 15px !important;
  margin-left: 15px !important;
}
.mt-3 {
  margin-top: 15px !important;
}
.mr-3 {
  margin-right: 15px !important;
}
.mb-3 {
  margin-bottom: 15px !important;
}
.ml-3 {
  margin-left: 15px !important;
}
.mx-3 {
  margin-left: 15px !important;
  margin-right: 15px !important;
}
.my-3 {
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}
.m-4 {
  margin-top: 20px !important;
  margin-right: 20px !important;
  margin-bottom: 20px !important;
  margin-left: 20px !important;
}
.mt-4 {
  margin-top: 20px !important;
}
.mr-4 {
  margin-right: 20px !important;
}
.mb-4 {
  margin-bottom: 20px !important;
}
.ml-4 {
  margin-left: 20px !important;
}
.mx-4 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}
.my-4 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}
.p-0 {
  padding-top: 0px !important;
  padding-right: 0px !important;
  padding-bottom: 0px !important;
  padding-left: 0px !important;
}
.pt-0 {
  padding-top: 0px !important;
}
.pr-0 {
  padding-right: 0px !important;
}
.pb-0 {
  padding-bottom: 0px !important;
}
.pl-0 {
  padding-left: 0px !important;
}
.px-0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}
.py-0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
.p-1 {
  padding-top: 5px !important;
  padding-right: 5px !important;
  padding-bottom: 5px !important;
  padding-left: 5px !important;
}
.pt-1 {
  padding-top: 5px !important;
}
.pr-1 {
  padding-right: 5px !important;
}
.pb-1 {
  padding-bottom: 5px !important;
}
.pl-1 {
  padding-left: 5px !important;
}
.px-1 {
  padding-left: 5px !important;
  padding-right: 5px !important;
}
.py-1 {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}
.p-2 {
  padding-top: 10px !important;
  padding-right: 10px !important;
  padding-bottom: 10px !important;
  padding-left: 10px !important;
}
.pt-2 {
  padding-top: 10px !important;
}
.pr-2 {
  padding-right: 10px !important;
}
.pb-2 {
  padding-bottom: 10px !important;
}
.pl-2 {
  padding-left: 10px !important;
}
.px-2 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}
.py-2 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.p-3 {
  padding-top: 15px !important;
  padding-right: 15px !important;
  padding-bottom: 15px !important;
  padding-left: 15px !important;
}
.pt-3 {
  padding-top: 15px !important;
}
.pr-3 {
  padding-right: 15px !important;
}
.pb-3 {
  padding-bottom: 15px !important;
}
.pl-3 {
  padding-left: 15px !important;
}
.px-3 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}
.py-3 {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}
.p-4 {
  padding-top: 20px !important;
  padding-right: 20px !important;
  padding-bottom: 20px !important;
  padding-left: 20px !important;
}
.pt-4 {
  padding-top: 20px !important;
}
.pr-4 {
  padding-right: 20px !important;
}
.pb-4 {
  padding-bottom: 20px !important;
}
.pl-4 {
  padding-left: 20px !important;
}
.px-4 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}
.py-4 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}
html,
body {
  height: 100%;
}
body {
  background: #f1f4f6;
  font-size: 14px;
  line-height: 1.5715;
}
body.is-dialog {
  background: #fff;
}
.dropdown-menu > li > a {
  padding: 5px 12px;
}
.selection {
  position: absolute;
  border: 1px solid #8B9;
  background-color: #BEC;
}
.main-header .navbar {
  position: relative;
}
.main-header .navbar .dropdown-menu {
  font-size: 14px;
}
.main-header .navbar .dropdown-menu > li > a {
  padding: 8px 15px;
}
.bootstrap-dialog .modal-dialog {
  /*width: 70%;*/
  max-width: 885px;
}
/*iOS兼容*/
html.ios-fix,
html.ios-fix body {
  height: 100%;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}
html.ios-fix .wrapper,
html.ios-fix body .wrapper,
html.ios-fix .tab-pane,
html.ios-fix body .tab-pane {
  -webkit-overflow-scrolling: touch;
}
.wrapper {
  height: 100%;
}
.content-wrapper {
  position: relative;
  height: 100%;
}
.control-relative {
  position: relative;
}
.tab-addtabs .tab-pane {
  height: 100%;
  width: 100%;
}
.row-between .col-xs-6 + .col-xs-6:before {
  content: "-";
  position: absolute;
  left: -2%;
  top: 6px;
}
@media only screen and (min-width: 481px) {
  .row-flex {
    display: flex;
    flex-wrap: wrap;
  }
  .row-flex > [class*='col-'] {
    display: flex;
    flex-direction: column;
  }
  .row-flex.row:after,
  .row-flex.row:before {
    display: flex;
  }
}
@media (max-width: 991px) {
  .main-header .navbar-custom-menu a.btn-danger {
    color: #fff;
    background-color: #f75444;
  }
  .main-header .navbar-custom-menu a.btn-primary {
    color: #fff;
    background-color: #444c69;
  }
}
.common-search-table {
  min-height: 20px;
  padding: 15px;
  margin-bottom: 15px;
  background-color: #f5f5f5;
}
/* 固定的底部按钮 */
.fixed-footer {
  position: fixed;
  bottom: 0;
  background-color: #ecf0f1;
  width: 100%;
  margin-bottom: 0;
  padding: 10px;
}
table.table-template {
  overflow: hidden;
}
.sp_container .msg-box {
  position: absolute;
  right: 0;
  top: 0;
}
.sp_container .sp_element_box {
  overflow: unset;
}
.sp_container .sp_element_box > li.input_box {
  position: unset;
}
.sp_container .sp_element_box .msg-box {
  right: -24px;
}
@media (max-width: 767px) {
  .sp_container .sp_element_box .msg-box {
    left: inherit;
  }
  .card-views .card-view {
    padding: 5px 0;
  }
}
.toast-top-right-index {
  top: 62px;
  right: 12px;
}
.bootstrap-select {
  min-height: 33px;
}
.bootstrap-select .msg-box {
  position: absolute;
  right: 0;
  top: 0;
}
.bootstrap-select .status {
  background: #f0f0f0;
  clear: both;
  color: #999;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  margin-bottom: -5px;
  padding: 10px 20px;
}
.bootstrap-select .bs-placeholder {
  min-height: 33px;
}
/* 产品所属分类/门店：选中项用主题主色 20% 透明底 + 主色对勾 */
#add-form .bootstrap-select .dropdown-menu > li.selected > a,
#add-form .bootstrap-select .dropdown-menu > li.selected > a:hover,
#add-form .bootstrap-select .dropdown-menu > li.selected.active > a,
#add-form .bootstrap-select .dropdown-menu > li.selected.active > a:hover,
#edit-form .bootstrap-select .dropdown-menu > li.selected > a,
#edit-form .bootstrap-select .dropdown-menu > li.selected > a:hover,
#edit-form .bootstrap-select .dropdown-menu > li.selected.active > a,
#edit-form .bootstrap-select .dropdown-menu > li.selected.active > a:hover {
  background-color: #18bc9c20;
  background-image: none;
  color: #333;
}
#add-form .bootstrap-select .dropdown-menu > li.selected span.check-mark,
#edit-form .bootstrap-select .dropdown-menu > li.selected span.check-mark {
  color: #18bc9c;
}
/* 所属分类：一级分类组底部分割线 */
#add-form .bootstrap-select .dropdown-menu li.category-group-end,
#edit-form .bootstrap-select .dropdown-menu li.category-group-end {
  border-bottom: 1px solid #e5e5e5;
}
#add-form .bootstrap-select .dropdown-menu li.category-group-end:last-child,
#edit-form .bootstrap-select .dropdown-menu li.category-group-end:last-child {
  border-bottom: none;
}
/* 所属分类折叠：一级文件夹 + 右侧箭头 */
#add-form .bootstrap-select .dropdown-menu li.category-folder > a,
#edit-form .bootstrap-select .dropdown-menu li.category-folder > a {
  cursor: pointer;
  color: #666;
  font-weight: 600;
  position: relative;
  padding-right: 28px;
  /* 有子级的一级分类可点击展开（disabled 项默认不易点） */
  pointer-events: auto;
}
#add-form .bootstrap-select .dropdown-menu li.category-folder > a .category-fold-icon,
#edit-form .bootstrap-select .dropdown-menu li.category-folder > a .category-fold-icon {
  position: absolute;
  right: 12px;
  top: 50%;
  margin-top: -7px;
  width: 12px;
  text-align: center;
  color: #999;
  pointer-events: none;
}
/* 产品规格图片：独占下一行、靠左；1:1 固定约 80×80（含删除约 80×100） */
#style-table .style-preview-row > td {
  padding: 6px 8px 10px;
  border-top: none;
  background: #fff;
  text-align: left;
}
#style-table .style-preview-row .style-image-preview:empty {
  display: none;
}
#style-table .style-preview-row:has(.style-image-preview:empty) > td {
  padding: 0;
  border: 0;
  line-height: 0;
}
#style-table .style-preview-row .style-image-preview {
  margin: 0;
  padding: 0;
  float: none;
  text-align: left;
}
#style-table .style-image-preview > li {
  width: 80px;
  padding: 0;
  margin: 0;
  float: none;
  display: inline-block;
  vertical-align: top;
}
#style-table .style-image-preview .thumbnail {
  display: block;
  width: 80px;
  height: 80px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 2px;
}
#style-table .style-image-preview .thumbnail img {
  width: 80px;
  height: 80px;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center;
}
#style-table .style-image-preview .btn-trash {
  display: block;
  width: 80px;
  margin-top: 4px;
  padding: 0 4px;
  line-height: 18px;
}
select.bs-select-hidden,
select.selectpicker {
  display: inherit !important;
  max-height: 33px;
  overflow: hidden;
}
select.bs-select-hidden[multiple],
select.selectpicker[multiple] {
  height: 33px;
  padding: 0;
  background: #f4f4f4;
}
select.bs-select-hidden[multiple] option,
select.selectpicker[multiple] option {
  color: #f4f4f4;
  zoom: 1;
  filter: alpha(opacity=0);
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}
@media not all and (min-resolution: 0.001dpcm) {
  @supports (-webkit-appearance:none) {
    select.bs-select-hidden[multiple],
    select.selectpicker[multiple] {
      visibility: hidden;
    }
  }
}
input.selectpage {
  color: transparent;
  pointer-events: none;
}
.sp_container {
  min-height: 33px;
}
.sp_container input.selectpage {
  color: inherit;
  pointer-events: inherit;
  padding-left: 12px;
  padding-right: 12px;
}
.sp_container .sp_element_box input.selectpage {
  padding-left: 0;
  padding-right: 0;
}
.sp_container .sp_element_box li:first-child input.selectpage {
  padding-left: 9px;
  padding-right: 9px;
}
.img-center {
  margin: 0 auto;
  display: inline;
  float: none;
}
/*
 * RIBBON
 */
#ribbon {
  overflow: hidden;
  padding: 15px 15px 0 15px;
  position: relative;
}
#ribbon a {
  color: #777 !important;
  text-decoration: none !important;
}
#ribbon .breadcrumb {
  display: inline-block;
  margin: 0;
  padding: 0;
  background: none;
  vertical-align: top;
}
#ribbon .breadcrumb > .active,
#ribbon .breadcrumb li {
  color: #aaa;
}
#ribbon .shortcut a {
  margin-left: 10px;
}
.is-dialog #main {
  background: #fff;
}
.is-dialog .layer-footer {
  display: none;
}
form.form-horizontal .control-label {
  font-weight: normal;
}
.user-panel > .image img {
  width: 45px;
  height: 45px;
}
/*panel扩展描述样式*/
.panel-intro {
  margin-bottom: 0;
  border: none;
}
.panel-intro > .panel-heading {
  padding: 15px;
  padding-bottom: 0;
  background: #e8edf0;
  border-color: #e8edf0;
  position: relative;
}
.panel-intro > .panel-heading .panel-lead {
  margin-bottom: 15px;
}
.panel-intro > .panel-heading .panel-lead em {
  display: block;
  font-weight: bold;
  font-style: normal;
}
.panel-intro > .panel-heading .panel-title {
  height: 25px;
  font-weight: normal;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.panel-intro > .panel-heading .panel-control {
  height: 42px;
  position: absolute;
  top: 8px;
  right: 8px;
}
.panel-intro > .panel-heading .panel-control .fa {
  font-size: 14px;
}
.panel-intro > .panel-heading .nav-tabs {
  border-bottom: 0;
  margin-bottom: 0;
}
.panel-intro > .panel-heading .nav-tabs > li > a {
  margin-right: 4px;
  color: #95a5a6;
  background-color: #d8e0e6;
  border: 1px solid #e8edf0;
  border-bottom-color: transparent;
}
.panel-intro > .panel-heading .nav-tabs > li > a:hover,
.panel-intro > .panel-heading .nav-tabs > li > a:focus {
  border: 1px solid #e8edf0;
  color: #7b8a8b;
  background-color: #c9d4dc;
}
.panel-intro > .panel-heading .nav-tabs > li.active > a,
.panel-intro > .panel-heading .nav-tabs > li.active > a:hover,
.panel-intro > .panel-heading .nav-tabs > li.active > a:focus {
  color: #7b8a8b;
  background-color: #ffffff;
  border-bottom-color: transparent;
  cursor: default;
}
@media (max-width: 768px) {
  .panel-intro > .panel-heading .nav-tabs {
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    margin-bottom: -1px;
  }
  .panel-intro > .panel-heading .nav-tabs > li {
    display: inline-block;
    float: none;
  }
}
/*单表格*/
.panel-tabs .panel-heading {
  padding: 12px 15px 12px 15px;
}
.panel-tabs .panel-heading .panel-lead {
  margin-bottom: 0px;
}
/*选项卡*/
.panel-nav .panel-heading {
  padding: 0px;
  padding-bottom: 0;
  background: #f1f4f6;
  border-color: #f1f4f6;
}
.panel-nav .nav-tabs > li > a {
  padding: 12px 15px;
  background-color: #e8edf0;
  border: 1px solid #f1f4f6;
}
.panel-nav .nav-tabs > li > a:hover,
.panel-nav .nav-tabs > li > a:focus {
  border: 1px solid #e8edf0;
  background-color: #e8edf0;
}
.panel-nav .nav-tabs > li.active > a,
.panel-nav .nav-tabs > li.active > a:hover,
.panel-nav .nav-tabs > li.active > a:focus {
  border-color: #f1f4f6;
  border-bottom-color: transparent;
}
/*顶栏addtabs*/
.nav-addtabs {
  height: 100%;
  border: none;
}
.nav-addtabs.disable-top-badge > li > a > .pull-right-container {
  display: none;
}
.nav-addtabs > li {
  margin: 0;
}
.nav-addtabs > li > a {
  height: 50px;
  line-height: 50px;
  padding: 0 15px;
  border-radius: 0;
  border: none;
  border-right: 1px solid rgba(0, 0, 0, 0.05);
  margin: 0;
  color: #95a5a6;
}
.nav-addtabs > li > a:hover,
.nav-addtabs > li > a:focus {
  border: none;
  color: #2c3e50;
  border-right: 1px solid rgba(0, 0, 0, 0.02);
}
.nav-addtabs > li.active > a {
  height: 50px;
  line-height: 50px;
  padding: 0 15px;
  border-radius: 0;
  border: none;
  border-right: 1px solid rgba(0, 0, 0, 0.02);
  background: #f1f4f6;
  color: #2c3e50;
  overflow: hidden;
}
.nav-addtabs > li.active > a:hover,
.nav-addtabs > li.active > a:focus {
  border: none;
  color: #2c3e50;
  background: #f1f4f6;
  border-right: 1px solid rgba(0, 0, 0, 0.02);
}
.nav-addtabs > li .close-tab {
  font-size: 10px;
  position: absolute;
  right: 0px;
  top: 50%;
  margin-top: -8px;
  z-index: 100;
  cursor: pointer;
  color: #eee;
  display: none;
}
.nav-addtabs > li .close-tab:before {
  content: "\e626";
  font-family: iconfont;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  font-size: 18px;
}
.nav-addtabs .open > a:hover,
.nav-addtabs .open > a:focus {
  border-right: 1px solid rgba(0, 0, 0, 0.05);
}
.nav-addtabs ul li {
  position: relative;
}
.nav-addtabs li:hover > .close-tab {
  display: block;
}
#firstnav {
  height: 50px;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
  position: relative;
}
#firstnav .sidebar-toggle {
  position: absolute;
  width: 45px;
  text-align: center;
  height: 50px;
  line-height: 50px;
  padding: 0;
}
#firstnav .nav-addtabs {
  position: absolute;
  left: 45px;
  z-index: 98;
}
#firstnav .navbar-custom-menu {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 99;
  background: transparent;
}
/*次栏菜单栏*/
#secondnav {
  display: none;
  height: 44px;
  position: absolute;
  top: 50px;
  left: 0;
  background: #fff;
  width: 100%;
  box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
  padding: 5px 10px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
#secondnav .nav-addtabs {
  height: 100%;
  border: none;
}
#secondnav .nav-addtabs.disable-top-badge > li > a > .pull-right-container {
  display: none;
}
#secondnav .nav-addtabs > li {
  border: 1px solid #eee;
  border-radius: 3px;
  padding: 0 15px;
  height: 30px;
  line-height: 30px;
  margin: 2px 5px 2px 0;
  background: #fff;
}
#secondnav .nav-addtabs > li > a {
  display: block;
  color: #495060 !important;
  height: 100%;
  padding: 0;
  line-height: 28px;
  font-size: 13px;
  vertical-align: middle;
  opacity: 1;
  overflow: hidden;
  background: none;
  border: none;
}
#secondnav .nav-addtabs > li.active {
  border-color: #bdbebd;
  background-color: #f7f7f7;
}
#secondnav .nav-addtabs > li .close-tab {
  font-size: 10px;
  position: absolute;
  right: 0px;
  top: 50%;
  margin-top: -8px;
  z-index: 100;
  cursor: pointer;
  color: #eee;
}
#secondnav .nav-addtabs > li .close-tab:before {
  content: "\e626";
  font-family: iconfont;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  font-size: 18px;
}
#secondnav .nav-addtabs > li:hover,
#secondnav .nav-addtabs > li:focus {
  border-color: #bdbebd;
}
#secondnav .nav-addtabs ul li {
  position: relative;
}
#secondnav .nav-addtabs li:hover > .close-tab {
  display: block;
  border-color: #222e32;
  color: #222e32;
}
.multiplenav .content-wrapper,
.multiplenav .right-side,
.multiplenav .main-sidebar {
  padding-top: 50px;
}
.multiplenav #firstnav .nav-addtabs {
  padding-right: 450px;
}
@media (max-width: 767px) {
  .multipletab.multiplenav .content-wrapper,
  .multipletab.multiplenav .right-side {
    padding-top: 94px;
  }
}
.multipletab #secondnav {
  display: block;
}
.multipletab.multiplenav .content-wrapper,
.multipletab.multiplenav .right-side {
  padding-top: 94px;
}
.multipletab.multiplenav #firstnav .nav-tabs {
  overflow: hidden;
}
.main-sidebar .sidebar-form {
  overflow: visible;
}
.main-sidebar .sidebar-form .menuresult {
  z-index: 999;
  position: absolute;
  top: 34px;
  left: -1px;
  width: 100%;
  max-height: 250px;
  overflow: auto;
  margin: 0;
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.main-sidebar .sidebar-form .menuresult a {
  display: block;
  background-color: #fff;
  border-top: 1px solid transparent;
  border-bottom: 1px solid #eee;
  padding: 10px 15px;
  color: #222d32;
}
.main-sidebar .sidebar-form .menuresult a:hover {
  background: #eee;
}
.main-sidebar .sidebar-form .menuresult a:first-child {
  border-top: 1px solid #eee;
}
.input-group .sp_result_area {
  width: 100%;
}
.sidebar-menu .treeview-open > .treeview-menu {
  display: block;
}
.sidebar-menu > li .badge {
  margin-top: 0;
}
/* 未读数字角标：1 位正圆，2 位及以上横向自然扩展为胶囊 */
.sidebar-menu > li .badge.bg-red,
.sidebar-menu > li .pull-right-container > .badge.bg-red {
  display: inline-block;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  line-height: 18px;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  vertical-align: middle;
  box-sizing: border-box;
}
.sidebar-collapse .user-panel > .image img {
  width: 25px;
  height: 25px;
}
@media (min-width: 768px) {
  .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > .pull-right-container {
    top: 7px !important;
    right: 10px;
    height: 17px;
  }
}
.fieldlist dd {
  display: block;
  margin: 8px 0;
}
.fieldlist dd input {
  display: inline-block;
  width: 300px;
}
.fieldlist dd input:first-child {
  width: 110px;
}
.fieldlist dd ins {
  width: 110px;
  display: inline-block;
  text-decoration: none;
}
/* 弹窗中的表单 */
.form-layer {
  height: 100%;
  min-height: 150px;
  min-width: 300px;
}
.form-layer .form-body {
  width: 100%;
  overflow: auto;
  top: 0;
  position: absolute;
  z-index: 10;
  bottom: 50px;
  padding: 15px;
}
.form-layer .form-footer {
  height: 50px;
  line-height: 50px;
  background-color: #ecf0f1;
  width: 100%;
  position: absolute;
  z-index: 200;
  bottom: 0;
  margin: 0;
}
.form-layer .form-footer .form-group {
  margin-left: 0;
  margin-right: 0;
}
#treeview .jstree-container-ul .jstree-node {
  display: block;
  clear: both;
}
#treeview .jstree-leaf:not(:first-child) {
  float: left;
  background: none;
  margin-left: 0;
  min-width: 80px;
  clear: none;
}
#treeview .jstree-leaf {
  float: left;
  margin-left: 0;
  padding-left: 24px;
  min-width: 80px;
  clear: none;
  color: #777;
}
#treeview .jstree-leaf > .jstree-icon,
#treeview .jstree-leaf .jstree-themeicon {
  display: none;
}
#treeview .jstree-last {
  background-image: url("../img/32px.png");
  background-position: -292px -4px;
  background-repeat: repeat-y;
}
#treeview .jstree-children:before,
#treeview .jstree-children:after {
  content: " ";
  display: table;
}
#treeview .jstree-children:after {
  clear: both;
}
#treeview .jstree-themeicon {
  display: none;
}
/*去除bootstrap-table的边框*/
.fixed-table-container {
  border: none !important;
}
.fixed-table-container tbody .selected td {
  background-color: rgba(216, 224, 230, 0.5);
}
.fixed-table-container .bs-checkbox {
  min-width: 36px;
}
.fixed-table-container tr[data-origpos] > td > .tooltip.in {
  display: none !important;
}
/*修复nice-validator新版下的一处BUG*/
.nice-validator input,
.nice-validator select,
.nice-validator textarea,
.nice-validator [contenteditable] {
  vertical-align: top;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
/*修复nice-validator和summernote的编辑框冲突*/
.nice-validator .note-editor .note-editing-area .note-editable {
  display: inherit;
}
/*预览区域*/
.plupload-preview,
.faupload-preview {
  padding: 0 10px;
  margin-bottom: 0;
}
.plupload-preview li,
.faupload-preview li {
  margin-top: 15px;
}
.plupload-preview .thumbnail,
.faupload-preview .thumbnail {
  margin-bottom: 10px;
}
.plupload-preview a,
.faupload-preview a {
  display: block;
}
.plupload-preview a:first-child,
.faupload-preview a:first-child {
  height: 90px;
}
.plupload-preview a img,
.faupload-preview a img {
  height: 80px;
  object-fit: cover;
}
.pjax-loader-bar .progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 2px;
  background: #77b6ff;
  box-shadow: 0 0 10px rgba(119, 182, 255, 0.7);
  -webkit-transition: width 0.4s ease;
  transition: width 0.4s ease;
}
.dropdown-menu.text-left a,
.dropdown-menu.text-left li {
  text-align: left !important;
}
.bootstrap-table .fixed-table-loading {
  padding: 10px 0;
}
.bootstrap-table .fixed-table-toolbar .dropdown-menu {
  overflow: inherit;
}
.bootstrap-table .fixed-table-toolbar .columns-right .dropdown-menu {
  overflow: auto;
}
.bootstrap-table .bs-bars .fixed-table-toolbar .dropdown-menu > li:hover > a {
  background-color: #e1e3e9;
  color: #333;
}
.bootstrap-table .fa-toggle-on.fa-2x {
  font-size: 1.86em;
}
.bootstrap-table .form-commonsearch .row > .form-group {
  margin-left: 0;
  margin-right: 0;
}
.bootstrap-table .form-commonsearch .row > .form-group > .control-label {
  white-space: nowrap;
}
.bootstrap-table .btn-commonsearch {
  position: relative;
}
.bootstrap-table .btn-commonsearch > span {
  position: absolute;
  top: -10px;
  right: -10px;
}
.bootstrap-table .table:not(.table-condensed) > tbody > tr > th,
.bootstrap-table .table:not(.table-condensed) > tfoot > tr > th,
.bootstrap-table .table:not(.table-condensed) > thead > tr > td,
.bootstrap-table .table:not(.table-condensed) > tbody > tr > td,
.bootstrap-table .table:not(.table-condensed) > tfoot > tr > td {
  padding: 10px 15px;
  height: 47px;
}
/* 产品列表：所属分类/门店多值换行后，单元格增高且垂直居中 */
.panel-intro #table.table > tbody > tr > td,
.panel-intro .fixed-table-body #table.table > tbody > tr > td,
.panel-intro .fixed-columns #table.table > tbody > tr > td,
.panel-intro .fixed-columns-right #table.table > tbody > tr > td {
  height: auto;
  min-height: 47px;
  vertical-align: middle;
}
.panel-intro #table .product-multi-lines {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  line-height: 1;
  white-space: normal;
}
.panel-intro #table .product-tag {
  display: inline-block;
  max-width: 100%;
  box-sizing: border-box;
  padding: 1px 5px;
  font-size: 11px;
  line-height: 16px;
  color: #18bc9c;
  background: #18bc9c20;
  border: 1px solid #18bc9c;
  border-radius: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}
/* 订单状态标签（同产品所属门店矩形小字样式，按状态分色） */
.panel-intro #table .order-status-cell {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  line-height: 1;
  white-space: normal;
}
.panel-intro #table .order-status-tag {
  display: inline-block;
  max-width: 100%;
  box-sizing: border-box;
  padding: 1px 5px;
  font-size: 11px;
  line-height: 16px;
  border-radius: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
  border: 1px solid transparent;
}
.panel-intro #table .order-status-tag--pending-pay {
  color: #e74c3c;
  background: #e74c3c20;
  border-color: #e74c3c;
}
.panel-intro #table .order-status-tag--pending-shoot {
  color: #18bc9c;
  background: #18bc9c20;
  border-color: #18bc9c;
}
.panel-intro #table .order-status-tag--in-progress {
  color: #3498db;
  background: #3498db20;
  border-color: #3498db;
}
.panel-intro #table .order-status-tag--completed {
  color: #555555;
  background: #55555518;
  border-color: #555555;
}
.panel-intro #table .order-status-tag--closed {
  color: #999999;
  background: #99999918;
  border-color: #bbbbbb;
}
.panel-intro #table .order-status-tag--refunded {
  color: #e74c3c;
  background: #e74c3c20;
  border-color: #e74c3c;
}
.panel-intro #table .order-status-refund-tip {
  font-size: 11px;
  line-height: 14px;
  color: #e74c3c;
}
/* 订单操作栏：左对齐、仅文字 */
.panel-order-index #table td .btn-xs {
  margin-right: 4px;
}
.panel-order-index #table td .btn-xs > i {
  display: none;
}
.panel-order-index #table .order-amount {
  font-weight: 700;
}
.panel-order-index #table .order-amount--total {
  color: #e74c3c;
}
.panel-order-index #table .order-amount--discount {
  color: #18bc9c;
}
.panel-order-index #table .order-amount--pay {
  color: inherit;
}
/* 未读红点：复用主题 bg-red（与菜单 badge/new 同色）；已读占位对齐 */
.panel-order-index #table .order-id-cell {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
}
.panel-order-index #table .order-unread-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-right: 6px;
  flex-shrink: 0;
}
.panel-order-index #table .order-unread-dot--empty {
  background: transparent !important;
}
.panel-order-index #table .order-id-num {
  line-height: 1;
}
/* ID 列表头预留圆点占位，与下方数字左对齐 */
.panel-order-index #table thead th[data-field="id"] .th-inner {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
}
.panel-order-index #table thead th[data-field="id"] .th-inner::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 6px;
  flex-shrink: 0;
}
/* 订单改约：可约时段卡片 */
.order-slot-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 40px;
}
.order-slot-cards .order-slot-empty {
  width: 100%;
  padding: 8px 0;
  font-size: 12px;
}
.order-slot-card {
  flex: 0 1 calc(25% - 8px);
  min-width: 72px;
  max-width: 120px;
  margin: 0;
  padding: 8px 6px;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  background: #fff;
  text-align: center;
  cursor: pointer;
  line-height: 1.2;
  transition: border-color .15s, box-shadow .15s, background .15s;
}
.order-slot-card:hover:not(.is-disabled) {
  border-color: #18bc9c;
  box-shadow: 0 0 0 1px #18bc9c33;
}
.order-slot-card.is-active {
  border-color: #18bc9c;
  background: #18bc9c12;
  box-shadow: 0 0 0 1px #18bc9c;
}
.order-slot-card .order-slot-time {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #222;
}
.order-slot-card .order-slot-remain {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  color: #e74c3c;
  font-weight: 400;
}
.order-slot-card.is-disabled {
  cursor: not-allowed;
  background: #f7f7f7;
  border-color: #e5e5e5;
}
.order-slot-card.is-disabled .order-slot-time,
.order-slot-card.is-disabled .order-slot-remain {
  color: #c0c0c0;
}
@media (max-width: 520px) {
  .order-slot-card {
    flex-basis: calc(33.333% - 8px);
  }
}
@media (min-width: 700px) {
  .order-slot-card {
    flex-basis: calc(20% - 8px);
  }
}

/* 表格列排序：双箭头（贴紧标题，激活黑 / 非激活浅灰） */
.bootstrap-table .fixed-table-container thead th .th-inner.sortable.order-sort-dual {
  background-image: none !important;
  background-position: initial !important;
  padding-right: 8px !important;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  max-width: 100%;
}
.bootstrap-table .order-sort-carets {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-left: 5px;
  flex-shrink: 0;
  line-height: 0;
  gap: 2px;
}
.bootstrap-table .order-sort-caret {
  display: block;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
}
.bootstrap-table .order-sort-caret--asc {
  border-bottom: 5px solid #d0d0d0;
}
.bootstrap-table .order-sort-caret--desc {
  border-top: 5px solid #d0d0d0;
}
.bootstrap-table .th-inner.sortable.order-sort-dual.asc .order-sort-caret--asc {
  border-bottom-color: #222;
}
.bootstrap-table .th-inner.sortable.order-sort-dual.desc .order-sort-caret--desc {
  border-top-color: #222;
}

/* 订单列表：下单时间 / 金额列双箭头排序（兼容旧选择器，已由 .bootstrap-table 全局规则覆盖） */
.panel-order-index .fixed-table-container thead th .th-inner.sortable.order-sort-dual {
  background-image: none !important;
  background-position: initial !important;
  padding-right: 8px !important;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  max-width: 100%;
}
.panel-order-index .order-sort-carets {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-left: 5px;
  flex-shrink: 0;
  line-height: 0;
  gap: 2px;
}
.panel-order-index .order-sort-caret {
  display: block;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
}
.panel-order-index .order-sort-caret--asc {
  border-bottom: 5px solid #d0d0d0;
}
.panel-order-index .order-sort-caret--desc {
  border-top: 5px solid #d0d0d0;
}
.panel-order-index .th-inner.sortable.order-sort-dual.asc .order-sort-caret--asc {
  border-bottom-color: #222;
}
.panel-order-index .th-inner.sortable.order-sort-dual.desc .order-sort-caret--desc {
  border-top-color: #222;
}

/* 订单列表：右上角状态下拉（搜索框左侧） */
.panel-order-index .fixed-table-toolbar .search {
  display: flex;
  align-items: center;
  gap: 8px;
}
.panel-order-index .order-status-filter-wrap {
  display: inline-block;
  flex-shrink: 0;
}
.panel-order-index .order-status-filter-wrap select {
  min-width: 110px;
  height: 34px;
  padding: 4px 8px;
  line-height: 1.4;
  display: inline-block;
  width: auto;
  vertical-align: middle;
}

/* 发券任务弹框：状态下拉与列/切换/搜索按钮同行右对齐 */
.panel-coupon-task-index .fixed-table-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.panel-coupon-task-index .fixed-table-toolbar > .bs-bars {
  float: none !important;
  flex: 1 1 auto;
  min-width: 0;
}
.panel-coupon-task-index .fixed-table-toolbar .toolbar-right-cluster {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
  float: none !important;
  flex-shrink: 0;
}
.panel-coupon-task-index .fixed-table-toolbar .toolbar-right-cluster > .pull-right,
.panel-coupon-task-index .fixed-table-toolbar .toolbar-right-cluster > .columns {
  float: none !important;
  margin: 0 !important;
}
.panel-coupon-task-index .task-status-filter-wrap {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}
.panel-coupon-task-index .task-status-filter-wrap select {
  min-width: 108px;
  width: auto;
  height: 34px;
  padding: 4px 28px 4px 10px;
  line-height: 1.42857143;
  vertical-align: middle;
}

/* 改约弹窗：校验提示放在控件下方，避免右侧浮层与 Toastr 重复抢视线 */
#reschedule-form .msg-box {
  display: block;
  position: static !important;
  margin-top: 4px;
  min-height: 0;
  text-align: left !important;
  width: auto !important;
}
#reschedule-form .msg-box .msg-wrap,
#reschedule-form .n-bottom {
  position: static !important;
  margin: 0;
  text-align: left;
}
/* 新门店选择：白底可选，避免灰底像禁用 */
#reschedule-form .bootstrap-select > .dropdown-toggle.order-reschedule-store-btn,
#reschedule-form .bootstrap-select > .dropdown-toggle.btn-default {
  background-color: #fff !important;
  background-image: none !important;
  color: #333 !important;
  border-color: #d2d6de !important;
  opacity: 1 !important;
  cursor: pointer !important;
}
#reschedule-form .bootstrap-select > .dropdown-toggle.order-reschedule-store-btn:hover,
#reschedule-form .bootstrap-select > .dropdown-toggle.order-reschedule-store-btn:focus,
#reschedule-form .bootstrap-select.open > .dropdown-toggle.btn-default {
  background-color: #fff !important;
  border-color: #18bc9c !important;
  box-shadow: none;
}
/* 产品列表封面：保持 1:1 容器，contain 完整显示不裁剪、不拉伸变形 */
.panel-intro #table img.product-cover-thumb {
  width: 30px !important;
  height: 30px !important;
  object-fit: contain;
  object-position: center;
  float: none;
  display: inline-block;
  vertical-align: middle;
}
.panel-intro #table .product-price-from {
  margin-left: 2px;
  font-size: 11px;
  color: #999;
  vertical-align: baseline;
}
.fixed-table-container tbody td .th-inner,
.fixed-table-container thead th .th-inner {
  padding: 10px 10px;
}
.toolbar {
  margin-top: 10px;
  margin-bottom: 10px;
}
.fixed-table-toolbar .bs-bars,
.fixed-table-toolbar .columns,
.fixed-table-toolbar .search {
  line-height: inherit;
}
.fixed-table-toolbar .toolbar {
  margin-top: 0;
  margin-bottom: 0;
}
.bootstrap-table table tbody tr:first-child td .bs-checkbox {
  vertical-align: middle;
}
.bootstrap-table td.bs-checkbox {
  vertical-align: middle;
}
table.table-nowrap tbody > tr > td,
table.table-nowrap thead > tr > th {
  white-space: nowrap;
}
.fixed-table-container thead th .sortable {
  padding: 8px 15px;
}
.dropdown-submenu {
  position: relative;
}
.dropdown-submenu > .dropdown-menu {
  overflow: auto;
  top: 0;
  left: 100%;
  margin-top: -6px;
  margin-left: -1px;
  -webkit-border-radius: 0 6px 6px 6px;
  -webkit-background-clip: padding-box;
  -moz-border-radius: 0 6px 6px 6px;
  -moz-background-clip: padding;
  border-radius: 0 6px 6px 6px;
  background-clip: padding-box;
}
.dropdown-submenu:hover > .dropdown-menu {
  display: block;
}
.dropdown-submenu:hover > a:after {
  border-left-color: #fff;
}
.dropdown-submenu > a:after {
  display: block;
  content: " ";
  float: right;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-left-color: #ccc;
  margin-top: 5px;
  margin-right: -10px;
}
.dropdown-submenu.pull-left {
  float: none;
}
.dropdown-submenu.pull-left > .dropdown-menu {
  left: -100%;
  margin-left: 10px;
  -webkit-border-radius: 6px 0 6px 6px;
  -webkit-background-clip: padding-box;
  -moz-border-radius: 6px 0 6px 6px;
  -moz-background-clip: padding;
  border-radius: 6px 0 6px 6px;
  background-clip: padding-box;
}
/*重写toast的几个背景色*/
.toast-primary {
  background-color: #48c9b0 !important;
}
.toast-success {
  background-color: #18bc9c !important;
}
.toast-error {
  background-color: #e74c3c !important;
}
.toast-info {
  background-color: #5dade2 !important;
}
.toast-warning {
  background-color: #f1c40f !important;
}
.toast-inverse {
  background-color: #34495e !important;
}
.toast-default {
  background-color: #bdc3c7 !important;
}
#toast-container > div,
#toast-container > div:hover {
  -webkit-box-shadow: 0 0 3px #eee;
  -moz-box-shadow: 0 0 3px #eee;
  box-shadow: 0 0 3px #eee;
}
.layui-layer-fast {
  /*自定义底部灰色操作区*/
}
.layui-layer-fast .layui-layer-title {
  background: #2c3e50 !important;
  color: #fff !important;
  border-bottom: none;
  height: 45px;
  line-height: 45px;
}
.layui-layer-fast .layui-layer-title ~ .layui-layer-setwin {
  top: 0px;
  height: 45px;
}
.layui-layer-fast .layui-layer-title ~ .layui-layer-setwin > a {
  height: 45px;
  line-height: 45px;
  display: inline-block;
}
.layui-layer-fast.layui-layer-border {
  border: none !important;
  box-shadow: 1px 1px 50px rgba(0, 0, 0, 0.3) !important;
}
.layui-layer-fast.layui-layer-iframe {
  overflow: visible;
}
.layui-layer-fast .layui-layer-moves {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.layui-layer-fast .layui-layer-btn {
  text-align: center !important;
  padding: 10px !important;
  background: #ecf0f1;
  overflow: hidden;
}
.layui-layer-fast .layui-layer-btn a {
  background-color: #95a5a6;
  color: #fff !important;
  height: 32px;
  line-height: 32px;
  margin-top: 0;
  font-size: 13px;
  border: none;
}
.layui-layer-fast .layui-layer-btn .layui-layer-btn0 {
  background-color: #18bc9c;
  border-color: #18bc9c;
}
.layui-layer-fast .layui-layer-footer {
  padding: 8px 20px;
  background-color: #ecf0f1;
  height: auto;
  min-height: 53px;
  text-align: inherit !important;
}
.layui-layer-fast .layui-layer-confirm {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  bottom: 0;
  border: 1px solid transparent;
  background: transparent;
  color: transparent;
}
.layui-layer-fast .layui-layer-confirm:focus {
  border: 1px solid #444c69;
  -webkit-border-radius: 2px;
  -webkit-background-clip: padding-box;
  -moz-border-radius: 2px;
  -moz-background-clip: padding;
  border-radius: 2px;
  background-clip: padding-box;
}
.layui-layer-fast .layui-layer-confirm:focus-visible {
  outline: 0;
}
.layui-layer-fast .layui-layer-tab .layui-layer-title span.layui-this {
  height: 46px;
}
.layui-layer-fast .layui-layer-setwin > a {
  background: none !important;
}
.layui-layer-fast .layui-layer-setwin > a cite {
  display: none;
}
.layui-layer-fast .layui-layer-setwin > a:after {
  content: "\e625";
  font-family: iconfont;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  position: absolute;
  font-size: 18px;
  color: #fff;
  margin: 0;
  z-index: 1;
}
.layui-layer-fast .layui-layer-setwin > a:hover {
  text-decoration: none !important;
  background: none !important;
}
.layui-layer-fast .layui-layer-setwin > a:focus {
  text-decoration: none !important;
}
.layui-layer-fast .layui-layer-setwin .layui-layer-min {
  display: none;
}
.layui-layer-fast .layui-layer-setwin .layui-layer-min:after {
  content: "\e625";
}
.layui-layer-fast .layui-layer-setwin .layui-layer-max {
  display: none;
}
.layui-layer-fast .layui-layer-setwin .layui-layer-max:after {
  content: "\e623";
}
.layui-layer-fast .layui-layer-setwin .layui-layer-maxmin {
  display: none;
}
.layui-layer-fast .layui-layer-setwin .layui-layer-maxmin:after {
  content: "\e624";
}
.layui-layer-fast .layui-layer-setwin .layui-layer-close1:after {
  content: "\e626";
}
.layui-layer-fast .layui-layer-setwin .layui-layer-close2,
.layui-layer-fast .layui-layer-setwin .layui-layer-close2:hover {
  background: url('../libs/fastadmin-layer/dist/theme/default/icon.png') no-repeat -149px -31px !important;
  top: -30px;
  right: -30px;
}
.layui-layer-fast .layui-layer-setwin .layui-layer-close2:after,
.layui-layer-fast .layui-layer-setwin .layui-layer-close2:hover:after {
  display: none;
}
.layui-layer-content {
  clear: both;
}
.layui-layer-fast-msg {
  min-width: 100px;
}
.layui-layer-fast-tab .layui-layer-title .layui-this {
  color: #333;
}
.layui-layer-fast-tab .layui-layer-content .layui-layer-tabmain {
  margin: 0;
  padding: 0;
}
.input-group > .msg-box.n-right {
  position: absolute;
}
/* 全局：校验提示在控件下方独占一行（文档流，避免与 help-block 重叠） */
.n-bootstrap .msg-box.n-bottom,
.n-bootstrap .msg-box.n-right {
  display: block !important;
  position: static !important;
  float: none !important;
  clear: both;
  width: 100% !important;
  max-width: 100%;
  margin: 6px 0 0 !important;
  padding: 0;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  text-align: left !important;
  line-height: 1.4;
  vertical-align: top;
  z-index: auto !important;
}
.n-bootstrap .msg-box.n-bottom .msg-wrap,
.n-bootstrap .msg-box.n-right .msg-wrap {
  position: relative !important;
  margin: 0 !important;
  top: auto !important;
  left: auto !important;
}
.n-bootstrap .input-group {
  position: relative;
}
/* 兼容仍写在 input-group 内的 msg-box：作为 table-caption 挂在下方，不叠 help-block */
.n-bootstrap .input-group > .msg-box.n-bottom,
.n-bootstrap .input-group > .msg-box.n-right {
  display: table-caption !important;
  caption-side: bottom;
  position: static !important;
  float: none !important;
  width: 100% !important;
  margin: 6px 0 0 !important;
}
.n-bootstrap .form-group {
  margin-bottom: 22px;
}
.n-bootstrap .form-group .help-block {
  display: block;
  clear: both;
  position: relative;
  z-index: 0;
}
.n-bootstrap .sp_container > .msg-box,
.n-bootstrap .bootstrap-select > .msg-box {
  display: block !important;
  position: static !important;
  float: none !important;
  clear: both;
  width: 100% !important;
  margin: 6px 0 0 !important;
}
@media (min-width: 564px) {
  body.is-dialog .daterangepicker {
    min-width: 130px;
  }
  body.is-dialog .daterangepicker .ranges ul {
    width: 130px;
  }
}
/*手机版样式*/
@media (max-width: 480px) {
  #firstnav .navbar-custom-menu ul li a {
    padding-left: 10px;
    padding-right: 10px;
  }
  #firstnav .navbar-nav > .user-menu .user-image {
    margin-top: -3px;
  }
  .fixed-table-toolbar > .bs-bars {
    float: none !important;
  }
  .fixed-table-toolbar .toolbar .btn {
    min-height: 33px;
  }
  .fixed-table-toolbar .toolbar a.btn-refresh,
  .fixed-table-toolbar .toolbar a.btn-del,
  .fixed-table-toolbar .toolbar a.btn-add,
  .fixed-table-toolbar .toolbar a.btn-edit,
  .fixed-table-toolbar .toolbar a.btn-import,
  .fixed-table-toolbar .toolbar a.btn-more,
  .fixed-table-toolbar .toolbar a.btn-recyclebin,
  .fixed-table-toolbar .toolbar .btn-mini-xs,
  .fixed-table-toolbar .toolbar .btn-multi {
    font-size: 0;
  }
  .fixed-table-toolbar .toolbar a.btn-refresh .fa,
  .fixed-table-toolbar .toolbar a.btn-del .fa,
  .fixed-table-toolbar .toolbar a.btn-add .fa,
  .fixed-table-toolbar .toolbar a.btn-edit .fa,
  .fixed-table-toolbar .toolbar a.btn-import .fa,
  .fixed-table-toolbar .toolbar a.btn-more .fa,
  .fixed-table-toolbar .toolbar a.btn-recyclebin .fa,
  .fixed-table-toolbar .toolbar .btn-mini-xs .fa,
  .fixed-table-toolbar .toolbar .btn-multi .fa {
    font-size: initial;
  }
  .fixed-table-toolbar .search {
    max-width: 110px;
    float: left !important;
  }
  .fixed .content-wrapper,
  .fixed .right-side {
    padding-top: 50px;
  }
  .main-sidebar,
  .left-side {
    padding-top: 144px;
  }
}
/*平板样式*/
@media (max-width: 767px) {
  .wrapper .main-header .logo {
    border-bottom: 0 solid transparent;
    position: absolute;
    top: 0;
    z-index: 1200;
    width: 130px;
    left: 50%;
    margin-left: -65px;
  }
  .sidebar .mobilenav a.btn-app {
    color: #444;
    width: 100px;
    height: 70px;
    font-size: 13px;
    border: none;
    background: #fff;
  }
  .sidebar .mobilenav a.btn-app i.fa {
    font-size: 24px;
    display: inline-block;
  }
  .sidebar .mobilenav a.btn-app span {
    margin-top: 5px;
    display: block;
  }
  .sidebar .mobilenav a.btn-app.active {
    color: #222d32;
  }
  .wrapper .main-header .navbar .dropdown-menu li > a {
    color: #333;
  }
  .wrapper .main-header .navbar .dropdown-menu li > a:hover {
    background: #eee;
  }
  .wrapper .main-header .navbar .dropdown-menu li.active > a {
    color: #fff;
  }
  .wrapper .main-header .navbar .dropdown-menu li.active > a:hover {
    background: #222d32;
  }
  .main-sidebar,
  .left-side {
    padding-top: 50px;
  }
  .multipletab.multiplenav .main-sidebar {
    padding-top: 95px;
  }
  .n-bootstrap .n-bottom,
  .n-bootstrap .n-right {
    margin-top: 6px;
    top: auto;
    position: static;
    left: auto;
    text-align: left;
    width: 100%;
  }
  .n-bootstrap .n-bottom .msg-wrap,
  .n-bootstrap .n-right .msg-wrap {
    position: relative;
    margin-right: 0;
  }
  .n-bootstrap .col-xs-12 > .n-bottom .msg-wrap,
  .n-bootstrap .col-xs-12 > .n-right .msg-wrap {
    margin-right: 0;
  }
}
/*修复radio和checkbox样式对齐*/
.radio > label,
.checkbox > label {
  margin-right: 10px;
}
.radio > label > input,
.checkbox > label > input {
  margin: 5px 0 0;
}
.wipecache li a {
  color: #444444 !important;
}
/*修正开关关闭下的颜色值*/
.btn-switcher.disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.btn-switcher .text-gray {
  color: #d2d6de !important;
}
.jumpto input {
  width: 50px;
  margin-left: 5px;
  margin-right: 5px;
  text-align: center;
  display: inline-block;
}
.fixed-columns,
.fixed-columns-right {
  position: absolute;
  top: 0;
  height: 100%;
  min-height: 41px;
  background-color: #fff;
  box-sizing: border-box;
  z-index: 2;
  box-shadow: 0 -1px 8px rgba(0, 0, 0, 0.08);
}
.fixed-columns .fixed-table-body,
.fixed-columns-right .fixed-table-body {
  min-height: 41px;
  overflow-x: hidden !important;
}
.fixed-columns .fixed-table-body .btn-dragsort,
.fixed-columns-right .fixed-table-body .btn-dragsort {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}
.fixed-columns {
  left: 0;
}
.fixed-columns-right {
  right: 0;
  box-shadow: -1px 0 8px rgba(0, 0, 0, 0.08);
}
.fix-sticky {
  position: fixed;
  z-index: 100;
}
.fix-sticky thead {
  background: #fff;
}
.fix-sticky thead th,
.fix-sticky thead th:first-child {
  border-left: 0;
  border-right: 0;
  border-bottom: 1px solid #eee;
  border-radius: 0;
}
.sidebar-menu li.active > a > .fa-angle-left,
.sidebar-menu li.active > a > .pull-right-container > .fa-angle-left {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}
.sidebar-menu li.treeview-open > a > .fa-angle-left,
.sidebar-menu li.treeview-open > a > .pull-right-container > .fa-angle-left {
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.sidebar-menu .treeview-menu > li {
  margin: 4px 0 4px 0;
}
.bootstrap-tagsinput {
  background-color: #fff;
  border: 1px solid #ccc;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  display: inline-block;
  padding: 4px 6px;
  color: #555;
  vertical-align: middle;
  width: 100%;
  line-height: 23px;
  cursor: text;
}
.bootstrap-tagsinput input {
  border: none;
  box-shadow: none;
  outline: none;
  background-color: transparent;
  padding: 0;
  margin: 0;
  font-size: 13px;
  width: 80px;
  max-width: inherit;
}
.bootstrap-tagsinput input:focus {
  border: none;
  box-shadow: none;
}
.bootstrap-tagsinput .tagsinput-text {
  display: inline-block;
  overflow: auto;
  visibility: hidden;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
}
.bootstrap-tagsinput .tag {
  margin-right: 2px;
  color: white;
  min-height: 23px;
}
.bootstrap-tagsinput .tag [data-role="remove"] {
  margin-left: 5px;
  cursor: pointer;
}
.bootstrap-tagsinput .tag [data-role="remove"]:after {
  content: "x";
  padding: 0px 2px;
}
.bootstrap-tagsinput .tag [data-role="remove"]:hover {
  background-color: rgba(255, 255, 255, 0.16);
}
.autocomplete-suggestions {
  border-radius: 2px;
  background: #FFF;
  overflow: auto;
  min-width: 200px;
  -webkit-box-shadow: 0px 20px 30px rgba(83, 88, 93, 0.05), 0px 0px 30px rgba(83, 88, 93, 0.1);
  -moz-box-shadow: 0px 20px 30px rgba(83, 88, 93, 0.05), 0px 0px 30px rgba(83, 88, 93, 0.1);
  box-shadow: 0px 20px 30px rgba(83, 88, 93, 0.05), 0px 0px 30px rgba(83, 88, 93, 0.1);
}
.autocomplete-suggestions strong {
  font-weight: normal;
  color: red;
}
.autocomplete-suggestions .autocomplete-suggestion {
  padding: 5px 10px;
  white-space: nowrap;
  overflow: hidden;
}
.autocomplete-suggestions .autocomplete-selected {
  background: #F0F0F0;
}
.autocomplete-suggestions .autocomplete-group {
  padding: 5px 10px;
}
.autocomplete-suggestions .autocomplete-group strong {
  display: block;
  border-bottom: 1px solid #ddd;
}
.autocontent {
  position: relative;
}
.autocontent .autocontent-caret {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  line-height: 1;
  background: #eee;
  color: #ddd;
  vertical-align: middle;
  padding: 0 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.autocontent .autocontent-caret:hover {
  color: #ccc;
}

/*
 * 弹框添加/编辑：左侧 label 与右侧首行表单控件垂直居中对齐；
 * 右侧多行（含 help-block）时，label 仍对齐第一行控件。
 */
@media (min-width: 768px) {
  body.is-dialog form.form-horizontal > .form-group:not(.layer-footer) {
    display: flex;
    align-items: flex-start;
  }
  body.is-dialog form.form-horizontal > .form-group:not(.layer-footer):before,
  body.is-dialog form.form-horizontal > .form-group:not(.layer-footer):after {
    display: none;
  }
  body.is-dialog form.form-horizontal > .form-group:not(.layer-footer) > .control-label {
    float: none;
    width: 16.66666667%;
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
    padding-top: 0 !important;
    margin-bottom: 0;
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
  }
  /* 仅右侧内容列；勿匹配 label 上的 col-sm-*，否则会整行右偏 */
  body.is-dialog form.form-horizontal > .form-group:not(.layer-footer) > [class*="col-sm-"]:not(.control-label) {
    float: none;
    flex: 1 1 auto;
    width: auto;
    max-width: none;
    text-align: left;
  }
  body.is-dialog form.form-horizontal > .form-group:not(.layer-footer) > [class*="col-sm-"]:not(.control-label) > .form-control-static {
    min-height: 34px;
    padding-top: 7px;
    padding-bottom: 7px;
    margin-bottom: 0;
  }
  body.is-dialog form.form-horizontal > .form-group:not(.layer-footer) > [class*="col-sm-"]:not(.control-label) > .btn-switcher {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
  }
  /*
   * 弹框内 radio/checkbox 与左侧 label 对齐。
   * Bootstrap 默认 padding-top:7px，弹框左侧 label 已 padding-top:0+flex，会显得偏下。
   * 实测 radio-inline 用 5px 齐平；仅限 is-dialog，避免非弹窗页偏上。
   * 父级 .radio/.checkbox 置 0，避免与内部 .radio-inline 叠双 padding。
   */
  body.is-dialog form.form-horizontal .radio,
  body.is-dialog form.form-horizontal .checkbox {
    padding-top: 0;
    min-height: 34px;
  }
  body.is-dialog form.form-horizontal .radio-inline,
  body.is-dialog form.form-horizontal .checkbox-inline {
    padding-top: 5px;
  }
  body.is-dialog form.form-horizontal .radio > label:not(.radio-inline),
  body.is-dialog form.form-horizontal .checkbox > label:not(.checkbox-inline) {
    padding-top: 5px;
  }
}
/* 顶栏品牌 Logo：左对齐对齐菜单 icon；折叠切换不缩放形变 */
.main-header .logo {
  padding: 0 12px 0 15px; /* 与 .sidebar-menu > li > a 的 padding-left:15px 对齐 */
  display: flex;
  align-items: center;
  justify-content: flex-start;
  overflow: hidden; /* 宽度动画时裁剪，避免把图压扁/拉长 */
  box-sizing: border-box;
}
.main-header .logo .logo-lg,
.main-header .logo .logo-mini {
  line-height: 1;
  flex: 0 0 auto;
}
.main-header .logo .logo-lg img,
.main-header .logo .logo-mini img {
  display: block;
  flex-shrink: 0;
  max-width: none; /* 禁止随容器宽度缩放 */
  transition: none;
  transform: none;
}
/* 展开：完整横版，固有比例 */
.main-header .logo .logo-lg img {
  height: 32px;
  width: auto;
}
/* 折叠：仅圆形标，固定正方形，不参与宽度拉伸 */
.main-header .logo .logo-mini img {
  height: 32px;
  width: 32px;
}
/* 覆盖 AdminLTE mini 负边距，保证圆标在 50px 栏内居中且不变形 */
.sidebar-mini.sidebar-collapse .main-header .logo {
  padding: 0;
  justify-content: center;
}
.sidebar-mini.sidebar-collapse .main-header .logo > .logo-mini {
  margin-left: 0 !important;
  margin-right: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

/* 账户信息下拉：箭头 + 紧凑白底菜单 */
.main-header .navbar-nav > .user-menu > .dropdown-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
}
.main-header .navbar-nav > .user-menu > .dropdown-toggle .user-menu-caret {
  font-size: 14px;
  line-height: 1;
  margin-left: 2px;
  transition: transform 0.15s ease;
}
.main-header .navbar-nav > .user-menu.open > .dropdown-toggle .user-menu-caret {
  transform: rotate(180deg);
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel {
  width: 220px;
  padding: 0;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  background: #fff;
  overflow: hidden;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel > .user-header-compact {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  background: #fff !important;
  height: auto !important;
  text-align: left;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel > .user-header-compact > img {
  width: 36px !important;
  height: 36px !important;
  margin: 0 !important;
  border: 1px solid #eee;
  flex: 0 0 36px;
  object-fit: cover;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel > .user-header-compact > .user-header-meta {
  min-width: 0;
  flex: 1 1 auto;
  color: #333;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel .user-header-name {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  color: #222;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel .user-header-time {
  margin-top: 3px;
  font-size: 11px;
  line-height: 1.3;
  color: #999;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel > .divider {
  margin: 0;
  background-color: #eee;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel > .user-menu-item > a {
  display: block;
  padding: 9px 14px;
  color: #333 !important;
  background: #fff !important;
  text-align: left;
  font-size: 13px;
  line-height: 1.4;
  border: none;
  border-radius: 0;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel > .user-menu-item > a:hover,
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel > .user-menu-item > a:focus {
  background: #f5f5f5 !important;
  color: #111 !important;
}
.main-header .navbar-nav > .user-menu > .dropdown-menu.user-menu-panel > .user-menu-item > a > .fa {
  margin-right: 6px;
  width: 14px;
  text-align: center;
  color: #666;
}
/*# sourceMappingURL=backend.css.map */