:root {
  --tblr-sidebar-width: 160px;
  --tblr-sidebar-folded-width: 60px;
  /* 对齐 Vue preferences theme.radius = 0.25rem */
  --tblr-border-radius: 4px;
  --tblr-border-radius-sm: 4px;
  --tblr-border-radius-lg: 4px;
  --tblr-border-radius-xl: 4px;
  --tblr-card-border-radius: 4px;
}

html,
body,
#app {
  height: 100%;
}

body {
  overflow: hidden;
}

#app > .page.page-center {
  height: 100%;
  overflow: auto;
}

#app > .page.login-page {
  height: 100%;
  overflow: hidden;
}

#app > .page:not(.page-center):not(.login-page) {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.page-wrapper {
  min-height: 0;
  overflow: hidden;
}

#erp-sidebar {
  --tblr-navbar-bg: #fff;
  --tblr-navbar-color: hsl(240 6% 10%);
  --tblr-navbar-hover-color: hsl(240 6% 10%);
  --tblr-navbar-active-color: hsl(212 100% 45%);
  --tblr-navbar-active-bg: hsl(212 100% 45% / 15%);
  --tblr-navbar-brand-color: hsl(210 6% 21%);
  --tblr-navbar-brand-hover-color: hsl(210 6% 21%);
  --tblr-navbar-border-color: hsl(240 5.9% 90%);
  background: #fff;
  color: hsl(240 6% 10%);
  transition: none;
}

#erp-sidebar .navbar-brand {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 49px;
  margin-inline: 0;
  padding: 0 12px;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: normal;
}

#erp-sidebar .navbar-brand-title {
  display: inline-flex;
  align-items: flex-start;
  min-width: 0;
}

#erp-sidebar .navbar-brand-mark {
  margin-left: 2px;
  padding: 1px 6px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 400;
  line-height: 1;
  white-space: nowrap;
}

#erp-sidebar .navbar-brand-mark.is-ok {
  background: #22c55e;
  color: #fff;
}

#erp-sidebar .navbar-brand-mark.is-soon {
  background: #facc15;
  color: #000;
}

#erp-sidebar .navbar-brand-mark.is-trial,
#erp-sidebar .navbar-brand-mark.is-expired {
  background: #ef4444;
  color: #fff;
}

#sidebar-menu {
  padding-top: 8px;
  padding-bottom: 2.5rem;
}

#erp-sidebar .navbar-nav {
  --tblr-sidebar-nav-padding-y: 0;
  --tblr-sidebar-nav-padding-x: 12px;
  padding-inline: 0;
  font-size: 14px;
}

#erp-sidebar .navbar-nav > .nav-item > .nav-link,
#erp-sidebar .dropdown-menu .dropdown-item {
  min-height: 0;
  margin: 0 6px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: hsl(240 6% 10%);
  background: transparent;
  outline: none;
}

#erp-sidebar .navbar-nav > .nav-item > .nav-link {
  height: 36px;
  padding: 0 12px 0 4px;
}

#erp-sidebar button.nav-link {
  width: calc(100% - 12px);
  border: 0;
  text-align: start;
}

#erp-sidebar .erp-menu-icon {
  flex: none;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  color: currentColor;
}

#erp-sidebar .nav-link.dropdown-toggle {
  position: relative;
  padding-right: 28px;
}

#erp-sidebar .dropdown-toggle::after {
  content: none;
}

#erp-sidebar .nav-link-toggle {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 16px;
  height: 16px;
  margin: -8px 0 0;
  padding: 0;
}

#erp-sidebar.navbar-folded .nav-link-toggle {
  display: none;
}

#erp-sidebar.navbar-folded .erp-menu-icon {
  margin-right: 0;
}

#erp-sidebar.navbar-folded .navbar-nav > .nav-item > .nav-link {
  justify-content: center;
  padding-right: 0;
  padding-left: 0;
}

#erp-sidebar.navbar-folded .navbar-brand {
  justify-content: center;
  padding: 0 2px;
  overflow: visible;
}

#erp-sidebar.navbar-folded .navbar-brand-title {
  flex-direction: column;
  align-items: center;
  gap: 2px;
}

#erp-sidebar.navbar-folded .navbar-brand-title > span:first-child {
  font-size: 12px;
  line-height: 14px;
  white-space: nowrap;
}

#erp-sidebar.navbar-folded .navbar-brand-mark {
  margin-left: 0;
}

#erp-sidebar.navbar-folded .dropdown-menu .nav-link-title {
  width: auto;
  overflow: visible;
  opacity: 1;
}

#erp-sidebar.navbar-folded .dropdown-menu .erp-menu-icon {
  margin-right: 6px;
}

#erp-sidebar.navbar-folded .nav-item.dropdown > .dropdown-menu {
  inset-inline-start: 100%;
  min-width: 160px;
  padding: 4px 0;
}

#erp-sidebar.navbar-folded .nav-item.dropdown > .dropdown-menu::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -8px;
  width: 8px;
}

#erp-sidebar.navbar-folded .dropdown-menu .dropdown-item {
  height: 32px;
  margin: 0 6px;
  padding: 0 12px;
  border-radius: 6px;
  color: hsl(240 6% 10%);
}

#erp-sidebar .dropdown-menu .dropdown-item {
  display: flex;
  align-items: center;
  height: 32px;
  padding: 0 12px 0 24px;
}

#erp-sidebar .navbar-nav > .nav-item > .nav-link:hover:not(.active),
#erp-sidebar .navbar-nav > .nav-item > .nav-link:focus:not(.active),
#erp-sidebar .dropdown-menu .dropdown-item:hover:not(.active),
#erp-sidebar .dropdown-menu .dropdown-item:focus:not(.active) {
  color: hsl(240 6% 10%);
  background: hsl(240 5% 96%);
}

#erp-sidebar .navbar-nav > .nav-item > .nav-link.active,
#erp-sidebar .dropdown-menu .dropdown-item.active,
#erp-sidebar .dropdown-menu .dropdown-item:active {
  font-weight: 400;
  color: hsl(212 100% 45%);
  background: hsl(212 100% 45% / 15%);
}

#erp-sidebar .navbar-nav > .nav-item > .nav-link.dropdown-toggle.active {
  background: transparent;
}

.erp-sidebar-toggle {
  position: absolute;
  bottom: 8px;
  left: 8px;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
}

.page-wrapper > header.navbar {
  z-index: 30;
  height: 50px;
  min-height: 50px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  overflow: visible;
}

.page-wrapper > header.navbar > .container-fluid {
  padding-left: 4px;
}

.header-sidebar-toggle {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin-right: 4px;
  padding: 0;
  border: 0;
  border-radius: var(--tblr-border-radius);
  background: transparent;
  color: var(--tblr-body-color);
  cursor: pointer;
}

.header-sidebar-toggle:hover {
  background: var(--tblr-bg-surface-tertiary);
}

.page.erp-sidebar-hidden {
  --tblr-sidebar-width: 0px;
  --sidebar-width: 0px;
}

.page.erp-sidebar-hidden #erp-sidebar {
  display: none;
}

.page.erp-sidebar-hidden > .page-wrapper {
  --tblr-sidebar-width: 0px;
  --sidebar-width: 0px;
  margin-inline-start: 0;
}

.page.erp-sidebar-hidden .page-wrapper > header.navbar > .container-fluid {
  padding-left: 4px;
}

.header-search {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex: 1;
  min-width: 0;
}

.header-search-combo {
  position: relative;
  width: 22rem;
  height: 32px;
}

.header-search-combo .form-control,
.header-match .form-select {
  height: 32px;
  min-height: 32px;
  padding-top: 0;
  padding-bottom: 0;
}

.header-search-combo .form-control {
  padding-right: 3.4rem;
}

.header-search-combo.has-history .form-control {
  padding-right: 5.4rem;
}

.header-search-combo > .header-match {
  position: relative;
  display: flex;
  flex: 0 0 4rem;
  width: 4rem;
  margin-left: calc(-1 * var(--tblr-border-width));
}

.header-match .form-select {
  width: 100%;
  padding-right: 0.9rem;
  padding-left: 0.25rem;
  font-size: 13px;
  background-position: right 0.15rem center;
  background-size: 12px 9px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  text-align: start;
}

.header-match-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 50;
  width: 100%;
  min-width: 100%;
  margin: 0;
  padding: 0.25rem 0;
  background: var(--tblr-bg-surface);
  border: var(--tblr-border-width) solid var(--tblr-border-color-translucent);
  border-radius: var(--tblr-border-radius);
  box-shadow: var(--tblr-shadow-dropdown);
}

.header-match-menu[hidden] {
  display: none;
}

.header-match-menu .dropdown-item {
  padding: 0.25rem 0.5rem;
}

.erp-select-menu {
  position: fixed;
  z-index: 4200;
  max-height: 274px;
  margin: 0;
  padding: 6px 0;
  overflow: auto;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  box-shadow: 0 2px 12px rgb(0 0 0 / 10%);
}

.erp-select-menu[hidden] {
  display: none;
}

.erp-select-menu__group {
  padding: 6px 20px 2px;
  color: #909399;
  font-size: 12px;
  line-height: 20px;
}

.erp-select-menu__item {
  display: block;
  width: 100%;
  padding: 0 20px;
  border: 0;
  background: transparent;
  color: #606266;
  font-size: 14px;
  line-height: 34px;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
}

.erp-select-menu__item:hover,
.erp-select-menu__item.is-active {
  background: #f5f7fa;
}

.erp-select-menu__item.is-selected {
  color: #409eff;
  font-weight: 700;
}

.erp-select-menu__item:disabled {
  color: #c0c4cc;
  background: transparent;
  cursor: not-allowed;
}

.header-search-suffix {
  position: absolute;
  top: 1px;
  bottom: 1px;
  right: calc(4rem + 2px);
  z-index: 6;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.header-search-tool,
.header-search-history {
  display: inline-flex;
  align-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--tblr-secondary);
  line-height: 1;
  cursor: pointer;
}

.header-search-history {
  color: #006be6;
  font-size: 12px;
}

.header-search-tool:hover {
  color: #006be6;
}

.header-search-history:hover {
  color: #4e99ef;
}

.header-search-panel {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  z-index: 41;
  width: 448px;
  overflow: hidden;
  padding: 6px 12px 10px;
}

.header-search-panel[hidden] {
  display: none;
}

.header-search-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 6px;
  min-height: 20px;
}

.header-search-panel__head .header-search-panel__title {
  margin-bottom: 0;
}

.header-search-panel__head .btn-close {
  width: 10px;
  height: 10px;
  padding: 8px;
  margin: 0 -4px 0 0;
}

.header-search-panel__title {
  margin-bottom: 0.35rem;
  font-size: 13px;
  font-weight: 600;
  line-height: 20px;
}

.header-search-note {
  position: fixed;
  top: 58px;
  left: 50%;
  z-index: 42;
  transform: translateX(-50%);
  padding: 0.25rem 0.5rem;
  border: var(--tblr-border-width) var(--tblr-border-style) var(--tblr-border-color);
  border-radius: var(--tblr-border-radius);
  background: var(--tblr-bg-surface);
  color: var(--tblr-danger);
  font-size: 12px;
  box-shadow: var(--tblr-shadow-card);
}

.header-search-note[hidden] {
  display: none;
}

.header-history-toolbar {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 6px;
  margin-bottom: 8px;
  min-width: 0;
}

.header-history-toolbar .form-select,
.header-history-toolbar .form-control,
.header-history-toolbar .btn {
  height: 24px;
  min-height: 24px;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 12px;
  line-height: 22px;
}

.header-history-toolbar .form-select {
  width: 80px;
  flex: 0 0 80px;
  padding-left: 0.35rem;
  padding-right: 1.1rem;
}

.header-history-toolbar input[type="date"] {
  width: 104px;
  flex: 0 0 104px;
  min-width: 0;
  max-width: 104px;
  padding-left: 0.3rem;
  padding-right: 0.15rem;
}

.header-history-toolbar input[type="date"]::-webkit-datetime-edit {
  padding: 0;
}

.header-history-toolbar input[type="date"]::-webkit-calendar-picker-indicator {
  width: 12px;
  height: 12px;
  padding: 0;
  margin: 0;
  cursor: pointer;
}

.header-history-date-sep {
  flex: none;
  color: var(--tblr-secondary);
  line-height: 24px;
}

.header-history-toolbar .form-check {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  flex: none;
  margin: 0;
  padding-left: 0;
  min-height: 24px;
  white-space: nowrap;
}

.header-history-toolbar .form-check-input {
  float: none;
  width: 14px;
  height: 14px;
  margin: 0;
  flex: none;
}

.header-history-toolbar .form-check-label {
  font-size: 12px;
  line-height: 24px;
}

.header-history-toolbar .btn {
  flex: none;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.header-history-table {
  max-height: 300px;
  overflow: auto;
  border: var(--tblr-border-width) var(--tblr-border-style) var(--tblr-border-color);
}

.header-history-table table {
  width: 100%;
  margin: 0;
  table-layout: fixed;
  font-size: 12px;
  line-height: 25px;
  border-collapse: separate;
  border-spacing: 0;
}

.header-history-table .table > :not(caption) > * > * {
  height: 25px;
  padding: 0 6px;
  border: 0;
  border-bottom: var(--tblr-border-width) solid var(--tblr-border-color);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: middle;
}

.header-history-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--tblr-bg-surface-tertiary, var(--tblr-bg-surface));
  font-weight: 600;
}

.header-history-table tbody tr:last-child td {
  border-bottom: 0;
}

.header-history-col-time {
  width: calc(19ch + 12px);
}

.header-history-col-user {
  width: 56px;
}

.header-history-col-count {
  width: 72px;
}

.header-history-pick {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  line-height: 25px;
}

.header-history-ic-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.header-history-ic-search {
  display: none;
  flex: none;
  width: 14px;
  height: 14px;
  margin-left: 4px;
  color: #006be6;
}

.header-history-pick:hover {
  color: #006be6;
}

.header-history-pick:hover .header-history-ic-search {
  display: block;
}

.header-search-empty {
  margin: 1.5rem 0 0.5rem;
  color: var(--tblr-danger);
  font-size: 13px;
  text-align: center;
}

.header-site-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.35rem;
}

.header-search-suggest {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  z-index: 40;
  display: block;
  width: 22rem;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgb(15 23 42 / 12%);
}

.header-search-suggest[hidden] {
  display: none;
}

.header-search-suggest__head {
  padding: 6px 12px 5px;
  border-bottom: 1px solid #ebeef5;
  color: #909399;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
}

.header-search-suggest__list {
  max-height: 280px;
  margin: 0;
  padding: 4px 0;
  overflow: auto;
}

.header-search-suggest__item {
  display: block;
  width: calc(100% - 8px);
  height: 32px;
  margin: 0 4px;
  padding: 0 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #606266;
  font-size: 13px;
  line-height: 32px;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
}

.header-search-suggest__item:hover {
  background: #ecf5ff;
}

.header-search-suggest__text {
  font-variant-numeric: tabular-nums;
}

.header-search-suggest__hit {
  color: #409eff;
  font-weight: 600;
}

.page-body {
  flex: 1;
  min-height: 0;
  margin-top: 0;
  margin-bottom: 0;
  overflow: auto;
}

.page-body:has(#page .search-page),
.page-body:has(#page .cross-site-page),
.page-body:has(#page .import-page),
.page-body:has(#page .erp-pane:not([hidden]) .log-page),
.page-body:has(#page .erp-pane:not([hidden]) .hr-user-page),
.page-body:has(#page .erp-pane:not([hidden]) .bom-form-page) {
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
}

.erp-tabbar {
  display: flex;
  flex: 0 0 32px;
  align-items: stretch;
  width: 100%;
  height: 32px;
  background: var(--tblr-bg-surface, #fff);
  box-shadow: inset 0 -2px 0 #e4e7ed;
}

#erp-tabs {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: nowrap;
  align-items: stretch;
  min-width: 0;
  height: 32px;
  margin: 0;
  padding: 0 12px;
  overflow-x: auto;
  overflow-y: hidden;
  list-style: none;
  background: transparent;
  scrollbar-width: none;
}

.erp-tab-tools {
  display: flex;
  flex: 0 0 auto;
  align-items: stretch;
  height: 32px;
}

.erp-tab-more {
  position: relative;
  display: flex;
  height: 32px;
}

.erp-tab-tool {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 33px;
  height: 32px;
  margin: 0;
  padding: 0;
  border: 0;
  border-left: 1px solid hsl(240 5.9% 90%);
  background: transparent;
  color: hsl(240 3.8% 46.1%);
  cursor: pointer;
}

.erp-tab-tool svg {
  width: 16px;
  height: 16px;
}

.erp-tab-tool:hover,
.erp-tab-tool[aria-expanded="true"] {
  background: hsl(240 4.8% 95.9%);
  color: hsl(240 6% 10%);
}

.erp-tab-menu {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 40;
  min-width: 148px;
  margin: 0;
  padding: 4px 0;
  border: 1px solid hsl(240 5.9% 90%);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 6px 16px rgb(0 0 0 / 8%);
}

.erp-tab-menu.is-context {
  position: fixed;
  top: 0;
  right: auto;
  z-index: 2000;
}

.erp-tab-menu button {
  display: flex;
  align-items: center;
  width: 100%;
  height: 32px;
  margin: 0;
  padding: 0 8px;
  border: 0;
  background: transparent;
  color: hsl(240 6% 10%);
  font-size: 14px;
  line-height: 32px;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
}

.erp-tab-menu button svg {
  width: 16px;
  height: 16px;
  margin-right: 8px;
  flex: none;
}

.erp-tab-menu button:hover:not(:disabled) {
  background: hsl(240 5% 96%);
}

.erp-tab-menu button:disabled {
  color: hsl(240 4% 72%);
  cursor: not-allowed;
}

.erp-tab-menu-sep {
  height: 1px;
  margin: 4px 0;
  background: hsl(240 5.9% 90%);
}

.page.erp-content-max > #erp-sidebar {
  display: none;
}

.page.erp-content-max > .page-wrapper {
  margin-inline-start: 0;
}

.page.erp-content-max > .page-wrapper > header.navbar {
  display: none;
}

#erp-tabs::-webkit-scrollbar {
  display: none;
}

#erp-tabs .erp-tab-item {
  display: flex;
  margin: 0;
}

#erp-tabs .erp-menu-icon {
  flex: none;
  width: 16px;
  height: 16px;
  margin-right: 6px;
}

#erp-tabs .erp-tab {
  position: relative;
  display: inline-flex;
  align-items: center;
  height: 32px;
  margin: 0;
  padding: 0 16px;
  border: 0;
  background: transparent;
  color: #303133;
  font-size: 14px;
  font-weight: 500;
  line-height: 32px;
  white-space: nowrap;
  text-decoration: none;
}

#erp-tabs .erp-tab:hover,
#erp-tabs .erp-tab.active {
  color: #337ecc;
  background: transparent;
}

#erp-tabs .erp-tab.active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: #337ecc;
}

#erp-tabs .erp-tab-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  margin: 0 0 0 4px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #909399;
  font-size: 14px;
  line-height: 1;
}

#erp-tabs .erp-tab-close:hover {
  background: #c0c4cc;
  color: #fff;
}

.erp-pane[hidden] {
  display: none;
}

#page.container-fluid {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.erp-grid {
  font-size: 12px;
  margin-bottom: 0;
  border-collapse: collapse;
  --erp-table-row-hover-bg-color: #ffffeb;
}

.erp-grid th,
.erp-grid td {
  height: 25px;
  max-height: 25px;
  padding: 0 6px;
  border: 1px solid #ebeef5;
  white-space: nowrap;
  vertical-align: middle;
  line-height: 25px;
  box-sizing: border-box;
}

.erp-grid thead th {
  height: 25px;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 12px;
  font-weight: 600;
}

.erp-grid tbody tr:hover > td {
  background-color: var(--erp-table-row-hover-bg-color) !important;
}

.erp-grid tbody tr.ledger-spacer:hover > td,
.erp-grid tbody tr.rcjz-spacer:hover > td {
  background-color: #fff !important;
}

table.erp-grid--photo {
  table-layout: fixed;
  width: 100%;
}

.erp-grid--photo thead th,
.erp-grid--photo thead th .vxe-cell {
  height: 25px;
  max-height: 25px;
  line-height: 25px;
  background-color: #f4f4f5;
}

.erp-grid--photo tbody td {
  height: 116px;
  max-height: 116px;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 25px;
  vertical-align: middle;
}

.erp-grid__check-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  min-width: 0;
  height: 100%;
}

.erp-grid--photo tbody td.erp-grid__check,
.erp-grid--photo tbody td.erp-grid__actions {
  vertical-align: middle;
}

.erp-grid--photo tbody td.erp-grid__check {
  padding: 0;
}

.erp-grid--photo tbody td.erp-grid__check .erp-grid__check-inner {
  height: 110px;
}

.erp-grid--photo tbody td.erp-grid__actions .erp-cell-action-group {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 110px;
}

.erp-grid--photo td.erp-grid__thumb-cell,
.erp-grid--photo td:has(.search-module-panel__thumb-btn) {
  padding: 0;
  text-align: center;
  vertical-align: middle;
}

.erp-inline-edit {
  display: flex;
  gap: 4px;
  align-items: center;
  width: 100%;
  min-width: 0;
  height: 100%;
}

.erp-grid--photo .erp-inline-edit {
  height: 110px;
}

.erp-inline-edit__text {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-inline-edit__pen {
  display: none;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #006be6;
  cursor: pointer;
}

.erp-inline-edit:hover .erp-inline-edit__pen {
  display: inline-flex;
}

.erp-inline-edit__pen:hover {
  color: #4e99ef;
}

.erp-inline-edit__input {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 22px;
  padding: 0 4px;
  border: 1px solid #006be6;
  border-radius: 2px;
  outline: none;
  background: #fff;
  color: inherit;
  font: inherit;
  line-height: 20px;
}

.erp-grid col.erp-grid__check-col {
  width: 26px;
}

.erp-grid col.erp-grid__actions-col {
  width: 1%;
}

.erp-grid th.erp-grid__check,
.erp-grid td.erp-grid__check {
  width: 1%;
  min-width: 26px;
  padding: 0;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
  box-sizing: border-box;
}

.erp-grid__check .search-module-chk__box {
  margin: 0;
  vertical-align: middle;
}

.erp-grid th.erp-grid__actions,
.erp-grid td.erp-grid__actions {
  width: 1%;
  padding: 0 4px;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
  box-sizing: border-box;
}

.erp-cell-action-group {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  line-height: 25px;
  white-space: nowrap;
}

.erp-cell-action-group__sep {
  margin: 0 2px;
  color: #606266;
}

.erp-search-action,
.erp-cell-action-link {
  padding: 0;
  border: 0;
  background: transparent;
  color: #006be6;
  font-size: 12px;
  line-height: 25px;
  cursor: pointer;
}

.erp-search-action:hover,
.erp-cell-action-link:hover {
  color: #4e99ef;
}

.erp-cell-action-link--danger,
.erp-cell-action-link--danger.erp-search-action {
  color: #f56c6c;
}

.erp-cell-action-link--danger:hover,
.erp-cell-action-link--danger.erp-search-action:hover {
  color: #f89898;
}

.erp-cell-action-link.red,
.erp-cell-action-link.red.erp-search-action {
  color: #f56c6c;
}

.search-module-panel__thumb-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 110px;
  margin: 0 auto;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
}

.search-module-panel__thumb,
.erp-grid .thumb {
  display: block;
  width: 150px;
  height: 110px;
  object-fit: contain;
}

.search-module-panel__watermark {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 20px;
}

.search-module-panel__watermark-check {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  margin: 0;
  color: #606266;
  font-size: 12px;
  font-weight: 400;
  line-height: 20px;
  white-space: nowrap;
  cursor: pointer;
}

.search-module-panel__watermark-input {
  width: 168px;
  height: 20px;
  padding: 0 6px;
  border: 1px solid #dcdfe6;
  border-radius: 2px;
  background: #fff;
  color: #606266;
  font-size: 12px;
  line-height: 18px;
}

.erp-photo-preview {
  position: fixed;
  inset: 0;
  z-index: 4000;
}

