:root {
  --sidebar-width: 196px;
  --topbar-height: 43px;
  --bg: #f5f5f7;
  --line: #e4e5e8;
  --line-strong: #dcdfe4;
  --text: #262a33;
  --muted: #858b98;
  --active: #1f2024;
  --orange: #f9a01b;
}

* {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  height: 100%;
  margin: 0;
}

body {
  min-width: 1360px;
  overflow: hidden;
  color: var(--text);
  background: var(--bg);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  font-size: 12px;
  line-height: 1.35;
}

button,
input,
select {
  font: inherit;
}

button {
  cursor: default;
}

.app-shell {
  position: relative;
  width: 100vw;
  height: 100vh;
}

.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 3;
  width: var(--sidebar-width);
  height: 100vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border-right: 1px solid #dfe2e7;
}

.brand {
  flex: 0 0 var(--topbar-height);
  height: var(--topbar-height);
  display: flex;
  align-items: center;
  padding: 0 18px;
  color: #111318;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
}

.menu {
  min-height: 0;
  flex: 1 1 auto;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 8px 4px 18px 0;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: #c6ceda transparent;
}

.menu::-webkit-scrollbar {
  width: 7px;
}

.menu::-webkit-scrollbar-track {
  background: transparent;
}

.menu::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: #c6ceda;
}

.menu::-webkit-scrollbar-thumb:hover {
  background: #9ea8b7;
}

.section-title {
  height: 25px;
  display: flex;
  align-items: center;
  padding-left: 18px;
  color: #8b909b;
  font-size: 11px;
}

.activity-title {
  margin-top: 7px;
}

.report-title-side {
  margin-top: 7px;
}

.menu-item {
  width: 100%;
  height: 32px;
  display: flex;
  align-items: center;
  gap: 0;
  border: 0;
  background: transparent;
  color: #3f4450;
  text-align: left;
  white-space: nowrap;
  letter-spacing: 0;
}

.menu-item::before {
  content: "";
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  margin-right: 10px;
  opacity: 0.82;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px 16px;
}

.menu-item.plain {
  width: calc(100% - 16px);
  margin: 0 8px;
  padding-left: 10px;
  border-radius: 4px;
}

.menu-item.plain.active {
  background: var(--active);
  color: #fff;
  font-weight: 600;
}

.menu-item.plain.active::before {
  opacity: 1;
  filter: invert(1) brightness(2.1);
}

.menu-group {
  margin: 1px 0;
}

.menu-parent {
  cursor: pointer;
}

.menu-group.active > .menu-parent {
  background: #eef2f7;
  color: #111827;
  font-weight: 700;
}

.menu-group.active > .menu-parent::before {
  filter: none;
}

