
  :root { --primary: #0052D9; --primary-hover: #0040B0; }
  /* ============================================================
     控制台总览（依据 卡片样式设计图 2257×1080 1:1 还原）
     页面背景 #F7F8FA；卡片纯白、无边框、无阴影、圆角 12
     布局：行1 四统计卡 + 行2 瀑布四列（列1=账号+公告、列2+3=财务+新闻+我的业务、列4=关注）
     ============================================================ */

  .dash { width: 100%; }

  /* ---- 行1：统计卡 4 列 grid（等高） ---- */
  .stat-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
  }

  /* ---- 行2：主体 3 列均衡（账号总览/财务 + 账号安全/我的业务/公告 + 新闻/关注） ---- */
  .body-grid {
    display: grid;
    grid-template-columns: 300px 354px 1fr;
    gap: 20px;
    margin-top: 20px;
  }
  .d-col { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
  /* 卡片保持内容自然高度；关注卡、账号安全卡不再强行拉伸填满 */
  .d-col:first-child > *:last-child { flex: 1; }

  /* ---- 通用卡片：纯白、无阴影、无描边（样式不变） ---- */
  .dash-card {
    background: #FFFFFF;
    border: none;
    border-radius: 0;
    padding: 28px 30px 24px;
    min-width: 0;
  }
  .card-head { display: flex; align-items: center; justify-content: space-between; }
  .card-head h3 { font-size: 14px; color: #000; font-weight: 600; }
  .card-head .more { font-size: 12px; color: #8A8A8A; cursor: pointer; }
  .card-head .more:hover { color: #0052D9; }

  /* ---------- 统计卡（已开通业务 / 即将到期 / 在运行实例） ---------- */
  .stat-card { padding: 26px 28px 22px; }
  .stat-title { font-size: 14px; color: #000; }
  .stat-mid { display: flex; align-items: center; justify-content: space-between; margin: 20px 0 24px; }
  .stat-num { display: flex; align-items: baseline; gap: 6px; }
  .stat-num b { font-size: 40px; font-weight: 700; color: #000; line-height: 1; }
  .stat-num .up { font-size: 18px; color: #000; font-weight: 400; }
  .stat-ring { position: relative; width: 58px; height: 58px; flex: none; }
  .stat-ring svg { width: 58px; height: 58px; transform: rotate(-90deg); display: block; }
  .stat-ring .ring-txt {
    position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
    font-size: 12px; color: #000; font-weight: 500;
  }
  .stat-link { font-size: 13px; color: #9D9D9D; cursor: pointer; display: inline-block; }
  .stat-link:hover { color: #0052D9; }

  /* ---------- 最近访问（4 行紧凑） ---------- */
  .recent-item {
    display: flex; align-items: center; justify-content: space-between;
    padding: 6px 0; font-size: 13px; color: #686868;
  }
  .recent-item .ri-date { font-size: 12px; color: #9A9A9A; }

  /* ---------- 账号总览（新增卡片） ---------- */
  .acct-card { padding: 26px 28px 24px; }
  .acct-head { display: flex; align-items: center; gap: 12px; margin: 18px 0 14px; }
  .acct-avatar {
    width: 42px; height: 42px; border-radius: 50%; flex: none;
    background: #0052D9; color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 17px; font-weight: 600;
  }
  .acct-name { font-size: 15px; font-weight: 600; color: #000; line-height: 1.3; }
  .acct-id { font-size: 12px; color: #9A9A9A; margin-top: 2px; }
  .acct-rows { display: flex; flex-direction: column; }
  .acct-row {
    display: flex; align-items: center; justify-content: space-between;
    padding: 8px 0; font-size: 13px;
  }
  .acct-row + .acct-row { border-top: 1px solid #F5F6F8; }
  .acct-row .ar-label { color: #8A8A8A; }
  .acct-row .ar-value { color: #000; font-weight: 500; }
  .acct-row .ar-value.good { color: #00B578; }
  .acct-row .ar-value.warn { color: #D4880F; }
  .acct-links {
    display: flex; gap: 18px; margin-top: 14px; padding-top: 14px;
    border-top: 1px solid #F2F3F5;
  }
  .acct-links a { font-size: 13px; color: #0052D9; cursor: pointer; }
  .acct-links a:hover { text-decoration: underline; }

  /* ---------- 账号安全（左大分数字 + 右侧小半圆仪表盘） ---------- */
  .sec-card .sec-main { display: flex; align-items: center; gap: 14px; margin: 20px 0 14px; }
  .sec-score { flex: none; display: flex; align-items: baseline; }
  .sec-score b { font-size: 38px; font-weight: 700; color: #FFAE00; line-height: 1.1; }
  .sec-score span { font-size: 14px; color: #000; margin-left: 3px; }
  .sec-gauge { width: 118px; height: 66px; margin-left: auto; flex: none; }
  .sec-gauge svg { width: 118px; height: 66px; display: block; }
  .sec-link { font-size: 13px; color: #0052D9; cursor: pointer; }
  .sec-link:hover { text-decoration: underline; }

  /* ---------- 公告/新闻 timeline（圆点 + 竖线） ---------- */
  .tl-list { margin-top: 6px; }
  .tl-item {
    position: relative; display: flex; align-items: center; gap: 10px;
    padding: 9px 0;
  }
  .tl-item::before {
    content: ''; position: absolute; left: 3.5px; top: 0; bottom: 0;
    width: 1px; background: #EDF0F5;
  }
  .tl-item:first-child::before { top: 50%; }
  .tl-item:last-child::before { bottom: 50%; }
  .tl-dot {
    position: relative; z-index: 1; flex: none;
    width: 8px; height: 8px; border-radius: 50%; background: #DDE2ED;
  }
  .tl-title {
    flex: 1; min-width: 0; font-size: 13px; color: #3A3A3A; cursor: pointer;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  }
  .tl-title:hover { color: #0052D9; }
  .tl-date { flex: none; font-size: 12px; color: #9A9A9A; }

  /* ---------- 财务总览（按设计图 354x294 逐像素还原：白卡 + 三块淡灰 #F7F8FA 圆角模块） ---------- */
  .fin-card { border-radius: 5px; }
  .fin-card .card-head { margin-bottom: 20px; }
  .fin-block { background: #F7F8FA; border-radius: 4px; padding: 14px 16px; }
  .fin-block.sm { padding: 9px 16px; }
  .fin-block.xs { padding: 6px 16px; }
  .fin-block + .fin-block { margin-top: 11px; }
  .fin-line { display: flex; align-items: center; gap: 8px; }
  .fin-line .fl { font-size: 15px; color: #1A1A1A; }
  .fin-line .fv { font-size: 15px; font-weight: 600; color: #000; }
  .fin-line .fv-lg { font-size: 20px; font-weight: 700; color: #000; line-height: 1.1; }
  .fin-line .fc-sub { font-size: 13px; color: #8A8A8A; }
  .fin-gap-a { margin-top: 12px; }
  .fin-eye { font-size: 13px; color: #8A8A8A; margin-left: 4px; cursor: pointer; vertical-align: -1px; }
  .fin-btns { margin-left: auto; display: flex; gap: 14px; }
  .fin-btn {
    height: 27px; padding: 0 14px; border-radius: 4px;
    font-size: 12px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center;
  }
  .fin-btn-outline { background: #fff; border: none; color: #4A4A4A; }
  .fin-btn-outline:hover { color: #0052D9; }
  .fin-btn-dark { background: #000; color: #fff; border: none; }
  .fin-btn-dark:hover { background: #2A2A2A; }
  .fin-right { display: flex; align-items: center; gap: 12px; margin-left: auto; }
  /* 行3：两个并列灰色小卡（待支付订单 | 本月消费，设计图 fin-row3） */
  .fin-minis { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; margin-top: 11px; }
  .fin-mini {
    background: #F7F8FA; border-radius: 4px; padding: 0 12px;
    display: flex; align-items: center; justify-content: space-between;
    height: 32px; min-width: 0;
  }
  .fin-mini-label { font-size: 12px; color: #8A8A8A; white-space: nowrap; }
  .fin-mini-num { font-size: 15px; font-weight: 700; color: #000; white-space: nowrap; }

  /* ---------- 我的业务（白卡 + 淡灰 #F7F8FA 小卡横排） ---------- */
  .biz-card { background: #FFFFFF; padding: 26px 28px 24px; }
  .biz-tags { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 18px; }
  .biz-tag {
    display: flex; align-items: center; gap: 12px;
    background: #F7F8FA; border: none;
    padding: 24px 14px;
    cursor: pointer; font-size: 14px; color: #000;
  }
  .biz-tag i { font-size: 26px; flex: none; color: #000; line-height: 1; }
  .biz-tag:hover { color: #0052D9; }
  .biz-tag:hover i { color: #0052D9; }

  /* ---------- 关注我们（按设计图 497x384 逐像素还原） ---------- */
  .follow-card {
    position: relative; overflow: hidden;
    background: linear-gradient(180deg, #CCE9FF 0%, #C1E8FC 55%, #FFFFFF 76%);
    border: none; border-radius: 5px;
    padding: 24px 40px 22px;
    display: flex; flex-direction: column;
  }
  .follow-deco { position: absolute; right: -30px; top: 40px; width: 480px; height: 130px; pointer-events: none; }
  .follow-top { position: relative; }
  .follow-top h3 { font-size: 18px; font-weight: 700; color: #000; margin-bottom: 8px; }
  .follow-top p { font-size: 13px; color: #636363; }
  .follow-bottom { margin-top: auto; position: relative; display: flex; align-items: center; justify-content: space-between; padding-top: 60px; }
  .follow-bottom .fw-label { font-size: 13px; color: #000; font-weight: 500; }
  .follow-qr {
    width: 80px; height: 80px; background: #fff;
    border-radius: 0; padding: 4px; flex: none;
  }
  .follow-qr canvas { width: 100%; height: 100%; display: block; }

  /* ---------- 响应式 ---------- */
  @media (max-width: 1500px) {
    .body-grid { grid-template-columns: 1fr 1fr; }
    .d-col:nth-child(3) { grid-column: 1 / -1; }
  }
  @media (max-width: 1100px) {
    .body-grid { grid-template-columns: 1fr; }
    .d-col:nth-child(3) { grid-column: auto; }
  }
  @media (max-width: 980px) {
    .stat-grid { grid-template-columns: repeat(2, 1fr); }
    .biz-tags { grid-template-columns: 1fr; }
  }
  @media (max-width: 720px) {
    .stat-grid { grid-template-columns: 1fr; }
  }

/* ===== header 搜索联想下拉 ===== */
.ch-search { position: relative; }
.ch-search-drop {
  display: none; position: absolute; top: calc(100% + 8px); right: 0; min-width: 280px; max-height: 320px; overflow: auto;
  background: #fff; border: 1px solid #EEF1F5; border-radius: 10px; box-shadow: 0 12px 32px rgba(16,24,40,.10); z-index: 900; padding: 6px;
}
.csd-group { font-size: 12px; color: var(--text-4, #9EABBA); padding: 8px 10px 4px; }
.csd-item {
  display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 6px;
  font-size: 13px; color: var(--text-1, #1D355C); cursor: pointer;
}
.csd-item:hover { background: #F0F6FF; color: var(--primary, #0052D9); }
.csd-item i { color: var(--text-4, #9EABBA); }
.csd-item:hover i { color: var(--primary, #0052D9); }
.csd-empty { padding: 14px 10px; font-size: 13px; color: var(--text-4, #9EABBA); text-align: center; }

/* ===== 全站按钮主题色统一 #0052D9（覆盖 v25 黑色/异色按钮） ===== */
.console-body .btn-primary,
.console-body .btn.btn-primary,
.console-body .fin-btn-dark,
.console-body .btn-new,
.console-body .ip-btn,
.console-body .oar-btn,
.console-body button.btn:not(.btn-ghost):not(.btn-outline):not(.btn-ghost2) {
  background: #0052D9 !important;
  border-color: #0052D9 !important;
  color: #fff !important;
}
.console-body .btn-primary:hover, .console-body .fin-btn-dark:hover,
.console-body .btn-new:hover, .console-body .ip-btn:hover,
.console-body button.btn:not(.btn-ghost):not(.btn-outline):not(.btn-ghost2):hover {
  background: #0043B8 !important;
  border-color: #0043B8 !important;
}
/* 白底幽灵/描边按钮：文字与描边用主题蓝 */
.console-body .btn-ghost, .console-body .btn-outline,
.console-body .fin-btn-outline, .console-body .tbl-link {
  color: #0052D9 !important;
  border-color: #C9D8F5 !important;
}
.console-body .btn-ghost:hover, .console-body .btn-outline:hover, .console-body .fin-btn-outline:hover {
  border-color: #0052D9 !important;
  background: #F0F6FF !important;
}
/* 焦点/选中态 */
.console-body .btn:focus, .console-body .btn-primary:focus { box-shadow: 0 0 0 3px rgba(0,82,217,.15) !important; }
