/* m_dark.css — B 版「深色运营大屏」
 * 深蓝黑底 + 发光数字 + 环图/仪表盘，强视觉冲击。
 */
:root {
  --bg: #060B18;
  --card: #0E1830;
  --card2: #132043;

  --ink: #E9F1FF;
  --ink2: #A9BCE0;
  --muted: #6F87B3;

  --line: rgba(120, 160, 255, .16);
  --line-soft: rgba(120, 160, 255, .09);
  --line-strong: rgba(120, 160, 255, .3);

  --accent: #38BDF8;
  --accent-ink: #05101F;
  --accent-deep: #7DD3FC;
  --accent-soft: rgba(56, 189, 248, .14);

  --sky: #60A5FA;
  --teal: #22D3EE;
  --violet: #8B5CF6;
  --ok: #34D399;
  --warn: #FBBF24;
  --bad: #FB7185;

  --sold: linear-gradient(90deg, #0EA5E9, #22D3EE);
  --ooo: repeating-linear-gradient(45deg, #FBBF24, #FBBF24 3px, #B45309 3px, #B45309 6px);
  --free: #1B2B4D;
  --track: rgba(120, 160, 255, .13);
  --bar-strong: linear-gradient(90deg, #0EA5E9, #22D3EE);

  --r-card: 14px;
  --r-inner: 10px;

  --shadow: 0 0 0 1px rgba(120, 160, 255, .04), 0 14px 34px rgba(0, 0, 0, .5);
  --shadow-sm: 0 0 0 1px rgba(120, 160, 255, .08);

  --hdr-bg: rgba(6, 11, 24, .74);
  --tab-bg: rgba(8, 14, 30, .92);

  --chip-bg: rgba(255, 255, 255, .05);
  --chip-ink: #A9BCE0;
  --chip-shadow: 0 0 16px rgba(56, 189, 248, .35);

  --logo-bg: linear-gradient(135deg, #1E3A8A, #0E7490);

  --warn-bg: rgba(251, 191, 36, .12);
  --warn-ink: #FCD34D;
  --warn-line: rgba(251, 191, 36, .3);
  --bad-bg: rgba(251, 113, 133, .12);
  --bad-ink: #FDA4AF;
  --bad-line: rgba(251, 113, 133, .32);

  --row-open: rgba(56, 189, 248, .06);
  --hero-bg: linear-gradient(135deg, rgba(56, 189, 248, .16), rgba(139, 92, 246, .12) 52%, rgba(14, 24, 48, .85));
}

body {
  background:
    radial-gradient(120% 78% at 50% 0%, #12224A 0%, rgba(6, 11, 24, 0) 62%),
    #060B18;
  background-attachment: fixed;
}
body::before {
  content: "";
  position: fixed; inset: 0; z-index: 0; pointer-events: none;
  background-image:
    linear-gradient(rgba(255, 255, 255, .022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .022) 1px, transparent 1px);
  background-size: 24px 24px;
  mask-image: linear-gradient(#000 0, transparent 72%);
  -webkit-mask-image: linear-gradient(#000 0, transparent 72%);
}
.app { position: relative; z-index: 1; }

/* 发光数字 */
.kpi .v, .hero .hv {
  background: linear-gradient(180deg, #EAF6FF, #7DD3FC);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 0 26px rgba(56, 189, 248, .28);
}
.kpi .v .u { -webkit-text-fill-color: var(--muted); color: var(--muted); }

.ringmain { fill: #EAF6FF; }
.ringtop { fill: #6F87B3; }
.gaugesvg .gv { fill: #EAF6FF; }

/* 卡片：顶部一道高光，边缘内发光 */
.card, .kpi, .hero {
  position: relative;
}
.card::before {
  content: "";
  position: absolute; top: 0; left: 12%; right: 12%; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(56, 189, 248, .5), transparent);
}
.card .hd h3 { color: #DCE9FF; letter-spacing: .04em; font-size: 13px; }
.kpi .lb { letter-spacing: .1em; text-transform: none; }

.hdr .logo { box-shadow: 0 0 18px rgba(56, 189, 248, .35); }
.hdr .ttl { color: #DCE9FF; letter-spacing: .05em; }
.chip.on { color: #061626; }

.sechd .v { color: #EAF6FF; }
.row .v { color: #DCE9FF; }
.row .nm { color: #A9BCE0; }
.row.lv2 .nm { color: #6F87B3; }
.row.sub .nm { color: #7DD3FC; }
.sechd .sbar { box-shadow: 0 0 10px currentColor; }
.tab.on::before { box-shadow: 0 0 10px var(--accent); }
.sw.on i { box-shadow: 0 0 10px rgba(56, 189, 248, .5); }
.hero .hc { background: rgba(255, 255, 255, .07); color: #A9BCE0; }
.sheet .panel { background: #0E1830; }
