
/* ========== 根容器 ========== */
.dashboard-root[data-v-24af8149] {
  height: calc(100vh - 150px);
  overflow: hidden;
  padding: 12px 16px;
  background: linear-gradient(150deg, #0a1628 0%, #0d1b3e 40%, #0f2045 70%, #091530 100%);
  color: #fff;
  display: flex;
  flex-direction: column;
}

/* ========== 统计卡片 ========== */
.stat-row[data-v-24af8149] {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 12px;
  flex: 0 0 auto;
}
.stat-card[data-v-24af8149] {
  background: rgba(12,24,68,0.55);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border: 1px solid rgba(0,82,204,0.25);
  border-radius: 8px;
  padding: 14px 16px 10px;
  position: relative;
  overflow: hidden;
}
.stat-card[data-v-24af8149]::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(77,171,247,0.6), rgba(0,82,204,0.4), transparent);
}
.stat-card-glow[data-v-24af8149] {
  position: absolute; top: 0; right: 0;
  width: 90px; height: 90px; border-radius: 50%;
  margin-right: -24px; margin-top: -24px;
  opacity: 0.22;
}
.stat-card-glow.blue[data-v-24af8149]  { background: radial-gradient(circle, #0052CC, transparent 70%);
}
.stat-card-glow.cyan[data-v-24af8149]  { background: radial-gradient(circle, #4dabf7, transparent 70%);
}
.stat-card-glow.gold[data-v-24af8149]  { background: radial-gradient(circle, #ffd166, transparent 70%);
}
.stat-card-glow.teal[data-v-24af8149]  { background: radial-gradient(circle, #00d4ff, transparent 70%);
}
.stat-card-inner[data-v-24af8149] { display: flex; justify-content: space-between; align-items: flex-start; position: relative;
}
.stat-label[data-v-24af8149] { font-size: 12px; color: #a5d8ff; margin-bottom: 4px;
}
.stat-value[data-v-24af8149] { font-size: 24px; font-weight: bold; color: #ffd166; text-shadow: 0 0 10px rgba(255,209,102,0.35); font-family: 'Orbitron','Microsoft YaHei',sans-serif; font-variant-numeric: tabular-nums;
}
.stat-card-icon[data-v-24af8149] {
  width: 34px; height: 34px; border-radius: 4px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.stat-card-icon svg[data-v-24af8149] { width: 18px; height: 18px;
}
.blue-bg[data-v-24af8149]  { background: rgba(0,82,204,0.15); border: 1px solid rgba(77,171,247,0.25);
}
.cyan-bg[data-v-24af8149]  { background: rgba(77,171,247,0.15); border: 1px solid rgba(77,171,247,0.25);
}
.gold-bg[data-v-24af8149]  { background: rgba(255,209,102,0.15); border: 1px solid rgba(255,209,102,0.25);
}
.teal-bg[data-v-24af8149]  { background: rgba(0,212,255,0.15); border: 1px solid rgba(0,212,255,0.25);
}
.stat-footer[data-v-24af8149] { margin-top: 10px; font-size: 12px; display: flex; align-items: center; position: relative;
}
.stat-sub[data-v-24af8149] { color: #7fb3e6;
}
.stat-sub-bold[data-v-24af8149] { color: #ffd166; font-weight: bold; font-size: 14px;
}
.badge[data-v-24af8149] {
  display: inline-flex; align-items: center;
  padding: 1px 6px; border-radius: 2px; font-size: 11px; font-weight: 500; margin-right: 6px;
}
.badge.up[data-v-24af8149]   { background: rgba(255,209,102,0.15); color: #ffd166; border: 1px solid rgba(255,209,102,0.25);
}
.badge.down[data-v-24af8149] { background: rgba(77,171,247,0.15); color: #4dabf7; border: 1px solid rgba(77,171,247,0.25);
}

/* ========== 面板 ========== */
.chart-row-3[data-v-24af8149] {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 12px;
  margin-bottom: 12px;
  flex: 1;
  min-height: 0;
}
.chart-row-2[data-v-24af8149] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  flex: 1;
  min-height: 0;
}
.panel[data-v-24af8149] {
  background: rgba(12,24,68,0.55);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border: 1px solid rgba(0,82,204,0.25);
  border-radius: 8px;
  padding: 12px 16px;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.panel[data-v-24af8149]::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(77,171,247,0.6), rgba(0,82,204,0.4), transparent);
}
.panel-header[data-v-24af8149] {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 8px; position: relative;
  flex: 0 0 auto;
}
.panel-title[data-v-24af8149] {
  display: flex; align-items: center; gap: 8px;
  font-size: 14px; font-weight: 600; color: #fff;
}
.title-bar[data-v-24af8149] {
  display: inline-block; width: 4px; height: 14px;
  background: linear-gradient(180deg, #4dabf7, #0052CC); border-radius: 2px;
}
.panel-tags[data-v-24af8149] { display: flex; gap: 6px;
}
.tag[data-v-24af8149] {
  padding: 2px 8px; border-radius: 3px; font-size: 11px; font-weight: 500;
}
.tag-cyan[data-v-24af8149] { background: rgba(0,212,255,0.15); color: #00d4ff; border: 1px solid rgba(0,212,255,0.25);
}
.tag-blue[data-v-24af8149] { background: rgba(77,171,247,0.15); color: #4dabf7; border: 1px solid rgba(77,171,247,0.25);
}
.tag-gold[data-v-24af8149] { background: rgba(255,209,102,0.15); color: #ffd166; border: 1px solid rgba(255,209,102,0.25);
}
.panel-more[data-v-24af8149] { font-size: 12px; color: #7fb3e6; cursor: pointer; text-decoration: none;
}
.panel-more[data-v-24af8149]:hover { color: #fff;
}

/* ========== 图表容器 ========== */
.chart-box[data-v-24af8149] {
  width: 100%;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  position: relative;
}

/* ========== 表格 ========== */
.table-wrap[data-v-24af8149] {
  flex: 1;
  min-height: 0;
  overflow: auto;
}
.data-table[data-v-24af8149] { width: 100%; border-collapse: collapse; font-size: 12px;
}
.data-table th[data-v-24af8149] {
  text-align: left; padding: 8px 10px;
  background: rgba(0,82,204,0.2); color: #a5d8ff; font-weight: 500;
}
.data-table th[data-v-24af8149]:first-child { border-radius: 4px 0 0 4px;
}
.data-table th[data-v-24af8149]:last-child  { border-radius: 0 4px 4px 0;
}
.data-table td[data-v-24af8149] { padding: 8px 10px; border-bottom: 1px solid rgba(0,82,204,0.1); color: #bbb;
}
.data-table tbody tr:hover td[data-v-24af8149] { background: rgba(0,82,204,0.06);
}
.rank-badge[data-v-24af8149] {
  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px; border-radius: 50%; font-size: 11px; font-weight: bold;
}
.rank-top[data-v-24af8149]    { background: linear-gradient(135deg, #ffd166, #ff9e44); color: #0a0e27;
}
.rank-normal[data-v-24af8149] { background: rgba(0,82,204,0.3); color: #a5d8ff;
}
.val-red[data-v-24af8149] { color: #ff6b6b; font-weight: bold; font-size: 14px;
}
.type-tag[data-v-24af8149] {
  display: inline-block; padding: 1px 8px; border-radius: 3px; font-size: 11px; font-weight: 500;
}
.tt-cyan[data-v-24af8149]   { background: rgba(0,212,255,0.15); color: #00d4ff; border: 1px solid rgba(0,212,255,0.25);
}
.tt-red[data-v-24af8149]    { background: rgba(255,100,100,0.15); color: #ff6b6b; border: 1px solid rgba(255,100,100,0.25);
}
.tt-gold[data-v-24af8149]   { background: rgba(255,209,102,0.15); color: #ffd166; border: 1px solid rgba(255,209,102,0.25);
}
.tt-purple[data-v-24af8149] { background: rgba(180,100,255,0.15); color: #c084fc; border: 1px solid rgba(180,100,255,0.25);
}
.tt-blue[data-v-24af8149]   { background: rgba(77,171,247,0.15); color: #4dabf7; border: 1px solid rgba(77,171,247,0.25);
}

/* ========== 响应式 ========== */
@media (max-width: 1024px) {
.stat-row[data-v-24af8149]    { grid-template-columns: repeat(2, 1fr);
}
.chart-row-3[data-v-24af8149] { grid-template-columns: 1fr;
}
.chart-row-2[data-v-24af8149] { grid-template-columns: 1fr;
}
}
@media (max-width: 600px) {
.stat-row[data-v-24af8149] { grid-template-columns: 1fr;
}
}