.menu-label {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-chevron {
  flex: 0 0 auto;
  color: #8b95a5;
  font-size: 12px;
  font-weight: 800;
  transform: rotate(-90deg);
  transition: transform 0.16s ease;
}

.menu-group.open > .menu-parent .menu-chevron {
  transform: rotate(0deg);
}

.submenu {
  position: relative;
  margin-top: 1px;
  padding-left: 26px;
  display: none;
}

.menu-group.open > .submenu {
  display: block;
}

.submenu::before {
  content: "";
  position: absolute;
  top: -1px;
  bottom: 0;
  left: 26px;
  border-left: 1px solid #d9dde4;
}

.submenu .menu-item {
  position: relative;
  width: calc(100% - 16px);
  height: 30px;
  margin: 0 8px 0 8px;
  padding-left: 18px;
  border-radius: 4px;
  color: #3d424c;
}

.submenu .menu-item.active {
  background: var(--active);
  color: #fff;
  font-weight: 600;
}

.submenu .menu-item::before {
  margin-right: 8px;
  filter: none;
  transform: scale(0.88);
}

.submenu .menu-item.active::before {
  opacity: 1;
  filter: invert(1) brightness(2.1);
}

.menu-item[data-icon="home"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.3 7.1 8 2.4l5.7 4.7'/%3E%3Cpath d='M4 6.5v6.1h8V6.5'/%3E%3Cpath d='M6.7 12.6V9.2h2.6v3.4'/%3E%3C/svg%3E");
}

.menu-item[data-icon="user"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.35' stroke-linecap='round' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='5' r='2.6'/%3E%3Cpath d='M3.7 13.2c.5-2.1 2-3.3 4.3-3.3s3.8 1.2 4.3 3.3'/%3E%3C/svg%3E");
}

.menu-item[data-icon="list"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.35' stroke-linecap='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 4h7M6 8h7M6 12h7'/%3E%3Ccircle cx='3' cy='4' r='.8' fill='%233f4450' stroke='none'/%3E%3Ccircle cx='3' cy='8' r='.8' fill='%233f4450' stroke='none'/%3E%3Ccircle cx='3' cy='12' r='.8' fill='%233f4450' stroke='none'/%3E%3C/svg%3E");
}

.menu-item[data-icon="card"]::before,
.menu-item[data-icon="note"]::before,
.menu-item[data-icon="coin"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.35' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2.2' y='4' width='11.6' height='8' rx='1.2'/%3E%3Cpath d='M4.4 6.7h7.2'/%3E%3Ccircle cx='6' cy='9.6' r='.9'/%3E%3C/svg%3E");
}

.menu-item[data-icon="group"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.25' stroke-linecap='round' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='6.5' cy='5.2' r='2.1'/%3E%3Ccircle cx='11' cy='6.1' r='1.6'/%3E%3Cpath d='M2.4 13c.4-2 1.8-3 4-3 2.1 0 3.5 1 4 3M9.4 10.2c1.8.1 3 .9 3.4 2.5'/%3E%3C/svg%3E");
}

.menu-item[data-icon="key"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.35' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='5.2' cy='9.6' r='2.4'/%3E%3Cpath d='M7.3 8.4 12.6 3.1M10.4 5.3l1.4 1.4M12 3.7l1.2 1.2'/%3E%3C/svg%3E");
}

.menu-item[data-icon="link"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.35' stroke-linecap='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.8 5.2 8 4a3 3 0 0 1 4.2 4.2l-1.5 1.5a3 3 0 0 1-4 .2'/%3E%3Cpath d='M9.2 10.8 8 12a3 3 0 0 1-4.2-4.2l1.5-1.5a3 3 0 0 1 4-.2'/%3E%3C/svg%3E");
}

.menu-item[data-icon="crown"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.25' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m2.4 5 2.5 2.6L8 3.2l3.1 4.4L13.6 5l-1.1 6.7h-9L2.4 5Z'/%3E%3Cpath d='M4.1 13h7.8'/%3E%3C/svg%3E");
}

.menu-item[data-icon="shield"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.35' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 2.5 13 4v3.8c0 3-1.8 5.1-5 5.9-3.2-.8-5-2.9-5-5.9V4l5-1.5Z'/%3E%3C/svg%3E");
}

.menu-item[data-icon="wallet"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.35' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2.2' y='4.2' width='11.7' height='8.3' rx='1.3'/%3E%3Cpath d='M4.2 4.2h7.2V3H4.2a1.4 1.4 0 0 0 0 2.8h9.7'/%3E%3Cpath d='M11.1 8.6h2.8'/%3E%3C/svg%3E");
}

.menu-item[data-icon="gift"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.25' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2.5' y='6.2' width='11' height='7' rx='.9'/%3E%3Cpath d='M2.2 6.2h11.6M8 6.2v7M5.2 6.2c-1.9-1.1-1.4-3 .1-3 1.3 0 2 1.8 2.7 3M10.8 6.2c1.9-1.1 1.4-3-.1-3-1.3 0-2 1.8-2.7 3'/%3E%3C/svg%3E");
}

.menu-item[data-icon="ticket"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.25' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.5 5.1h11v2a1.4 1.4 0 0 0 0 2v2h-11v-2a1.4 1.4 0 0 0 0-2v-2Z'/%3E%3Cpath d='M6.1 5.3v5.4M9.9 6.6h1.7M9.9 9.3h1.7'/%3E%3C/svg%3E");
}

.topbar {
  position: fixed;
  inset: 0 0 auto var(--sidebar-width);
  z-index: 2;
  height: var(--topbar-height);
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #fff;
  border-bottom: 1px solid #dfe2e7;
}

.hamburger {
  width: 58px;
  height: var(--topbar-height);
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  border: 0;
  background: #fff;
}

.hamburger span {
  width: 14px;
  height: 1.6px;
  display: block;
  background: #262a32;
  border-radius: 1px;
}

.tabs {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  display: flex;
  align-items: center;
  overflow: hidden;
  white-space: nowrap;
  color: #8a909b;
}

.tab {
  height: 100%;
  display: inline-flex;
  align-items: center;
  padding: 0 21px 0 11px;
  font-size: 12px;
}

.tab b {
  margin-left: 10px;
  color: #9aa0aa;
  font-weight: 400;
}

.tab.single {
  padding-right: 11px;
}

.top-actions {
  flex: 0 0 auto;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  padding-right: 18px;
  color: #7d8390;
}

.project-label {
  margin-right: -5px;
}

.project-select,
.coin-select,
.page-size {
  height: 29px;
  border: 1px solid #d9dde4;
  border-radius: 4px;
  background: #fff;
  color: #11151c;
  padding: 0 28px 0 11px;
}

.project-select {
  width: 108px;
}

.network {
  height: 22px;
  min-width: 142px;
  padding: 0 12px;
  border: 0;
  border-radius: 13px;
  background: var(--orange);
  color: #3e2a05;
  font-size: 12px;
  font-weight: 600;
}

.icon-button,
.link-button {
  border: 0;
  background: transparent;
  color: #4b505b;
}

.icon-button {
  width: 22px;
  height: 28px;
  padding: 0;
  font-size: 18px;
  line-height: 1;
}

.link-button {
  padding: 0;
  font-size: 12px;
}

.username {
  margin-left: 2px;
}

.workspace {
  position: absolute;
  top: var(--topbar-height);
  left: var(--sidebar-width);
  right: 0;
  bottom: 0;
  overflow: hidden;
  padding: 16px 16px 0;
  background: var(--bg);
}

.panel {
  width: 100%;
  background: #fff;
  border: 1px solid var(--line-strong);
  border-radius: 5px;
  overflow: hidden;
}

.report-entry-panel {
  display: flex;
  flex-direction: column;
}

.panel.fill {
  height: calc(100vh - var(--topbar-height) - 17px);
}

.panel.short {
  height: 242px;
}

.panel.vcoin {
  height: calc(100vh - var(--topbar-height) - 17px);
}

.panel-header {
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
}

.report-entry-header {
  flex: 0 0 auto;
  gap: 18px;
  border-bottom: 1px solid var(--line-strong);
}

.entry-title-group {
  min-width: 0;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 22px;
}

.report-tabs {
  min-width: 0;
  height: 100%;
  display: flex;
  align-items: stretch;
  gap: 18px;
  overflow: hidden;
  white-space: nowrap;
}

.report-tab {
  height: 100%;
  padding: 0 0 1px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #747b87;
  font-size: 13px;
}

.report-tab.active {
  border-bottom-color: #17191f;
  color: #151922;
  font-weight: 700;
}

.report-tab:hover {
  color: #151922;
}

.panel-heading {
  color: #11151c;
  font-size: 13px;
  font-weight: 700;
}

.header-note {
  color: #8a909b;
  font-size: 14px;
  font-weight: 400;
}

.panel-body {
  flex: 1 1 auto;
  min-height: 0;
  padding: 8px 16px 0;
}

.panel.fill .panel-body {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.recent-record-layout {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.recent-summary-grid {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.recent-summary-card {
  min-height: 78px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 12px 14px;
  border: 1px solid #dfe5ee;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.recent-summary-card small {
  color: #7a8390;
  font-weight: 700;
}

.recent-summary-card strong {
  color: #1f2630;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 18px;
}

.recent-summary-card span {
  min-width: 0;
  color: #6b7280;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.recent-summary-card.blue {
  box-shadow: inset 3px 0 0 #2563eb;
}

.recent-summary-card.green {
  box-shadow: inset 3px 0 0 #16a34a;
}

.recent-summary-card.orange {
  box-shadow: inset 3px 0 0 #f97316;
}

.recent-summary-card.purple {
  box-shadow: inset 3px 0 0 #7c3aed;
}

.recent-summary-card.cyan {
  box-shadow: inset 3px 0 0 #0891b2;
}

.recent-section-scroll {
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  align-content: start;
  gap: 10px;
  padding-bottom: 12px;
  overflow: auto;
}

.recent-record-section {
  border: 1px solid #dfe5ee;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.recent-section-head {
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 12px;
  border-bottom: 1px solid #e6ebf2;
  background: #f8fafc;
}

.recent-section-head strong {
  color: #111827;
  font-size: 13px;
}

.recent-section-head span {
  color: #7a8390;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.recent-table-wrap {
  overflow: auto;
}

.recent-record-table {
  width: 100%;
  min-width: 820px;
  border-collapse: separate;
  border-spacing: 0 6px;
  table-layout: fixed;
  color: #252c38;
}

.recent-record-table th,
.recent-record-table td {
  height: 34px;
  padding: 7px 10px;
  border-bottom: 0;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.recent-record-table th {
  background: #fbfcfe;
  color: #748091;
  font-weight: 700;
}

.home-dashboard-page {
  height: 100%;
  padding: 16px;
  overflow: auto;
  background: #f4f6f9;
}

.home-dashboard-toolbar {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
  padding: 14px 16px;
  border: 1px solid #dfe6ef;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.home-dashboard-toolbar h1 {
  margin: 0 0 6px;
  color: #111827;
  font-size: 18px;
  line-height: 1;
}

.home-dashboard-toolbar span {
  color: #667085;
}

.home-range-selector {
  display: flex;
  align-items: center;
  gap: 8px;
}

.home-range-selector button {
  min-width: 104px;
  height: 38px;
  display: grid;
  align-content: center;
  gap: 2px;
  padding: 0 10px;
  border: 1px solid #dbe3ee;
  border-radius: 8px;
  background: #f8fafc;
  color: #5f6978;
  text-align: left;
}

.home-range-selector button.active {
  border-color: #111827;
  background: #111827;
  color: #fff;
}

.home-range-selector small,
.home-range-selector strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-range-selector small {
  font-weight: 700;
}

.home-range-selector strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
}

.home-time-controls {
  display: flex;
  align-items: center;
  gap: 12px;
}

.home-date-range {
  height: 42px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 8px;
  border: 1px solid #dbe3ee;
  border-radius: 9px;
  background: #f8fafc;
}

.home-date-range label {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #667085;
  font-weight: 700;
}

.home-date-range input {
  width: 132px;
  height: 30px;
  border: 1px solid #d8e0ea;
  border-radius: 6px;
  background: #fff;
  color: #111827;
  padding: 0 8px;
}

.home-date-range button {
  height: 30px;
  min-width: 54px;
  border: 0;
  border-radius: 6px;
  background: #111827;
  color: #fff;
  font-weight: 800;
}

.home-chart-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding-bottom: 16px;
}

.home-chart-card {
  min-height: 268px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  border: 1px solid #dfe6ef;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.home-chart-head {
  min-width: 0;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}

.home-chart-icon {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  font-weight: 800;
}

.home-chart-card.blue .home-chart-icon {
  background: #eaf1ff;
  color: #2563eb;
}

.home-chart-card.green .home-chart-icon {
  background: #eaf8ef;
  color: #16a34a;
}

.home-chart-card.red .home-chart-icon {
  background: #fff0f0;
  color: #dc2626;
}

.home-chart-card.orange .home-chart-icon {
  background: #fff4e5;
  color: #f97316;
}

.home-chart-card.cyan .home-chart-icon {
  background: #e8fbff;
  color: #0891b2;
}

.home-chart-card.slate .home-chart-icon {
  background: #eef2f7;
  color: #475569;
}

.home-chart-card.violet .home-chart-icon {
  background: #f3eefe;
  color: #7c3aed;
}

.home-chart-head h2 {
  margin: 0 0 4px;
  color: #111827;
  font-size: 15px;
}

.home-chart-head p {
  margin: 0;
  color: #8a94a3;
}

.home-chart-head b {
  min-width: 70px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
}

.home-chart-head b.up {
  background: #edf9f1;
  color: #128a43;
}

.home-chart-head b.down {
  background: #fff1f1;
  color: #dc2626;
}

.home-chart-legend {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.home-chart-card.violet .home-chart-legend {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-chart-legend-item {
  min-width: 0;
  height: 42px;
  display: grid;
  grid-template-columns: 8px auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 0 10px;
  border-radius: 8px;
  background: #f6f8fb;
}

.home-chart-legend-item i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #111827;
}

.home-chart-legend-item[data-home-legend="U"] i {
  background: #2563eb;
}

.home-chart-legend-item[data-home-legend="T"] i {
  background: #16a34a;
}

.home-chart-legend-item[data-home-legend="C"] i {
  background: #f97316;
}

.home-chart-legend-item[data-home-legend="释放量"] i {
  background: #7c3aed;
}

.home-chart-legend-item[data-home-legend="人数"] i {
  background: #64748b;
}

.home-chart-legend-item.people {
  border: 1px dashed #c8d1de;
  background: #fbfcfe;
}

.home-chart-legend-item em {
  color: #667085;
  font-style: normal;
  font-weight: 800;
}

.home-chart-legend-item strong {
  min-width: 0;
  overflow: hidden;
  color: #111827;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-line-canvas {
  width: 100%;
  height: 156px;
  display: block;
}

.home-chart-canvas-wrap {
  position: relative;
  min-height: 156px;
}

.home-chart-tooltip {
  position: absolute;
  z-index: 4;
  width: 164px;
  display: none;
  padding: 7px 8px;
  border: 1px solid #d6dee9;
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.1);
  pointer-events: none;
}

.home-chart-tooltip.show {
  display: grid;
  gap: 5px;
}

.home-chart-tooltip b {
  color: #111827;
}

.home-chart-tooltip span {
  min-width: 0;
  display: grid;
  grid-template-columns: 7px 42px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
}

.home-chart-tooltip i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
}

.home-chart-tooltip em {
  color: #667085;
  font-style: normal;
  font-weight: 800;
}

.home-chart-tooltip strong {
  min-width: 0;
  overflow: hidden;
  color: #111827;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.filters {
  display: flex;
  align-items: center;
  gap: 8px;
}

.field {
  display: block;
}

.field > span:first-child:not(:only-child) {
  display: block;
  margin-bottom: 7px;
  color: #626975;
}

.datebox,
.date-range-box,
.text-input {
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #d9dde4;
  border-radius: 4px;
  background: #fff;
  color: #1d222b;
  font-size: 13px;
}

.datebox {
  width: 134px;
  padding: 0 10px 0 12px;
}

.date-range-box {
  width: 280px;
  justify-content: flex-start;
  gap: 8px;
  padding: 0 10px 0 12px;
}

.range-label {
  color: #7c8490;
  font-size: 12px;
}

.date-range-box strong {
  color: #1d222b;
  font-weight: 500;
}

.date-range-box em {
  color: #9aa1ac;
  font-style: normal;
}

.date-range-box i {
  margin-left: auto;
}

.datebox i,
.date-range-box i {
  position: relative;
  width: 12px;
  height: 12px;
  display: block;
  border: 1.6px solid #161a21;
  border-radius: 1px;
}

.datebox i::before,
.date-range-box i::before {
  content: "";
  position: absolute;
  top: 2px;
  left: -1.6px;
  right: -1.6px;
  border-top: 1.6px solid #161a21;
}

.datebox i::after,
.date-range-box i::after {
  content: "";
  position: absolute;
  top: -3px;
  left: 2px;
  width: 6px;
  height: 3px;
  border-left: 1.6px solid #161a21;
  border-right: 1.6px solid #161a21;
}

.text-field {
  margin-left: 0;
}

.text-input {
  width: 170px;
  padding: 0 12px;
  color: #7b818d;
}

.search-btn {
  height: 32px;
  min-width: 46px;
  padding: 0 13px;
  border: 0;
  border-radius: 4px;
  background: #17191f;
  color: #fff;
  font-weight: 700;
}

.manual-payout-btn {
  height: 32px;
  min-width: 76px;
  padding: 0 13px;
  border: 1px solid #17191f;
  border-radius: 4px;
  background: #17191f;
  color: #fff;
  font-weight: 700;
}

.manual-select-all {
  height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  border: 1px solid #dce2eb;
  border-radius: 4px;
  background: #fff;
  color: #3d4654;
  font-size: 12px;
  white-space: nowrap;
}

.manual-select-all input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #17191f;
}

.manual-payout-btn:disabled {
  border-color: #dfe4ec;
  background: #eef2f7;
  color: #98a1ad;
}

.manual-selected-count {
  height: 32px;
  display: inline-flex;
  align-items: center;
  color: #687281;
  font-size: 12px;
  white-space: nowrap;
}

.filter-line {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}

.filter-note {
  margin-top: 10px;
  color: #8a909b;
  font-size: 13px;
}

.summary {
  padding-bottom: 7px;
  color: #4d535e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
}

.table-wrap {
  width: 100%;
}

.boxed-table {
  margin-top: 5px;
  border: 1px solid var(--line-strong);
  border-radius: 4px;
  overflow: hidden;
}

table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

thead th {
  height: 28px;
  color: #7f8693;
  font-weight: 400;
  text-align: left;
  border-bottom: 1px solid var(--line-strong);
}

tbody td {
  height: 43px;
  color: #313744;
  border-bottom: 1px solid #ecedf1;
  vertical-align: middle;
}

tbody tr:last-child td {
  border-bottom: 0;
}

th,
td {
  padding: 0 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.num,
.date,
.money,
.id-cell {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-variant-numeric: tabular-nums;
}

.muted {
  color: #8a909b;
}

.multi {
  line-height: 1.45;
  white-space: pre-line;
}

.dash {
  color: #9aa0aa;
}

.highlight td {
  background: #f0f0f2;
}

.flat-table {
  margin-top: 8px;
}

.flat-table thead th {
  border-bottom-color: #dfe2e7;
}

.flat-table tbody td {
  height: 43px;
}

.pagination {
  height: 40px;
  display: flex;
  align-items: center;
  gap: 11px;
  color: #8d939f;
}

.pagination.bottom {
  position: absolute;
  left: calc(var(--sidebar-width) + 32px);
  right: 32px;
  bottom: 1px;
}

.panel .pagination {
  position: relative;
}

.page-btn {
  height: 27px;
  padding: 0 12px;
  border: 1px solid #e3e5ea;
  border-radius: 4px;
  background: #fff;
  color: #b5bac3;
}

.page-size {
  width: 70px;
  margin-left: auto;
  color: #4d535e;
  padding-left: 10px;
}

.empty-text {
  height: 49px;
  display: flex;
  align-items: center;
  color: #8c929d;
  font-size: 13px;
  border-bottom: 0;
}

.empty-report .flat-table {
  margin-top: 8px;
}

.empty-report .pagination {
  margin-top: -1px;
}

.vcoin .panel-header {
  height: 70px;
}

.vcoin .panel-heading {
  font-size: 14px;
}

.vcoin-toolbar {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #8a909b;
  font-size: 14px;
}

.coin-select {
  width: 76px;
  height: 35px;
  color: #1f242d;
}

.vcoin .panel-body {
  padding-top: 13px;
}

.vcoin-query-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  margin-bottom: 10px;
  padding: 0 10px;
  border: 1px solid #dfe5ee;
  border-radius: 5px;
  background: #f7f9fc;
  color: #6b7280;
  font-size: 12px;
}

.vcoin-query-chip strong {
  color: #1f2630;
}

.section-caption {
  margin-bottom: 10px;
  color: #151922;
  font-size: 14px;
  font-weight: 700;
}

.v-table tbody td {
  height: 42px;
}

.divider {
  height: 1px;
  margin: 20px 0 16px;
  background: #e2e4e8;
}

.chart-title {
  margin-bottom: 13px;
  color: #1b2029;
  font-size: 13px;
  font-weight: 700;
}

.chart-wrap {
  height: 286px;
}

#priceChart {
  display: block;
  width: 100%;
  height: 268px;
}

.release-table {
  margin-top: 7px;
  border: 1px solid var(--line-strong);
  border-radius: 4px;
  overflow: hidden;
}

.release-table tbody td {
  height: 43px;
}

.release-table th:nth-child(n+2),
.release-table td:nth-child(n+2) {
  text-align: center;
}