.erp-photo-preview__mask {
  position: absolute;
  inset: 0;
  background: #000;
  opacity: 0.5;
}

.erp-photo-preview__canvas {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.erp-photo-preview__img {
  max-width: 100%;
  max-height: 100%;
  user-select: none;
  cursor: grab;
}

.erp-photo-preview__img:active {
  cursor: grabbing;
}

.erp-photo-preview__btn {
  position: absolute;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #606266;
  color: #fff;
  opacity: 0.8;
  cursor: pointer;
}

.erp-photo-preview__btn:hover {
  opacity: 1;
}

.erp-photo-preview__close {
  top: 40px;
  right: 40px;
  width: 40px;
  height: 40px;
}

.erp-photo-preview__nav {
  top: 50%;
  width: 44px;
  height: 44px;
  transform: translateY(-50%);
}

.erp-photo-preview__nav--prev {
  left: 40px;
}

.erp-photo-preview__nav--next {
  right: 40px;
}

.erp-photo-preview__actions {
  position: absolute;
  bottom: 30px;
  left: 50%;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-around;
  width: 282px;
  height: 44px;
  padding: 0 23px;
  border-radius: 22px;
  background: #606266;
  transform: translateX(-50%);
}

.erp-photo-preview__tool {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  background: none;
  color: #fff;
  cursor: pointer;
}

.erp-photo-preview__tool:hover {
  opacity: 0.8;
}

.erp-photo-preview__watermark {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background-repeat: repeat;
  user-select: none;
}

#page.container-fluid:has(.software-page) {
  padding: 0;
}

.software-page {
  margin-left: 20px;
  padding-top: 12px;
  font-size: 12px;
  line-height: 28px;
}

.software-page a {
  display: block;
  color: #409eff;
  text-decoration: none;
}

.software-page a:hover {
  color: #79bbff;
}

.log-page {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  min-height: 0;
  padding: 8px;
  background: #f2f3f5;
}