.wage-type th:nth-child(1),
.wage-type td:nth-child(1) {
  width: 12.5%;
}

.wage-type th:nth-child(2),
.wage-type td:nth-child(2) {
  width: 27.4%;
}

.wage-type th:nth-child(3),
.wage-type td:nth-child(3) {
  width: 27.3%;
}

.wage-type th:nth-child(4),
.wage-type td:nth-child(4) {
  width: 13.6%;
}

.wage-type th:nth-child(5),
.wage-type td:nth-child(5) {
  width: 8.8%;
}

.wage-type th:nth-child(6),
.wage-type td:nth-child(6) {
  width: 10.4%;
}

.wage-table-wrap {
  overflow: auto;
  max-height: calc(100vh - 170px);
  overscroll-behavior: contain;
}

.wage-tree {
  min-width: 1140px;
  table-layout: fixed;
}

.wage-tree th,
.wage-tree td {
  width: 86px;
  padding: 0 7px;
}

.wage-tree th:nth-child(1),
.wage-tree td:nth-child(1) {
  width: 210px;
}

.wage-tree th:nth-child(2),
.wage-tree td:nth-child(2) {
  width: 98px;
}

.wage-tree th:nth-child(3),
.wage-tree td:nth-child(3) {
  width: 44px;
}

.wage-tree th:nth-child(11),
.wage-tree td:nth-child(11),
.wage-tree th:nth-child(12),
.wage-tree td:nth-child(12) {
  width: 92px;
}

.wage-tree thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  height: 30px;
  background: #fff;
  font-size: 11px;
  box-shadow: 0 1px 0 #dfe2e7;
}

.wage-tree tbody td {
  height: 48px;
  font-size: 11px;
  border-bottom: 0;
  line-height: 1.28;
}

.tree-group-cell {
  vertical-align: middle;
}

.wage-tree tbody tr + tr td {
  border-top: 0;
}

.wage-tree .child-drawer-row > td {
  height: auto;
  padding: 0;
  background: #fff;
  overflow: visible;
}

.child-drawer-row.tree-level-1 {
  --drawer-bg: #f5f6f8;
  --drawer-accent: #aeb5bf;
}

.child-drawer-row.tree-level-2 {
  --drawer-bg: #eceff3;
  --drawer-accent: #929ba8;
}

.child-drawer-row.tree-level-3 {
  --drawer-bg: #e2e7ed;
  --drawer-accent: #788390;
}

.child-drawer-row.tree-level-4 {
  --drawer-bg: #d8dfe7;
  --drawer-accent: #687484;
}

.child-drawer {
  margin: 4px 0 8px;
  padding: 9px 10px 11px 26px;
  background: var(--drawer-bg);
  box-shadow: inset 4px 0 var(--drawer-accent);
  white-space: normal;
}

.child-drawer-head {
  height: 24px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #6d7480;
  font-size: 12px;
}

.child-drawer-head span:first-child {
  color: #303641;
  font-weight: 700;
}

.child-drawer-scroll {
  max-height: 228px;
  overflow: auto;
  padding-bottom: 2px;
}

.child-wage-tree {
  min-width: 100%;
  border-collapse: separate;
  border-spacing: 0 9px;
  background: transparent;
}

.child-wage-tree tbody td {
  height: 43px;
  font-size: 10.8px;
}

.child-wage-tree .tree-row td:first-child {
  border-radius: 4px 0 0 4px;
}

.child-wage-tree .tree-row td:last-child {
  border-radius: 0 4px 4px 0;
}

.child-wage-tree .tree-row.tree-level-1 .tree-group-cell:first-child::before,
.child-wage-tree .tree-row.tree-level-2 .tree-group-cell:first-child::before,
.child-wage-tree .tree-row.tree-level-3 .tree-group-cell:first-child::before,
.child-wage-tree .tree-row.tree-level-4 .tree-group-cell:first-child::before {
  top: 50%;
  bottom: auto;
  height: 0;
  border-left: 0;
}

.stack-cell {
  padding-top: 3px;
  padding-bottom: 3px;
  vertical-align: middle;
}

.stack-line {
  display: block;
  height: 14px;
  line-height: 14px;
}

.wage-tree .tree-row td {
  background: var(--level-bg, #fff);
}

.wage-tree .tree-row.tree-level-0 {
  --level-bg: #ffffff;
  --level-accent: #1f2024;
}

.wage-tree .tree-row.tree-level-1 {
  --level-bg: #f2f3f5;
  --level-accent: #aeb5bf;
}

.wage-tree .tree-row.tree-level-2 {
  --level-bg: #e8ebef;
  --level-accent: #929ba8;
}

.wage-tree .tree-row.tree-level-3 {
  --level-bg: #dde2e8;
  --level-accent: #788390;
}

.wage-tree .tree-row.tree-level-4 {
  --level-bg: #d2d9e1;
  --level-accent: #687484;
}

.tree-row.tree-level-0 .tree-group-cell:first-child {
  border-left: 3px solid #1f2024;
}

.wage-tree .tree-row.can-expand {
  cursor: pointer;
}

.wage-tree .tree-row.expanded td {
  background: var(--level-bg);
}

.wage-tree .tree-row.expanded .tree-group-cell:first-child {
  box-shadow: inset 5px 0 #151922;
}

.tree-row.tree-level-1 .tree-group-cell:first-child,
.tree-row.tree-level-2 .tree-group-cell:first-child,
.tree-row.tree-level-3 .tree-group-cell:first-child,
.tree-row.tree-level-4 .tree-group-cell:first-child {
  box-shadow: inset 4px 0 var(--level-accent), inset 18px 0 rgba(120, 132, 150, 0.12);
}

.tree-row.tree-level-1 .tree-group-cell:first-child,
.tree-row.tree-level-2 .tree-group-cell:first-child,
.tree-row.tree-level-3 .tree-group-cell:first-child,
.tree-row.tree-level-4 .tree-group-cell:first-child {
  position: relative;
}

.tree-row.tree-level-1 .tree-group-cell:first-child::before,
.tree-row.tree-level-2 .tree-group-cell:first-child::before,
.tree-row.tree-level-3 .tree-group-cell:first-child::before,
.tree-row.tree-level-4 .tree-group-cell:first-child::before {
  content: "";
  position: absolute;
  top: -18px;
  bottom: -18px;
  left: calc(15px + (var(--row-level) * 18px));
  border-left: 1px solid var(--level-accent);
}

.tree-player {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding-left: calc(var(--level) * 18px);
  max-width: 100%;
}

.tree-level-1 .tree-player::before,
.tree-level-2 .tree-player::before,
.tree-level-3 .tree-player::before,
.tree-level-4 .tree-player::before {
  content: "";
  position: absolute;
  top: 50%;
  left: calc((var(--level) - 1) * 18px + 15px);
  width: 13px;
  border-top: 1px solid var(--level-accent);
}

.tree-level-0 .tree-player span:last-child {
  font-weight: 700;
  color: #20242d;
}

.tree-level-1 .tree-player span:last-child,
.tree-level-2 .tree-player span:last-child,
.tree-level-3 .tree-player span:last-child,
.tree-level-4 .tree-player span:last-child {
  color: #505967;
}

.tree-toggle,
.tree-spacer {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
}

.tree-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d5d9e0;
  border-radius: 2px;
  background: #fff;
  color: #2a2f3a;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.tree-level-0 td {
  font-weight: 500;
}

.coin-cell {
  color: #58606d;
  font-weight: 600;
}

.coin-cell .stack-line {
  color: #4f5764;
}

.wage-drill {
  display: grid;
  grid-template-columns: 520px minmax(0, 1fr);
  gap: 12px;
  margin-top: 0;
}

.wage-drill.no-detail {
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr);
  min-height: 0;
}

.wage-account-panel,
.wage-detail-panel {
  min-height: calc(100vh - 178px);
  border: 1px solid var(--line-strong);
  border-radius: 5px;
  background: #fff;
  overflow: hidden;
}