.log-filters {
  display: flex;
  flex: none;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 8px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.log-filters .log-type {
  width: 88px;
}

.log-filters .log-keyword {
  width: 10rem;
}

.log-filters .log-user {
  width: 96px;
}

.log-filters .log-match {
  width: 92px;
}

.log-filters .log-date {
  width: 132px;
}

.log-combo {
  display: flex;
  width: 22rem;
  max-width: 100%;
}

.log-combo .form-control {
  flex: 1;
  min-width: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.log-combo .form-select {
  flex: none;
  width: 108px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  margin-left: -1px;
}

.log-check {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  color: #303133;
  font-size: 12px;
  white-space: nowrap;
}

.log-to {
  color: #606266;
  font-size: 12px;
}

.log-panel {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}

.log-table-wrap {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.log-page .erp-grid thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #cae4b6;
}

.log-page .erp-grid td {
  color: #555;
}

.log-page .erp-grid td.is-blue {
  color: #0000ff;
}

.log-page .search-module-panel__pager {
  justify-content: flex-end;
}

.attach-page .search-module-panel__pager {
  justify-content: space-between;
}

.attach-add {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 32px;
  height: 32px;
  margin-left: auto;
  padding: 0;
  border: 1px solid #67c23a;
  border-radius: 4px;
  background: #67c23a;
  color: #fff;
  line-height: 1;
  cursor: pointer;
}

.attach-add svg {
  display: block;
}

.attach-add:hover {
  border-color: #85ce61;
  background: #85ce61;
}

.attach-action {
  margin: 0;
  padding: 0 2px;
  border: 0;
  background: transparent;
  color: #0068cf;
  font-size: 12px;
  cursor: pointer;
}

.attach-form {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 72px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  row-gap: 8px;
}

.attach-form--wide {
  grid-template-columns: 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr);
}

.attach-form label {
  margin: 0;
  color: #303133;
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.attach-form label.is-danger {
  color: #f56c6c;
}

.attach-form .form-control,
.attach-form .form-select {
  width: 100%;
  min-width: 0;
}

.attach-form .is-span {
  grid-column: 2 / -1;
}

.ledger-keyword {
  width: 16rem;
  max-width: 100%;
}

.ledger-page .log-table-wrap {
  display: flex;
  flex-direction: column;
}

.ledger-page .erp-grid {
  flex: 1;
  width: 100%;
  height: 100%;
}

.ledger-page .erp-grid thead th {
  padding: 0 4px;
  background: #f4f4f5;
  color: #323539;
  text-align: center;
}

.ledger-page .erp-grid tbody td {
  padding: 0 4px;
  text-align: left;
}

.ledger-page .erp-grid tbody tr:nth-child(even):not(.ledger-spacer) > td {
  background: color-mix(in srgb, #f4f4f5 55%, #fff);
}

.ledger-page .erp-grid tr.ledger-spacer td {
  height: 100%;
  padding: 0;
  border-color: transparent;
  background: #fff;
}

.ledger-page .erp-grid th.ledger-check,
.ledger-page .erp-grid td.ledger-check {
  width: 26px;
  padding: 0;
  text-align: center;
}

.ledger-page .erp-grid th.ledger-actions,
.ledger-page .erp-grid td.ledger-actions {
  width: 36px;
  padding: 0;
  text-align: center;
}

.ledger-page .ledger-check .search-module-chk__box {
  margin: 0;
  vertical-align: middle;
}

.ledger-page .erp-grid tfoot td {
  position: sticky;
  bottom: 0;
  z-index: 1;
  background: #f5f7fa;
  font-weight: 600;
}

.ledger-page .erp-grid td.ledger-foot-money {
  color: #f56c6c;
}

.ledger-page .erp-grid td.ledger-foot-rmb {
  color: #67c23a;
}

.ledger-page .search-module-panel__pager-btn:disabled {
  cursor: default;
  opacity: 0.6;
}

.rcjz-filters {
  display: grid;
  grid-template-columns: 18rem max-content 220px minmax(0, 1fr);
  align-items: center;
}

.rcjz-filters .log-combo {
  width: 100%;
}

.rcjz-filters .log-combo .form-select {
  width: 92px;
}

.rcjz-selects {
  grid-column: 2 / 4;
  display: flex;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.rcjz-selects .btn {
  margin-left: auto;
  flex: none;
}

.rcjz-status {
  flex: none;
  width: 8.5rem;
}

.rcjz-filter-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.rcjz-filter-actions .attach-add {
  margin-left: 0;
}

.rcjz-dates {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.rcjz-dates .form-control {
  min-width: 0;
}

.rcjz-dash {
  color: #606266;
  font-size: 12px;
}

.rcjz-page .log-table-wrap {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.rcjz-page .rcjz-scroll {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.rcjz-page .rcjz-foot-scroll {
  flex: none;
  overflow: hidden;
  background: #f5f7fa;
}

.rcjz-page .rcjz-scroll .erp-grid {
  width: max-content;
  min-width: 100%;
  height: 100%;
  table-layout: auto;
}

.rcjz-page .rcjz-foot-grid {
  width: max-content;
  min-width: 100%;
  height: auto;
  table-layout: fixed;
}

.rcjz-page .erp-grid thead th {
  padding: 0 4px;
  background: #f4f4f5;
  color: #323539;
  text-align: center;
}

.rcjz-page .erp-grid tbody td {
  padding: 0 4px;
  color: #555;
  text-align: left;
}

.rcjz-page .erp-grid tbody td.rcjz-check,
.rcjz-page .erp-grid tbody td.rcjz-actions,
.rcjz-page .erp-grid tbody td.rcjz-status {
  text-align: center;
}

.rcjz-page .erp-grid tbody tr:nth-child(even):not(.rcjz-spacer) > td {
  background: color-mix(in srgb, #f4f4f5 55%, #fff);
}

.rcjz-page .erp-grid tr.rcjz-spacer td {
  height: 100%;
  padding: 0;
  border-color: transparent;
  background: #fff;
}

.rcjz-page .rcjz-check,
.rcjz-page .rcjz-actions,
.rcjz-page .rcjz-sticky {
  position: sticky;
  z-index: 2;
  background: #fff;
}

.rcjz-page .erp-grid tbody tr:nth-child(even):not(.rcjz-spacer) > td.rcjz-check,
.rcjz-page .erp-grid tbody tr:nth-child(even):not(.rcjz-spacer) > td.rcjz-actions,
.rcjz-page .erp-grid tbody tr:nth-child(even):not(.rcjz-spacer) > td.rcjz-sticky {
  background: color-mix(in srgb, #f4f4f5 55%, #fff);
}

.rcjz-page .erp-grid thead th.rcjz-check,
.rcjz-page .erp-grid thead th.rcjz-actions,
.rcjz-page .erp-grid thead th.rcjz-sticky {
  z-index: 5;
  background: #f4f4f5;
}

.rcjz-page .erp-grid thead th.rcjz-actions {
  color: #0000ff;
}

.rcjz-page .rcjz-check,
.rcjz-page .rcjz-actions,
.rcjz-page .rcjz-status {
  text-align: center;
}

.rcjz-page .rcjz-check {
  left: 0;
  width: 26px;
  min-width: 26px;
  padding: 0;
}

.rcjz-page .rcjz-check .search-module-chk__box {
  margin: 0;
  vertical-align: middle;
}

.rcjz-page .rcjz-actions {
  left: 26px;
  width: 48px;
  min-width: 48px;
  text-align: center;
}

.rcjz-page .rcjz-sticky--date {
  left: 74px;
  width: 100px;
  min-width: 100px;
}

.rcjz-page .rcjz-sticky--type {
  left: 174px;
  width: 100px;
  min-width: 100px;
  box-shadow: 4px 0 4px -4px rgb(0 0 0 / 12%);
}

.rcjz-page .erp-grid tfoot td {
  background: #f5f7fa;
  padding: 0 4px;
  font-weight: 600;
  text-align: left;
}

.rcjz-page .erp-grid tfoot td.rcjz-check,
.rcjz-page .erp-grid tfoot td.rcjz-actions,
.rcjz-page .erp-grid tfoot td.rcjz-sticky {
  z-index: 4;
  background: #f5f7fa;
}

.rcjz-page .erp-grid td.rcjz-in,
.rcjz-page .erp-grid td.rcjz-in .rcjz-check-select,
.rcjz-page .erp-grid tfoot td.rcjz-in {
  color: green;
}

.rcjz-page .erp-grid td.rcjz-out,
.rcjz-page .erp-grid td.rcjz-out .rcjz-check-select,
.rcjz-page .erp-grid tfoot td.rcjz-out {
  color: red;
}

.rcjz-check-select {
  width: 100%;
  height: 22px;
  padding: 0 2px;
  border: 0;
  background: transparent;
  font-size: 12px;
  line-height: 22px;
  color: inherit;
}

.rcjz-page .search-module-panel__pager-btn--green,
.rcjz-page .search-module-panel__pager-btn--green:hover {
  color: #393;
}

.rcjz-page .search-module-panel__pager-btn--orange,
.rcjz-page .search-module-panel__pager-btn--orange:hover {
  color: #f60;
}

.rcjz-page .search-module-panel__pager-btn:disabled {
  cursor: default;
  opacity: 0.6;
}

.jiagong-filters {
  display: grid;
  grid-template-columns: 18rem max-content 220px minmax(0, 1fr);
  column-gap: 8px;
  row-gap: 8px;
  align-items: center;
}

.jiagong-filters .jg-combo {
  width: 100%;
  max-width: none;
}

.jiagong-filters .form-control,
.jiagong-filters .form-select,
.jiagong-filters .btn {
  height: 32px;
}

.jiagong-filters .jg-selects {
  grid-column: 2 / 4;
  display: flex;
  gap: 8px;
  min-width: 0;
}

.jiagong-filters .jg-selects .form-select {
  flex: 1 1 0;
  width: auto;
  min-width: 0;
}

.jiagong-filters .jg-filter-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.jiagong-filters .jg-filter-actions .attach-add {
  margin-left: 0;
}

.jiagong-filters .jg-dates {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.jiagong-filters .jg-dates .form-control {
  width: 132px;
}

.jiagong-filters .jg-dash {
  color: #606266;
  font-size: 12px;
}

.jiagong-page .jg-status {
  width: 100%;
  min-width: 72px;
  height: 22px;
  padding: 0 2px;
  border: 0;
  background: transparent;
  font-size: 12px;
  line-height: 22px;
  text-align: center;
  text-align-last: center;
  cursor: pointer;
}

.jiagong-page .jg-status--red {
  color: red;
}

.jiagong-page .jg-status--blue {
  color: #0068cf;
}

.jiagong-page .jg-status-text--red {
  color: red;
}

.jiagong-page .jg-status-text--blue {
  color: #0068cf;
}

.jiagong-page .erp-grid tfoot td {
  font-weight: 600;
  line-height: 25px;
  background: #f5f7fa;
}

.jiagong-page .erp-grid tfoot td.jg-foot-loss {
  color: red;
}

.jiagong-page .erp-grid tfoot td.jg-foot-amount {
  color: #0000ff;
}

.jiagong-page .search-module-panel__pager-btn--orange,
.jiagong-page .search-module-panel__pager-btn--orange:hover {
  color: #f60;
}

.jiagong-page .search-module-panel__pager-btn--green,
.jiagong-page .search-module-panel__pager-btn--green:hover {
  color: #393;
}

.jiagong-page .search-module-panel__pager-btn--zi,
.jiagong-page .search-module-panel__pager-btn--zi:hover {
  color: #9832cb;
}

.jiagong-page .search-module-panel__pager-btn:disabled {
  cursor: default;
  opacity: 0.6;
}

.jg-form {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  row-gap: 8px;
}

.jg-form > label {
  margin: 0;
  color: #303133;
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.jg-form > label.is-danger {
  color: #f56c6c;
}

.jg-form .form-control,
.jg-form .form-select,
.jg-form .jg-proc {
  width: 100%;
  min-width: 0;
}

.jinhuo-page .search-module-panel .erp-grid {
  width: max-content;
  min-width: 100%;
  table-layout: auto;
}

.jinhuo-page .jh-check,
.jinhuo-page .jh-actions,
.jinhuo-page .jh-sticky {
  position: sticky;
  z-index: 2;
  background: #fff;
}

.jinhuo-page .erp-grid thead th.jh-check,
.jinhuo-page .erp-grid thead th.jh-actions,
.jinhuo-page .erp-grid thead th.jh-sticky {
  z-index: 5;
  background: #cae4b6;
}

.jinhuo-page .erp-grid thead th.jh-actions {
  color: #0000ff;
}

.jinhuo-page .jh-check {
  left: 0;
  width: 26px;
  min-width: 26px;
  text-align: center;
}

.jinhuo-page .jh-actions {
  left: 26px;
  width: 56px;
  min-width: 56px;
  text-align: center;
}

.jinhuo-page .jh-sticky--date {
  left: 82px;
  width: 100px;
  min-width: 100px;
}

.jinhuo-page .jh-sticky--model {
  left: 182px;
  width: 150px;
  min-width: 150px;
  box-shadow: 4px 0 4px -4px rgb(0 0 0 / 12%);
}

.jinhuo-page .erp-grid tfoot td {
  position: sticky;
  bottom: 0;
  z-index: 1;
  background: #f5f7fa;
  font-weight: 600;
}

.jinhuo-page .erp-grid tfoot td.jh-check,
.jinhuo-page .erp-grid tfoot td.jh-actions,
.jinhuo-page .erp-grid tfoot td.jh-sticky {
  z-index: 4;
  background: #f5f7fa;
}

.jinhuo-page .search-module-panel__pager-btn:disabled {
  cursor: default;
  opacity: 0.6;
}

.order-filters {
  display: grid;
  grid-template-columns: 18rem max-content 220px minmax(0, 1fr);
  column-gap: 8px;
  row-gap: 8px;
  align-items: center;
}

.order-filters .log-combo {
  width: 100%;
  max-width: none;
}

.order-filters .log-combo .form-select {
  width: 92px;
}

.order-filters .form-control,
.order-filters .form-select,
.order-filters .btn {
  height: 32px;
}

.order-selects {
  grid-column: 2 / 4;
  display: flex;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.order-selects .btn {
  margin-left: auto;
  flex: none;
}

.order-status {
  flex: none;
  width: 8.5rem;
}

.order-filter-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.order-filter-actions .attach-add {
  margin-left: 0;
}

.order-dates {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.order-dates .form-control {
  min-width: 0;
}

.order-dash {
  color: #606266;
  font-size: 12px;
}

.virtual-filters {
  flex-wrap: wrap;
}

.virtual-filters .log-combo {
  width: 18rem;
  max-width: 100%;
}

.virtual-filters .log-combo .form-select {
  width: 92px;
}

.virtual-filters .form-control,
.virtual-filters .form-select,
.virtual-filters .btn {
  height: 32px;
}

.virtual-trade:not(:has(.sales-form-page)) {
  display: none;
}

.virtual-page .search-module-panel .erp-grid {
  width: max-content;
  min-width: 100%;
  table-layout: auto;
}

.virtual-page .virtual-check,
.virtual-page .virtual-actions {
  position: sticky;
  z-index: 2;
  background: #fff;
}

.virtual-page .erp-grid thead th.virtual-check,
.virtual-page .erp-grid thead th.virtual-actions {
  z-index: 5;
}

.virtual-page .erp-grid thead th.virtual-actions {
  color: #0000ff;
}

.virtual-page .virtual-check {
  left: 0;
  width: 26px;
  min-width: 26px;
  text-align: center;
}

.virtual-page .virtual-actions {
  left: 26px;
  text-align: center;
}

.order-page .search-module-panel .erp-grid {
  width: max-content;
  min-width: 100%;
  table-layout: auto;
}

.order-page .order-check,
.order-page .order-actions {
  position: sticky;
  z-index: 2;
  background: #fff;
}

.order-page .erp-grid thead th.order-check,
.order-page .erp-grid thead th.order-actions {
  z-index: 5;
}

.order-page .erp-grid thead th.order-actions {
  color: #0000ff;
}

.order-page .order-check {
  left: 0;
  width: 26px;
  min-width: 26px;
  text-align: center;
}

.order-page .order-actions {
  left: 26px;
  text-align: center;
}

.order-page .order-cell-status {
  width: 100%;
  height: 22px;
  padding: 0 2px;
  border: 0;
  background: transparent;
  font-size: 12px;
  line-height: 22px;
  text-align: center;
  text-align-last: center;
  cursor: pointer;
}

.order-page .order-cell-status.is-red {
  color: red;
}

.order-page .order-cell-status.is-green {
  color: green;
}

.order-page .erp-grid tfoot td {
  position: sticky;
  bottom: 0;
  z-index: 1;
  background: #f5f7fa;
  font-weight: 600;
  line-height: 25px;
}

.order-page .erp-grid tfoot td.order-check,
.order-page .erp-grid tfoot td.order-actions {
  z-index: 4;
  background: #f5f7fa;
}

.order-page .erp-grid tfoot td.order-amount {
  color: #0000ff;
}

.order-page .search-module-panel__pager-btn--green,
.order-page .search-module-panel__pager-btn--green:hover {
  color: #393;
}

.order-page .search-module-panel__pager-btn--zi,
.order-page .search-module-panel__pager-btn--zi:hover {
  color: #9832cb;
}

.order-page .search-module-panel__pager-btn:disabled {
  cursor: default;
  opacity: 0.6;
}

.rfq-filters {
  display: grid;
  grid-template-columns: 18rem max-content 220px minmax(0, 1fr);
  column-gap: 8px;
  row-gap: 8px;
  align-items: center;
}

.rfq-filters .log-combo {
  width: 100%;
  max-width: none;
}

.rfq-filters .log-combo .form-select {
  width: 92px;
}

.rfq-filters .form-control,
.rfq-filters .form-select,
.rfq-filters .btn {
  height: 32px;
}

.rfq-selects {
  grid-column: 2 / 4;
  display: flex;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.rfq-selects .btn {
  margin-left: auto;
  flex: none;
}

.rfq-filter-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.rfq-filter-actions .attach-add {
  margin-left: 0;
}

.rfq-dates {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.rfq-dates .form-control {
  min-width: 0;
}

.rfq-trade:not(:has(.sales-form-page)) {
  display: none;
}

.rfq-page .search-module-panel .erp-grid {
  width: max-content;
  min-width: 100%;
  table-layout: auto;
}

.rfq-page .rfq-check,
.rfq-page .rfq-actions {
  position: sticky;
  z-index: 2;
  background: #fff;
}

.rfq-page .erp-grid thead th.rfq-check,
.rfq-page .erp-grid thead th.rfq-actions {
  z-index: 5;
}

.rfq-page .erp-grid thead th.rfq-actions {
  color: #0000ff;
}

.rfq-page .rfq-check {
  left: 0;
  width: 26px;
  min-width: 26px;
  text-align: center;
}

.rfq-page .rfq-actions {
  left: 26px;
  text-align: center;
}

.rfq-page .search-module-panel__pager-btn:disabled {
  cursor: default;
  opacity: 0.6;
}

.stock-filters {
  position: relative;
  display: grid;
  grid-template-columns: minmax(280px, 360px) 104px 88px 96px auto;
  column-gap: 8px;
  row-gap: 8px;
  align-items: center;
  padding-right: 52px;
}

.stock-filters .form-control,
.stock-filters .form-select,
.stock-filters .btn {
  height: 32px;
}

.stock-keyword {
  display: flex;
  min-width: 0;
}

.stock-keyword .form-select:first-child,
.stock-keyword .form-select:last-child {
  flex: none;
  width: 84px;
}

.stock-keyword .form-select:first-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.stock-keyword .form-control {
  flex: 1;
  min-width: 0;
  margin-left: -1px;
  border-radius: 0;
}

.stock-keyword .form-select:last-child {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.stock-filters .stock-query {
  justify-self: start;
}

.stock-filters .attach-add {
  position: absolute;
  top: 8px;
  right: 12px;
  margin-left: 0;
}

.stock-filters select.is-on {
  color: red;
}

.stock-date-bar {
  display: flex;
  grid-column: 2 / -1;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.stock-date-type {
  flex: none;
  width: 96px;
}

.stock-date-bar .form-control {
  width: 132px;
}

.stock-lists {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.stock-page .search-module-panel {
  flex: none;
}

.stock-page .log-table-wrap {
  flex: none;
  overflow-x: auto;
  overflow-y: hidden;
}

.stock-page .log-table-wrap::-webkit-scrollbar {
  height: 8px;
}

.stock-page .log-table-wrap::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 4px;
}

.stock-page .search-module-panel .erp-grid {
  width: max-content;
  min-width: 100%;
}

.stock-page .stock-check,
.stock-page .stock-actions {
  position: sticky;
  z-index: 2;
  background: #fff;
}

.stock-page .erp-grid thead th.stock-check,
.stock-page .erp-grid thead th.stock-actions {
  z-index: 5;
}

.stock-page .erp-grid thead th.stock-actions {
  color: #0000ff;
}

.stock-page .stock-check {
  left: 0;
  width: 26px;
  min-width: 26px;
  text-align: center;
}

.stock-page .stock-actions {
  left: 26px;
  width: 96px;
  min-width: 96px;
  text-align: center;
}

.stock-page .erp-grid tbody tr.is-current > td,
.stock-page .erp-grid tbody tr.is-current:hover > td {
  background: #ecf5ff !important;
}

.stock-page .stock-cell-status,
.stock-page .stock-check-text {
  font-size: 12px;
}

.stock-page .stock-cell-status {
  width: 100%;
  height: 22px;
  padding: 0 2px;
  border: 0;
  background: transparent;
  line-height: 22px;
  text-align: center;
  text-align-last: center;
  cursor: pointer;
}

.stock-page .stock-cell-status.is-red,
.stock-page .stock-check-text.is-red {
  color: red;
}

.stock-page .stock-cell-status.is-green,
.stock-page .stock-check-text.is-green {
  color: green;
}

.stock-pager {
  align-items: center;
  min-height: 58px;
}

.stock-pager-lead {
  display: flex;
  flex-direction: column;
  gap: 2px;
  align-items: flex-start;
  min-width: 0;
}

.stock-selected,
.stock-qty {
  font-size: 12px;
  line-height: 20px;
  color: #909399;
  white-space: nowrap;
}

.stock-selected b,
.stock-qty b {
  margin-left: 4px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: #0068cf;
}

.stock-qty b {
  color: #303133;
}

.stock-pager-ops {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 10px;
  align-items: center;
  min-height: 22px;
}

.stock-totals {
  display: flex;
  flex: none;
  align-items: center;
  font-size: 12px;
  line-height: 20px;
  color: #909399;
  white-space: nowrap;
}

.stock-totals span:not(:last-child)::after {
  margin: 0 10px;
  color: #dcdfe6;
  content: "|";
}

.stock-totals b {
  margin-left: 4px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

.stock-totals b.is-payed {
  color: #393;
}

.stock-totals b.is-unpay {
  color: red;
}

.stock-totals b.is-amount {
  color: #0068cf;
}

.sales-lines__tools {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-left: auto;
}

.sales-lines__tools .sales-lines__dec {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  margin: 0;
  color: green;
  font-size: 13px;
}

.trade-doc-files {
  margin-top: 12px;
  font-size: 12px;
}

.trade-doc-files__head,
.trade-doc-files__row {
  display: flex;
  gap: 12px;
  align-items: center;
  line-height: 24px;
}

.trade-doc-files__empty {
  margin: 4px 0 0;
  color: #909399;
}

.trade-doc-files button,
.trade-doc-files__upload {
  padding: 0;
  border: 0;
  background: none;
  color: #0068cf;
  font-size: 12px;
  cursor: pointer;
}

.trade-doc-files__row span {
  color: #909399;
}

.trade-doc-files__upload input {
  display: none;
}

.jh-form-tip {
  margin: 0 0 10px;
  color: #409eff;
  font-size: 12px;
}

.attach-form label.is-link {
  color: #409eff;
}

.ledger-form {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  row-gap: 6px;
}

.ledger-form label {
  margin: 0;
  color: #909399;
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.ledger-form label.is-required::before {
  color: #f56c6c;
  content: "*";
  margin-right: 2px;
}

.ledger-form .form-control {
  width: 100%;
  min-width: 0;
}

.company-lib-switch {
  display: flex;
  flex: none;
}

.company-lib-view:not([hidden]) {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.company-lib-field {
  width: 7rem;
}

.company-lib-form label.is-row {
  grid-column: 1;
}

.company-lib-form textarea.form-control {
  height: auto;
}

.attach-pick {
  display: flex;
  align-items: stretch;
  min-width: 0;
}

.attach-pick .form-control {
  flex: 1;
  min-width: 0;
  border-right: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.attach-pick-btn {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 32px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--tblr-border-color, #dadfe5);
  border-radius: 0 4px 4px 0;
  background: #f5f7fa;
  color: #909399;
  line-height: 1;
  cursor: pointer;
}

.attach-pick-btn svg {
  display: block;
}

.attach-pick-btn:hover {
  color: #409eff;
}

.attach-pick-list {
  max-height: 320px;
  overflow: auto;
}

.attach-pick-row {
  display: grid;
  grid-template-columns: 1.4fr 0.8fr 0.9fr 1.2fr;
  gap: 8px;
  width: 100%;
  padding: 6px 8px;
  border: 0;
  border-bottom: 1px solid #ebeef5;
  background: transparent;
  color: #303133;
  font-size: 12px;
  text-align: left;
  cursor: pointer;
}

.attach-pick-row:hover {
  background: #f5f7fa;
}

.attach-pick-tools {
  display: flex;
  gap: 8px;
  margin-bottom: 8px;
}

.supplier-keyword {
  width: 17rem;
}

.supplier-keyword .form-select {
  width: 72px;
}

.supplier-field {
  width: 7rem;
}

.bank-keyword,
.jiagonger-keyword {
  width: 16rem;
  max-width: 100%;
}

.bank-page .erp-grid {
  width: 100%;
}

.bank-page .erp-grid thead th {
  padding: 0 4px;
  background: #f4f4f5;
  color: #323539;
  text-align: center;
}

.bank-page .erp-grid tbody td {
  padding: 0 4px;
  text-align: left;
}

.bank-page .erp-grid tbody tr:nth-child(even) > td {
  background: color-mix(in srgb, #f4f4f5 55%, #fff);
}

.bank-page .erp-grid th.bank-check,
.bank-page .erp-grid td.bank-check,
.bank-page .erp-grid th.bank-actions,
.bank-page .erp-grid td.bank-actions {
  padding: 0;
  text-align: center;
}

.bank-page .bank-check .search-module-chk__box {
  margin: 0;
  vertical-align: middle;
}

.jiagonger-page .search-module-panel .erp-grid {
  width: max-content;
  min-width: 100%;
  table-layout: auto;
}

.jiagonger-form {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  row-gap: 6px;
}

.jiagonger-form label {
  margin: 0;
  color: #909399;
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.jiagonger-form label.is-required::before {
  color: #f56c6c;
  content: "*";
  margin-right: 2px;
}

.jiagonger-form .form-control {
  width: 100%;
  min-width: 0;
}

.supplier-danger {
  color: #f56c6c;
}

.supplier-form label.is-required::before {
  margin-right: 2px;
  color: #f56c6c;
  content: "*";
}

.supplier-form label.is-row {
  grid-column: 1;
}

.supplier-form .is-span2 {
  grid-column: span 3;
  min-width: 0;
}

.supplier-form .is-thirds {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
}

.supplier-export {
  display: flex;
  align-items: flex-start;
  min-height: 260px;
}

.supplier-export select {
  width: 130px;
  height: 260px;
  padding: 2px;
  font-size: 13px;
}

.supplier-export__xfer,
.supplier-export__order {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  width: 38px;
  padding-top: 72px;
}

.supplier-export__order {
  padding-top: 84px;
}

.supplier-export__xfer button,
.supplier-export__order button {
  width: 30px;
  height: 24px;
  padding: 0;
  font-size: 12px;
  line-height: 22px;
  cursor: pointer;
  background: #f5f7fa;
  border: 1px solid #dcdfe6;
  border-radius: 2px;
}

.supplier-lib__bar {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 10px;
}

.supplier-lib__bar .form-control {
  flex: 1;
  min-width: 0;
}

.supplier-lib__bar .form-select {
  flex: none;
  width: 112px;
}

.supplier-lib__table {
  max-height: 320px;
  overflow: auto;
  border: 1px solid #ebeef5;
  border-radius: 4px;
}

.supplier-lib__table .erp-grid tbody tr {
  cursor: pointer;
}

.supplier-lib__hint {
  margin: 8px 0 0;
  color: #909399;
  font-size: 12px;
}

.erp-self-log-op-tag {
  display: inline-block;
  max-width: 100%;
  padding: 0 6px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
  line-height: 18px;
  vertical-align: middle;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-self-log-op-tag--edit {
  background: #dbeafe;
  color: #0068cf;
}

.erp-self-log-op-tag--del {
  background: #fee2e2;
  color: #b91c1c;
}

.erp-self-log-op-tag--sale {
  background: #dcfce7;
  color: #15803d;
}

.erp-self-log-op-tag--default {
  background: #f4f4f5;
  color: #303133;
}

#page.container-fluid:has(.erp-pane:not([hidden]) .log-page),
#page.container-fluid:has(.erp-pane:not([hidden]) .hr-user-page),
#page.container-fluid:has(.erp-pane:not([hidden]) .bom-form-page),
#page.container-fluid:has(.search-page),
#page.container-fluid:has(.cross-site-page),
#page.container-fluid:has(.import-page) {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  padding: 0;
}

.erp-pane[data-path="/search"],
.erp-pane[data-path="/cross-site"],
.erp-pane[data-path="/import"],
.erp-pane[data-path="/attachment/log/self"]:not([hidden]),
.erp-pane[data-path="/attachment/log/tel"]:not([hidden]),
.erp-pane[data-path="/attachment/express"]:not([hidden]),
.erp-pane[data-path="/attachment/company"]:not([hidden]),
.erp-pane[data-path="/hr/company-lib"]:not([hidden]),
.erp-pane[data-path="/finance/ledger"]:not([hidden]),
.erp-pane[data-path="/finance/rcjz"]:not([hidden]),
.erp-pane[data-path="/finance/account"]:not([hidden]),
.erp-pane[data-path="/hr/user"]:not([hidden]),
.erp-pane[data-path="/hr/jiagonger"]:not([hidden]),
.erp-pane[data-path="/trade/order"]:not([hidden]),
.erp-pane[data-path="/trade/askprice"]:not([hidden]),
.erp-pane[data-path="/trade/rfq"]:not([hidden]),
.erp-pane[data-path="/trade/sales"]:not([hidden]),
.erp-pane[data-path="/trade/stock"]:not([hidden]),
.erp-pane[data-path="/trade/bom"]:not([hidden]),
.erp-pane[data-path="/trade/bom/form"]:not([hidden]),
.erp-pane[data-path="/inventory/sync"]:not([hidden]),
.erp-pane[data-path="/inventory/self"]:not([hidden]) {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}

.search-page {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  width: 100%;
}

.search-page__scroll {
  flex: 1;
  min-height: 0;
  overflow: auto;
  padding: 8px 8px 16px;
  background: #f2f3f5;
}

.search-page__scroll #search-result > .text-secondary,
.search-page__scroll #search-result > .text-danger {
  padding: 0 0 8px;
}

.search-module-panel {
  overflow: hidden;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.search-module-panel .erp-grid:not(.erp-grid--photo) {
  table-layout: fixed;
}

.search-module-panel .erp-grid:not(.erp-grid--photo) th:not(.erp-grid__check):not(.erp-grid__actions),
.search-module-panel .erp-grid:not(.erp-grid--photo) td:not(.erp-grid__check):not(.erp-grid__actions) {
  overflow: hidden;
  text-overflow: ellipsis;
}

.askprice-filters {
  flex-direction: column;
  align-items: stretch;
  border-radius: 8px;
}

.askprice-line {
  display: grid;
  grid-template-columns: 18rem max-content 88px 220px minmax(max-content, 1fr);
  column-gap: 8px;
  align-items: center;
}

.askprice-line-dates {
  grid-template-columns: 18rem max-content 220px minmax(0, 1fr);
}

.askprice-filters .log-combo {
  width: 100%;
  max-width: none;
}

.askprice-filters .log-combo .form-select {
  width: 92px;
}

.askprice-filters .form-control,
.askprice-filters .form-select,
.askprice-filters .btn {
  height: 32px;
  border-color: #dcdfe6;
  color: #606266;
  font-size: 14px;
}

.askprice-filters .form-control::placeholder {
  color: #a8abb2;
}

.askprice-filters .form-control:focus,
.askprice-filters .form-select:focus {
  border-color: #409eff;
  box-shadow: none;
}

.askprice-filters .btn-primary {
  padding: 0 15px;
  border-color: #409eff;
  background: #409eff;
  color: #fff;
}

.askprice-filters .btn-primary:hover {
  border-color: #66b1ff;
  background: #66b1ff;
  color: #fff;
}

.askprice-filters .log-check {
  gap: 8px;
  height: 32px;
  color: #606266;
  font-size: 14px;
}

.askprice-filters .log-check input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #409eff;
}

.askprice-line-dates > .askprice-date-toggle {
  gap: 4px;
  height: auto;
  color: #303133;
  font-size: 12px;
}

.askprice-line-dates > .askprice-date-toggle input {
  width: auto;
  height: auto;
}

.askprice-line-dates > .log-check:last-child {
  justify-self: start;
}

.askprice-rank {
  width: 100%;
}

.askprice-buyer {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.askprice-buyer .form-select {
  flex: none;
  width: 8.5rem;
}

.askprice-buyer .btn {
  margin-left: auto;
  flex: none;
}

.askprice-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.askprice-actions .attach-add {
  margin-left: 0;
}

.askprice-dates {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 220px;
  max-width: 220px;
  height: 32px;
  padding: 0 8px 0 4px;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #fff;
  color: #a8abb2;
}

.askprice-dates:has(input:disabled) {
  background: #f5f7fa;
}

.askprice-dates .form-control {
  flex: 1 1 0;
  width: 0;
  min-width: 0;
  height: 30px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: #606266;
  font-size: 14px;
}

.askprice-dates .form-control:disabled {
  color: #a8abb2;
  background: transparent;
}

.askprice-dates input[type="date"]::-webkit-datetime-edit {
  padding: 0;
}

.askprice-dates input[type="date"]::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
}

.askprice-dates__sep {
  flex: none;
  padding: 0 2px;
  color: #303133;
  font-size: 14px;
  line-height: 32px;
}

.askprice-dates__icon {
  flex: none;
  width: 14px;
  height: 14px;
  margin-left: 4px;
}

.askprice-lists {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding-bottom: 8px;
}

.askprice-trade-form:not(:has(.sales-form-page)) {
  display: none;
}

.askprice-page .search-module-panel {
  flex: none;
}

.askprice-page .search-module-panel .log-table-wrap {
  flex: none;
  overflow-x: auto;
  overflow-y: hidden;
}

.askprice-page .search-module-panel .log-table-wrap::-webkit-scrollbar {
  height: 8px;
}

.askprice-page .search-module-panel .log-table-wrap::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 4px;
}

.askprice-page .ask-check,
.askprice-page .ask-actions {
  position: sticky;
  z-index: 2;
  background: #fff;
}

.askprice-page .erp-grid thead th.ask-check,
.askprice-page .erp-grid thead th.ask-actions {
  z-index: 5;
}

.askprice-page .erp-grid thead th.ask-actions {
  color: #0000ff;
}

.askprice-page .ask-check {
  left: 0;
  width: 26px;
  min-width: 26px;
  text-align: center;
}

.askprice-page .ask-actions {
  left: 26px;
  text-align: center;
}

.askprice-page .search-module-panel__pager-btn--zi,
.askprice-page .search-module-panel__pager-btn--zi:hover {
  color: #9832cb;
}

.askprice-page .search-module-panel__pager-btn:disabled {
  cursor: default;
  opacity: 0.6;
}

.erp-cell-tip {
  position: fixed;
  z-index: 3000;
  max-width: 480px;
  padding: 6px 8px;
  border-radius: 4px;
  background: #303133;
  color: #fff;
  font-size: 12px;
  line-height: 18px;
  overflow-wrap: anywhere;
  pointer-events: none;
  white-space: normal;
}

.erp-module + .erp-module {
  margin-top: 8px;
}

.search-module-chk-bar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin: 0;
  padding: 8px;
  background: var(--tblr-bg-surface, #fff);
}

.search-module-chk {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 20px;
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.search-module-chk__group {
  display: flex;
  align-items: center;
  margin: 0;
  cursor: pointer;
}

span.search-module-chk__group {
  cursor: default;
}

.search-module-chk__box {
  appearance: none;
  width: 14px;
  height: 14px;
  margin: 0 2px 0 0;
  border: 1px solid #dcdfe6;
  border-radius: 2px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  flex: none;
  cursor: pointer;
}

.search-module-chk__box:checked {
  border-color: #409eff;
  background-color: #409eff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3.2 7.1 5.7 9.6 10.8 4.4' fill='none' stroke='%23fff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.search-module-chk__box:focus-visible {
  outline: 2px solid rgba(64, 158, 255, 0.35);
  outline-offset: 1px;
}

.search-module-chk__label {
  margin-right: 2px;
  color: #303133;
  font-size: 13px;
  line-height: 20px;
  white-space: nowrap;
}

.search-module-chk__label--add {
  color: #0068cf;
}

button.search-module-chk__label {
  height: 20px;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: inherit;
  font-size: 13px;
  line-height: 20px;
  cursor: pointer;
}

.search-module-chk__label--add:hover {
  color: #990000;
}

.search-module-chk__count {
  min-width: 12px;
  color: #f56c6c;
  font-size: 13px;
  line-height: 20px;
}

.search-module-chk__error:empty {
  display: none;
}

.search-module-chk__error {
  color: #f56c6c;
  font-size: 13px;
  line-height: 20px;
  white-space: nowrap;
}

.search-module-chk__quote {
  flex: none;
  margin-left: 12px;
}

.search-module-chk__box:disabled {
  cursor: default;
  opacity: 0.6;
}

.quote-template__hint {
  margin: 0 0 12px;
  color: #303133;
  font-size: 13px;
  line-height: 20px;
}

.quote-template__fields {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.quote-template__row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  align-items: center;
}

.quote-template__check,
.quote-template__modes label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  color: #303133;
  font-size: 13px;
  line-height: 20px;
}

.quote-template__suffix {
  color: #909399;
  font-size: 13px;
}

.quote-template__note {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 14px;
  color: #303133;
  font-size: 13px;
}

.quote-template__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.quote-template__tag {
  height: 28px;
  padding: 0 10px;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #fff;
  color: #606266;
  font-size: 13px;
  line-height: 26px;
  cursor: pointer;
}

.quote-template__tag.is-on {
  border-color: #409eff;
  background: #ecf5ff;
  color: #409eff;
}

.sales-return__head {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}

.sales-return__type {
  width: 160px;
}

.sales-return__grid {
  display: grid;
  grid-template-columns: 72px 1fr 72px 1fr 72px 1fr;
  gap: 8px 6px;
  align-items: center;
}

.sales-return__accent {
  color: #f56c6c;
}

.sales-return__grid input[type="date"] {
  width: 100%;
}

.search-module-panel__pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  padding: 4px 8px;
  border-top: 1px solid #e4e7ed;
  font-size: 12px;
  color: #606266;
}

.search-module-panel__pager-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.search-module-panel__pager-btn {
  display: inline-flex;
  align-items: center;
  min-width: 2em;
  padding: 0 4px;
  border: 0;
  background: none;
  color: #008000;
  font-size: 12px;
  font-weight: 400;
  line-height: 20px;
  white-space: nowrap;
  cursor: pointer;
}

.search-module-panel__pager-btn:hover {
  color: #00a000;
}

.search-module-panel__pager-btn--refresh,
.search-module-panel__pager-btn--refresh:hover {
  color: #1677ff;
}

.search-module-panel__pager-btn--blue,
.search-module-panel__pager-btn--blue:hover {
  color: #0068cf;
}

.search-module-panel__pager-btn--red,
.search-module-panel__pager-btn--red:hover {
  color: red;
}

.erp-pagination {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  color: #606266;
  font-size: 12px;
  white-space: nowrap;
}

.erp-pagination__total {
  margin-right: 8px;
  font-weight: 400;
}

.erp-pagination__sizes {
  width: 80px;
  min-width: 80px;
  max-width: 80px;
  height: 20px;
  margin-right: 8px;
  padding: 0 16px 0 6px;
  border: 1px solid #dcdfe6;
  border-radius: 2px;
  background: #fff;
  color: #606266;
  font-size: 12px;
  line-height: 18px;
  text-align: center;
  text-align-last: center;
}

.erp-pagination__btn,
.erp-pagination__pager button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  margin: 0 4px;
  padding: 0 4px;
  border: 0;
  border-radius: 2px;
  background: #f0f2f5;
  color: #606266;
  font-size: 12px;
  line-height: 24px;
}

.erp-pagination__pager {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}

.erp-pagination__pager button.is-active {
  background: #337ecc;
  color: #fff;
}

.erp-pagination__btn:disabled,
.erp-pagination__pager button:disabled {
  color: #a8abb2;
  cursor: not-allowed;
}

.erp-pagination__btn:not(:disabled):hover,
.erp-pagination__pager button:not(:disabled):not(.is-active):hover {
  color: #337ecc;
}


.erp-grid .erp-model-cell {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 25px;
  line-height: 25px;
  overflow: hidden;
}

.erp-grid .erp-model-cell__text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-grid .erp-model-cell__copy {
  display: inline-flex;
  visibility: hidden;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-left: 4px;
  padding: 0;
  color: #606266;
  cursor: pointer;
  background: #fff;
  border: 1px solid #dcdfe6;
  border-radius: 2px;
  pointer-events: none;
}

.erp-grid td:has(.erp-model-cell):hover .erp-model-cell__copy {
  visibility: visible;
  pointer-events: auto;
}

.erp-grid .erp-model-cell__copy:hover {
  color: #409eff;
  border-color: #409eff;
}

.erp-grid mark {
  padding: 0;
  color: #f60;
  font-weight: 400;
  background: transparent;
}

.erp-toast-host {
  position: fixed;
  top: 16px;
  left: 50%;
  z-index: 4100;
  display: flex;
  flex-direction: column;
  gap: 8px;
  transform: translateX(-50%);
  pointer-events: none;
}

.erp-toast {
  min-width: 220px;
  padding: 10px 16px;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0 8px rgb(0 0 0 / 12%);
  color: #606266;
  font-size: 14px;
  line-height: 1.4;
}

.erp-toast--success {
  color: #67c23a;
  background: #f0f9eb;
  border: 1px solid #e1f3d8;
}

.erp-toast--warning {
  color: #e6a23c;
  background: #fdf6ec;
  border: 1px solid #faecd8;
}

.erp-toast--error {
  color: #f56c6c;
  background: #fef0f0;
  border: 1px solid #fde2e2;
}

.erp-dialog-mask {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(0 0 0 / 50%);
}

.erp-dialog {
  display: flex;
  flex-direction: column;
  max-width: calc(100vw - 32px);
  max-height: 90vh;
  overflow: hidden;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 12px 32px rgb(0 0 0 / 18%);
}

.erp-dialog__header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  padding: 16px 16px 10px;
}

.erp-dialog__title {
  color: #303133;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
}

.erp-dialog__title-row {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.erp-dialog__close {
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  background: none;
  color: #909399;
  font-size: 20px;
  line-height: 24px;
  cursor: pointer;
}

.erp-dialog__close:hover {
  color: #006be6;
}

.erp-dialog__body {
  min-height: 0;
  padding: 0 16px 8px;
  overflow: auto;
}

.erp-dialog__footer {
  display: flex;
  flex-shrink: 0;
  gap: 12px;
  align-items: center;
  justify-content: flex-end;
  padding: 12px 16px 16px;
}

.erp-dialog__footer:empty {
  display: none;
  padding: 0;
}

.erp-dialog-btn {
  height: 32px;
  padding: 0 15px;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #fff;
  color: #606266;
  font-size: 14px;
  line-height: 30px;
  cursor: pointer;
}

.erp-dialog-btn:hover {
  color: #006be6;
  border-color: #c6e2ff;
  background: #ecf5ff;
}

.erp-dialog-btn--primary {
  border-color: #006be6;
  background: #006be6;
  color: #fff;
}

.erp-dialog-btn--primary:hover {
  border-color: #4e99ef;
  background: #4e99ef;
  color: #fff;
}

.erp-dialog-btn--primary:disabled,
.erp-dialog-btn:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

.erp-dialog-btn--danger {
  border-color: #f56c6c;
  background: #f56c6c;
  color: #fff;
}

.erp-dialog-btn--danger:hover {
  border-color: #f78989;
  background: #f78989;
  color: #fff;
}

.erp-dialog-loading,
.erp-confirm__msg {
  padding: 24px 0 16px;
  color: #606266;
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
}

.erp-confirm__msg {
  text-align: left;
}

.search-export-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  margin-bottom: 10px;
  padding: 6px 8px;
  font-size: 12px;
  background: #f5f7fa;
  border-radius: 4px;
}

.search-export-presets__label {
  color: #909399;
}

.search-export-preset {
  padding: 0;
  border: 0;
  background: none;
  color: #006be6;
  cursor: pointer;
}

.search-export-preset:hover {
  text-decoration: underline;
}

.search-export-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 36px minmax(0, 1fr) 36px;
  gap: 8px;
  height: 320px;
}

.search-export-list {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
}

.search-export-list__head {
  display: flex;
  justify-content: space-between;
  height: 28px;
  padding: 0 8px;
  font-size: 12px;
  line-height: 28px;
  background: #f5f7fa;
  border-bottom: 1px solid #e4e7ed;
}

.search-export-list__head span {
  color: #909399;
}

.search-export-list__body {
  flex: 1;
  margin: 0;
  padding: 2px 0;
  overflow: auto;
  list-style: none;
}

.search-export-item {
  display: flex;
  gap: 6px;
  align-items: center;
  height: 26px;
  padding: 0 8px;
  overflow: hidden;
  font-size: 13px;
  line-height: 26px;
  cursor: pointer;
  user-select: none;
}

.search-export-item em {
  flex: none;
  width: 16px;
  font-style: normal;
  font-size: 12px;
  color: #909399;
  text-align: right;
}

.search-export-item:hover {
  background: #f5f7fa;
}

.search-export-item.is-active {
  color: #006be6;
  background: #e8f3fe;
}

.search-export-empty {
  padding: 24px 8px;
  font-size: 12px;
  line-height: 1.5;
  color: #909399;
  text-align: center;
  list-style: none;
}

.search-export-actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  justify-content: center;
}

.search-export-move {
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #fff;
  color: #606266;
  font-size: 14px;
  line-height: 26px;
  cursor: pointer;
}

.search-export-move:hover:not(:disabled) {
  color: #006be6;
  border-color: #c6e2ff;
  background: #ecf5ff;
}

.search-export-move:disabled {
  color: #c0c4cc;
  cursor: not-allowed;
}

.search-export-hint {
  margin: 8px 0 0;
  font-size: 12px;
  line-height: 1.4;
  color: #909399;
}

.search-col-config__bar {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 12px;
}

.search-col-config__label {
  font-size: 13px;
  color: #303133;
}

.search-col-config-picker {
  position: relative;
  min-width: 0;
}

.search-col-config-picker--title {
  width: 180px;
}

.search-col-config-picker__btn {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  width: 100%;
  min-width: 0;
  height: 24px;
  padding: 0 8px;
  overflow: hidden;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #fff;
  color: #606266;
  font-size: 12px;
  line-height: 22px;
  text-align: left;
  cursor: pointer;
}

.search-col-config-picker--title .search-col-config-picker__btn {
  height: 28px;
  line-height: 26px;
}

.search-col-config-picker__btn span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.search-col-config-picker__btn--fill {
  color: #303133;
}

.search-col-config-picker__menu {
  position: fixed;
  z-index: 3200;
  max-height: 260px;
  padding: 4px 0;
  overflow: auto;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  box-shadow: 0 6px 16px rgb(0 0 0 / 12%);
}

.search-col-config-option {
  display: flex;
  gap: 6px;
  align-items: center;
  width: 100%;
  padding: 2px 8px;
  border: 0;
  background: none;
  color: inherit;
  font-size: 12px;
  line-height: 22px;
  text-align: left;
  cursor: pointer;
}

.search-col-config-option:hover,
.search-col-config-option.is-active {
  background: #f5f7fa;
}

.search-col-config-option--fill {
  width: calc(100% - 8px);
  margin: 2px 4px;
  padding: 2px 6px;
  border-radius: 2px;
}

.search-col-config-option--fill:hover,
.search-col-config-option--fill.is-active {
  background-image: linear-gradient(rgb(0 0 0 / 6%), rgb(0 0 0 / 6%));
}

.search-col-config-swatch {
  display: inline-block;
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  border: 1px solid rgb(0 0 0 / 18%);
  border-radius: 2px;
}

.search-col-config__panes {
  display: flex;
  gap: 12px;
  height: min(420px, calc(100vh - 240px));
}

.search-col-config__order,
.search-col-config__editor {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
}

.search-col-config__order {
  width: 200px;
  flex-shrink: 0;
}

.search-col-config__editor {
  flex: 1;
  min-width: 0;
}

.search-col-config__pane-title,
.search-col-config-head {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  height: 36px;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 500;
  background: #f5f7fa;
  border-bottom: 1px solid #e4e7ed;
}

.search-col-config__hint {
  margin-left: 6px;
  font-size: 12px;
  font-weight: 400;
  color: #909399;
}

.search-col-config__spacer {
  flex: 1;
  min-width: 0;
}

.search-col-config-link {
  padding: 0 4px;
  border: 0;
  background: none;
  color: #006be6;
  font-size: 12px;
  cursor: pointer;
}

.search-col-config-link:disabled {
  color: #c0c4cc;
  cursor: not-allowed;
}

.search-col-config-head,
.search-col-config-row {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) 64px minmax(0, 1fr) minmax(0, 1.15fr);
  gap: 6px;
  align-items: center;
  min-width: 0;
}

.search-col-config-head span {
  text-align: center;
}

.search-col-config__rows {
  flex: 1;
  min-width: 0;
  min-height: 0;
  overflow: auto;
}

.search-col-config-row {
  padding: 4px 8px;
  border-bottom: 1px solid #ebeef5;
}

.search-col-config-row--selected,
.search-col-config-order-item--selected {
  background: rgb(0 107 230 / 10%);
}

.search-col-config-title,
.search-col-config-select {
  width: 100%;
  min-width: 0;
  height: 24px;
  padding: 0 4px;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  font-size: 12px;
}

.search-col-config-order-list {
  flex: 1;
  min-height: 0;
  margin: 0;
  padding: 0;
  overflow-y: auto;
  list-style: none;
}

.search-col-config-order-item {
  display: flex;
  gap: 6px;
  align-items: center;
  box-sizing: border-box;
  height: 33px;
  padding: 0 8px;
  font-size: 13px;
  cursor: grab;
}

.search-col-config-order-item--hidden {
  color: #909399;
}

.search-col-config-order-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.search-col-config-grip {
  width: 8px;
  height: 12px;
  background: radial-gradient(circle, #909399 1px, transparent 1.5px) 0 0 / 4px 4px;
  opacity: 0.7;
}

.header-yunprice-link,
.header-new-link {
  flex: none;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 13px;
  line-height: 32px;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.header-yunprice-link {
  color: #006be6;
}

.header-yunprice-link:hover {
  color: #4e99ef;
}

.header-new-link {
  color: green;
}

.header-new-link:hover {
  color: #006400;
}

.header-right {
  align-items: center;
  flex: none;
  gap: 2px;
}

.header-icon-btn,
.header-user-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  padding: 0 6px;
  border: 0;
  border-radius: var(--tblr-border-radius);
  background: transparent;
  color: var(--tblr-body-color);
  cursor: pointer;
}

.header-icon-btn {
  width: 32px;
}

.header-user-btn {
  width: 40px;
  height: 40px;
  padding: 4px;
  border-radius: 999px;
}

.header-icon-btn:hover,
.header-user-btn:hover {
  background: var(--tblr-bg-surface-tertiary);
}

.header-user {
  position: relative;
  margin-left: 4px;
  margin-right: 8px;
}

.header-user-avatar {
  position: relative;
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: var(--tblr-bg-surface-secondary);
  color: var(--tblr-body-color);
}

.header-user-dot {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 10px;
  height: 10px;
  border: 2px solid var(--tblr-bg-surface);
  border-radius: 999px;
  background: #22c55e;
}

.header-user-name {
  overflow: hidden;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.header-user-menu {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  z-index: 60;
  min-width: 240px;
  padding: 0 0 4px;
  overflow: hidden;
  background: var(--tblr-bg-surface);
  border: 1px solid var(--tblr-border-color);
  border-radius: 4px;
  box-shadow:
    0 4px 6px -1px rgb(0 0 0 / 0.1),
    0 2px 4px -2px rgb(0 0 0 / 0.1);
  color: var(--tblr-body-color);
}

.header-user-menu__head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px;
}

.header-user-menu__avatar {
  position: relative;
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: var(--tblr-bg-surface-secondary);
  color: var(--tblr-body-color);
}

.header-user-menu__avatar > svg {
  width: 24px;
  height: 24px;
}

.header-user-menu__avatar .header-user-dot {
  right: 2px;
  bottom: 2px;
  width: 12px;
  height: 12px;
  border-width: 2px;
}

.header-user-menu__meta {
  min-width: 0;
  flex: 1;
}

.header-user-menu__title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}

.header-user-menu__badge {
  padding: 0 6px;
  border-radius: 999px;
  background: transparent;
  color: #4ade80;
  font-size: 12px;
  font-weight: 500;
  line-height: 18px;
}

.header-user-menu__desc {
  display: block;
  color: var(--tblr-secondary);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
}

.header-user-menu__desc.is-danger {
  color: var(--tblr-danger);
}

.header-user-menu__sep {
  height: 0;
  margin: 0;
  border-top: 1px solid var(--tblr-border-color);
}

.header-user-menu[hidden] {
  display: none;
}

.header-user-menu__item {
  display: flex;
  align-items: center;
  gap: 0;
  width: calc(100% - 8px);
  margin: 0 4px;
  padding: 4px 8px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: var(--tblr-body-color);
  font-size: 14px;
  line-height: 32px;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
}

.header-user-menu__icon {
  flex: none;
  margin-right: 8px;
}

.header-user-menu__item:hover {
  background: var(--tblr-bg-surface-tertiary);
  color: var(--tblr-body-color);
  text-decoration: none;
}

.header-wechat-pop {
  position: fixed;
  z-index: 70;
  width: 448px;
  padding: 12px;
  background: var(--tblr-bg-surface);
  border: var(--tblr-border-width) solid var(--tblr-border-color-translucent);
  border-radius: var(--tblr-border-radius);
  box-shadow: var(--tblr-shadow-dropdown);
}

.header-wechat-pop[hidden] {
  display: none;
}

.header-wechat-qr {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 16px;
}

.header-wechat-qr__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 200px;
}

.header-wechat-qr__img {
  width: 200px;
  height: 200px;
  background: #fff;
}

.header-wechat-qr__caption {
  margin: 8px 0 0;
  color: var(--tblr-secondary);
  font-size: 12px;
  line-height: 18px;
}

.header-yunprice-dialog {
  position: fixed;
  z-index: 80;
  box-sizing: border-box;
  width: 660px;
  max-width: calc(100vw - 16px);
  padding: 6px 12px 10px;
  background: var(--tblr-bg-surface);
  border-radius: var(--tblr-border-radius);
  box-shadow: var(--tblr-shadow-dropdown);
}

.header-yunprice-dialog[hidden] {
  display: none;
}

.header-yunprice-dialog__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  height: 20px;
  min-height: 20px;
  margin: 0;
  cursor: move;
}

.header-yunprice-dialog__title {
  font-size: 13px;
  font-weight: 600;
  line-height: 20px;
}

.header-yunprice-dialog__head .btn-close {
  width: 10px;
  height: 10px;
  padding: 5px;
  margin: 0;
}

.yunprice-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 6px 0 8px;
}

.yunprice-ic,
.yunprice-toolbar .form-control {
  width: 220px;
  flex: 0 0 220px;
}

.yunprice-frame.has-table {
  border: 1px solid #e8eaec;
}

.yunprice-frame.is-loading {
  position: relative;
  min-height: 48px;
}

.yunprice-frame.is-loading::after {
  content: "查询中…";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(255 255 255 / 70%);
  color: var(--tblr-secondary);
  font-size: 13px;
}

.yunprice-empty {
  margin: 24px 0 0;
  color: var(--tblr-secondary);
  font-size: 13px;
  text-align: center;
}

.yunprice-empty.is-error {
  color: var(--tblr-danger);
}

.yunprice-head {
  overflow: hidden;
  background: #f4f4f5;
}

.yunprice-body {
  height: 250px;
  overflow-x: hidden;
  overflow-y: auto;
  background: #fff;
}

.yunprice-body.is-overflow {
  overflow-x: auto;
}

.yunprice-table {
  width: 100%;
  box-sizing: border-box;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 12px;
  line-height: 24px;
  table-layout: fixed;
}

.yunprice-table.is-resizing {
  cursor: col-resize;
  user-select: none;
}

.yunprice-table th {
  position: relative;
  height: 25px;
  background: #f4f4f5;
  color: #303133;
  font-weight: 600;
  text-align: center;
}

.yunprice-th-label {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.yunprice-col-resizer {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  width: 8px;
  height: 100%;
  cursor: col-resize;
  touch-action: none;
}

.yunprice-col-resizer::after {
  content: "";
  position: absolute;
  top: 0;
  right: -1px;
  bottom: 0;
  width: 2px;
  background: transparent;
}

.yunprice-col-resizer:hover::after {
  background: #409eff;
}

.yunprice-table th,
.yunprice-table td {
  box-sizing: border-box;
  height: 25px;
  padding: 0 6px;
  overflow: hidden;
  border-right: 1px solid #e8eaec;
  border-bottom: 1px solid #e8eaec;
}

.yunprice-table td {
  background: #fff;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.yunprice-table tbody tr:last-child td {
  border-bottom: none;
}

.yunprice-table th:last-child,
.yunprice-table td:last-child {
  border-right: none;
}

.yunprice-table tbody tr:hover td {
  background: #ffffeb;
}

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

.yunprice-price {
  color: #0068cf;
  font-weight: 600;
}

.ai-chat-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 90;
  display: flex;
  flex-direction: column;
  max-width: 100vw;
  background: var(--tblr-bg-surface);
  border-left: var(--tblr-border-width) solid var(--tblr-border-color);
  box-shadow: var(--tblr-shadow-dropdown);
}

.ai-chat-drawer[hidden] {
  display: none;
}

.ai-chat-drawer__resizer {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 3;
  width: 8px;
  cursor: col-resize;
}

.ai-chat-drawer__head {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-bottom: var(--tblr-border-width) solid var(--tblr-border-color);
}

.ai-chat-drawer__title {
  flex: 1;
  font-size: 16px;
  font-weight: 600;
}

.ai-chat-drawer__head .btn-link {
  padding: 0;
  text-decoration: none;
}

.ai-chat {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}

.ai-chat__list {
  flex: 1;
  min-height: 0;
  padding: 16px;
  overflow-y: auto;
}

.ai-chat__empty {
  margin-top: 28%;
  color: var(--tblr-secondary);
  font-size: 20px;
  text-align: center;
}

.ai-chat__row {
  display: flex;
  margin-bottom: 16px;
}

.ai-chat__row--user {
  justify-content: flex-end;
}

.ai-chat__bubble {
  max-width: 85%;
  font-size: 14px;
  line-height: 1.6;
  word-break: break-word;
  white-space: pre-wrap;
}

.ai-chat__row--user .ai-chat__bubble {
  padding: 8px 12px;
  border-radius: 12px 12px 4px 12px;
  background: var(--tblr-primary);
  color: #fff;
}

.ai-chat__row--assistant .ai-chat__bubble {
  max-width: 100%;
  white-space: normal;
}

.ai-chat__bubble--md p {
  margin: 0 0 8px;
}

.ai-chat__bubble--md p:last-child,
.ai-chat__bubble--md ul:last-child,
.ai-chat__bubble--md ol:last-child {
  margin-bottom: 0;
}

.ai-chat__bubble--md ul,
.ai-chat__bubble--md ol {
  margin: 0 0 8px;
  padding-left: 1.25em;
}

.ai-chat__thumb {
  display: block;
  max-width: 160px;
  max-height: 120px;
  margin-bottom: 6px;
  object-fit: contain;
}

.ai-chat__table-wrap {
  margin: 8px 0;
  overflow-x: auto;
}

.ai-chat__bubble--md table {
  border-collapse: collapse;
  font-size: 12px;
  line-height: 1.4;
  white-space: nowrap;
}

.ai-chat__bubble--md th,
.ai-chat__bubble--md td {
  padding: 4px 8px;
  border: var(--tblr-border-width) solid var(--tblr-border-color);
}

.ai-chat__thinking {
  color: var(--tblr-secondary);
  font-size: 14px;
}

.ai-chat__dot {
  animation: ai-chat-dot 1.2s infinite;
  opacity: 0.2;
}

.ai-chat__dot:nth-child(2) {
  animation-delay: 0.2s;
}

.ai-chat__dot:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes ai-chat-dot {
  0%,
  80%,
  100% {
    opacity: 0.2;
  }

  40% {
    opacity: 1;
  }
}

.ai-chat__composer {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px;
  border-top: var(--tblr-border-width) solid var(--tblr-border-color);
}

.ai-chat__prompts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ai-chat__prompt {
  padding: 2px 8px;
  border: var(--tblr-border-width) solid var(--tblr-border-color);
  border-radius: var(--tblr-border-radius);
  background: var(--tblr-bg-surface);
  color: var(--tblr-body-color);
  font-size: 12px;
  line-height: 20px;
  cursor: pointer;
}

.ai-chat__prompt:hover:not(:disabled) {
  border-color: var(--tblr-primary);
  color: var(--tblr-primary);
}

.ai-chat__prompt:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

.ai-chat__more {
  position: relative;
}

.ai-chat__more-menu {
  position: absolute;
  right: 0;
  bottom: calc(100% + 4px);
  z-index: 4;
  min-width: 180px;
  max-height: 320px;
  padding: 4px 0;
  overflow-y: auto;
  background: var(--tblr-bg-surface);
  border: var(--tblr-border-width) solid var(--tblr-border-color-translucent);
  border-radius: var(--tblr-border-radius);
  box-shadow: var(--tblr-shadow-dropdown);
}

.ai-chat__more-menu[hidden] {
  display: none;
}

.ai-chat__menu-title {
  padding: 6px 12px 2px;
  color: var(--tblr-body-color);
  font-size: 12px;
  font-weight: 600;
}

.ai-chat__menu-title.is-divided {
  margin-top: 4px;
  border-top: var(--tblr-border-width) solid var(--tblr-border-color);
}

.ai-chat__menu-item {
  display: block;
  width: 100%;
  padding: 4px 12px;
  border: 0;
  background: transparent;
  color: var(--tblr-body-color);
  font-size: 12px;
  line-height: 20px;
  text-align: left;
  cursor: pointer;
}

.ai-chat__menu-item:hover:not(:disabled) {
  background: var(--tblr-bg-surface-tertiary);
}

.ai-chat__menu-item:disabled {
  color: var(--tblr-secondary);
  cursor: default;
}

.ai-chat__attach {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}

.ai-chat__composer-row {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}

.ai-chat__file {
  display: none;
}

.ai-chat__composer-row textarea {
  min-height: 32px;
  max-height: 120px;
  resize: none;
}

.erp-lock {
  position: fixed;
  inset: 0;
  z-index: 4000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  background: rgb(0 0 0 / 45%);
}

.erp-lock[hidden] {
  display: none;
}

.erp-lock__card {
  width: 100%;
  max-width: 24rem;
}

.profile-page {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-content: start;
  gap: 12px;
  width: max-content;
  max-width: 100%;
}

.profile-block--info {
  grid-column: 1 / -1;
}

.profile-page__title {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 22px;
}

.profile-form {
  display: grid;
  grid-template-columns: 72px 220px;
  align-items: center;
  column-gap: 8px;
  row-gap: 6px;
  width: max-content;
  max-width: 100%;
}

.profile-form--info {
  grid-template-columns: 72px minmax(160px, 220px) 72px minmax(160px, 220px);
}

.profile-form--info > .is-wide {
  grid-column: 2 / -1;
}

.profile-form > label {
  color: var(--tblr-secondary);
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.profile-form > label.is-required::before {
  margin-right: 2px;
  color: var(--tblr-danger);
  content: "*";
}

.profile-wx__state {
  margin: 0 0 10px;
  color: var(--tblr-secondary);
  font-size: 12px;
  line-height: 18px;
}

.profile-wx__qr {
  display: block;
  width: 148px;
  height: 148px;
  margin-bottom: 10px;
}

.self-inventory-dialog .erp-dialog__footer:empty {
  display: none;
}

.erp-dialog__footer.self-inventory-dialog__footer {
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
}

.self-inventory-dialog__save {
  display: flex;
  justify-content: flex-end;
}

.self-inventory-form,
.erp-form-grid {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  row-gap: 8px;
}

.self-inventory-form > label,
.erp-form-grid > label {
  margin: 0;
  color: var(--tblr-body-color);
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.self-inventory-form > label.is-danger,
.erp-form-grid > label.is-danger {
  color: var(--tblr-danger);
}

.self-inventory-form > label.is-primary {
  color: #006be6;
}

.self-inventory-form .form-control,
.erp-form-grid .form-control,
.erp-form-grid .form-select {
  min-width: 0;
}

.self-inventory-form__file {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}

.self-inventory-form__file > span {
  width: 72px;
  color: var(--tblr-secondary);
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.self-inventory-form__file .form-select {
  width: 16rem;
}

.self-inventory-form__qty {
  display: flex;
  gap: 4px;
  min-width: 0;
}

.self-inventory-form__delta {
  width: 64px;
  flex: none;
}

.self-inventory-log {
  max-height: 260px;
  border: 1px solid var(--tblr-border-color);
  border-radius: 4px;
}

.self-inventory-log .erp-grid th,
.self-inventory-log .erp-grid td {
  white-space: nowrap;
}

.erp-self-log-op-tag {
  display: inline-block;
  max-width: 100%;
  padding: 0 6px;
  overflow: hidden;
  font-size: 12px;
  font-weight: 600;
  line-height: 18px;
  vertical-align: middle;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 4px;
}

.erp-self-log-op-tag--edit {
  background: #dbeafe;
  color: #0068cf;
}

.erp-self-log-op-tag--del {
  background: #fee2e2;
  color: #b91c1c;
}

.erp-self-log-op-tag--sale {
  background: #dcfce7;
  color: #15803d;
}

.erp-self-log-op-tag--default {
  background: var(--tblr-bg-surface-secondary);
  color: var(--tblr-body-color);
}

.self-transfer {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 10px 8px;
  align-items: center;
}

.self-transfer > label {
  margin: 0;
  color: var(--tblr-body-color);
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.self-transfer > label.is-danger::before {
  margin-right: 2px;
  color: var(--tblr-danger);
  content: "*";
}

.self-transfer__check {
  display: flex;
  gap: 6px;
  align-items: center;
  margin: 0;
  font-size: 12px;
  text-align: left;
}

.quote-form__combo {
  display: flex;
  align-items: stretch;
  min-width: 0;
}

.quote-form__combo .form-control {
  flex: 1 1 auto;
  min-width: 0;
  border-right: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.quote-form__combo .form-control:focus {
  box-shadow: none;
}

.quote-form__tip {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 32px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--tblr-border-color);
  border-radius: 0 4px 4px 0;
  background: #fff;
  color: #909399;
  font-size: 0;
  cursor: pointer;
}

.quote-form__tip::after {
  content: "";
  border: 4px solid transparent;
  border-top-color: currentcolor;
  border-bottom-width: 0;
}

.quote-form__tip--find::after {
  width: 14px;
  height: 14px;
  border: 0;
  background-color: currentcolor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M11.4 10.2a5.5 5.5 0 1 0-1.2 1.2l3.2 3.2 1.2-1.2-3.2-3.2zM6.5 10.5a4 4 0 1 1 0-8 4 4 0 0 1 0 8z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M11.4 10.2a5.5 5.5 0 1 0-1.2 1.2l3.2 3.2 1.2-1.2-3.2-3.2zM6.5 10.5a4 4 0 1 1 0-8 4 4 0 0 1 0 8z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.quote-form__combo:focus-within .form-control,
.quote-form__combo:focus-within .quote-form__tip {
  border-color: var(--tblr-primary);
}

.quote-form__tip:hover:not(:disabled) {
  background: #f5f7fa;
  color: var(--tblr-primary);
}

.quote-form__tip:disabled {
  background: #f5f7fa;
  color: #c0c4cc;
  cursor: not-allowed;
}

.quote-form .span-rest {
  grid-column: span 7;
}

.quote-tip-pop {
  position: fixed;
  z-index: 3100;
  width: 220px;
  max-height: 180px;
  padding: 8px 10px;
  overflow: auto;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  box-shadow: 0 2px 12px rgb(0 0 0 / 10%);
}

.quote-tip {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 8px;
}

.quote-tip__line {
  display: flex;
  flex-basis: 100%;
  flex-wrap: wrap;
  gap: 2px 8px;
}

.quote-tip button {
  padding: 0;
  border: 0;
  background: transparent;
  color: #006be6;
  font-size: 12px;
  line-height: 22px;
  cursor: pointer;
}

.quote-tip button.is-clear,
.quote-tip button.is-set {
  flex-basis: 100%;
  text-align: left;
}

.quote-tip button.is-clear {
  color: var(--tblr-danger);
}

.partner-pick__bar {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 10px;
}

.partner-pick__bar .form-control {
  flex: 1;
}

.partner-pick__field {
  width: 120px;
}

.partner-pick__table {
  max-height: 320px;
}

.partner-pick__name em {
  margin-left: 6px;
  color: var(--tblr-danger);
  font-style: normal;
  font-size: 12px;
}

.partner-pick__choose {
  padding: 0;
  border: 0;
  background: none;
  color: #006be6;
  cursor: pointer;
}

.partner-pick__hint {
  margin: 8px 0 0;
  color: var(--tblr-secondary);
  font-size: 12px;
}

.state-settings {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.state-settings__row {
  display: flex;
  gap: 8px;
  align-items: center;
}

.state-settings__row .form-control {
  flex: 1;
}

.page-body:has(#page .help-frame) {
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
  background: #f1f3f6;
}

#page.container-fluid:has(.help-frame) {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  padding: 0;
  overflow: hidden;
}

.erp-pane:has(.help-frame) {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

.help-frame {
  --help-text: #111827;
  --help-text-2: #4b5563;
  --help-text-3: #6b7280;
  --help-border: #e5e7eb;
  --help-bg: #fff;
  --help-bg-2: #f6f7f8;
  --help-link: #2563eb;
  container-type: inline-size;
  display: flex;
  flex: 1;
  min-height: 0;
  background: var(--help-bg);
  color: var(--help-text);
  font-size: 15px;
  line-height: 1.65;
}

.help-nav {
  display: none;
  width: 200px;
  flex: none;
  overflow: auto;
  border-right: 1px solid var(--help-border);
  padding: 20px 12px 40px 8px;
  background: var(--help-bg);
  scrollbar-width: thin;
}

.help-nav__home,
.help-nav__link {
  display: block;
  border-radius: 4px;
  color: var(--help-text-2);
  font-size: 13px;
  line-height: 1.4;
  text-decoration: none;
}

.help-nav__home {
  margin-bottom: 4px;
  padding: 5px 10px;
  color: var(--help-text);
  font-weight: 600;
}

.help-nav__group h2 {
  margin: 14px 10px 2px;
  color: var(--help-text);
  font-size: 13px;
  font-weight: 600;
}

.help-nav__link {
  position: relative;
  padding: 4px 36px 4px 22px;
  white-space: nowrap;
}

.help-nav__new {
  position: absolute;
  top: 1px;
  right: 4px;
  padding: 0 3px;
  border-radius: 2px;
  background: #e11d48;
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  line-height: 14px;
  letter-spacing: 0.04em;
  pointer-events: none;
}

.help-nav__link.is-active,
.help-nav__home.is-active {
  background: var(--help-bg-2);
  color: var(--help-text);
  font-weight: 600;
}

.help-nav__link:hover,
.help-nav__home:hover {
  background: var(--help-bg-2);
  color: var(--help-text);
}

.help-main {
  min-width: 0;
  flex: 1;
  overflow: auto;
  background: var(--help-bg);
}

@container (min-width: 720px) {
  .help-nav {
    display: block;
  }
}

.help-home {
  max-width: 42em;
  padding: 28px 40px 72px;
}

.help-home h1 {
  margin: 0 0 8px;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.help-home > p {
  margin: 0 0 8px;
  color: var(--help-text-2);
}

.help-home h2 {
  margin: 28px 0 2px;
  padding-top: 8px;
  border-top: 1px solid var(--help-border);
  font-size: 15px;
  font-weight: 600;
}

.help-home h2:first-of-type {
  margin-top: 20px;
}

.help-home__item {
  position: relative;
  display: block;
  margin-left: 16px;
  padding: 8px 40px 8px 12px;
  border-bottom: 1px solid var(--help-border);
  color: inherit;
  text-decoration: none;
}

.help-home__new {
  position: absolute;
  top: 8px;
  right: 0;
  padding: 0 3px;
  border-radius: 2px;
  background: #e11d48;
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  line-height: 14px;
  letter-spacing: 0.04em;
  pointer-events: none;
}

.help-home__item strong {
  display: block;
  font-size: 14px;
  font-weight: 600;
}

.help-home__summary {
  color: var(--help-text-2);
  font-size: 13px;
}

.help-home__item:hover strong {
  color: var(--help-link);
}

.help-missing {
  margin: 24px;
  font-size: 14px;
}

.help-doc {
  padding: 28px 40px 72px;
}

.help-doc h1 {
  margin: 0 0 8px;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.35;
}

.help-doc h2 {
  max-width: 42em;
  margin: 36px 0 12px;
  padding-top: 8px;
  border-top: 1px solid var(--help-border);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  scroll-margin-top: 12px;
}

.help-doc h2:first-of-type {
  margin-top: 28px;
}

.help-doc__new {
  display: inline-block;
  margin-left: 6px;
  padding: 0 3px;
  border-radius: 2px;
  background: #e11d48;
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  line-height: 14px;
  letter-spacing: 0.04em;
  vertical-align: 2px;
}

.help-doc p,
.help-doc ol,
.help-doc ul,
.help-callout,
.help-doc__summary,
.help-doc__toc {
  max-width: 42em;
}

.help-doc p {
  margin: 0 0 10px;
}

.help-doc a {
  color: var(--help-link);
  text-decoration: none;
}

.help-doc a:hover {
  text-decoration: underline;
}

.help-doc__summary {
  margin-bottom: 20px;
  color: var(--help-text-2);
}

.help-doc__toc {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  margin: 0 0 8px;
  padding: 8px 0;
  border-top: 1px solid var(--help-border);
  border-bottom: 1px solid var(--help-border);
}

.help-doc__toc button {
  padding: 0;
  border: 0;
  background: none;
  color: var(--help-text-2);
  font-size: 13px;
  cursor: pointer;
}

.help-doc__toc button.is-active {
  color: var(--help-text);
  font-weight: 600;
}

.help-doc__toc button:hover {
  color: var(--help-text);
}

.help-doc__video {
  max-width: 720px;
  margin: 0 0 16px;
}

.help-doc__play {
  display: flex;
  gap: 12px;
  align-items: center;
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--help-border);
  border-radius: 4px;
  background: var(--help-bg);
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.help-doc__play img,
.help-doc__play-mark {
  width: 120px;
  height: 68px;
  flex: none;
  border-radius: 4px;
  object-fit: cover;
  background: #1f2937;
}

.help-doc__play-mark {
  position: relative;
}

.help-doc__play-mark::after {
  content: "";
  position: absolute;
  top: 24px;
  left: 52px;
  border-style: solid;
  border-width: 10px 0 10px 14px;
  border-color: transparent transparent transparent #fff;
}

.help-doc__play-text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.help-doc__play-text strong {
  font-size: 14px;
  font-weight: 600;
}

.help-doc__play-text span {
  color: var(--help-text-3);
  font-size: 12px;
  line-height: 1.5;
}

.help-term {
  display: inline-block;
  margin: 0 1px;
  padding: 0 6px;
  border: 1px solid var(--help-border);
  border-radius: 4px;
  background: var(--help-bg-2);
  color: var(--help-text-2);
  font-size: 12px;
  line-height: 1.6;
  vertical-align: baseline;
}

.help-doc ol,
.help-doc ul {
  margin: 0 0 12px 1.3em;
}

.help-doc li {
  margin: 4px 0;
}

.help-doc ol.is-steps {
  padding-left: 0;
  list-style: decimal;
}

.help-doc ol.is-steps > li {
  display: list-item;
}

.help-step-no {
  display: none;
}

.help-callout {
  margin: 20px 0;
  padding: 8px 16px;
  border-radius: 4px;
  border-left: 5px solid #409eff;
  background-color: rgba(64, 158, 255, 0.1);
  color: var(--help-text);
}

.help-callout.is-risk {
  border-left-color: #f56c6c;
  background-color: rgba(245, 108, 108, 0.1);
}

.help-callout p {
  margin: 0;
  line-height: 1.7;
}

.help-callout__title {
  font-weight: 700;
}

.help-callout p:not(.help-callout__title) {
  font-size: 0.9rem;
}

.help-figure {
  max-width: 720px;
  margin: 12px 0 6px;
}

.help-figure img {
  display: block;
  max-width: 100%;
  border: 1px solid var(--help-border);
  border-radius: 4px;
  background: var(--help-bg-2);
}

.help-figure figcaption {
  margin-top: 8px;
  color: var(--help-text-3);
  font-size: 12px;
}

.help-doc table {
  width: 100%;
  max-width: 720px;
  margin: 8px 0 16px;
  border-collapse: collapse;
  font-size: 13px;
  line-height: 1.6;
}

.help-doc th,
.help-doc td {
  padding: 8px 10px;
  border: 0;
  border-bottom: 1px solid var(--help-border);
  text-align: left;
  vertical-align: top;
}

.help-doc th {
  width: 7.5em;
  font-weight: 600;
  color: var(--help-text-3);
  background: var(--help-bg-2);
  white-space: nowrap;
}

.help-related h2 {
  margin-top: 36px;
}

.help-related a {
  display: inline-block;
  margin: 0 16px 8px 0;
}

.help-player {
  display: block;
  width: 100%;
  max-height: 70vh;
  background: #111827;
}

.plugin-doc {
  padding: 28px 40px 72px;
}

.plugin-doc h1 {
  margin: 0 0 8px;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.plugin-doc h2 {
  max-width: 42em;
  margin: 36px 0 12px;
  padding-top: 8px;
  border-top: 1px solid var(--help-border);
  font-size: 16px;
  font-weight: 600;
}

.plugin-doc h2:first-of-type {
  margin-top: 28px;
}

.plugin-doc h3 {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 600;
}

.plugin-doc p,
.plugin-doc ol,
.plugin-doc ul,
.plugin-note,
.plugin-doc__lead {
  max-width: 42em;
}

.plugin-doc p,
.plugin-doc__lead {
  margin: 0 0 10px;
}

.plugin-doc__lead {
  color: var(--help-text-2);
}

.plugin-doc a {
  color: var(--help-link);
  text-decoration: none;
}

.plugin-doc a:hover {
  text-decoration: underline;
}

.plugin-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  max-width: 42em;
  margin: 0 0 8px;
  padding: 10px 0;
  border-top: 1px solid var(--help-border);
  border-bottom: 1px solid var(--help-border);
  font-size: 13px;
  color: var(--help-text-2);
}

.plugin-meta div {
  display: flex;
  gap: 8px;
}

.plugin-meta dt {
  color: var(--help-text-3);
  font-weight: 500;
}

.plugin-doc table {
  width: 100%;
  max-width: 720px;
  margin: 8px 0 16px;
  border-collapse: collapse;
  font-size: 13px;
}

.plugin-doc th,
.plugin-doc td {
  padding: 8px 10px;
  border-bottom: 1px solid var(--help-border);
  text-align: left;
  vertical-align: top;
}

.plugin-doc th {
  width: 7.5em;
  color: var(--help-text-3);
  font-weight: 600;
  background: var(--help-bg-2);
  white-space: nowrap;
}

.plugin-note {
  margin: 12px 0 16px;
  padding: 10px 12px;
  border: 1px solid var(--help-border);
  border-radius: 4px;
  background: var(--help-bg-2);
  color: var(--help-text-2);
  font-size: 13px;
}

.plugin-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 32px;
  max-width: 720px;
  margin: 8px 0 16px;
}

.plugin-cols > div + div {
  padding-left: 32px;
  border-left: 1px solid var(--help-border);
}

.plugin-cols ol {
  margin: 0 0 12px 1.3em;
  font-size: 13px;
}

.plugin-tag {
  display: inline-block;
  margin-left: 6px;
  padding: 1px 6px;
  border: 1px solid var(--help-border);
  border-radius: 4px;
  background: var(--help-bg-2);
  color: var(--help-text-2);
  font-size: 11px;
  font-weight: 500;
  vertical-align: middle;
}

.plugin-btn {
  display: inline-flex;
  align-items: center;
  height: 32px;
  padding: 0 12px;
  border: 1px solid var(--help-border);
  border-radius: 4px;
  background: var(--help-bg);
  color: var(--help-text);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
}

.plugin-btn--primary {
  border-color: transparent;
  background: #171717;
  color: #fff;
}

.plugin-logo {
  height: 36px;
  width: auto;
  margin: 8px 0 12px;
  border-radius: 4px;
}

.plugin-video {
  max-width: 720px;
  margin: 0 0 8px;
  overflow: hidden;
  border: 1px solid var(--help-border);
  border-radius: 4px;
  background: #111827;
  aspect-ratio: 16 / 9;
}

.plugin-video video {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #111827;
}

.plugin-shot {
  max-width: 360px;
  margin: 12px 0 6px;
}

.plugin-shot img {
  display: block;
  width: 100%;
  border: 1px solid var(--help-border);
  border-radius: 4px;
  background: var(--help-bg-2);
}

.plugin-shot figcaption {
  margin-top: 8px;
  color: var(--help-text-3);
  font-size: 12px;
}

.plugin-doc details {
  max-width: 42em;
  border-bottom: 1px solid var(--help-border);
}

.plugin-doc details:first-of-type {
  border-top: 1px solid var(--help-border);
}

.plugin-doc summary {
  padding: 10px 0;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  list-style: none;
}

.plugin-doc summary::-webkit-details-marker {
  display: none;
}

.plugin-doc summary::after {
  content: "+";
  float: right;
  color: var(--help-text-3);
  font-weight: 400;
}

.plugin-doc details[open] summary::after {
  content: "–";
}

.plugin-doc details p,
.plugin-doc details ul {
  margin: 0;
  padding-bottom: 10px;
  color: var(--help-text-2);
  font-size: 13px;
}

.plugin-doc details ul {
  margin-left: 1.3em;
}

.cross-site-page {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.5rem;
  min-height: 0;
  width: 100%;
  padding: 0.5rem;
}

.cross-site-page > .card {
  box-shadow: none;
}

.cross-site-page > .card:not(.cross-site-body) {
  flex: none;
}

.cross-site-page > .card:not(.cross-site-body) {
  border: 1px solid #e4e4e7;
  background: #fff;
}

.cross-site-page > .card > .card-body {
  padding: 12px;
}

.cross-site-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.cross-site-kw {
  width: 22rem;
  max-width: 100%;
}

.cross-site-kw .form-control,
.cross-site-kw .input-group-text,
.cross-site-filters > .btn {
  height: 32px;
  min-height: 32px;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 14px;
  line-height: 30px;
}

.cross-site-kw .form-control {
  padding-right: 11px;
  padding-left: 11px;
  text-transform: uppercase;
}

.cross-site-kw .input-group-text {
  padding-right: 10px;
  padding-left: 10px;
  background: #fff;
}

.cross-site-kw .form-check {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 0;
  margin: 0;
  padding: 0;
}

.cross-site-kw .form-check-input {
  position: static;
  width: 14px;
  height: 14px;
  margin: 0;
  float: none;
}

.cross-site-kw .form-check-label {
  font-size: 14px;
  line-height: 1;
}

.cross-site-filters > .btn {
  padding-right: 15px;
  padding-left: 15px;
}

.cross-site-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  overflow: visible;
}

.cross-site-body .card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}

.cross-site-tabs {
  display: flex;
  flex: none;
  flex-wrap: nowrap;
  align-items: stretch;
  height: 40px;
  margin: 0;
  padding: 0 12px;
  overflow-x: auto;
  overflow-y: hidden;
  list-style: none;
  box-shadow: inset 0 -2px 0 #e4e7ed;
  scrollbar-width: none;
}

.cross-site-tabs::-webkit-scrollbar {
  display: none;
}

.cross-site-tabs .nav-item {
  display: flex;
  margin: 0;
}

.cross-site-tabs .nav-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  height: 40px;
  margin: 0;
  padding: 0 20px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #303133;
  font-size: 14px;
  font-weight: 500;
  line-height: 40px;
  white-space: nowrap;
  text-decoration: none;
}

.cross-site-tabs .nav-link:hover,
.cross-site-tabs .nav-link.active {
  color: #337ecc;
  background: transparent;
  border: 0;
}

.cross-site-tabs .nav-link.active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: #337ecc;
}

.cross-site-page [data-cs-count] {
  margin-left: 4px;
  color: #e11d48;
  font-weight: 600;
}

.cross-site-panes {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}

.cross-site-pane {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}

.cross-site-pane[hidden] {
  display: none;
}

.cross-site-bar {
  display: flex;
  flex: none;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  min-height: 40px;
  padding: 6px 12px;
  background: #f4f4f5;
  border-bottom: 1px solid #e4e4e7;
  font-size: 12px;
}

.cross-site-combo {
  position: relative;
  display: flex;
  flex: 1 1 140px;
  align-items: stretch;
  max-width: 220px;
  min-width: 140px;
}

.cross-site-combo .form-control {
  height: 27px;
  min-height: 27px;
  padding: 4px 8px;
  border-right: 0;
  border-radius: 4px 0 0 4px;
  font-size: 12px;
  line-height: 1.4;
}

.cross-site-combo .form-control:disabled {
  background: #f5f7fa;
  color: #a8abb2;
}

.cross-site-supplier-clear,
.cross-site-supplier-toggle {
  display: none;
  flex-shrink: 0;
  width: 22px;
  height: 27px;
  padding: 0;
  border: 1px solid var(--tblr-border-color, #e6e7e9);
  background: #fff;
  color: #909399;
  cursor: pointer;
}

.cross-site-supplier-clear:disabled,
.cross-site-supplier-toggle:disabled {
  background: #f5f7fa;
  cursor: not-allowed;
}

.cross-site-combo.has-value .cross-site-supplier-clear {
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: none;
  font-size: 14px;
  line-height: 1;
}

.cross-site-supplier-toggle {
  display: block;
  border-radius: 0 var(--tblr-border-radius, 4px) var(--tblr-border-radius, 4px) 0;
}

.cross-site-supplier-toggle::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin: 7px auto 0;
  border: 4px solid transparent;
  border-top-color: currentcolor;
  border-bottom-width: 0;
}

.cross-site-supplier-list {
  position: absolute;
  top: calc(100% + 1px);
  left: 0;
  z-index: 3;
  width: 100%;
  max-height: 240px;
  margin: 0;
  padding: 2px 0;
  overflow: auto;
  list-style: none;
  background: var(--tblr-bg-surface, #fff);
  border: 1px solid var(--tblr-border-color, #e6e7e9);
  box-shadow: var(--tblr-box-shadow-lg, 0 2px 8px rgb(0 0 0 / 15%));
}

.cross-site-supplier-list li {
  padding: 4px 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}

.cross-site-supplier-list li.is-active,
.cross-site-supplier-list li:hover {
  background: var(--tblr-bg-surface-secondary, #f6f8fb);
}

.cross-site-supplier-list li.is-empty {
  color: var(--tblr-secondary, #667382);
  cursor: default;
  background: transparent;
}

.cross-site-icon-filters {
  display: flex;
  flex-shrink: 0;
  gap: 8px;
  align-items: center;
}

.cross-site-icon {
  display: inline-flex;
  gap: 3px;
  align-items: center;
  margin: 0;
  color: inherit;
  font-size: 12px;
  line-height: 14px;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
}

.cross-site-icon input {
  width: 14px;
  height: 14px;
  margin: 0;
}

.cross-site-icon:has(input:disabled) {
  cursor: not-allowed;
}

.cross-site-stats {
  flex-shrink: 0;
  padding: 2px 10px;
  border: 1px solid #1a73e8;
  border-radius: 3px;
  background: #fff;
  color: #1a73e8;
  font-size: 12px;
  line-height: 1.4;
  white-space: nowrap;
  cursor: pointer;
}

.cross-site-stats:hover {
  background: #e8f0fe;
}

.cross-site-meta {
  margin: 0 0 0 auto;
  color: var(--tblr-secondary, #667382);
  font-size: 12px;
  white-space: nowrap;
}

.cross-site-scroll {
  flex: 1;
  min-height: 0;
  overflow: auto;
  padding: 8px 12px 12px;
}

.cross-site-hint {
  margin: 16px 0;
  color: var(--tblr-secondary, #667382);
  font-size: 13px;
}

.cross-site-table.erp-grid {
  width: max-content;
  min-width: 100%;
}

.cross-site-table.erp-grid th,
.cross-site-table.erp-grid td {
  height: auto;
  max-height: none;
  padding: 4px 6px;
  white-space: nowrap;
  vertical-align: top;
  line-height: 1.4;
}

.cross-site-table.erp-grid thead th {
  height: 25px;
  max-height: 25px;
  line-height: 25px;
  white-space: nowrap;
  vertical-align: middle;
}

.cross-site-record-col {
  width: 52px;
  padding-left: 2px;
  padding-right: 2px;
  text-align: center;
  white-space: nowrap;
}

.cross-site-price {
  white-space: nowrap;
  word-break: keep-all;
}

.cross-site-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
  max-width: 9rem;
  margin-top: 2px;
}

.cross-site-name {
  cursor: pointer;
}

.cross-site-photos {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 10px;
}

.cross-site-photo {
  display: block;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--tblr-border-color, #e6e7e9);
  background: var(--tblr-bg-surface, #fff);
  color: inherit;
  text-align: left;
}

.cross-site-photo img {
  display: block;
  width: 100%;
  height: 160px;
  object-fit: contain;
  background: var(--tblr-bg-surface-secondary, #f6f8fb);
}

.cross-site-photo-cap {
  display: block;
  padding: 8px;
  font-size: 12px;
  line-height: 1.4;
}

.cross-site-record-name {
  margin: -8px -16px 12px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--tblr-border-color, #e6e7e9);
  font-size: 14px;
  font-weight: 600;
}

.cross-site-record-form {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px 14px;
}

.cross-site-record-form label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  color: var(--tblr-secondary, #667382);
  font-size: 12px;
}

.cross-site-record-form label.span-2 {
  grid-column: span 2;
}

.cross-site-record-form label.span-3 {
  grid-column: span 3;
}

.cross-site-record-form label.is-required > span::before {
  margin-right: 2px;
  color: var(--tblr-red, #d63939);
  content: "*";
}

.cross-site-record-extra {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 12px;
}

.cross-site-qualities {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cross-site-quality {
  padding: 5px 12px;
  border: 1px solid var(--tblr-border-color, #e6e7e9);
  border-radius: var(--tblr-border-radius, 4px);
  background: var(--tblr-bg-surface-secondary, #f6f8fb);
  color: inherit;
  font-size: 13px;
  cursor: pointer;
}

.cross-site-quality.is-active {
  border-color: var(--tblr-primary, #066fd1);
  background: var(--tblr-primary, #066fd1);
  color: #fff;
}

.cross-site-dialog-empty {
  margin: 0;
  padding: 24px 16px;
  color: var(--tblr-secondary, #667382);
  font-size: 12px;
  text-align: center;
}

.cross-site-stats {
  padding: 4px 0 8px;
}

.cross-site-stats h3 {
  margin: 0 0 8px;
  font-size: 13px;
  font-weight: 600;
}

.cross-site-stats section + section {
  margin-top: 18px;
}

.cross-site-stat {
  display: grid;
  grid-template-columns: minmax(0, 88px) minmax(90px, 1fr) auto;
  gap: 6px 4px;
  align-items: center;
  margin-bottom: 8px;
}

.cross-site-stat__label {
  display: flex;
  align-items: center;
  min-width: 0;
  font-size: 12px;
}

.cross-site-stat__track {
  height: 14px;
  overflow: hidden;
  background: var(--tblr-bg-surface-secondary, #f6f8fb);
  border-radius: 3px;
}

.cross-site-stat__fill {
  height: 100%;
  min-width: 2px;
  border-radius: 3px;
}

.cross-site-stat__fill.company {
  background: var(--tblr-blue, #4299e1);
}

.cross-site-stat__fill.product {
  background: var(--tblr-orange, #f76707);
}

.cross-site-stat__count {
  font-size: 11px;
  white-space: nowrap;
}

.cross-site-layer {
  position: fixed;
  z-index: 2900;
  width: 340px;
  background: var(--tblr-bg-surface, #fff);
  border: 1px solid var(--tblr-border-color, #e6e7e9);
  box-shadow: var(--tblr-box-shadow-lg, 0 4px 16px rgb(0 0 0 / 18%));
  font-size: 12px;
  line-height: 1.5;
}

.cross-site-layer__header {
  padding: 8px 10px;
  background: var(--tblr-orange, #f76707);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  cursor: move;
  user-select: none;
}

.cross-site-layer__body {
  padding: 8px 10px 10px;
  max-height: 420px;
  overflow: auto;
}

.cross-site-layer__row {
  display: flex;
  align-items: flex-start;
  margin-bottom: 6px;
}

.cross-site-layer__label {
  flex: 0 0 64px;
  color: var(--tblr-secondary, #667382);
}

.cross-site-layer__value {
  flex: 1;
  word-break: break-all;
}

.cross-site-layer__qq {
  display: inline-flex;
  align-items: center;
  margin-right: 8px;
}

.cross-site-layer__copy {
  margin-left: 2px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--tblr-secondary, #667382);
  cursor: pointer;
}

.cross-site-layer__years {
  margin-left: 4px;
  font-weight: 700;
}

.cross-site-layer__tip {
  margin: 0 0 6px;
  color: var(--tblr-secondary, #667382);
}

.cross-site-review {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--tblr-border-color, #e6e7e9);
}

.cross-site-review__title {
  margin-bottom: 6px;
  color: var(--tblr-secondary, #667382);
  font-size: 12px;
}

.cross-site-review__item {
  margin-bottom: 8px;
}

.cross-site-review__grade {
  display: inline-block;
  margin-right: 6px;
  padding: 0 5px;
  border-radius: 2px;
  color: #fff;
  font-size: 11px;
  line-height: 18px;
}

.cross-site-review__grade.g0 {
  background: var(--tblr-secondary, #667382);
}

.cross-site-review__grade.g1 {
  background: var(--tblr-red, #d63939);
}

.cross-site-review__grade.g2 {
  background: var(--tblr-orange, #f76707);
}

.cross-site-review__grade.g3 {
  background: var(--tblr-blue, #4299e1);
}

.cross-site-review__grade.g4 {
  background: var(--tblr-green, #2fb344);
}

.cross-site-review__content {
  margin-top: 4px;
  word-break: break-all;
}

.cross-site-review__time,
.cross-site-review__empty {
  margin-top: 2px;
  color: var(--tblr-secondary, #667382);
  font-size: 11px;
}

.cross-site-review__form {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--tblr-border-color, #e6e7e9);
}

.cross-site-review__form .form-control {
  margin-bottom: 6px;
}

.cross-site-review__grades {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 6px;
}

.cross-site-review__grade-btn {
  padding: 2px 8px;
  border: 1px solid var(--tblr-border-color, #e6e7e9);
  border-radius: 2px;
  background: var(--tblr-bg-surface-secondary, #f6f8fb);
  color: inherit;
  font-size: 12px;
  cursor: pointer;
}

.cross-site-review__grade-btn.is-active {
  border-color: var(--tblr-orange, #f76707);
  background: var(--tblr-orange, #f76707);
  color: #fff;
}

.cross-site-review__actions {
  display: flex;
  gap: 6px;
}

:is(.cross-site-page, .cross-site-layer, .erp-dialog) :is(.redvip, .yellowvip, .stock, .sscp, .iccp, .you, .icon500, .icon_hckc, .icon_hcjg, .daili, .qqicon, .msnicon, .email, .cellphone, .orangephone, .tryicon, .buyer, .sellericon, .orignalicon, .personalicon, .renzheng_icon, .icon_dingHuo, .icon_xianHuo, .icon_reMai, .icon_tuiJian, .icon_youXian) {
  display: inline-block;
  margin-right: 2px;
  vertical-align: middle;
  background: url("../img/renzheng.gif") no-repeat;
}

:is(.cross-site-page, .cross-site-layer, .erp-dialog) .redvip { width: 38px; height: 13px; background-position: -41px -45px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .yellowvip { width: 38px; height: 13px; background-position: 0 -45px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .stock { width: 60px; height: 13px; background-position: 0 -30px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .sscp { width: 51px; height: 13px; background-position: 0 -15px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .iccp { width: 47px; height: 13px; background-position: 0 0; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .you { width: 12px; height: 13px; background-position: -62px -16px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .icon500 { width: 45px; height: 13px; background-position: -110px 0; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .icon_hckc { width: 63px; height: 15px; background-position: left -63px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .icon_hcjg { width: 63px; height: 15px; background-position: -73px -63px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .daili { width: 41px; height: 13px; background-position: -112px -15px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .qqicon { width: 14px; height: 15px; background-position: -80px -33px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .msnicon { width: 14px; height: 16px; background-position: -80px -12px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .email { width: 18px; height: 13px; background-position: -235px -20px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .cellphone { width: 9px; height: 14px; background-position: -99px 0; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .orangephone { width: 10px; height: 16px; background-position: -98px 23px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .tryicon { width: 17px; height: 12px; background-position: -62px 0; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .buyer { width: 28px; height: 13px; background-position: -157px 0; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .sellericon { width: 28px; height: 13px; background-position: -187px 0; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .orignalicon { width: 40px; height: 13px; background-position: -112px -30px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .personalicon { width: 28px; height: 13px; background-position: -150px -45px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .renzheng_icon { width: 46px; height: 12px; background-position: -98px -46px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .icon_dingHuo { width: 57px; height: 16px; background-position: -241px -42px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .icon_xianHuo { width: 57px; height: 16px; background-position: -181px -42px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .icon_reMai { width: 35px; height: 16px; background-position: -157px -20px; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .icon_tuiJian { width: 35px; height: 16px; background-position: -220px 0; }
:is(.cross-site-page, .cross-site-layer, .erp-dialog) .icon_youXian { width: 35px; height: 16px; background-position: -195px -20px; }

@media (max-width: 860px) {
  .help-home,
  .help-doc,
  .plugin-doc {
    padding: 24px 16px 56px;
  }

  .plugin-cols {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .plugin-cols > div + div {
    padding-top: 16px;
    padding-left: 0;
    border-top: 1px solid var(--help-border);
    border-left: 0;
  }
}

.import-page {
  --import-primary: #006be6;
  --import-primary-hover: #4d97ee;
  --import-primary-light-5: #99c4f5;
  --import-primary-light-9: #f2f8fe;
  --import-success-light-5: #bcedcf;
  --import-success-light-9: #f7fdf9;
  --import-warning: #efbd48;
  --import-border: #e4e4e7;
  --import-fill: #f4f4f5;
  --import-fill-lighter: #fafafa;
  --import-text: #323639;
  --import-text-secondary: #909399;
  --import-text-placeholder: #a8abb2;
  --import-muted: #71717a;
  --import-danger: hsl(359.33 100% 65.1%);
  box-sizing: border-box;
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 8px 8px 16px;
  background: hsl(216 20.11% 95.47%);
  color: var(--import-text);
  font-size: 14px;
}

.import-switch {
  display: flex;
  flex: none;
  align-items: center;
}

.import-radio,
.import-select,
.import-input,
.import-btn,
.import-file-keyword,
.import-drop,
.import-chip,
.import-pool-item {
  box-sizing: border-box;
}

.import-radio {
  position: relative;
  height: 32px;
  margin: 0;
  padding: 0 15px;
  border: 1px solid var(--import-border);
  border-left-width: 0;
  border-radius: 0;
  background: #fff;
  color: #606266;
  font-size: 14px;
  font-weight: 500;
  line-height: 30px;
  cursor: pointer;
}

.import-radio:first-child {
  border-left-width: 1px;
  border-radius: 4px 0 0 4px;
}

.import-radio:last-child {
  border-radius: 0 4px 4px 0;
}

.import-radio.is-active {
  z-index: 1;
  border-color: var(--import-primary);
  background: var(--import-primary);
  color: #fff;
  box-shadow: -1px 0 0 0 var(--import-primary);
}

.import-radio:first-child.is-active {
  box-shadow: none;
}

.import-file-input {
  display: none;
}

.import-panel {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.import-panel[hidden] {
  display: none !important;
}

.import-toolbar {
  display: flex;
  flex: none;
  gap: 12px;
  align-items: center;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid var(--import-border);
  border-radius: 8px;
}

.import-drop {
  display: flex;
  flex: 1;
  gap: 10px;
  align-items: center;
  min-width: 0;
  height: 56px;
  padding: 0 12px;
  text-align: left;
  cursor: pointer;
  background: var(--import-fill);
  border: 1px dashed var(--import-border);
  border-radius: 8px;
  color: inherit;
  font: inherit;
}

.import-drop.is-over,
.import-drop:hover {
  background: var(--import-primary-light-9);
  border-color: var(--import-primary);
}

.import-drop.is-ready {
  background: var(--import-success-light-9);
  border-style: solid;
  border-color: var(--import-success-light-5);
}

.import-drop__mark {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  font-size: 11px;
  font-weight: 700;
  color: var(--import-primary);
  background: #fff;
  border-radius: 6px;
}

.import-drop__text {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.import-drop__name {
  overflow: hidden;
  font-size: 13px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.import-drop__meta {
  font-size: 12px;
  font-weight: 400;
  color: var(--import-text-secondary);
}

.import-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 12px;
  min-height: 0;
}

.import-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  padding: 12px;
  background: #fff;
  border: 1px solid var(--import-border);
  border-radius: 8px;
}

.import-map {
  flex: none;
}

.import-select,
.import-input {
  height: 32px;
  padding: 0 11px;
  border: 1px solid var(--import-border);
  border-radius: 4px;
  background: #fff;
  color: var(--import-text);
  font-size: 14px;
  font-weight: 400;
  line-height: 30px;
  outline: none;
}

.import-select {
  padding-right: 28px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23909399' d='M2.2 4.2 6 8l3.8-3.8'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  appearance: none;
}

.import-select:focus,
.import-input:focus {
  border-color: var(--import-primary);
}

.import-type {
  width: 140px;
  margin-bottom: 10px;
}

.import-section-head {
  display: flex;
  flex: none;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 600;
}

.import-section-head__side {
  display: flex;
  gap: 8px;
  align-items: center;
  font-weight: 400;
}

.import-section-head__count {
  font-size: 12px;
  font-weight: 400;
  color: var(--import-text-secondary);
}

.import-text-btn {
  padding: 0;
  font-size: 12px;
  color: var(--import-primary);
  cursor: pointer;
  background: transparent;
  border: 0;
}

.import-text-btn:disabled {
  color: var(--import-text-placeholder);
  cursor: default;
}

.import-hint {
  flex: none;
  margin: 0 0 8px;
  font-size: 12px;
  color: var(--import-text-secondary);
}

.import-hint.is-warn {
  color: var(--import-warning);
}

.import-chips,
.import-pool {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-content: flex-start;
}

.import-pool {
  flex: none;
  max-height: 88px;
  margin-bottom: 12px;
  padding: 8px;
  overflow: auto;
  background: var(--import-fill-lighter);
  border-radius: 6px;
}

.import-chips {
  flex: none;
  min-height: 42px;
  max-height: 96px;
  padding: 8px;
  overflow: auto;
  background: var(--import-fill-lighter);
  border-radius: 6px;
}

.import-chip,
.import-pool-item {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  height: 26px;
  padding: 0 8px;
  font-size: 12px;
  color: var(--import-text);
  cursor: pointer;
  background: #fff;
  border: 1px solid var(--import-border);
  border-radius: 4px;
}

.import-chip {
  cursor: grab;
}

.import-chip.is-key {
  background: var(--import-primary-light-9);
  border-color: var(--import-primary-light-5);
}

.import-chip.is-dragging {
  opacity: 0.45;
}

.import-chip.is-drop {
  box-shadow: -3px 0 0 var(--import-primary);
}

.import-chip__x {
  color: var(--import-text-secondary);
}

.import-letter {
  font-weight: 600;
  color: var(--import-primary);
}

.import-unmapped,
.import-empty {
  font-size: 12px;
  font-weight: 400;
  color: var(--import-text-placeholder);
}

.import-preview {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

.import-table-wrap {
  flex: 1;
  min-height: 0;
  overflow: auto;
  border: 1px solid var(--import-border);
  border-radius: 6px;
}

.import-table {
  width: max-content;
  min-width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.import-table th,
.import-table td {
  max-width: 180px;
  height: 28px;
  padding: 0 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-bottom: 1px solid var(--import-border);
}

.import-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  font-weight: 600;
  text-align: left;
  background: var(--import-fill);
}

.import-table .col-no {
  width: 36px;
  color: var(--import-text-secondary);
  text-align: right;
}

.import-preview-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 160px;
  font-size: 12px;
  color: var(--import-text-placeholder);
}

.import-import-bar {
  display: flex;
  flex: none;
  margin-top: 12px;
}

.import-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  padding: 0 15px;
  border: 1px solid var(--import-primary);
  border-radius: 4px;
  background: var(--import-primary);
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
}

.import-btn:hover:not(:disabled) {
  border-color: var(--import-primary-hover);
  background: var(--import-primary-hover);
}

.import-btn:disabled {
  border-color: var(--import-primary-light-5);
  background: var(--import-primary-light-5);
  color: #fff;
  cursor: not-allowed;
}

.import-log {
  display: flex;
  flex: none;
  flex-direction: column;
  height: 132px;
  margin-top: 8px;
}

.import-log .import-section-head {
  margin-bottom: 4px;
}

.import-log__box {
  flex: 1;
  min-height: 0;
  padding: 6px 8px;
  overflow: auto;
  font-size: 12px;
  line-height: 1.6;
  background: var(--import-fill-lighter);
  border-radius: 6px;
}

.import-log__box p {
  margin: 0;
}

.import-file-filters {
  display: flex;
  flex: none;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 12px;
  background: #fff;
  border: 1px solid var(--import-border);
  border-radius: 8px;
}

.import-file-keyword {
  display: flex;
  width: 17rem;
  height: 32px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--import-border);
  border-radius: 4px;
}

.import-file-keyword:focus-within {
  border-color: var(--import-primary);
}

.import-file-keyword input {
  flex: 1;
  min-width: 0;
  height: 100%;
  padding: 0 11px;
  border: 0;
  background: transparent;
  color: var(--import-text);
  font-size: 14px;
  outline: none;
}

.import-file-keyword input::placeholder {
  color: var(--import-text-placeholder);
}

.import-file-keyword select {
  flex: none;
  width: 72px;
  height: 100%;
  padding: 0 8px;
  border: 0;
  border-left: 1px solid var(--import-border);
  background: #fff;
  color: var(--import-text);
  font-size: 14px;
  outline: none;
}

.import-file-type {
  width: 7rem;
}

.import-file-date {
  width: 120px;
}

.import-file-dash {
  color: var(--import-muted);
}

.import-file-grid {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  padding: 8px 8px 0;
  background: #fff;
  border: 1px solid var(--import-border);
  border-radius: 8px;
}

.import-file-table-wrap {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.import-file-grid .erp-grid {
  width: 100%;
}

.import-file-actions {
  width: 80px;
  text-align: center;
}

.import-file-grid .col-name {
  min-width: 170px;
}

.import-file-grid .col-center {
  min-width: 80px;
  text-align: center;
}

.import-file-grid .col-date {
  min-width: 150px;
}

.import-file-foot {
  display: flex;
  flex: none;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  padding: 8px 16px;
}

.import-file-warn {
  font-size: 14px;
  color: var(--import-danger);
}

@media (max-width: 1100px) {
  .import-toolbar {
    flex-wrap: wrap;
  }

  .import-body {
    overflow: auto;
  }
}

#search-trade-form:has(.sales-form-page) {
  margin-bottom: 8px;
}

.sales-form-page {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 12px 16px;
  background: #fff;
  border: 1px solid var(--tblr-border-color);
  border-radius: 4px;
}

.sales-form-page.is-grow {
  height: auto;
  overflow: visible;
}

.sales-form-page__footer {
  display: flex;
  flex-shrink: 0;
  gap: 8px;
  justify-content: flex-end;
  padding-top: 12px;
}

.sales-form-page__footer.is-start {
  justify-content: flex-start;
}

.sales-form-defaults {
  display: flex;
  flex-shrink: 0;
  gap: 16px;
  align-items: center;
  margin-bottom: 12px;
  padding: 8px 12px;
  font-size: 13px;
  background: var(--tblr-bg-surface-secondary);
  border: 1px solid var(--tblr-border-color);
  border-radius: 4px;
}

.sales-form-defaults__pay {
  width: 152px;
}

.sales-form-defaults__pay.is-editable {
  display: inline-flex;
  width: 184px;
}

.sales-form-defaults__pay.is-editable > select {
  flex: 1;
  min-width: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.sales-form-defaults__edit {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 32px;
  margin-left: -1px;
  padding: 0;
  border: 1px solid var(--tblr-border-color);
  border-radius: 0 4px 4px 0;
  background: #fff;
  color: #606266;
  cursor: pointer;
}

.sales-form-defaults__edit svg {
  width: 14px;
  height: 14px;
}

.sales-form-defaults__edit:hover {
  color: #006be6;
  background: #ecf5ff;
}

.pay-mode-editor {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.pay-mode-editor__hint {
  margin: 0;
  color: var(--tblr-secondary);
  font-size: 12px;
}

.pay-mode-editor__row {
  display: flex;
  gap: 8px;
  align-items: center;
}

.pay-mode-editor__row .form-control {
  flex: 1;
  min-width: 0;
}

.pay-mode-editor__handle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #909399;
  cursor: grab;
}

.pay-mode-editor__handle svg {
  width: 16px;
  height: 16px;
}

.sales-lines--stock table {
  min-width: 1480px;
}

.sales-form-defaults .sales-lines__dec {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  margin: 0;
  color: green;
  font-size: 13px;
}

.sales-form {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) 64px minmax(0, 1fr) 64px minmax(0, 1fr) 64px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  row-gap: 8px;
}

.sales-form > label {
  margin: 0;
  color: var(--tblr-body-color);
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.sales-form > label.is-money,
.sales-form input.is-money {
  color: #006be6;
}

.sales-form .form-control,
.sales-form .form-select {
  min-width: 0;
}

.sales-form__memo {
  grid-column: span 3;
  min-width: 0;
}

.sales-lines {
  margin-top: 12px;
}

.sales-lines__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 6px;
}

.sales-lines__pair {
  display: flex;
  gap: 4px;
  align-items: center;
}

.sales-lines__add,
.sales-lines__batch {
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #fff;
  color: #606266;
  cursor: pointer;
}

.sales-lines__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
}

.sales-lines__add svg {
  width: 12px;
  height: 12px;
}

.sales-lines__batch {
  height: 24px;
  padding: 0 11px;
  font-size: 12px;
  line-height: 22px;
}

.sales-lines__add:hover,
.sales-lines__batch:hover {
  border-color: #c6e2ff;
  background: #ecf5ff;
  color: #006be6;
}

.sales-paste__label {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 8px;
  font-size: 13px;
}

.sales-paste__label select {
  width: 7rem;
}

.sales-paste__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}

.sales-paste__chip {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  height: 24px;
  padding: 0 8px;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #f5f7fa;
  font-size: 12px;
}

.sales-paste__text {
  min-height: 140px;
  font-size: 13px;
}

.batch-paste__toolbar,
.batch-paste__bar,
.batch-paste__pool {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.batch-paste__toolbar,
.batch-paste__title {
  margin-bottom: 8px;
  font-size: 12px;
}

.batch-paste__title {
  margin-top: 8px;
  color: #909399;
}

.batch-paste__file {
  width: 14rem;
}

.batch-paste__toolbar select:not(.batch-paste__file) {
  width: 7rem;
}

.batch-paste__bar,
.batch-paste__pool {
  gap: 6px;
  min-height: 32px;
}

.batch-paste__chip,
.batch-paste__pool-item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 26px;
  padding: 0 8px;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #fff;
  color: #303133;
  font-size: 12px;
  line-height: 24px;
  cursor: grab;
}

.batch-paste__pool-item {
  cursor: pointer;
}

.batch-paste__chip.is-model {
  border-color: #fab6b6;
  color: #f56c6c;
}

.batch-paste__chip.is-dragging {
  opacity: 0.45;
}

.batch-paste__chip.is-drop-target {
  box-shadow: -3px 0 0 #409eff;
}

.batch-paste__grip {
  width: 8px;
  height: 12px;
  background: repeating-linear-gradient(to bottom, #c0c4cc 0 1px, transparent 1px 3px);
}

.batch-paste__letter {
  color: #409eff;
  font-weight: 600;
}

.batch-paste__x {
  border: 0;
  background: transparent;
  color: #909399;
  cursor: pointer;
  font-size: 12px;
  line-height: 1;
}

.batch-paste__text {
  width: 100%;
  height: 96px;
  margin-top: 10px;
  padding: 6px 8px;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  font-size: 12px;
  resize: vertical;
}

.batch-paste__count {
  margin: 6px 0;
  color: #909399;
  font-size: 12px;
}

.batch-paste__count.is-warn {
  color: #e6a23c;
}

.batch-paste__table-wrap {
  max-height: 280px;
  overflow: auto;
  border: 1px solid #ebeef5;
}

.batch-paste__table {
  border-collapse: collapse;
  font-size: 12px;
}

.batch-paste__table th,
.batch-paste__table td {
  padding: 2px 4px;
  border-bottom: 1px solid #ebeef5;
  white-space: nowrap;
}

.batch-paste__table th {
  position: sticky;
  top: 0;
  background: #f5f7fa;
  font-weight: 500;
  text-align: left;
}

.batch-paste__no {
  width: 36px;
  color: #909399;
  text-align: right;
}

.batch-paste__cell {
  width: 108px;
  height: 24px;
  padding: 0 6px;
  border: 1px solid transparent;
  border-radius: 3px;
  background: transparent;
  font-size: 12px;
}

.batch-paste__cell:focus {
  border-color: #409eff;
  outline: none;
}

.sales-lines__scroll {
  overflow: auto;
  border: 1px solid var(--tblr-border-color);
  border-radius: 4px;
}

.sales-lines table {
  width: 100%;
  min-width: 2100px;
  border-collapse: collapse;
  font-size: 12px;
  table-layout: fixed;
}

.sales-lines th,
.sales-lines td {
  padding: 3px 4px;
  border-bottom: 1px solid var(--tblr-border-color);
  text-align: left;
}

.sales-lines th {
  position: sticky;
  top: 0;
  z-index: 1;
  font-weight: 500;
  color: var(--tblr-secondary);
  background: var(--tblr-bg-surface-secondary);
}

.sales-lines .col-seq {
  width: 40px;
  text-align: center;
}

.sales-lines .col-act {
  width: 32px;
}

.sales-lines .col-no {
  width: 132px;
}

.sales-lines .col-qty,
.sales-lines .col-tf,
.sales-lines .col-rate,
.sales-lines .col-year {
  width: 64px;
}

.sales-lines .col-price,
.sales-lines .col-cost,
.sales-lines .col-brand,
.sales-lines .col-encap,
.sales-lines .col-stockno,
.sales-lines .col-pkg,
.sales-lines .col-loc,
.sales-lines .col-wh,
.sales-lines .col-origin,
.sales-lines .col-mark,
.sales-lines .col-tfprice,
.sales-lines .col-batch,
.sales-lines .col-remark,
.sales-lines .col-note {
  width: 76px;
}

.sales-lines .col-user {
  width: 64px;
}

.sales-lines .col-moddate {
  width: 132px;
}

.sales-lines .col-amt {
  width: 80px;
}

.sales-lines .col-bom,
.sales-lines .col-memo,
.sales-lines .col-supplier {
  width: 96px;
}

.sales-lines .is-ro {
  overflow: hidden;
  color: var(--tblr-secondary);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sales-lines .is-amt {
  padding-right: 8px;
  font-variant-numeric: tabular-nums;
  text-align: right;
  color: #006be6;
}

.sales-lines td button {
  padding: 0;
  color: var(--tblr-danger);
  cursor: pointer;
  background: none;
  border: none;
}

.sales-lines .form-control {
  padding: 2px 6px;
  min-height: 0;
  height: 24px;
}

.hr-user-page {
  display: flex;
  flex: 1;
  gap: 8px;
  width: 100%;
  min-height: 0;
  padding: 8px;
  background: #f2f3f5;
}

.hr-user-side {
  display: grid;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  width: 220px;
  flex: none;
  min-height: 0;
}

.hr-user-main {
  display: grid;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  flex: 1;
  min-width: 0;
  min-height: 0;
}

.hr-user-main-top {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.hr-user-card {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  padding: 8px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.hr-user-card__head {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  color: #909399;
  font-size: 13px;
  font-weight: 500;
}

.hr-side-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #f4f4f5;
  color: #303133;
  cursor: pointer;
}

.hr-side-add:hover {
  color: #006be6;
  border-color: #c6e2ff;
}

.hr-user-side-table {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.hr-user-side-table .erp-grid {
  width: 100%;
  table-layout: fixed;
}

.hr-user-page .erp-grid thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 0 4px;
  background: #f4f4f5;
  color: #323539;
  text-align: center;
}

.hr-user-page .erp-grid tbody td {
  padding: 0 4px;
  overflow: hidden;
  color: #555;
  text-align: left;
  text-overflow: ellipsis;
}

.hr-user-page .erp-grid tbody td.hr-center {
  text-align: center;
}

.hr-user-page .erp-grid tbody tr:nth-child(even) > td {
  background: color-mix(in srgb, #f4f4f5 55%, #fff);
}

.hr-user-side .erp-grid tbody tr,
.hr-user-main-top .erp-grid tbody tr {
  cursor: pointer;
}

.hr-user-main-top .log-table-wrap > .erp-grid {
  width: 100%;
  min-width: 970px;
}

.hr-user-main > .search-module-panel .log-table-wrap > .erp-grid {
  width: 100%;
  min-width: 790px;
}

.hr-user-page .erp-grid tbody tr.is-current > td {
  background: #ecf5ff !important;
}

.hr-user-filters .hr-user-filter {
  width: 8rem;
}

.hr-user-filters .hr-user-keyword {
  width: 12rem;
}

.hr-super-label {
  color: #909399;
  font-size: 12px;
}

.hr-user-pager {
  justify-content: flex-end;
}

.hr-link {
  margin: 0;
  padding: 0 2px;
  border: 0;
  background: transparent;
  color: #0068cf;
  font-size: 12px;
  line-height: 20px;
  cursor: pointer;
}

.hr-link--danger {
  color: #f56c6c;
}

.hr-inline {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.hr-inline__text {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hr-inline__pen {
  display: none;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #006be6;
  cursor: pointer;
}

.hr-inline:hover .hr-inline__pen {
  display: inline-flex;
}

.hr-inline-input {
  box-sizing: border-box;
  width: 100%;
  height: 22px;
  padding: 0 4px;
  border: 1px solid #006be6;
  border-radius: 2px;
  background: #fff;
  color: inherit;
  font: inherit;
  line-height: 20px;
  outline: none;
}

.hr-account {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  max-width: 100%;
}

.hr-account > span {
  overflow: hidden;
  text-overflow: ellipsis;
}

.hr-dot {
  display: inline-block;
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #c0c4cc;
}

.hr-dot.is-on,
.hr-online.is-on .hr-dot {
  background: #22c55e;
  box-shadow: 0 0 0 3px rgb(34 197 94 / 28%);
}

.hr-online .hr-dot {
  box-shadow: none;
}

.hr-online {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 20px;
  padding: 0 7px;
  border-radius: 10px;
  background: #f3f4f6;
  color: #6b7280;
  font-size: 12px;
  font-weight: 600;
  line-height: 20px;
}

.hr-online.is-on {
  background: #dcfce7;
  color: #15803d;
}

.hr-log-refresh {
  margin-right: auto;
  padding: 0 4px;
  border: 0;
  background: none;
  color: #1677ff;
  font-size: 12px;
  line-height: 20px;
  cursor: pointer;
}

.hr-user-dialog {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.hr-user-form,
.hr-position-form {
  display: grid;
  align-items: center;
  column-gap: 8px;
  row-gap: 6px;
}

.hr-user-form {
  grid-template-columns: 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr);
}

.hr-position-form {
  grid-template-columns: 72px 200px;
}

.hr-user-form > label,
.hr-user-form > .hr-user-limit-label,
.hr-position-form > label {
  margin: 0;
  color: #909399;
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.hr-user-form > label.is-required::before,
.hr-position-form > label.is-required::before {
  content: "*";
  margin-right: 2px;
  color: #f56c6c;
}

.hr-user-form .form-control,
.hr-user-form .form-select,
.hr-position-form .form-control {
  width: 100%;
  min-width: 0;
  height: 28px;
  min-height: 28px;
  font-size: 12px;
}

.hr-user-super {
  display: flex;
  grid-column: 2 / 5;
  align-items: center;
  gap: 8px;
  min-height: 28px;
}

.hr-user-super-hint {
  color: #909399;
  font-size: 12px;
}

.hr-check {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  color: #303133;
  font-size: 12px;
}

.hr-user-hello {
  display: flex;
  grid-column: 6 / -1;
  align-items: center;
  gap: 6px;
  min-width: 0;
  color: #909399;
  font-size: 12px;
}

.hr-user-time,
.hr-user-limit {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.hr-user-time span,
.hr-user-limit span,
.hr-user-limit-label {
  color: #909399;
  font-size: 12px;
  white-space: nowrap;
}

.hr-user-time .form-control {
  flex: 1;
  width: auto;
}

.hr-user-limit .form-control {
  flex: none;
  width: 36px;
}

.hr-user-qx {
  display: flex;
  flex-direction: column;
  max-height: 42vh;
  overflow: hidden;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
}

.hr-user-qx-toolbar {
  display: flex;
  flex: none;
  align-items: center;
  gap: 10px;
  padding: 8px 10px 6px;
  border-bottom: 1px solid #e4e7ed;
  font-size: 13px;
  font-weight: 600;
}

.hr-user-qx-toolbar button {
  padding: 0;
  border: 0;
  background: none;
  color: #006be6;
  font-size: 12px;
  font-weight: 400;
  cursor: pointer;
}

.hr-user-qx-body {
  flex: 1;
  min-height: 0;
  padding: 6px 10px 8px;
  overflow: auto;
}

.hr-qx-group + .hr-qx-group {
  margin-top: 4px;
}

.hr-qx-parent {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  color: #006be6;
  font-size: 13px;
  font-weight: 600;
}

.hr-qx-children {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  align-items: center;
  padding: 0 0 4px 22px;
}

.hr-qx-child {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  margin: 0;
  padding-right: 4px;
  font-size: 12px;
  line-height: 24px;
}

.hr-qx-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hr-qx-label.is-danger {
  color: #f56c6c;
}

.hr-qx-label.is-success {
  color: #67c23a;
}

.hr-super-bind {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.hr-super-bind__who,
.hr-super-bind__lead,
.hr-super-bind__status,
.hr-super-bind__tips {
  margin: 0;
}

.hr-super-bind__who {
  font-size: 14px;
  line-height: 1.5;
}

.hr-super-bind__lead,
.hr-super-bind__status,
.hr-super-bind__tips,
.hr-super-bind__wait {
  color: #909399;
  font-size: 13px;
  line-height: 1.6;
}

.hr-super-bind__qr {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 232px;
  padding: 12px;
  border: 1px solid #ebeef5;
  border-radius: 4px;
  background: #fafafa;
}

.hr-super-bind__qr img {
  display: block;
  width: 208px;
  height: 208px;
  background: #fff;
}

.hr-super-bind__status {
  text-align: center;
}

.hr-super-bind__status.is-ok {
  color: #67c23a;
}

.hr-super-bind__status.is-warn {
  color: #f56c6c;
}

.hr-super-bind__tips {
  padding-left: 1.2em;
  font-size: 12px;
}

.invoice-filters {
  display: grid;
  grid-template-columns: 18rem max-content minmax(0, 1fr);
  column-gap: 8px;
  row-gap: 8px;
  align-items: center;
}

.invoice-filters .log-combo {
  width: 100%;
}

.invoice-filters .log-combo .form-select {
  width: 92px;
}

.invoice-selects,
.invoice-filter-actions,
.invoice-filter-tail,
.invoice-pick,
.invoice-inline {
  display: flex;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.invoice-filter-actions {
  justify-content: flex-end;
}

.invoice-filter-actions .attach-add {
  margin-left: 0;
}

.invoice-filter-tail {
  grid-column: 2 / -1;
}

.invoice-status {
  flex: none;
  width: 8.5rem;
}

.invoice-price {
  flex: none;
  width: 168px;
}

.invoice-price .form-select {
  flex: none;
  width: 64px;
}

.invoice-date {
  width: 132px;
}

.invoice-dash {
  color: #606266;
  font-size: 12px;
}

.invoice-page .erp-grid {
  width: max-content;
  min-width: 100%;
}

.invoice-page .invoice-check,
.invoice-page .invoice-actions {
  position: sticky;
  z-index: 2;
  background: #fff;
}

.invoice-page .erp-grid thead th.invoice-check,
.invoice-page .erp-grid thead th.invoice-actions {
  z-index: 5;
}

.invoice-page .invoice-check {
  left: 0;
  width: 26px;
  min-width: 26px;
  text-align: center;
}

.invoice-page .invoice-actions {
  left: 0;
  min-width: 72px;
  text-align: center;
  white-space: nowrap;
}

.invoice-page .invoice-check + .invoice-actions {
  left: 26px;
}

.invoice-page .invoice-foot {
  font-weight: 600;
}

.invoice-link,
.invoice-cell-btn {
  margin: 0;
  padding: 0 2px;
  border: 0;
  background: transparent;
  color: #0068cf;
  font-size: 12px;
  cursor: pointer;
}

.invoice-cell-btn {
  color: inherit;
  font: inherit;
}

.invoice-link--danger {
  color: red;
}

.invoice-selected {
  font-size: 12px;
  line-height: 20px;
  color: #606266;
  white-space: nowrap;
}

.invoice-selected b {
  margin-left: 4px;
  color: #0068cf;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

.invoice-selected__tax {
  margin-left: 12px;
}

.search-module-panel__pager-btn--zi,
.search-module-panel__pager-btn--zi:hover {
  color: #9832cb;
}

.invoice-req {
  color: #f56c6c;
}

.invoice-form-grid,
.invoice-issue-grid,
.invoice-out-grid {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 72px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  font-size: 12px;
}

.invoice-form-grid {
  grid-template-columns: 72px minmax(0, 1fr) 72px minmax(0, 1fr) 72px minmax(0, 1fr) 64px minmax(0, 1fr);
}

.invoice-form-grid label,
.invoice-issue-grid label,
.invoice-out-grid label {
  margin: 0;
  text-align: right;
}

.invoice-span-3 {
  grid-column: span 3;
}

.invoice-lines {
  margin-top: 8px;
}

.invoice-lines__head,
.invoice-issue__footer,
.invoice-file-row,
.invoice-file-item,
.invoice-footer-gap {
  display: flex;
  gap: 8px;
  align-items: center;
}

.invoice-lines__head {
  justify-content: space-between;
  margin-bottom: 4px;
  font-size: 12px;
}

.invoice-lines__tools {
  display: flex;
  gap: 8px;
  align-items: center;
}

.invoice-lines__add {
  width: 26px;
  height: 26px;
}

.invoice-lines__scroll {
  max-height: 280px;
  overflow: auto;
}

.invoice-lines table,
.invoice-batch {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.invoice-lines th,
.invoice-lines td,
.invoice-batch th,
.invoice-batch td {
  padding: 2px 4px;
  font-weight: 400;
  white-space: nowrap;
}

.invoice-lines .form-control {
  min-width: 72px;
  height: 26px;
  padding: 0 4px;
}

.invoice-hint {
  margin: 8px 0;
  color: #606266;
  font-size: 12px;
}

.invoice-files {
  margin-top: 8px;
  font-size: 12px;
}

.invoice-file-row {
  line-height: 24px;
}

.invoice-file-row input,
.invoice-contract-new input[type="file"] {
  font-size: 12px;
}

.invoice-footer-gap {
  flex: 1;
}

.invoice-pick-list {
  max-height: 240px;
  margin-top: 8px;
  overflow: auto;
}

.invoice-pick-row {
  display: grid;
  grid-template-columns: 1fr 1fr 80px;
  width: 100%;
  padding: 6px 0;
  border: 0;
  border-bottom: 1px solid #e4e7ed;
  background: transparent;
  font-size: 12px;
  text-align: left;
  cursor: pointer;
}

.invoice-contract-new {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 12px;
  font-size: 12px;
}

.invoice-contract-new .form-control {
  width: 160px;
}

.invoice-issue {
  flex: none;
  padding: 8px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.invoice-issue__footer {
  justify-content: flex-end;
  margin-top: 8px;
}

.invoice-errors {
  margin-top: 8px;
  color: #f56c6c;
  font-size: 12px;
}

.invoice-out-grid {
  margin-top: 8px;
}

.sales-page {
  gap: 8px;
}

.sales-switch {
  align-self: flex-start;
  flex: none;
  width: auto;
}

.sales-page .sales-switch.btn-group > .btn {
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  padding-right: 15px;
  padding-left: 15px;
}

.sales-filters {
  position: relative;
  display: grid;
  grid-template-columns: 360px 104px 72px 88px 96px auto;
  gap: 8px;
  align-items: center;
  padding: 8px 48px 8px 12px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.sales-combo {
  display: flex;
  min-width: 0;
}

.sales-combo .form-select:first-child {
  flex: none;
  width: 84px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.sales-combo .form-control {
  flex: 1;
  min-width: 0;
  border-radius: 0;
  margin-left: -1px;
}

.sales-combo .form-select:last-child {
  flex: none;
  width: 76px;
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.sales-status.is-on,
.sales-page .sales-cell-status.is-red,
.sales-page .is-red {
  color: red;
}

.sales-page .sales-cell-status.is-green,
.sales-page .is-green {
  color: green;
}

.sales-filter-actions {
  grid-column: 6;
  grid-row: 1;
}

.sales-add {
  position: absolute;
  top: 8px;
  right: 12px;
}

.sales-combo--field {
  grid-column: 1;
}

.sales-date-bar {
  display: flex;
  grid-column: 2 / -1;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.sales-date-type {
  flex: 0 0 96px;
  width: 96px;
}

.sales-date-bar .form-control {
  flex: none;
  width: 132px;
}

.sales-adv {
  grid-column: 1;
  width: 360px;
}

.sales-page [data-query]:not([hidden]) {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}

.sales-lists {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.sales-lists .log-table-wrap {
  flex: none;
  overflow-x: auto;
  overflow-y: hidden;
}

.sales-lists .log-table-wrap::-webkit-scrollbar {
  height: 8px;
}

.sales-lists .log-table-wrap::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 4px;
}

.sales-page .search-module-panel .erp-grid {
  width: max-content;
  min-width: 100%;
}

.sales-page .sales-check,
.sales-page .sales-actions {
  text-align: center;
}

.sales-main .sales-check,
.sales-main .sales-actions {
  position: sticky;
  z-index: 1;
  background: #fff;
}

.sales-main .sales-check {
  left: 0;
  width: 26px;
}

.sales-main .sales-actions {
  left: 26px;
}

.sales-main .erp-grid thead th.sales-check,
.sales-main .erp-grid thead th.sales-actions {
  z-index: 2;
}

.sales-page tr.is-current td {
  background-color: #ecf5ff;
}

.sales-page .sales-cell-status {
  width: 100%;
  height: 22px;
  padding: 0 2px;
  border: 0;
  background: transparent;
  font-size: 12px;
  line-height: 22px;
  text-align: center;
  text-align-last: center;
  cursor: pointer;
}

.sales-customer {
  display: flex;
  align-items: center;
  gap: 2px;
  min-width: 0;
}

.sales-customer > span {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sales-customer__btn {
  display: none;
  flex: none;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  line-height: 0;
  cursor: pointer;
}

.sales-page tr:hover .sales-customer__btn {
  display: inline-flex;
}

.sales-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 58px;
  padding: 6px 8px;
  border-top: 1px solid #e4e7ed;
}

.sales-pager-lead,
.sales-pager-trail {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.sales-pager-trail {
  align-items: flex-end;
}

.sales-selected-amount,
.sales-detail-qty,
.sales-totals {
  font-size: 12px;
  line-height: 20px;
  color: #909399;
  white-space: nowrap;
}

.sales-note {
  flex: none;
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
  color: #909399;
}

.sales-selected-amount b,
.sales-detail-qty b {
  margin-left: 4px;
  color: #0068cf;
}

.sales-totals {
  display: flex;
  align-items: center;
}

.sales-totals span:not(:last-child)::after {
  margin: 0 10px;
  color: #e4e7ed;
  content: "|";
}

.sales-totals b {
  margin-left: 4px;
}

.sales-totals .is-payed,
.sales-totals .is-profit {
  color: #393;
}

.sales-totals .is-unpay {
  color: red;
}

.sales-totals .is-amount {
  color: #0068cf;
}

.sales-paymode-group {
  display: inline-flex;
  gap: 2px;
  align-items: center;
}

.sales-paymode {
  width: 96px;
  height: 22px;
  min-height: 22px;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 12px;
}

.sales-detail-pager {
  min-height: 0;
  padding-top: 4px;
  padding-bottom: 4px;
}

.sales-page [data-analysis],
.sales-page [data-split] {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.sales-page [data-analysis-body],
.sales-page [data-split-body] {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.sales-side-filters {
  display: flex;
  flex: none;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.sales-side-filters .form-select,
.sales-side-filters .form-control,
.sales-side-filters .btn {
  flex: none;
  height: 32px;
}

.sales-side-filters .form-select,
.sales-tag {
  width: 120px;
}

.sales-side-filters .form-control {
  width: 132px;
}

.sales-side-filters .sales-tag {
  width: 120px;
}

.sales-kpis {
  display: grid;
  flex: none;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 8px;
}

.sales-split-upper {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.sales-ranks {
  display: grid;
  flex: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.sales-kpi,
.sales-rank,
.sales-chart {
  padding: 8px 12px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.sales-kpi {
  min-width: 0;
}

.sales-kpi__value {
  color: #303133;
}

.sales-kpi.is-warn .sales-kpi__value {
  color: #e6a23c;
}

.sales-kpi__label,
.sales-chart__legend {
  font-size: 12px;
  line-height: 20px;
  color: #909399;
}

.sales-rank__title {
  margin-bottom: 4px;
  font-size: 12px;
  font-weight: 600;
  line-height: 20px;
  color: #303133;
}

.sales-kpi__value {
  font-size: 18px;
  font-weight: 600;
  line-height: 28px;
}

.sales-kpi__change.is-up {
  color: #393;
}

.sales-kpi__change.is-down {
  color: red;
}

.sales-chart {
  width: 100%;
}

.sales-chart svg {
  width: 100%;
  height: 200px;
}

.sales-chart text {
  fill: #909399;
  font-size: 10px;
}

.sales-chart__legend {
  display: flex;
  gap: 12px;
}

.sales-chart__legend .is-sales::before,
.sales-chart__legend .is-profit::before {
  display: inline-block;
  width: 12px;
  height: 2px;
  margin-right: 4px;
  vertical-align: middle;
  content: "";
}

.sales-chart__legend .is-sales::before {
  background: #0068cf;
}

.sales-chart__legend .is-profit::before {
  background: #393;
}

.sales-rank {
  min-width: 0;
  padding: 8px 12px;
}

.sales-split-upper .sales-rank {
  flex: 1;
  min-width: 240px;
}

.log-page .sales-rank .erp-grid {
  width: 100%;
  table-layout: fixed;
}

.log-page .sales-rank .erp-grid thead th {
  position: static;
  z-index: auto;
  background: hsl(240 5% 96%);
  color: hsl(240 6% 10%);
  font-weight: 600;
  text-align: center;
}

.log-page .sales-rank .erp-grid td {
  color: #303133;
}

.log-page .sales-rank .erp-grid td:first-child {
  overflow: hidden;
  text-align: left;
  text-overflow: ellipsis;
}

.sales-rank .is-num,
.sales-page .is-num {
  text-align: right;
}

.sales-share {
  display: inline-flex;
  gap: 4px;
  margin-right: 8px;
}

.sales-doc-files {
  margin-top: 12px;
  font-size: 12px;
}

.sales-doc-files__head,
.sales-doc-files__row {
  display: flex;
  gap: 12px;
  align-items: center;
}

.sales-doc-files__upload input {
  display: none;
}

.sales-doc-files__upload,
.sales-doc-files__row button {
  padding: 0;
  border: 0;
  background: none;
  color: #0068cf;
  cursor: pointer;
}

.sales-doc-files__empty {
  margin: 4px 0 0;
  color: #909399;
}

.sync-switch {
  display: flex;
  flex: none;
}

.sync-stock-filters {
  display: contents;
}

.sync-stock-filters[hidden] {
  display: none;
}

.sync-page .sync-keyword {
  width: 13rem;
}

.sync-page .sync-type {
  width: 9rem;
}

.sync-page .sync-sync {
  width: 7rem;
}

.sync-hint {
  flex: 1 1 12rem;
  min-width: 0;
  overflow: hidden;
  color: #909399;
  font-size: 12px;
  line-height: 32px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sync-page .sync-actions {
  display: flex;
  flex: none;
  gap: 8px;
  align-items: center;
  margin-left: auto;
}

.sync-page .sync-actions .attach-add,
.sync-page .sync-upload {
  margin-left: 0;
}

.sync-page .erp-grid .erp-grid__actions {
  width: auto;
  min-width: 56px;
  overflow: visible;
}

.sync-page .erp-grid .sync-actions-wide {
  min-width: 150px;
}

.sync-page .sync-upload {
  height: 32px;
}

.sync-presets {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 16px;
}

.sync-presets__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.sync-presets__label {
  flex: none;
  width: 64px;
  color: #303133;
  font-size: 13px;
}

.sync-presets__tag {
  height: 28px;
  padding: 0 10px;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
  background: #fff;
  color: #606266;
  font-size: 13px;
  line-height: 26px;
  cursor: pointer;
}

.sync-presets__tag.is-on {
  border-color: #0068cf;
  background: #ecf5ff;
  color: #0068cf;
}

.sync-type-form {
  grid-template-columns: 96px minmax(0, 1fr);
}

.sync-type-form label.is-required::before,
.sync-stock-form label.is-required::before {
  margin-right: 4px;
  color: #f56c6c;
  content: "*";
}

.sync-stock-form label.is-row-start {
  grid-column: 1;
}

.sync-stock-form .quote-form__combo {
  width: 100%;
}

.sync-note {
  margin: 8px 0 0;
  color: #909399;
  font-size: 12px;
}

.sync-file {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.sync-file input {
  display: none;
}

.sync-file__name {
  overflow: hidden;
  color: #909399;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sync-preview h4 {
  margin: 12px 0 4px;
  font-size: 13px;
  font-weight: 500;
}

.sync-preview .erp-grid {
  margin-bottom: 8px;
}

.sync-preview-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  font-size: 13px;
}

.sync-preview-stat {
  padding: 4px 12px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
}

.sync-preview-stat b.is-danger {
  color: #f56c6c;
}

.sync-preview-stat b.is-primary {
  color: #0068cf;
}

.sync-pick__bar {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 8px;
}

.sync-pick__bar .form-control {
  flex: 1;
  min-width: 0;
}

.sync-pick__table {
  max-height: 320px;
  overflow: auto;
  border: 1px solid #ebeef5;
}

.sync-pick__table tbody tr {
  cursor: pointer;
}

.self-page {
  gap: 8px;
}

.self-view:not([hidden]) {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.self-page [data-self-sales]:not(:has(.sales-form-page)),
.self-page [data-self-stock]:not(:has(.sales-form-page)) {
  display: none;
}

.self-filters {
  display: grid;
  grid-template-columns: 18rem 18rem max-content minmax(0, 1fr);
  column-gap: 8px;
  row-gap: 8px;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.self-filters .log-combo {
  width: 100%;
  max-width: none;
}

.self-filters .log-combo .form-select {
  width: 92px;
}

.self-filters .form-control,
.self-filters .form-select,
.self-filters .btn,
.self-stale-bar .form-control,
.self-stale-bar .btn {
  height: 32px;
}

.self-query-btn,
.self-filter-actions {
  display: flex;
  align-items: center;
}

.self-filter-actions {
  justify-content: flex-end;
}

.self-flags {
  grid-column: 2 / 5;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.self-count .form-select {
  width: 72px;
  height: 24px;
}

.self-stale-bar {
  display: flex;
  flex: none;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.self-stale-keyword {
  width: 16rem;
}

.self-stale-label {
  color: #606266;
  font-size: 13px;
}

.self-stale-link {
  padding: 0;
  color: #0068cf;
  font-size: 12px;
  line-height: 25px;
  background: none;
  border: 0;
  cursor: pointer;
}

.self-page .search-module-panel .erp-grid {
  width: max-content;
  min-width: 100%;
  table-layout: auto;
}

.self-page [data-query] .erp-grid th,
.self-page [data-query] .erp-grid td {
  height: 25px;
  max-height: 25px;
  padding: 0 4px;
  line-height: 23px;
}

.self-page [data-query] .erp-grid .erp-model-cell,
.self-page [data-query] .erp-grid .erp-cell-action-group,
.self-page [data-query] .erp-grid .erp-cell-action-link,
.self-page [data-query] .erp-grid .self-stale-link {
  min-height: 0;
  height: auto;
  line-height: 23px;
}

.self-page [data-query] .erp-grid thead th {
  text-align: center;
}

.self-page [data-query] .erp-grid tbody tr:nth-child(even) > td {
  background: #f7f7f8;
}

.self-page .self-check,
.self-page .self-actions {
  position: sticky;
  z-index: 2;
  background: #fff;
  text-align: center;
}

.self-page .erp-grid thead th.self-check,
.self-page .erp-grid thead th.self-actions {
  z-index: 5;
}

.self-page .self-check {
  left: 0;
  width: 26px;
  min-width: 26px;
}

.self-page .self-actions {
  left: 26px;
}

.self-page .erp-grid tfoot td {
  position: sticky;
  bottom: 0;
  z-index: 1;
  background: #f5f7fa;
  font-weight: 600;
  line-height: 25px;
}

.self-page .erp-grid tfoot td.self-check,
.self-page .erp-grid tfoot td.self-actions {
  z-index: 4;
  background: #f5f7fa;
}

.self-stock-value {
  margin-left: 8px;
  font-size: 12px;
  line-height: 20px;
  color: #909399;
  white-space: nowrap;
}

.self-stock-value__item + .self-stock-value__item {
  margin-left: 12px;
}

.self-stock-value__item b {
  font-weight: 600;
}

.self-stock-value__item--sale b {
  color: #0068cf;
}

.self-stock-value__item--purchase b {
  color: #d46b08;
}

.self-stock-value__item--qty b {
  color: #15803d;
}

.self-split-head {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 12px;
  font-size: 12px;
  line-height: 20px;
}

.self-split-head b {
  font-weight: 600;
}

.self-split-line {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) 56px minmax(0, 1fr) 56px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  margin-bottom: 8px;
}

.self-split-line > label {
  margin: 0;
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.self-split-line > label.is-danger {
  color: #f56c6c;
}

.self-merge-note {
  margin: 0 0 8px;
  color: #393;
  font-size: 12px;
  line-height: 20px;
}

.self-partner {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.self-partner-note {
  display: flex;
  flex: none;
  flex-wrap: wrap;
  gap: 6px 8px;
  align-items: center;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid #7ac6ff;
  border-radius: 10px;
  background: #e6f6ff;
  color: rgb(50 54 57 / 88%);
  font-size: 14px;
  line-height: 22px;
}

.self-partner-note__arrow {
  color: rgb(50 54 57 / 45%);
}

.self-partner-note b {
  font-weight: 600;
}

.self-partner-split {
  display: flex;
  flex: 1 1 0;
  gap: 8px;
  min-height: 0;
}

.self-partner-col {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  min-height: 0;
}

.self-partner-col--people {
  flex: 3 1 270px;
  min-width: 270px;
}

.self-partner-col--editor {
  flex: 2.6 1 210px;
  min-width: 210px;
}

.self-partner-col--list {
  flex: 6.4 1 400px;
  min-width: 360px;
}

.self-partner-card {
  flex: none;
  padding: 12px;
  border: 1px solid #e4e7ed;
  border-radius: 8px;
  background: #fff;
}

.self-partner-card--editor {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

.self-partner-form {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.self-partner-person-row,
.self-partner-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.self-partner-person-row .form-control {
  flex: 1;
  min-width: 0;
}

.self-partner-table {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  min-height: 0;
  padding: 8px 8px 0;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
}

.self-partner-grid {
  width: 100%;
  margin: 0;
  table-layout: fixed;
  border-collapse: collapse;
  color: #303133;
  font-size: 12px;
}

.self-partner-grid col.self-partner-wx {
  width: 72px;
}

.self-partner-grid col.self-partner-check {
  width: 42px;
}

.self-partner-grid col.self-partner-tag {
  width: 22%;
}

.self-partner-grid col.self-partner-time {
  width: 108px;
}

.self-partner-grid--people col.self-partner-op {
  width: 120px;
}

.self-partner-grid:not(.self-partner-grid--people) col.self-partner-op {
  width: 76px;
}

.self-partner-grid th,
.self-partner-grid td {
  height: 25px;
  padding: 0 4px;
  overflow: hidden;
  border: 0;
  border-bottom: 1px solid #ebeef5;
  font-weight: 400;
  line-height: 25px;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: middle;
  background: #fff;
}

.self-partner-grid thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f4f4f5;
  color: #303133;
  font-weight: 600;
  text-align: center;
}

.self-partner-grid tbody tr:hover > td {
  background: #ffffeb;
}

.self-partner-grid .self-partner-check {
  width: 42px;
  text-align: center;
}

.self-partner-grid .self-partner-op {
  position: sticky;
  right: 0;
  z-index: 2;
  overflow: visible;
  text-align: left;
  text-overflow: clip;
  background: #fff;
  box-shadow: -4px 0 6px -4px rgb(0 0 0 / 12%);
}

.self-partner-grid thead th.self-partner-op {
  z-index: 3;
  background: #f4f4f5;
}

.self-partner-grid tbody tr:hover > td.self-partner-op {
  background: #ffffeb;
}

.self-partner-filters {
  display: flex;
  flex: none;
  gap: 8px;
  margin-bottom: 8px;
}

.self-partner-filters .form-control {
  flex: 1;
  height: 32px;
  min-width: 0;
}

.self-partner-shares {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
  overflow: auto;
}

.self-partner-share {
  display: flex;
  gap: 8px;
  align-items: center;
}

.self-partner-share__name {
  flex: none;
  max-width: 40%;
  overflow: hidden;
  font-size: 13px;
  line-height: 32px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.self-partner-share .form-control {
  flex: 1;
  min-width: 0;
}

.self-partner-share__unit {
  flex: none;
  font-size: 13px;
  line-height: 32px;
}

.self-partner-meter {
  display: flex;
  gap: 8px;
  align-items: center;
}

.self-partner-meter__bar {
  flex: 1;
  height: 8px;
  overflow: hidden;
  background: #ebeef5;
  border-radius: 4px;
}

.self-partner-meter__bar > span {
  display: block;
  height: 100%;
  background: #409eff;
}

.self-partner-meter__bar.is-ok > span {
  background: #67c23a;
}

.self-partner-meter__bar.is-over > span {
  background: #f56c6c;
}

.self-partner-meter__text {
  flex: none;
  color: #606266;
  font-size: 12px;
  white-space: nowrap;
}

.self-partner-empty {
  color: #909399;
}

.self-partner-row-actions {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}

.self-partner-table .search-module-panel__pager {
  flex: none;
  padding: 6px 0 8px;
  border-top: 1px solid #ebeef5;
}

.self-partner-bind p {
  margin: 0 0 8px;
}

.self-partner-qr {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 232px;
  margin-bottom: 8px;
  padding: 12px;
  background: #fafafa;
  border: 1px solid #ebeef5;
  border-radius: 4px;
}

.self-partner-qr img {
  width: 208px;
  height: 208px;
  background: #fff;
}

.self-partner-bind__status {
  margin: 0 0 8px;
  color: #909399;
  font-size: 13px;
  text-align: center;
}

.self-partner-bind__status.is-ok {
  color: #67c23a;
}

.self-partner-bind__status.is-warn {
  color: #f56c6c;
}

.self-partner-bind__tips {
  margin: 0;
  padding-left: 1.2em;
  color: #909399;
  font-size: 12px;
  line-height: 1.6;
}

.bom-filters {
  display: grid;
  grid-template-columns: 18rem max-content 220px minmax(0, 1fr);
  column-gap: 8px;
  align-items: center;
  padding: 8px;
  border: 1px solid #e4e7ed;
  border-radius: 4px;
  background: #fff;
}

.bom-filters__status,
.bom-filters__dates,
.bom-filters__add {
  display: flex;
  gap: 8px;
  align-items: center;
}

.bom-filters__status .form-select {
  width: 8.5rem;
}

.bom-filters__dates .form-control {
  width: 96px;
}

.bom-filters__add {
  justify-content: flex-end;
}

.bom-page .search-module-panel .erp-grid {
  width: 100%;
  table-layout: fixed;
}

.bom-page.log-page .erp-grid thead th {
  background: #f4f4f5;
  color: #32383e;
  font-weight: 600;
  text-align: left;
}

.bom-page.log-page .erp-grid th,
.bom-page.log-page .erp-grid td {
  padding: 0 4px;
  color: #32383e;
}

.bom-page .erp-grid thead th.bom-col-act,
.bom-page .erp-grid td.bom-col-act {
  text-align: center;
}

.bom-page .erp-grid thead th.bom-col-act {
  color: #0000ff;
}

.bom-page .erp-grid thead th.bom-col-num,
.bom-page .erp-grid td.bom-col-num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.bom-page .erp-grid td.red { color: red; }
.bom-page .erp-grid td.blueshen { color: #0000ff; }
.bom-page .erp-grid td.green2 { color: green; }
.bom-page .erp-grid td.default { color: #555; }

.bom-page .erp-grid tbody tr:nth-child(even) > td {
  background: #f7f7f8;
}

.bom-page .log-table-wrap {
  position: relative;
}

.bom-page .bom-empty {
  position: absolute;
  inset: 25px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #909399;
  font-size: 12px;
  pointer-events: none;
}

.bom-page .bom-empty[hidden] {
  display: none;
}

.bom-page .bom-empty.is-error {
  color: #f56c6c;
}

.bom-form-page {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  padding: 12px 16px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 8px;
}

.bom-form-page__loading {
  margin: 12px;
}

.bom-head {
  display: grid;
  flex-shrink: 0;
  grid-template-columns: 64px minmax(0, 1fr) 64px minmax(0, 1fr) 64px minmax(0, 1fr) 64px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
  row-gap: 8px;
}

.bom-head > label {
  margin: 0;
  color: var(--tblr-body-color);
  font-size: 12px;
  line-height: 28px;
  text-align: right;
}

.bom-head__customer,
.bom-model {
  display: flex;
  min-width: 0;
}

.bom-head__customer .form-control,
.bom-model .form-control {
  min-width: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.bom-icon-btn {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 28px;
  padding: 0;
  border: 1px solid #dcdfe6;
  border-left: 0;
  border-radius: 0 4px 4px 0;
  background: #fff;
  color: #606266;
  cursor: pointer;
}

.bom-icon-btn:disabled {
  color: #c0c4cc;
  cursor: not-allowed;
}

.bom-head__memo {
  grid-column: span 5;
  min-width: 0;
}

.bom-status {
  display: flex;
  align-items: center;
  height: 28px;
}

.bom-status__tag {
  padding: 0 8px;
  font-size: 12px;
  line-height: 22px;
  color: #606266;
  background: #f4f4f5;
  border-radius: 4px;
}

.bom-status__tag[data-status="1"] {
  color: #67c23a;
  background: #f0f9eb;
}

.bom-status__tag[data-status="2"] {
  color: #409eff;
  background: #ecf5ff;
}

.bom-status__tag[data-status="4"] {
  color: #e6a23c;
  background: #fdf6ec;
}

.bom-status__tag[data-status="3"] {
  color: #909399;
}

.bom-tax {
  display: flex;
  gap: 6px;
  align-items: center;
  min-width: 0;
}

.bom-tax__check {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  margin: 0;
  font-size: 12px;
  white-space: nowrap;
}

.bom-tax .form-control {
  width: 64px;
}

.bom-tax > span {
  font-size: 12px;
  color: #909399;
}

.bom-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
  margin-top: 12px;
}

.bom-lines {
  display: flex;
  flex: 0 0 380px;
  flex-direction: column;
  min-height: 0;
}

.bom-lines__head,
.bom-form__footer {
  display: flex;
  flex-shrink: 0;
  gap: 8px;
  align-items: center;
}

.bom-lines__head {
  justify-content: space-between;
  margin-bottom: 6px;
  font-size: 13px;
}

.bom-lines__tools {
  display: flex;
  gap: 8px;
  align-items: center;
}

.bom-lines__scroll,
.bom-ref__scroll {
  flex: 1;
  min-height: 0;
  overflow: auto;
}

.bom-lines__scroll {
  border: 1px solid #dcdfe6;
  border-radius: 4px;
}

.bom-lines table,
.bom-ref table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.bom-lines table {
  min-width: 1080px;
  table-layout: fixed;
}

.bom-lines th,
.bom-lines td,
.bom-ref th,
.bom-ref td {
  padding: 3px 4px;
  border-bottom: 1px solid #ebeef5;
  text-align: left;
}

.bom-lines th,
.bom-ref th {
  position: sticky;
  top: 0;
  z-index: 1;
  font-weight: 500;
  color: #606266;
  background: #f5f7fa;
}

.bom-lines tr.is-active > td {
  background: #ecf5ff;
}

.bom-lines .col-seq { width: 40px; text-align: center; }
.bom-lines .col-act { width: 36px; text-align: center; }
.bom-lines .col-no { width: 188px; }
.bom-lines .col-qty,
.bom-lines .col-year { width: 64px; }
.bom-lines .col-brand,
.bom-lines .col-encap { width: 80px; }
.bom-lines .col-price,
.bom-lines .col-net { width: 76px; }
.bom-lines .col-memo { width: 120px; }

.bom-lines .form-control {
  padding: 0 6px;
  height: 24px;
}

.bom-lines .is-num,
.bom-lines .is-net {
  padding-right: 8px;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.bom-lines .is-net { color: #409eff; }
.bom-lines .is-short { color: #f56c6c; }

.bom-lines .col-act button,
.bom-alloc button {
  padding: 0;
  color: #f56c6c;
  cursor: pointer;
  background: none;
  border: none;
}

.bom-lines .col-act button:disabled,
.bom-alloc button:disabled {
  color: #c0c4cc;
  cursor: not-allowed;
}

.bom-alloc-row td {
  padding: 6px 8px 8px 44px;
  background: #fafafa;
}

.bom-alloc {
  display: flex;
  gap: 12px;
  align-items: center;
  min-height: 28px;
  color: #606266;
}

.bom-alloc + .bom-alloc { margin-top: 4px; }
.bom-alloc__qty { margin-left: auto; }
.bom-alloc .form-control { width: 80px; height: 24px; }
.bom-alloc__pick { width: 280px; margin-top: 6px; }

.bom-form__footer { padding-top: 12px; }
.bom-form__footer-gap { flex: 1; }

.bom-paste-hint {
  margin: 0 0 8px;
  font-size: 12px;
  color: #909399;
}

.bom-ref {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 180px;
  overflow: hidden;
  border: 1px solid #dcdfe6;
  border-radius: 4px;
}

.bom-ref__tabs {
  display: flex;
  flex-shrink: 0;
  gap: 16px;
  padding: 0 8px;
  border-bottom: 1px solid #e4e7ed;
}

.bom-ref__tab {
  padding: 8px 0;
  border: 0;
  border-bottom: 2px solid transparent;
  background: none;
  color: #303133;
  font-size: 14px;
  cursor: pointer;
}

.bom-ref__tab.is-active {
  color: #409eff;
  border-bottom-color: #409eff;
}

.bom-ref__count {
  margin-left: 4px;
  color: #f56c6c;
}

.bom-ref__hit {
  font-weight: 600;
  color: #f60;
}

.bom-ref__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}

.bom-ref td,
.bom-ref th { white-space: nowrap; }

.bom-ref tr.is-action { cursor: pointer; }
.bom-ref tr.is-action:hover td { background: #f5f7fa; }

.bom-ref__act { width: 64px; text-align: center; }

.bom-ref__act button {
  padding: 0;
  color: #409eff;
  cursor: pointer;
  background: none;
  border: none;
}

.bom-ref__act button:disabled {
  color: #c0c4cc;
  cursor: not-allowed;
}

.bom-ref__empty,
.bom-ref__hint,
.bom-ref__note {
  margin: 0;
  padding: 8px 12px;
  font-size: 12px;
  color: #909399;
}

.bom-ref__note {
  flex-shrink: 0;
  border-top: 1px solid #ebeef5;
}

.bom-quote-frame {
  width: 100%;
  height: 640px;
  border: 1px solid #dcdfe6;
  background: #fff;
}

.workspace-page {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 12px 8px 20px;
}

.workspace-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.workspace-stat,
.workspace-card {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.workspace-stat {
  padding: 16px 20px 18px;
}

.workspace-stat.is-link {
  cursor: pointer;
}

.workspace-stat.is-link:hover {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}

.workspace-stat h3,
.workspace-card__title {
  margin: 0;
  font-weight: 500;
}

.workspace-stat h3 {
  margin-bottom: 8px;
  font-size: 16px;
}

.workspace-stat__body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.workspace-stat__amount {
  font-size: 24px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1.2;
}

.workspace-stat__count {
  margin-top: 4px;
  color: #6b7280;
  font-size: 14px;
}

.workspace-card {
  overflow: hidden;
}

.workspace-card__head,
.workspace-card > .workspace-card__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
}

.workspace-card__title {
  font-size: 18px;
}

.workspace-nav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(7.5rem, 1fr));
  gap: 1px;
  background: #e5e7eb;
  border-top: 1px solid #e5e7eb;
}

.workspace-nav__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 24px 12px;
  border: 0;
  background: #fff;
  color: inherit;
  font-size: 14px;
  cursor: pointer;
}

.workspace-nav__item:hover {
  background: #f4f4f5;
}

.workspace-ico {
  display: inline-flex;
  width: 28px;
  height: 28px;
  color: inherit;
}

.workspace-ico--lg {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}

.workspace-ico svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.workspace-tabs {
  display: inline-flex;
  align-items: center;
  padding: 4px;
  border-radius: 8px;
  background: #f4f4f5;
}

.workspace-tabs button {
  margin: 0;
  padding: 4px 12px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: inherit;
  font-size: 14px;
  line-height: 20px;
  cursor: pointer;
}

.workspace-tabs button.is-active {
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

.workspace-chart {
  position: relative;
  height: 276px;
  padding: 0 20px 20px;
  box-sizing: border-box;
}

.workspace-chart svg {
  display: block;
  max-width: 100%;
}

.workspace-chart text {
  fill: #6b7280;
  font-size: 12px;
}

.workspace-tip {
  position: absolute;
  z-index: 2;
  padding: 8px 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  color: #333;
  font-size: 12px;
  line-height: 1.5;
  pointer-events: none;
  white-space: nowrap;
}

.workspace-loading {
  padding: 28px 8px;
  color: #6b7280;
  text-align: center;
}

@media (max-width: 1100px) {
  .workspace-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .workspace-stats {
    grid-template-columns: 1fr;
  }
}

.login-page {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  min-height: 100%;
  overflow: hidden;
  background: #fff;
  color: hsl(210 6% 21%);
  user-select: none;
}

.login-brand {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  margin: 1rem 0 0 1rem;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.75rem;
}

.login-hero {
  position: relative;
  display: none;
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  background: hsl(216 20.11% 95.47%);
}

.login-hero__glow {
  position: absolute;
  inset: 0;
  background: linear-gradient(154deg, #07070915 30%, hsl(212 100% 45% / 30%) 48%, #07070915 64%);
  filter: blur(100px);
}

.login-hero__art {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  margin-right: 5rem;
}

.login-hero__art img {
  width: 40%;
  height: 16rem;
  object-fit: contain;
}

.login-panel {
  position: relative;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100%;
  padding: 2.5rem 1.5rem;
  background: #fff;
}

.login-card {
  width: 100%;
  max-width: 28rem;
  margin-top: 1.5rem;
}

.login-title {
  margin: 0 0 1.75rem;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 2.25rem;
  letter-spacing: -0.025em;
}

.login-field {
  padding-bottom: 1rem;
}

.login-input {
  display: block;
  width: 100%;
  height: 40px;
  padding: 0 12px;
  border: 1px solid hsl(240 5.88% 90%);
  border-radius: 6px;
  background: #fff;
  color: hsl(210 6% 21%);
  font-size: 14px;
  line-height: 40px;
}

.login-input::placeholder {
  color: hsl(240 3.8% 46.1%);
}

.login-input:focus {
  border-color: hsl(212 100% 45%);
  outline: none;
  box-shadow: 0 0 0 2px hsl(212 100% 45% / 20%);
}

.login-password {
  position: relative;
}

.login-password .login-input {
  padding-right: 36px;
}

.login-eye {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  height: 40px;
  padding: 0 12px;
  border: 0;
  background: transparent;
  color: hsl(210 6% 21% / 60%);
  cursor: pointer;
}

.login-eye:hover {
  color: hsl(210 6% 21%);
}

.login-field-error {
  min-height: 0;
  margin: 4px 0 0;
  color: hsl(359 100% 65%);
  font-size: 12px;
  line-height: 1.2;
}

.login-field-error:empty {
  display: none;
}

.login-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.5rem;
}

.login-remember {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: hsl(210 6% 21%);
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
}

.login-remember input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: hsl(212 100% 45%);
}

.login-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0;
  border: 0;
  background: transparent;
  color: hsl(212 100% 45%);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.25rem;
  cursor: pointer;
}

.login-link:hover {
  color: hsl(212 100% 40%);
}

.login-submit {
  width: 100%;
  height: 40px;
  border: 0;
  border-radius: 6px;
  background: hsl(212 100% 45%);
  color: hsl(0 0% 98%);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
}

.login-submit:hover {
  background: hsl(212 100% 40%);
}

.login-submit:disabled {
  cursor: wait;
  opacity: 0.7;
}

.login-qr-box {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.login-qr {
  width: 50%;
  height: auto;
}

.login-qr-msg {
  margin: 1rem 0 0;
  color: hsl(240 3.8% 46.1%);
  font-size: 14px;
  line-height: 1.4;
  text-align: center;
}

.login-qr-box .login-link {
  margin-top: 1rem;
}

.login-copy {
  position: absolute;
  bottom: 0.75rem;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: 100%;
  color: hsl(240 3.8% 46.1%);
  font-size: 14px;
  text-align: center;
}

.login-copy a {
  color: inherit;
  font-size: 12px;
  text-decoration: none;
}

.login-copy a:hover,
.login-copy span:hover {
  color: hsl(212 100% 40%);
}

@media (min-width: 992px) {
  .login-hero {
    display: block;
  }

  .login-panel {
    flex: 0 0 45%;
    padding-right: 2rem;
    padding-left: 2rem;
  }

  .login-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}

#app > .partner-statement {
  box-sizing: border-box;
  height: 100%;
  overflow: auto;
  padding: 16px;
  background: #fff;
  color: #303133;
  font-size: 14px;
}

.partner-statement h1 {
  margin: 0 0 8px;
  color: #303133;
  font-size: 18px;
  font-weight: 600;
}

.partner-statement__meta,
.partner-statement__hint,
.partner-statement__total {
  margin: 0 0 8px;
}

.partner-statement__table-wrap {
  margin: 12px 0;
  overflow-x: auto;
}

.partner-statement table {
  width: 100%;
  border-collapse: collapse;
}

.partner-statement th,
.partner-statement td {
  padding: 6px 8px;
  border-bottom: 1px solid #ebeef5;
  text-align: left;
  white-space: nowrap;
}

.partner-statement th {
  color: #909399;
  font-weight: 500;
}

.partner-statement .num {
  text-align: right;
}

.partner-statement__empty {
  color: #909399;
  text-align: center;
}

.partner-statement__total {
  font-weight: 600;
}