.wage-report-layout {
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.wage-report-layout .filter-line {
  flex: 0 0 auto;
  padding-bottom: 12px;
}

.wage-report-layout .pagination {
  flex: 0 0 40px;
}

.wage-drill.no-detail .wage-account-panel {
  min-height: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.wage-panel-title,
.wage-detail-title {
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 14px;
  border-bottom: 1px solid var(--line-strong);
  color: #151922;
  font-weight: 700;
}

.wage-panel-title span {
  color: #858b98;
  font-size: 12px;
  font-weight: 400;
}

.wage-breadcrumb {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 38px;
  padding: 7px 10px;
  border-bottom: 1px solid var(--line);
  background: #f6f7f9;
}

.wage-crumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.wage-crumb {
  height: 24px;
  display: inline-flex;
  align-items: center;
  padding: 0 9px;
  border: 0;
  border-radius: 4px;
  background: #fff;
  color: #3b4350;
  box-shadow: inset 0 0 0 1px #dfe3ea;
}

.wage-crumb.active {
  background: #1f2024;
  color: #fff;
  box-shadow: none;
}

.wage-account-toolbar {
  min-height: 36px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 4px 10px;
  border-bottom: 1px solid var(--line);
  color: #7c8490;
}

.ghost-action {
  height: 28px;
  display: inline-flex;
  align-items: center;
  border: 1px solid #dfe3ea;
  border-radius: 4px;
  background: #fff;
  color: #4d5663;
  padding: 0 10px;
}

.muted-action {
  color: #9aa1ac;
}

.wage-account-list {
  display: grid;
  gap: 5px;
  max-height: none;
  overflow: visible;
  padding: 6px 8px 8px;
  background: #f5f7fa;
}

.wage-table-shell {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  overflow: auto;
  background: #f5f7fa;
  overscroll-behavior: contain;
}

.wage-grid-row {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns:
    minmax(40px, 0.28fr)
    minmax(170px, 1.35fr)
    minmax(96px, 0.75fr)
    minmax(48px, 0.36fr)
    minmax(116px, 1fr)
    minmax(100px, 0.9fr)
    minmax(64px, 0.56fr)
    minmax(116px, 1fr)
    minmax(100px, 0.9fr)
    minmax(64px, 0.56fr)
    minmax(88px, 0.72fr)
    minmax(96px, 0.78fr)
    minmax(92px, 0.72fr);
  column-gap: 6px;
  align-items: stretch;
}

.draw-water-grid-row {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns:
    minmax(150px, 1.12fr)
    minmax(96px, 0.72fr)
    minmax(48px, 0.34fr)
    minmax(110px, 0.86fr)
    minmax(110px, 0.86fr)
    minmax(120px, 0.92fr)
    minmax(120px, 0.92fr)
    minmax(66px, 0.5fr)
    minmax(90px, 0.66fr)
    minmax(128px, 0.98fr)
    minmax(118px, 0.88fr);
  column-gap: 6px;
  align-items: stretch;
}

.wage-grid-header {
  position: sticky;
  top: 0;
  z-index: 5;
  min-height: 34px;
  padding: 0 10px;
  border-bottom: 1px solid #d8dee7;
  background: #fbfcfe;
  color: #66717f;
  box-shadow: 0 1px 0 rgba(18, 24, 32, 0.04);
}

.wage-grid-header span {
  display: flex;
  align-items: center;
  padding: 0 8px;
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.list-select-header {
  justify-content: center;
}

.list-select-header input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #17191f;
}

.wage-date-group {
  display: grid;
  gap: 4px;
}

.wage-date-group-head {
  --row-fill: #dde4ee;
  min-height: 58px;
  padding: 5px 8px;
  border-radius: 5px;
  border: 1px solid #cfd8e5;
  background: var(--row-fill);
  color: #5f6875;
}

.wage-date-group-head.clickable-date-row {
  cursor: pointer;
}

.wage-date-group-head.clickable-date-row:hover {
  border-color: #bdc8d8;
  filter: brightness(0.985);
}

.wage-summary-row {
  align-items: stretch;
  background: var(--row-fill);
}

.wage-summary-date {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  padding: 0 8px;
  background: var(--row-fill);
}

.wage-summary-date small {
  color: #222832;
  font-size: 12.5px;
  font-weight: 700;
}

.wage-summary-date strong {
  color: #2b323d;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12.5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wage-summary-row .wage-rate-cell,
.wage-summary-row .wage-grid-cell {
  background: var(--row-fill);
}

.wage-summary-row .wage-grid-cell.coin-cell {
  background: var(--row-fill);
}

.wage-summary-row .wage-date-cell {
  background: var(--row-fill);
  color: #222832;
  font-weight: 700;
}

.wage-date-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 0;
}

.wage-select-spacer,
.wage-select-box {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: var(--row-fill, #f3f5f8);
}

.wage-select-box {
  cursor: default;
}

.wage-date-select-box {
  min-height: 100%;
}

.wage-select-box input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #17191f;
  cursor: pointer;
}

.wage-date-accounts {
  display: grid;
  gap: 3px;
}

.wage-account-card {
  --row-fill: #f3f5f8;
  display: block;
  width: 100%;
  border: 1px solid #d9e0e9;
  border-radius: 6px;
  background: var(--row-fill);
  color: #2d3440;
  text-align: left;
  overflow: hidden;
}

.wage-account-card.clickable-account-card {
  cursor: pointer;
}

.wage-account-card.clickable-account-card:hover {
  border-color: #c4cedb;
  filter: brightness(0.99);
}

.wage-account-card.expanded {
  border-color: #c4cedb;
  box-shadow: inset 3px 0 #b8c3d1;
}

.wage-account-card.level-1 {
  --level-mark: #d4dce7;
  background: var(--row-fill);
}

.wage-account-card.level-2 {
  --level-mark: #c9d3df;
  background: var(--row-fill);
}

.wage-account-card.level-3,
.wage-account-card.level-4,
.wage-account-card.level-5 {
  --level-mark: #bdc8d6;
  background: var(--row-fill);
}

.wage-account-card.level-1 .wage-card-row,
.wage-account-card.level-2 .wage-card-row,
.wage-account-card.level-3 .wage-card-row,
.wage-account-card.level-4 .wage-card-row,
.wage-account-card.level-5 .wage-card-row {
  min-height: 46px;
  padding-top: 3px;
  padding-right: 7px;
  padding-bottom: 3px;
  padding-left: 7px;
}

.wage-account-card.level-1 .wage-grid-cell,
.wage-account-card.level-1 .wage-date-cell,
.wage-account-card.level-1 .wage-rate-cell,
.wage-account-card.level-2 .wage-grid-cell,
.wage-account-card.level-2 .wage-date-cell,
.wage-account-card.level-2 .wage-rate-cell,
.wage-account-card.level-3 .wage-grid-cell,
.wage-account-card.level-3 .wage-date-cell,
.wage-account-card.level-3 .wage-rate-cell,
.wage-account-card.level-4 .wage-grid-cell,
.wage-account-card.level-4 .wage-date-cell,
.wage-account-card.level-4 .wage-rate-cell,
.wage-account-card.level-5 .wage-grid-cell,
.wage-account-card.level-5 .wage-date-cell,
.wage-account-card.level-5 .wage-rate-cell {
  grid-template-rows: repeat(3, 13px);
  padding-top: 2px;
  padding-bottom: 2px;
  font-size: 9.8px;
}

.wage-account-card.level-1 .wage-grid-cell > span,
.wage-account-card.level-2 .wage-grid-cell > span,
.wage-account-card.level-3 .wage-grid-cell > span,
.wage-account-card.level-4 .wage-grid-cell > span,
.wage-account-card.level-5 .wage-grid-cell > span {
  height: 13px;
  line-height: 13px;
}

.wage-card-row {
  width: 100%;
  min-width: 0;
  min-height: 56px;
  padding: 4px 7px;
  background: var(--row-fill);
}

.wage-card-row.wage-grid-row {
  min-height: 52px;
}

.wage-card-row.draw-water-grid-row,
.wage-date-group-head.draw-water-grid-row {
  min-height: 66px;
}

.wage-card-head {
  position: relative;
  min-width: 148px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 7px 0 calc(7px + var(--level) * 18px);
  border-radius: 5px;
  background: var(--row-fill);
}

.wage-account-card:not(.level-0) .wage-card-head::before {
  content: "";
  position: absolute;
  left: calc(6px + (var(--level) - 1) * 18px);
  top: 6px;
  bottom: 6px;
  width: 3px;
  border-radius: 3px;
  background: var(--level-mark);
}

.wage-card-head strong {
  display: block;
  color: #1f252e;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wage-card-meta {
  color: #858b98;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
}

.wage-date-cell,
.wage-rate-cell,
.wage-grid-cell {
  min-width: 0;
  display: grid;
  grid-template-rows: repeat(3, 14px);
  align-content: center;
  gap: 0;
  padding: 3px 6px;
  border-radius: 4px;
  background: var(--row-fill, #f3f5f8);
  color: #202733;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10px;
}

.wage-date-cell,
.wage-rate-cell {
  display: flex;
  align-items: center;
  background: var(--row-fill, #f3f5f8);
}

.wage-grid-cell > span {
  min-width: 0;
  height: 14px;
  line-height: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wage-grid-cell.coin-cell {
  background: var(--row-fill, #f3f5f8);
  color: #4d5867;
  font-weight: 700;
}

.draw-distribution-cell {
  grid-template-rows: repeat(5, 11px);
  font-size: 9.5px;
}

.draw-distribution-cell > span {
  height: 11px;
  line-height: 11px;
}

.wage-rate-cell b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wage-card-main {
  min-width: 0;
  display: grid;
  grid-template-columns: 164px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  padding: 0;
}

.wage-card-metrics {
  min-width: 0;
  display: grid;
  grid-template-columns:
    minmax(112px, 1fr)
    minmax(94px, 0.86fr)
    minmax(68px, 0.66fr)
    minmax(112px, 1fr)
    minmax(94px, 0.86fr)
    minmax(68px, 0.66fr)
    minmax(80px, 0.72fr)
    minmax(88px, 0.78fr)
    86px;
  gap: 5px;
}

.wage-metric {
  min-height: 58px;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 4px;
  justify-content: center;
  padding: 6px 7px;
  border-radius: 5px;
  background: #f4f6f8;
}

.wage-metric small,
.wage-rate-pill small {
  color: #7c8490;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1;
}

.coin-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3px;
}

.coin-values > span {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px;
  align-items: baseline;
  min-width: 0;
}

.coin-values b {
  color: #525b68;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10px;
}

.coin-values > span > span {
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10.5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wage-rate-pill {
  min-height: 58px;
  display: grid;
  grid-template-rows: auto 1fr;
  align-items: center;
  padding: 6px 7px;
  border-radius: 5px;
  background: #f4f6f8;
}

.wage-rate-pill b {
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
}

.wage-card-actions {
  display: grid;
  align-content: center;
  gap: 4px;
  justify-items: end;
  padding-left: 8px;
}

.child-count {
  color: #6f7784;
  font-size: 10.5px;
}

.child-count b {
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.wage-child-list {
  display: grid;
  gap: 3px;
  margin: 0 0 4px;
  padding: 4px 0 0;
  border-left: 0;
}

.wage-child-list.level-2 {
  border-left-color: #a9b2c0;
}

.wage-child-list.level-3,
.wage-child-list.level-4,
.wage-child-list.level-5 {
  border-left-color: #9da7b5;
}

.wage-child-head {
  width: max-content;
  height: 22px;
  display: inline-flex;
  align-items: center;
  margin-left: calc(8px + var(--level) * 16px);
  padding: 0 8px;
  border-radius: 11px;
  background: #eef1f5;
  color: #6d7582;
  font-size: 11px;
}

.wage-overview-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 520px;
  gap: 12px;
  margin-top: 8px;
}

.wage-overview-layout.no-detail {
  grid-template-columns: minmax(0, 1fr);
}

.wage-overview-panel {
  min-height: calc(100vh - 178px);
  border: 1px solid var(--line-strong);
  border-radius: 5px;
  background: #fff;
  overflow: hidden;
}

.wage-overview-list {
  display: grid;
  gap: 10px;
  max-height: calc(100vh - 236px);
  overflow: auto;
  padding: 10px;
  background: #fbfcfd;
}

.wage-overview-date {
  display: grid;
  gap: 7px;
}

.wage-overview-date-head {
  height: 27px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 10px;
  border-radius: 4px;
  background: #eef1f5;
  color: #6f7784;
}

.wage-overview-date-head strong {
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.wage-overview-row {
  min-width: 1080px;
  min-height: 88px;
  display: grid;
  grid-template-columns: 174px minmax(0, 1fr) 70px;
  align-items: stretch;
  gap: 8px;
  padding: 9px;
  border: 1px solid #dfe4eb;
  border-radius: 6px;
  background: #fff;
  color: #2d3440;
  cursor: pointer;
}

.wage-overview-row.selected {
  border-color: #c4ccd8;
  background: #eef2f6;
  box-shadow: inset 4px 0 #1f2024;
}

.wage-overview-row.no-children {
  background: #fff;
}

.wage-overview-identity {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  padding-left: 2px;
}

.wage-overview-identity strong {
  color: #1f252e;
  font-size: 13px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wage-overview-identity span {
  color: #7c8490;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
}

.wage-overview-metrics {
  min-width: 0;
  display: grid;
  grid-template-columns:
    minmax(88px, 1fr)
    minmax(78px, 0.9fr)
    minmax(58px, 0.6fr)
    minmax(88px, 1fr)
    minmax(78px, 0.9fr)
    minmax(58px, 0.6fr)
    minmax(70px, 0.75fr)
    minmax(78px, 0.8fr)
    76px;
  gap: 5px;
}

.overview-metric {
  min-width: 0;
  display: grid;
  grid-template-rows: 18px repeat(3, 14px);
  align-content: center;
  gap: 1px;
  padding: 6px 7px;
  border-radius: 5px;
  background: #f4f6f8;
}

.overview-metric small {
  color: #6f7784;
  font-size: 11px;
  line-height: 18px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.overview-line {
  min-width: 0;
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr);
  gap: 4px;
  align-items: center;
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10.5px;
  line-height: 14px;
}

.overview-line b {
  color: #4f5764;
}

.overview-line span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.overview-metric.ratio .overview-line {
  font-size: 10px;
}

.overview-single {
  grid-template-rows: 18px minmax(0, 1fr);
  align-items: center;
}

.overview-single > b {
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
}

.wage-overview-actions {
  display: grid;
  align-content: center;
  justify-items: end;
  gap: 7px;
}

.wage-overview-actions span:first-child {
  color: #6f7784;
  font-size: 11px;
}

.wage-overview-actions b {
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.overview-enter {
  min-width: 48px;
  justify-content: center;
  padding: 0 10px;
}

.wage-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.wage-tag {
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 9px;
  border-radius: 12px;
  background: #fff;
  color: #4c5663;
  box-shadow: inset 0 0 0 1px #e1e5eb;
}

.wage-tag b,
.wage-detail-metrics b {
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.wage-empty-state {
  height: 86px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  background: #f6f7f9;
  color: #8a909b;
}

.wage-detail-title .enter-child {
  font-weight: 600;
}

.enter-child {
  height: 22px;
  display: inline-flex;
  align-items: center;
  border: 0;
  border-radius: 14px;
  background: #1f2024;
  color: #fff;
  padding: 0 12px;
}

.card-enter {
  min-width: 58px;
  justify-content: center;
  padding: 0 8px;
  font-size: 12px;
}

.enter-child.disabled {
  background: #eef0f3;
  color: #9aa1ac;
}

.wage-detail-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px;
  border-bottom: 1px solid var(--line);
  background: #f8f9fb;
}

.wage-detail-summary strong {
  display: block;
  margin-bottom: 5px;
  font-size: 14px;
}

.wage-detail-summary span {
  color: #7c8490;
}

.wage-detail-cards {
  display: grid;
  gap: 10px;
  max-height: calc(100vh - 288px);
  overflow: auto;
  padding: 12px;
}

.wage-detail-card {
  border: 1px solid #dfe4eb;
  border-radius: 7px;
  background: #fff;
  overflow: hidden;
}

.wage-detail-card-head {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 10px;
  border-bottom: 1px solid #e4e8ee;
  background: #f7f8fa;
}

.wage-detail-card-head b {
  width: 26px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #1f2024;
  color: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.wage-detail-card-head span {
  color: #858b98;
}

.wage-detail-groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  padding: 10px;
}

.metric-group {
  padding: 9px;
  border-radius: 6px;
  background: #f5f6f8;
}

.metric-group-title {
  margin-bottom: 8px;
  color: #2b323d;
  font-weight: 700;
}

.wage-detail-metrics {
  display: grid;
  gap: 6px;
}

.wage-detail-metrics span {
  min-height: 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 9px;
  border-radius: 13px;
  background: #f0f2f5;
  color: #596270;
}

.simple-report th:nth-child(1),
.simple-report td:nth-child(1) {
  width: 19%;
}

.simple-report th:nth-child(2),
.simple-report td:nth-child(2) {
  width: 21%;
}

.simple-report th:nth-child(3),
.simple-report td:nth-child(3) {
  width: 19%;
}

.simple-report th:nth-child(4),
.simple-report td:nth-child(4) {
  width: 11%;
}

.simple-report th:nth-child(5),
.simple-report td:nth-child(5) {
  width: 20.5%;
}

.simple-report th:nth-child(6),
.simple-report td:nth-child(6) {
  width: 9.5%;
}

.v-table th,
.v-table td,
.release-table th,
.release-table td {
  padding-left: 10px;
}

.menu-item[data-icon="search"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.45' stroke-linecap='round' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='7' cy='7' r='4.2'/%3E%3Cpath d='m10.3 10.3 3 3'/%3E%3C/svg%3E");
}

.menu-item[data-icon="clock"]::before {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%233f4450' stroke-width='1.35' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='5.7'/%3E%3Cpath d='M8 4.7v3.6l2.4 1.4'/%3E%3C/svg%3E");
}

.order-title-side {
  margin-top: 7px;
}

.order-page-panel {
  border: 0;
  background: transparent;
  border-radius: 0;
}

.member-page-panel {
  border: 0;
  background: transparent;
  border-radius: 0;
}

.member-page {
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow: hidden;
}

.player-account-page {
  gap: 6px;
}

.player-filter-card,
.player-list-card {
  border: 1px solid #e1e6ef;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.player-filter-card {
  flex: 0 0 auto;
  padding: 0 16px 12px;
}

.player-query-head {
  min-height: 46px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #e5eaf2;
  margin: 0 -16px 12px;
  padding: 0 16px;
}

.member-query-head {
  gap: 22px;
}

.player-query-head h1 {
  margin: 0;
  color: #111827;
  font-size: 14px;
  font-weight: 700;
}

.member-account-tabs {
  height: 46px;
  display: flex;
  align-items: stretch;
  gap: 18px;
}

.member-account-tab {
  height: 100%;
  padding: 0 0 1px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #747b87;
  font-size: 13px;
}

.member-account-tab.active {
  border-bottom-color: #17191f;
  color: #151922;
  font-weight: 700;
}

.activity-management-page {
  gap: 10px;
}

.platform-limit-page .member-query-head {
  min-height: 38px;
  gap: 18px;
  border-bottom: 0;
  margin-bottom: 0;
}

.platform-limit-page .player-filter-card {
  padding: 0 14px;
  border-radius: 10px;
}

.platform-limit-page .member-account-tabs {
  height: 38px;
}

.platform-limit-page .member-account-tab {
  font-size: 12px;
}

.platform-limit-page {
  overflow: hidden;
}

.platform-limit-page .system-config-sections {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

.platform-config-tabs {
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
}

.platform-config-tabs .member-account-tab {
  flex: 0 0 auto;
  white-space: nowrap;
}

.system-config-sections {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-bottom: 16px;
  overflow: auto;
}

.system-config-section-card {
  flex: 0 0 auto;
  min-height: 0;
}

.system-config-section-card .activity-table-scroll {
  max-height: none;
  flex: 1 1 auto;
}

.platform-limit-page[data-platform-config-page="withdraw-risk"] .system-config-section-card .activity-table-scroll {
  max-height: none;
}

.system-config-section-title {
  min-height: 34px;
  padding: 0 12px;
  border-bottom: 1px solid #e3e8f0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.system-config-section-title strong {
  color: #111827;
  font-size: 13px;
}

.system-config-section-title span {
  color: #6b7280;
  font-size: 12px;
}

.system-config-title-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.system-config-add-button {
  height: 26px;
  padding: 0 12px;
  border: 0;
  border-radius: 6px;
  background: #17191f;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.system-config-section-card .activity-table {
  padding: 4px 8px 6px;
  border-spacing: 0 4px;
}

.system-config-section-card .activity-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  height: 26px;
  line-height: 26px;
  padding: 0 8px;
  background: #f5f7fa;
  box-shadow: 0 1px 0 #e3e8f0;
}

.system-config-section-card[data-system-section="withdraw-count"] .activity-table {
  min-width: 680px;
}

.system-config-section-card[data-system-section="withdraw-count"] .activity-table th:first-child,
.system-config-section-card[data-system-section="withdraw-count"] .activity-table td:first-child {
  min-width: 150px;
}

.system-config-section-card[data-system-section="super-node-limit"] .activity-table td:nth-child(2) {
  min-width: 300px;
  white-space: normal;
}

.system-config-section-card[data-system-section="new-user-withdraw-limit"] .activity-table th:first-child,
.system-config-section-card[data-system-section="new-user-withdraw-limit"] .activity-table td:first-child {
  min-width: 170px;
}

.config-state-switch {
  width: 58px;
  height: 26px;
  padding: 0 8px 0 4px;
  border: 0;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.16s ease, box-shadow 0.16s ease;
}

.config-inline-value {
  width: 82px;
  height: 26px;
  padding: 0 6px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #111827;
  font: 700 12px/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  text-align: center;
}

.config-inline-value:hover,
.config-inline-value:focus {
  border-color: #bfdbfe;
  background: #eff6ff;
  outline: none;
}

.config-empty-value {
  color: #9ca3af;
}

.config-state-switch.is-on {
  background: #16a34a;
  box-shadow: inset 0 0 0 1px rgba(21, 128, 61, 0.2);
}

.config-state-switch.is-off {
  flex-direction: row-reverse;
  padding: 0 4px 0 8px;
  background: #9ca3af;
  box-shadow: inset 0 0 0 1px rgba(75, 85, 99, 0.2);
}

.config-state-switch-knob {
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.22);
}

.config-state-switch-label {
  line-height: 1;
}

.activity-filter-card {
  padding-bottom: 12px;
}

.activity-filter-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  align-items: end;
  gap: 10px 12px;
}

.activity-filter-actions {
  grid-column: span 1;
}

.activity-summary-row {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.activity-summary-card,
.activity-list-card {
  border: 1px solid #e1e6ef;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.activity-summary-card {
  height: 62px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
}

.activity-summary-card span {
  color: #6b7280;
  font-size: 12px;
}

.activity-summary-card strong {
  color: #111827;
  font-size: 22px;
}

.promotion-fund-card {
  padding-bottom: 12px;
}

.promotion-fund-layout {
  display: grid;
  grid-template-columns: minmax(360px, 0.95fr) minmax(420px, 1.35fr);
  gap: 12px;
}

.promotion-fund-balances {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.promotion-fund-balance {
  min-height: 76px;
  padding: 10px 12px;
  border: 1px solid #dce3ee;
  border-radius: 8px;
  background: #f8fafc;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
}

.promotion-fund-balance span,
.promotion-fund-balance em,
.promotion-send-title {
  color: #64748b;
  font-size: 12px;
  font-style: normal;
}

.promotion-fund-balance strong {
  color: #111827;
  font: 700 18px/1.1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.promotion-send-box {
  min-height: 76px;
  padding: 10px;
  border: 1px solid #dce3ee;
  border-radius: 8px;
  background: #f8fafc;
}

.promotion-send-title {
  margin-bottom: 8px;
  font-weight: 700;
}

.promotion-send-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(88px, 1fr)) 72px;
  align-items: end;
  gap: 8px;
}

.promotion-send-button {
  min-width: 0;
}

.activity-list-card {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.activity-table-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  background: #f5f7fa;
}

.activity-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 6px;
  padding: 8px;
}

.activity-table th {
  height: 34px;
  color: #64748b;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
}

.activity-table td {
  height: 46px;
  border-top: 1px solid #dce3ee;
  border-bottom: 1px solid #dce3ee;
  background: #f8fafc;
  color: #111827;
  text-align: center;
  white-space: nowrap;
}

.activity-table tbody tr:hover td {
  background: #f3f6fb;
}

.activity-table td:first-child {
  border-left: 1px solid #dce3ee;
  border-radius: 7px 0 0 7px;
  font-weight: 700;
}

.activity-table td:last-child {
  border-right: 1px solid #dce3ee;
  border-radius: 0 7px 7px 0;
}

.activity-table-action {
  height: 28px;
  padding: 0 12px;
  border: 0;
  border-radius: 6px;
  background: #eff6ff;
  color: #2563eb;
  font-weight: 700;
}

.player-filter-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(92px, 1fr));
  align-items: end;
  gap: 10px 12px;
}

.player-bulk-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 30px;
  padding: 0 2px;
}

.player-selected-pill {
  height: 24px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 12px;
  border-radius: 13px;
  background: #eef2f7;
  color: #334155;
  font-size: 12px;
  white-space: nowrap;
}

.player-selected-pill i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #9aa5b5;
}

.player-bulk-btn {
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border: 0;
  border-radius: 5px;
  background: #eef0f3;
  color: #1f252e;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}

.player-bulk-dropdown {
  position: relative;
  display: inline-flex;
}

.dropdown-trigger {
  padding-right: 10px;
}

.player-bulk-menu {
  position: absolute;
  top: calc(100% + 7px);
  right: 0;
  z-index: 20;
  width: 150px;
  display: none;
  padding: 6px 0;
  border: 1px solid #dfe5ee;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
}

.player-bulk-dropdown:hover .player-bulk-menu,
.player-bulk-dropdown:focus-within .player-bulk-menu {
  display: grid;
}

.player-bulk-menu button {
  height: 34px;
  padding: 0 13px;
  border: 0;
  background: #fff;
  color: #4b5563;
  text-align: left;
}

.player-bulk-menu button:hover {
  background: #f3f5f8;
  color: #111827;
}

.player-field {
  grid-column: span 1;
}

.player-filter-select {
  width: 100%;
  height: 36px;
  padding: 0 32px 0 12px;
  border: 1px solid #dce2eb;
  border-radius: 8px;
  background: #fff;
  color: #1f2630;
  font: inherit;
  outline: 0;
}

.player-field:first-child,
.player-field:nth-child(10),
.player-field:nth-child(11) {
  grid-column: span 2;
}

.player-filter-actions {
  grid-column: span 2;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.player-list-card {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.player-card-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  background: #f5f7fa;
}

.player-grid-row {
  width: 100%;
  min-width: 1420px;
  display: grid;
  grid-template-columns:
    34px
    minmax(170px, 1.08fr)
    minmax(96px, 0.56fr)
    minmax(138px, 0.9fr)
    minmax(138px, 0.9fr)
    minmax(138px, 0.9fr)
    minmax(138px, 0.9fr)
    minmax(138px, 0.9fr)
    minmax(148px, 0.86fr)
    minmax(52px, 0.32fr)
    minmax(86px, 0.5fr)
    minmax(210px, 0.9fr);
  column-gap: 7px;
  align-items: stretch;
}

.player-grid-header {
  position: sticky;
  top: 0;
  z-index: 4;
  min-height: 34px;
  padding: 0 10px;
  border-bottom: 1px solid #d8dee7;
  background: #fbfcfe;
  color: #66717f;
  box-shadow: 0 1px 0 rgba(18, 24, 32, 0.04);
}

.player-grid-header span {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 0 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-card-list {
  display: grid;
  gap: 5px;
  padding: 6px 8px 8px;
}

.player-account-card {
  --row-fill: #f3f5f8;
  min-height: 64px;
  padding: 6px 8px;
  border: 1px solid #d9e0e9;
  border-radius: 6px;
  background: var(--row-fill);
  color: #2d3440;
}

.player-check {
  display: flex;
  align-items: center;
  justify-content: center;
}

.player-check input {
  width: 14px;
  height: 14px;
  margin: 0;
}

.player-identity,
.player-cell,
.player-status-cell,
.player-card-actions,
.player-metric {
  min-width: 0;
  border-radius: 4px;
  background: var(--row-fill, #f3f5f8);
}

.player-identity {
  display: flex;
  align-items: center;
  padding: 0 7px;
}

.player-id-line {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
}

.player-id-line b {
  color: #5b6574;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.player-id-line strong {
  min-width: 0;
  color: #1f252e;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-metric {
  display: grid;
  grid-template-rows: repeat(3, 16px);
  align-content: center;
  gap: 2px;
  padding: 4px 8px;
}

.player-money-line {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.player-money-line i {
  width: 18px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: #e6edf7;
  color: #344052;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
}

.player-metric b {
  min-width: 0;
  color: #1f252e;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-cell,
.player-status-cell {
  display: flex;
  align-items: center;
  padding: 0 6px;
  overflow: hidden;
  color: #2f3948;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-cell.mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
}

.player-status.active {
  width: max-content;
  min-height: 21px;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border-radius: 11px;
  background: #dcfce7;
  color: #16a34a;
  box-shadow: inset 0 0 0 1px #86efac;
  font-weight: 700;
}

.player-status.frozen {
  width: max-content;
  min-height: 21px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border-radius: 11px;
  background: #fee2e2;
  color: #dc2626;
  box-shadow: inset 0 0 0 1px #fecaca;
  font-weight: 700;
}

.player-card-actions {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 10px;
  white-space: nowrap;
}

.player-card-actions button {
  height: 26px;
  min-width: 44px;
  padding: 0 10px;
  border: 1px solid #dfe5ee;
  border-radius: 6px;
  background: #fff;
  color: #2f3a4a;
  font-weight: 600;
  white-space: nowrap;
}

.player-card-actions button.danger {
  border-color: #fecaca;
  color: #dc2626;
}

.order-page-panel.fill {
  overflow: hidden;
}

.order-page {
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  color: #1f2530;
  overflow: hidden;
}

.order-report-page {
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow: hidden;
}

.order-report-head {
  flex: 0 0 auto;
  min-height: 48px;
  padding: 0 16px;
  border: 1px solid #d9e0ea;
  border-radius: 6px;
  background: #fff;
  display: flex;
  align-items: center;
  gap: 22px;
}

.order-report-head h1 {
  margin: 0;
  color: #111827;
  font-size: 14px;
  font-weight: 700;
}

.order-report-tabs {
  min-width: 0;
}

.order-report-content {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}

.order-report-content > .order-page {
  height: 100%;
}

.order-page-head {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

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

.order-title-icon {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #eef5ff;
  color: #2563eb;
  font-weight: 800;
}

.order-title h1 {
  margin: 0;
  color: #111827;
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: 0;
}

.order-title p {
  margin: 6px 0 0;
  color: #7b8492;
  font-size: 12px;
}

.order-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  color: #6f7786;
  white-space: nowrap;
}

.order-tool,
.order-segment,
.page-size-plain,
.page-numbers button,
.page-jump {
  border: 1px solid #dde3ec;
  background: #fff;
  color: #1f2630;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.order-tool {
  height: 38px;
  padding: 0 16px;
  border-radius: 10px;
  font-weight: 600;
}

.order-tool.strong {
  color: #111827;
}

.order-tool.dark {
  border-color: #20242b;
  background: #20242b;
  color: #fff;
}

.order-tool.with-caret::after {
  content: "⌄";
  margin-left: 8px;
  color: #7d8592;
}

.order-count {
  color: #7b8492;
}

.order-segment {
  height: 38px;
  display: inline-flex;
  align-items: center;
  overflow: hidden;
  border-radius: 10px;
}

.order-segment button {
  height: 100%;
  min-width: 58px;
  border: 0;
  background: transparent;
  color: #8a92a0;
  font-weight: 600;
}

.order-segment button.active {
  margin: 4px;
  height: calc(100% - 8px);
  border-radius: 8px;
  background: #eef5ff;
  color: #2563eb;
}

.order-filter-card,
.order-table-card {
  border: 1px solid #e1e6ef;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.order-filter-card {
  border-radius: 16px;
  padding: 12px 16px;
}

.self-filter-card {
  flex: 0 0 auto;
  padding: 0;
  border-radius: 4px;
  overflow: hidden;
}

.self-query-head {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 16px;
  border-bottom: 1px solid #dce2eb;
}

.self-query-tabs {
  height: 48px;
  display: inline-flex;
  align-items: stretch;
  gap: 22px;
}

.self-query-tabs button {
  position: relative;
  border: 0;
  background: transparent;
  color: #626b78;
  font-weight: 600;
  padding: 0;
}

.self-query-tabs button.active {
  color: #171c24;
  font-weight: 800;
}

.self-query-tabs button.active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  border-radius: 2px;
  background: #171c24;
}

.order-tool.compact {
  height: 32px;
  padding: 0 14px;
  border-radius: 7px;
}

.self-query-actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.order-filter-grid {
  display: grid;
  align-items: end;
  gap: 10px 12px;
}

.self-filter-grid {
  grid-template-columns: repeat(10, minmax(112px, 1fr));
  padding: 10px 16px 12px;
}

.transfer-filter-grid {
  grid-template-columns: repeat(10, minmax(110px, 1fr));
  padding: 10px 16px 12px;
}

.order-field {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.order-field em {
  position: relative;
  height: 36px;
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 0 32px 0 12px;
  border: 1px solid #dce2eb;
  border-radius: 8px;
  background: #fff;
  color: #1f2630;
  font-style: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.order-field em.placeholder {
  color: #a2a9b5;
}

.order-field i {
  position: absolute;
  right: 11px;
  top: 50%;
  width: 12px;
  height: 12px;
  transform: translateY(-50%);
  border: 1.5px solid #151922;
  border-top-width: 3px;
  border-radius: 2px;
}

.order-filter-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.self-filter-card .order-filter-actions {
  grid-column: 9 / span 2;
}

.transfer-filter-card .order-filter-actions {
  grid-column: 9 / span 2;
}

.order-simple-filter-grid {
  grid-template-columns: repeat(8, minmax(110px, 1fr));
  padding: 10px 16px 12px;
}

.order-simple-filter-grid .order-filter-actions {
  grid-column: 7 / span 2;
}

.order-reset,
.order-search {
  height: 36px;
  min-width: 74px;
  border-radius: 9px;
  font-weight: 700;
}

.order-reset {
  border: 1px solid #dde3ec;
  background: #fff;
  color: #1f2630;
}

.order-search {
  border: 0;
  background: #2563eb;
  color: #fff;
}

.order-stat-grid {
  flex: 0 0 auto;
  display: grid;
  gap: 16px;
}

.self-stat-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.transfer-stat-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.transfer-page .order-stat-card {
  min-height: 86px;
  padding: 8px 10px;
  border-radius: 8px;
}

.transfer-page .split-stat-head {
  min-height: 18px;
}

.transfer-page .split-stat-lines {
  gap: 3px;
  margin-top: 5px;
}

.transfer-page .split-stat-lines span {
  height: 20px;
  border-radius: 5px;
}

.transfer-page .split-stat-lines i {
  width: 16px;
  height: 16px;
  border-radius: 4px;
  font-size: 9px;
}

.transfer-page .split-stat-lines em {
  font-size: 10.5px;
}

.order-stat-card {
  min-height: 116px;
  display: block;
  padding: 12px;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.order-stat-card b {
  display: block;
  font-size: 21px;
  line-height: 1;
  font-weight: 650;
}

.order-stat-card small {
  display: block;
  margin-top: 6px;
  color: #7f8795;
}

.split-stat-content {
  min-width: 0;
  flex: 1 1 auto;
}

.split-stat-head {
  min-width: 0;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.split-stat-head small {
  margin: 0;
  white-space: nowrap;
}

.split-stat-head span {
  color: #8a93a1;
  font-size: 12px;
}

.split-stat-lines {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  margin-top: 8px;
}

.split-stat-lines span {
  min-width: 0;
  height: 24px;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  column-gap: 6px;
  padding: 0 6px;
  border-radius: 6px;
  background: #f5f7fa;
}

.split-stat-lines i {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  background: #fff;
  color: #667085;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
}

.split-stat-lines em {
  min-width: 0;
  color: #263040;
  font-style: normal;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  text-align: right;
  white-space: nowrap;
}

.order-stat-card.blue b {
  color: #2563eb;
}

.order-stat-card.cyan b {
  color: #0097f2;
}

.order-stat-card.green b {
  color: #16a34a;
}

.order-stat-card.red b {
  color: #dc2626;
}

.order-stat-card.blue .split-stat-lines i {
  color: #2563eb;
}

.order-stat-card.cyan .split-stat-lines i {
  color: #0097f2;
}

.order-stat-card.green .split-stat-lines i {
  color: #16a34a;
}

.order-stat-card.red .split-stat-lines i,
.order-stat-card.red .split-stat-lines em {
  color: #dc2626;
}

.transfer-stat-card {
  min-height: 82px;
  display: grid;
  align-content: center;
  gap: 8px;
}

.transfer-stat-card small {
  margin: 0;
  color: #7f8795;
  white-space: nowrap;
}

.transfer-stat-card b {
  color: #1e232b;
  font-size: 24px;
  line-height: 1;
}

.order-table-card {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  border-radius: 14px;
  overflow: hidden;
}

.self-lottery-page .order-table-card {
  flex: 1 1 auto;
  height: auto;
  min-height: 0;
}

.transfer-page .order-table-card {
  flex: 1 1 auto;
  height: auto;
  min-height: 0;
}

.order-simple-page .order-table-card {
  flex: 1 1 auto;
  min-height: 0;
}

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

.order-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  color: #202632;
  font-size: 12px;
}

.self-lottery-table {
  min-width: 0;
  table-layout: fixed;
}

.order-simple-table {
  width: 100%;
  min-width: 1040px;
  border-collapse: separate;
  border-spacing: 0 6px;
  padding: 8px;
  color: #111827;
  font-size: 12px;
}

.order-simple-table th {
  height: 34px;
  color: #64748b;
  font-weight: 500;
  text-align: center;
  white-space: nowrap;
}

.order-simple-table td {
  height: 46px;
  border-top: 1px solid #dce3ee;
  border-bottom: 1px solid #dce3ee;
  background: #f8fafc;
  text-align: center;
  white-space: nowrap;
}

.order-simple-table td:first-child {
  border-left: 1px solid #dce3ee;
  border-radius: 7px 0 0 7px;
  font-weight: 700;
}

.order-simple-table td:last-child {
  border-right: 1px solid #dce3ee;
  border-radius: 0 7px 7px 0;
}

.order-simple-action {
  height: 28px;
  padding: 0 12px;
  border: 0;
  border-radius: 6px;
  background: #eff6ff;
  color: #2563eb;
  font-weight: 700;
}

.transfer-order-table {
  min-width: 1260px;
}

.order-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  height: 46px;
  padding: 0 10px;
  border-bottom: 1px solid #eef1f5;
  background: #f8fafc;
  color: #596575;
  font-weight: 700;
  text-align: left;
  white-space: nowrap;
}

.order-table td {
  height: 48px;
  padding: 8px 10px;
  border-bottom: 1px solid #eef1f5;
  background: #fff;
  vertical-align: middle;
}

.boxed-table table,
.release-table table,
.recent-record-table,
.order-table,
.order-simple-table,
.simple-report,
.activity-table {
  border-collapse: separate;
  border-spacing: 0 7px;
  padding: 8px;
}

.boxed-table,
.release-table,
.recent-table-wrap,
.flat-table,
.order-table-wrap,
.activity-table-scroll {
  background: #f5f7fa;
}

.boxed-table thead th,
.release-table thead th,
.recent-record-table th,
.order-table th,
.order-simple-table th,
.simple-report th,
.activity-table th {
  border-bottom: 0;
  background: #f5f7fa;
  color: #64748b;
  font-weight: 600;
  text-align: center;
}

.boxed-table tbody td,
.release-table tbody td,
.recent-record-table td,
.order-table td,
.order-simple-table td,
.simple-report td,
.activity-table td {
  border-top: 1px solid #dce3ee;
  border-bottom: 1px solid #dce3ee;
  background: #f8fafc;
  text-align: center;
}

.boxed-table tbody td:first-child,
.release-table tbody td:first-child,
.recent-record-table td:first-child,
.order-table td:first-child,
.order-simple-table td:first-child,
.simple-report td:first-child,
.activity-table td:first-child {
  border-left: 1px solid #dce3ee;
  border-radius: 8px 0 0 8px;
  font-weight: 700;
}

.boxed-table tbody td:last-child,
.release-table tbody td:last-child,
.recent-record-table td:last-child,
.order-table td:last-child,
.order-simple-table td:last-child,
.simple-report td:last-child,
.activity-table td:last-child {
  border-right: 1px solid #dce3ee;
  border-radius: 0 8px 8px 0;
}

.boxed-table tbody tr:hover td,
.release-table tbody tr:hover td,
.recent-record-table tbody tr:hover td,
.order-table tbody tr:hover td,
.order-simple-table tbody tr:hover td,
.simple-report tbody tr:hover td,
.activity-table tbody tr:hover td {
  background: #f3f6fb;
}

.self-lottery-table th,
.self-lottery-table td {
  padding-right: 6px;
  padding-left: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.self-lottery-table .order-time {
  line-height: 1.18;
  white-space: normal;
}

.self-lottery-table .coin-short {
  text-align: center;
  font-weight: 700;
}

.self-lottery-table .order-action {
  width: 100%;
  justify-content: center;
  gap: 3px;
}

.self-lottery-table .order-action button {
  min-width: 0;
  height: 26px;
  padding: 0 6px;
  border-radius: 7px;
  font-size: 10.5px;
}

.self-lottery-table .order-action button.secondary {
  background: #fff7ed;
  color: #c2410c;
}

.self-order-list-shell {
  min-width: 0;
  min-height: 100%;
  background: #f5f7fa;
}

.self-order-grid-row {
  display: grid;
  grid-template-columns:
    minmax(72px, 0.88fr)
    minmax(72px, 0.82fr)
    minmax(58px, 0.62fr)
    minmax(104px, 1.02fr)
    minmax(104px, 1.02fr)
    minmax(60px, 0.62fr)
    minmax(52px, 0.48fr)
    minmax(82px, 0.82fr)
    minmax(38px, 0.36fr)
    minmax(34px, 0.32fr)
    minmax(78px, 0.78fr)
    minmax(48px, 0.45fr)
    minmax(76px, 0.74fr)
    minmax(54px, 0.48fr)
    minmax(76px, 0.7fr)
    minmax(72px, 0.66fr)
    minmax(96px, 0.9fr)
    minmax(154px, 1.05fr);
  column-gap: 6px;
  align-items: stretch;
}

.transfer-order-grid-row {
  display: grid;
  grid-template-columns:
    minmax(72px, 0.82fr)
    minmax(72px, 0.78fr)
    minmax(58px, 0.58fr)
    minmax(58px, 0.45fr)
    minmax(58px, 0.45fr)
    minmax(104px, 0.96fr)
    minmax(60px, 0.58fr)
    minmax(52px, 0.46fr)
    minmax(82px, 0.78fr)
    minmax(38px, 0.34fr)
    minmax(34px, 0.3fr)
    minmax(78px, 0.74fr)
    minmax(48px, 0.42fr)
    minmax(76px, 0.7fr)
    minmax(54px, 0.46fr)
    minmax(76px, 0.66fr)
    minmax(72px, 0.62fr)
    minmax(96px, 0.82fr)
    minmax(154px, 1.05fr);
  column-gap: 6px;
  align-items: stretch;
}

.self-order-grid-header {
  position: sticky;
  top: 0;
  z-index: 4;
  min-height: 34px;
  padding: 0 8px;
  border-bottom: 1px solid #d8dee7;
  background: #fbfcfe;
  color: #66717f;
}

.self-order-grid-header span {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 0 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.self-order-list {
  display: grid;
  gap: 5px;
  padding: 6px 8px 8px;
}

.self-order-card {
  border: 1px solid #d9e0e9;
  border-radius: 6px;
  background: #f3f5f8;
  overflow: hidden;
}

.self-order-card-row {
  min-height: 52px;
  padding: 4px 6px;
  background: #f3f5f8;
}

.self-order-cell {
  min-width: 0;
  display: flex;
  align-items: center;
  padding: 3px 6px;
  border-radius: 4px;
  background: #f3f5f8;
  color: #202733;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.self-order-cell.strong {
  color: #1f252e;
  font-weight: 700;
}

.self-order-cell.time {
  line-height: 1.18;
  white-space: normal;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10.5px;
}

.self-order-cell.num,
.self-order-cell.period,
.self-order-cell.address {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 10.5px;
}

.self-order-cell.address {
  justify-content: center;
  font-weight: 700;
}

.self-order-cell.coin {
  justify-content: center;
  color: #4d5867;
  font-weight: 800;
}

.self-order-cell.status,
.self-order-cell.actions {
  justify-content: center;
}

.self-order-cell.tx {
  gap: 6px;
}

.self-order-cell.tx .tx-value {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.self-order-cell.actions .order-action {
  width: 100%;
  justify-content: center;
  gap: 4px;
}

.self-order-cell.actions .order-action button {
  min-width: 0;
  height: 26px;
  padding: 0 7px;
  border-radius: 7px;
  font-size: 10.5px;
}

.self-order-cell.actions .order-action button.secondary {
  background: #fff7ed;
  color: #c2410c;
}

.self-order-cell.actions .order-action button.block-confirm {
  background: #edf5ff;
  color: #1d4ed8;
}

.order-detail-layer {
  position: fixed;
  inset: var(--topbar-height) 0 0 var(--sidebar-width);
  z-index: 20;
  display: flex;
  justify-content: flex-end;
}

.order-detail-mask {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(20, 22, 26, 0.48);
}

.order-detail-drawer {
  position: relative;
  z-index: 1;
  width: 544px;
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #fff;
  box-shadow: -18px 0 38px rgba(15, 23, 42, 0.22);
}

.order-detail-head {
  height: 46px;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  border-bottom: 1px solid #e2e6ee;
}

.order-detail-head strong {
  color: #111827;
  font-size: 14px;
}

.order-detail-head button {
  width: 28px;
  height: 28px;
  border: 0;
  background: transparent;
  color: #6b7280;
  font-size: 22px;
  line-height: 1;
}

.order-detail-body {
  flex: 1 1 auto;
  overflow: auto;
  padding: 0 16px 18px;
}

.fund-flow-drawer .order-detail-body {
  padding-right: 12px;
  padding-left: 12px;
}

.detail-grid {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) 76px minmax(0, 1fr);
  border-top: 1px solid #e1e5ec;
  border-left: 1px solid #e1e5ec;
}

.detail-cell {
  min-height: 36px;
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 7px 10px;
  border-right: 1px solid #e1e5ec;
  border-bottom: 1px solid #e1e5ec;
  overflow: hidden;
  overflow-wrap: anywhere;
}

.detail-cell.label {
  background: #fbfcfe;
  color: #858b98;
}

.detail-cell.value {
  background: #fff;
  color: #222936;
}

.detail-cell.value .status-pill {
  height: 22px;
  min-width: 56px;
  font-size: 11px;
}

.detail-link {
  color: #2563eb;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.detail-grid.compact .detail-cell {
  min-height: 34px;
}

.order-detail-body h2 {
  margin: 14px 0 10px;
  color: #111827;
  font-size: 12px;
}

.player-detail-drawer {
  width: 820px;
  max-width: calc(100vw - var(--sidebar-width) - 32px);
}

.player-detail-body {
  padding-top: 14px;
}

.player-detail-profile {
  min-height: 58px;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.player-detail-avatar {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #17191f;
  color: #fff;
  font-size: 16px;
  font-weight: 800;
}

.player-detail-profile strong {
  color: #151922;
  font-size: 14px;
}

.player-detail-profile p {
  margin: 4px 0 0;
  color: #5d6675;
  font-size: 12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.player-detail-state {
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border: 1px solid #9bd8b8;
  border-radius: 12px;
  background: #effaf4;
  color: #18a05a;
  font-size: 12px;
  font-weight: 700;
}

.player-detail-tabs {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  gap: 6px;
  margin: 0 -16px 12px;
  padding: 10px 16px;
  border-top: 1px solid #e7ebf1;
  border-bottom: 1px solid #e7ebf1;
  background: #fff;
  overflow-x: auto;
}

.player-detail-tabs button {
  flex: 0 0 auto;
  height: 30px;
  padding: 0 12px;
  border: 1px solid #dfe5ee;
  border-radius: 6px;
  background: #f7f9fc;
  color: #5d6675;
  font-size: 12px;
  font-weight: 700;
}

.player-detail-tabs button.active {
  border-color: #17191f;
  background: #17191f;
  color: #fff;
}

.player-detail-section {
  margin-top: 14px;
  padding-top: 2px;
}

.player-detail-section h2 {
  margin: 0 0 10px;
  color: #111827;
  font-size: 13px;
}

.player-detail-grid {
  grid-template-columns: 78px minmax(0, 1fr) 78px minmax(0, 1fr);
}

.player-detail-grid .detail-cell {
  min-height: 34px;
  padding: 6px 10px;
}

.player-detail-note,
.player-detail-chain,
.player-detail-empty {
  margin: 10px 0 0;
  color: #6b7280;
  font-size: 12px;
  line-height: 1.55;
}

.player-detail-note button {
  border: 0;
  background: transparent;
  color: #111827;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.player-recent-records {
  display: grid;
  gap: 12px;
}

.player-recent-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.player-recent-card {
  min-width: 0;
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid #dfe5ee;
  border-radius: 6px;
  background: #f8fafc;
  box-shadow: inset 3px 0 0 #94a3b8;
  cursor: pointer;
}

.player-recent-card small {
  color: #6b7280;
  font-size: 11px;
  font-weight: 800;
}

.player-recent-card strong {
  color: #1f2630;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 15px;
}

.player-recent-card span {
  color: #7a8390;
  font-size: 12px;
}

.player-recent-card.blue {
  box-shadow: inset 3px 0 0 #2563eb;
}

.player-recent-card.green {
  box-shadow: inset 3px 0 0 #16a34a;
}

.player-recent-card.orange {
  box-shadow: inset 3px 0 0 #f97316;
}

.player-recent-card.purple {
  box-shadow: inset 3px 0 0 #7c3aed;
}

.player-recent-card.cyan {
  box-shadow: inset 3px 0 0 #0891b2;
}

.player-recent-card:hover,
.player-recent-table tbody tr:hover {
  background: #eef3fa;
}

.player-recent-headline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
  color: #6b7280;
  font-size: 12px;
  cursor: pointer;
}

.player-recent-headline span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-recent-headline button {
  flex: 0 0 auto;
  height: 26px;
  padding: 0 10px;
  border: 1px solid #d7dee9;
  border-radius: 5px;
  background: #fff;
  color: #1f2937;
  font-size: 12px;
  font-weight: 800;
}

.player-recent-table {
  min-width: 760px;
}

.player-recent-table-wrap {
  overflow: auto;
}

.player-recent-table tbody tr {
  cursor: pointer;
}

.player-fund-query {
  display: grid;
  grid-template-columns: 120px 96px;
  gap: 8px;
  justify-content: start;
  padding: 10px;
  border: 1px solid #e1e5ec;
  border-radius: 6px;
  background: #f8fafc;
}

.player-fund-query label {
  min-width: 0;
  display: grid;
  gap: 4px;
  color: #7a8390;
  font-size: 11px;
  font-weight: 700;
}

.player-fund-query input {
  width: 100%;
  min-width: 0;
  height: 32px;
  padding: 0 10px;
  border: 1px solid #dfe5ee;
  border-radius: 5px;
  background: #fff;
  color: #202733;
  font-size: 12px;
  font-weight: 700;
}

.player-fund-query button {
  align-self: end;
  height: 32px;
  border: 0;
  border-radius: 5px;
  background: #17191f;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.player-fund-statbar {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}

.player-fund-statbar span {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  height: 30px;
  padding: 0 10px;
  border: 1px solid #dfe5ee;
  border-radius: 6px;
  background: #fff;
  color: #263244;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-fund-statbar b {
  color: #7a8390;
  font-size: 11px;
}

.player-fund-link-table {
  min-width: 0;
  table-layout: auto;
}

.player-fund-link-table-wrap {
  overflow-x: hidden;
}

.player-fund-link-table th,
.player-fund-link-table td {
  height: auto;
  min-height: 38px;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 1.35;
}

.fund-stack {
  display: grid;
  gap: 3px;
}

.fund-stack b {
  color: #1f2937;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
}

.fund-stack em {
  color: #6b7280;
  font-size: 11px;
  font-style: normal;
}

.tronscan-link {
  color: #2563eb;
  font-weight: 800;
  text-decoration: none;
}

.tronscan-link:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.player-tool-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.player-tool-grid button,
.player-world-tree .world-tree-actions button {
  height: 28px;
  padding: 0 10px;
  border: 0;
  border-radius: 5px;
  background: #eef0f3;
  color: #202733;
  font-size: 12px;
  font-weight: 700;
}

.player-world-tree {
  display: grid;
  gap: 10px;
  color: #6b7280;
  font-size: 12px;
}

.player-world-tree p {
  margin: 0;
}

.world-tree-overview {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.world-tree-overview span {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 6px 8px;
  border: 1px solid #dfe5ee;
  border-radius: 6px;
  background: #f7f9fc;
  color: #253044;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.world-tree-overview b {
  color: #7a8390;
  font-size: 11px;
  flex: 0 0 auto;
}

.world-tree-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.player-world-tree .danger {
  color: #e11d2e;
}

.world-tree-board {
  position: relative;
  display: grid;
  gap: 0;
  max-width: 100%;
  padding: 6px 0 4px;
  overflow: hidden;
}

.world-tree-board::before {
  display: none;
}

.world-tree-branch,
.world-tree-leaf {
  position: relative;
}

.world-tree-node {
  position: relative;
  display: grid;
  grid-template-columns: 18px 16px minmax(0, 1fr);
  align-items: center;
  min-height: 74px;
  list-style: none;
}

.world-tree-node::-webkit-details-marker {
  display: none;
}

.world-tree-node::marker {
  content: "";
}

.world-tree-children {
  position: relative;
  display: grid;
  gap: 5px;
  margin-left: 16px;
  padding-left: 9px;
  border-left: 1px solid #cdd6e3;
}

.world-tree-children > .world-tree-branch::before,
.world-tree-children > .world-tree-leaf::before {
  content: "";
  position: absolute;
  left: -9px;
  top: 23px;
  width: 9px;
  height: 1px;
  background: #cdd6e3;
}

.world-expand-btn,
.world-expand-spacer {
  width: 15px;
  height: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.world-expand-btn {
  border: 1px solid #cbd5e1;
  border-radius: 4px;
  background: #fff;
  color: #516070;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
  transform: rotate(-90deg);
  transition: transform 0.16s ease;
}

.world-tree-branch[open] > .world-tree-node .world-expand-btn {
  transform: rotate(0deg);
}

.world-node-dot {
  position: relative;
  z-index: 1;
  width: 8px;
  height: 8px;
  border: 2px solid #9aa8ba;
  border-radius: 50%;
  background: #fff;
}

.world-node-card {
  min-height: 64px;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 5px;
  padding: 6px 7px;
  border: 1px solid #dce3ed;
  border-radius: 6px;
  background: #f8fafc;
}

.world-node-main {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.world-node-card small {
  color: #7a8390;
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
}

.world-account-query {
  height: auto;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #202733;
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}

.world-node-card strong {
  min-width: 0;
  color: #202733;
  font-size: 12px;
  font-weight: 800;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.world-account-query:hover {
  color: #2563eb;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.world-node-card em {
  justify-self: end;
  padding: 1px 7px;
  border-radius: 999px;
  background: #eef2f7;
  color: #64748b;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
}

.world-node-metrics {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
}

.world-node-metric {
  min-width: 0;
  display: grid;
  gap: 1px;
  padding: 3px 4px;
  border-radius: 5px;
  background: #eef3f8;
}

.world-node-metric i {
  color: #7a8390;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.15;
}

.world-node-metric b {
  min-width: 0;
  color: #202733;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.world-tree-branch.current > .world-tree-node .world-node-dot,
.world-tree-leaf.current .world-node-dot {
  border-color: #111827;
  background: #111827;
}

.world-tree-branch.current > .world-tree-node .world-node-card,
.world-tree-leaf.current .world-node-card {
  border-color: #111827;
  background: #eef2f7;
  box-shadow: inset 3px 0 0 #111827;
}

.player-detail-table-wrap {
  border: 1px solid #e1e5ec;
  border-radius: 6px;
  overflow: hidden;
}

.player-detail-table-wrap.wide {
  overflow-x: auto;
}

.player-detail-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: #252c38;
  font-size: 12px;
}

.player-wallet-management-table {
  min-width: 620px;
}

.player-card-change-table {
  min-width: 920px;
}

.player-detail-table th,
.player-detail-table td {
  height: 32px;
  padding: 6px 10px;
  border-bottom: 1px solid #e8ecf2;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-detail-table th {
  background: #f7f9fc;
  color: #7a8390;
  font-weight: 700;
}

.player-detail-table tr:last-child td {
  border-bottom: 0;
}

.player-detail-table button {
  border: 0;
  background: transparent;
  color: #2f3a4a;
  font-weight: 700;
}

.player-note-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 50px;
  gap: 8px;
}

.player-note-row span {
  height: 34px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  border: 1px solid #dfe5ee;
  border-radius: 5px;
  color: #8a92a0;
}

.player-note-row button {
  height: 34px;
  border: 0;
  border-radius: 5px;
  background: #17191f;
  color: #fff;
  font-weight: 700;
}

.player-success-pill {
  min-width: 48px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #8bd7aa;
  border-radius: 14px;
  background: #eefaf3;
  color: #18a05a;
  font-weight: 800;
}

.odds-snapshot {
  margin: 0;
  min-height: 74px;
  padding: 12px;
  border-radius: 4px;
  background: #f0f1f4;
  color: #1f2630;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.6;
}

.red-text {
  color: #e11d2e;
}

.fund-flow-drawer {
  width: min(760px, calc(100vw - var(--sidebar-width) - 48px));
}

.fund-flow-body {
  background: #f6f8fb;
}

.fund-flow-brief {
  min-height: 44px;
  display: grid;
  gap: 4px;
  align-content: center;
  margin: 10px 0 8px;
  padding: 0 12px;
  border: 1px solid #e0e6ef;
  border-radius: 8px;
  background: #fff;
}

.fund-flow-brief b {
  color: #111827;
  font-size: 14px;
}

.fund-flow-brief span {
  color: #778293;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fund-flow-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  margin-bottom: 8px;
}

.fund-flow-summary span {
  display: grid;
  gap: 5px;
  min-height: 46px;
  align-content: center;
  padding: 0 8px;
  border: 1px solid #e0e6ef;
  border-radius: 8px;
  background: #fff;
}

.fund-flow-summary small {
  color: #808a99;
}

.fund-flow-summary b {
  color: #1f2937;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  white-space: nowrap;
}

.flow-node small {
  color: #788394;
}

.fund-flow-tree {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 8px;
}

.flow-branch {
  position: relative;
  min-width: 0;
  padding: 8px;
  border: 1px solid #dfe6ef;
  border-radius: 10px;
  background: #fff;
}

.flow-branch::before {
  content: none;
}

.flow-branch-head {
  display: grid;
  gap: 3px;
  margin-bottom: 8px;
}

.flow-branch-head strong {
  color: #1f2937;
}

.flow-branch-head span {
  color: #667085;
  overflow: hidden;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.flow-node {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 8px 9px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #f8fafc;
}

.source-node {
  position: relative;
  margin-bottom: 12px;
  background: #fff;
}

.source-node::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -13px;
  height: 12px;
  border-left: 1px solid #c1cad8;
}

.flow-node b {
  color: #111827;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.flow-node span {
  color: #667085;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.flow-branch.blue {
  border-left: 4px solid #2563eb;
}

.flow-branch.green {
  border-left: 4px solid #16a34a;
}

.flow-branch.orange {
  border-left: 4px solid #f97316;
}

.flow-branch.blue .source-node {
  background: #eff6ff;
}

.flow-branch.green .source-node {
  background: #f0fdf4;
}

.flow-branch.orange .source-node {
  background: #fff7ed;
}

.flow-level-scroll {
  overflow: visible;
  padding-bottom: 0;
}

.flow-level-chain {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 0;
}

.flow-level {
  position: relative;
  width: auto;
  min-height: 64px;
  display: grid;
  gap: 4px;
  align-content: center;
  padding: 7px 8px;
  border: 1px solid #e1e8f2;
  border-radius: 9px;
  background: #f8fafc;
}

.flow-level:not(.first)::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -13px;
  height: 12px;
  border-left: 1px solid #bcc7d6;
}

.flow-step {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 16px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #e7edf6;
  color: #596579;
  font-size: 10px;
  font-weight: 800;
}

.flow-level small {
  color: #7b8493;
}

.flow-level b {
  color: #111827;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
}

.flow-level em {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #6b7280;
  font-style: normal;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.flow-level em i {
  color: #98a2b3;
  font-style: normal;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  font-size: 10px;
}

.flow-level strong {
  min-width: 0;
  overflow: hidden;
  color: #344054;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.flow-extra-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px dashed #d8e0eb;
}

.flow-extra {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 7px;
  border-radius: 8px;
  background: #f8fafc;
}

.flow-extra small {
  color: #7b8493;
}

.flow-extra b {
  overflow: hidden;
  color: #111827;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.flow-extra span {
  overflow: hidden;
  color: #667085;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.transfer-order-table td {
  height: 60px;
}

.transfer-order-table tbody tr:nth-child(3n) td {
  background: #f1f2f5;
}

.order-table .num,
.order-share,
.order-period {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.order-time {
  color: #1f2630;
  line-height: 1.25;
}

.order-time span {
  color: #8a92a0;
}

.status-pill,
.valid-pill,
.tx-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.status-pill {
  min-width: 32px;
  height: 26px;
  padding: 0 10px;
  border-radius: 14px;
  font-weight: 700;
}

.status-pill.win {
  background: #16a34a;
  color: #fff;
}

.status-pill.lose {
  background: #e11d2e;
  color: #fff;
}

.status-pill.cancel {
  background: #eef0f3;
  color: #6d7480;
}

.valid-pill {
  height: 24px;
  padding: 0 10px;
  gap: 5px;
  border: 1px solid #9bd8b8;
  border-radius: 13px;
  background: #effaf4;
  color: #139447;
  font-weight: 700;
}

.valid-pill i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

.tx-tag {
  height: 22px;
  padding: 0 7px;
  border: 1px solid #f4a09a;
  border-radius: 4px;
  color: #e5483f;
  background: #fff;
  font-size: 11px;
  font-weight: 700;
}

.tx-value {
  color: #1f2630;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.tx-icons {
  color: #9aa2ae;
}

.order-action,
.plain-action {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}

.order-action button {
  height: 32px;
  min-width: 64px;
  border: 0;
  border-radius: 8px;
  background: #eef5ff;
  color: #2563eb;
  font-weight: 700;
}

.plain-action button {
  border: 0;
  background: transparent;
  color: #4d5562;
  padding: 0;
}

.order-pagination {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 16px;
  color: #7f8795;
  background: #fff;
}

.order-pagination > div {
  display: flex;
  align-items: center;
  gap: 12px;
}

.page-size-plain,
.page-numbers button,
.page-jump {
  height: 28px;
  min-width: 30px;
  border-radius: 7px;
  padding: 0 9px;
}

.page-numbers button.active {
  border-color: #2563eb;
  background: #2563eb;
  color: #fff;
}

.page-jump {
  min-width: 44px;
  background: #fff;
}

/* 统一列表列内容居中 */
.simple-report th,
.simple-report td,
.recent-record-table th,
.recent-record-table td,
.v-table th,
.v-table td,
.release-table th,
.release-table td,
.order-table th,
.order-table td,
.player-detail-table th,
.player-detail-table td {
  text-align: center;
}

.wage-grid-header span,
.wage-summary-date,
.wage-date-actions,
.wage-card-head,
.wage-date-cell,
.wage-rate-cell,
.wage-grid-cell,
.wage-grid-cell > span,
.player-grid-header span,
.player-identity,
.player-id-line,
.player-cell,
.player-status-cell,
.player-metric,
.player-money-line,
.self-order-grid-header span,
.self-order-cell {
  justify-content: center;
  text-align: center;
}

.wage-account-card {
  text-align: center;
}

.player-money-line {
  grid-template-columns: 18px max-content;
}

.player-metric b,
.self-order-cell.tx .tx-value {
  text-align: center;
}

@media (max-width: 1500px) {
  .tab {
    padding-right: 13px;
  }

  .top-actions {
    gap: 8px;
  }

  .network {
    min-width: 128px;
    padding: 0 8px;
  }
}
