/* ============================================================
   华润 MDM 原型 · 共享设计令牌（所有页面 + 壳复用）
   设计语言借鉴 nebula-central-prd：极浅中性 + 柔和圆角 + 细过渡；
   主色与 nebula 一致（AntD 蓝 #1677ff）。字体 Noto Sans SC（正文）+ Outfit（数字/展示）。
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap');

:root{
  /* 主色：与 nebula 一致（AntD 蓝） */
  --brand:#1677FF; --brand-hi:#0958D9; --brand-soft:#F0F5FF; --brand-line:#D6E4FF; --brand-light:#E8F0FE;
  /* 中性（借鉴 nebula：更浅、更冷、更通透） */
  --ground:#F4F6F9; --surface:#FFFFFF; --surface-2:#FAFBFC;
  --ink:#1A1A2E; --ink-2:#595E6B; --ink-3:#8C919C;
  --line:#EBEDF0; --line-2:#F2F3F6;
  --gold:#D48806; --gold-bg:#FFFBE6;
  /* 警示语义色（不跟品牌走）：暖橙=需注意 / 红=冲突·异常 */
  --warn:#D46B08; --warn-bg:#FFF4E6;
  --danger:#CF1322; --danger-bg:#FFF1F0;
  /* 形状 / 阴影 / 过渡 */
  --radius:9px; --radius-lg:12px;
  --shadow-sm:0 1px 3px rgba(20,25,40,.04);
  --shadow-md:0 8px 24px rgba(20,25,40,.07);
  --transition:.2s cubic-bezier(.4,0,.2,1);
  /* 生命周期状态色（业务语义色，独立于品牌色） */
  --st-potential:#64748B; --st-potential-bg:#EEF1F5;
  --st-approving:#B5780C; --st-approving-bg:#FBF1DE;
  --st-active:#1C8A5A;   --st-active-bg:#E4F3EB;
  --st-invalid:#986440;  --st-invalid-bg:#F3EBE2;
  --st-archived:#8A909C; --st-archived-bg:#EDEFF2;
  --mono:"SF Mono","JetBrains Mono","Menlo","Consolas",monospace;
  --display:'Outfit','Noto Sans SC',sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--ground);color:var(--ink);
  font-family:'Noto Sans SC',-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.num{font-family:var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.01em}

/* 细滚动条（nebula 风格） */
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#dfe2e8;border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:#cfd4dc}

/* 页面通用外壳（iframe 内每页）—— 填满内容区宽度，不设 max-width */
.page{padding:24px 32px 64px}
.page-head{margin-bottom:22px}
.page-head .eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:8px}
.page-head h1{margin:0;font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.02em}
.page-head p{margin:8px 0 0;color:var(--ink-2);font-size:13.5px;max-width:74ch;line-height:1.65}

/* 卡片：柔和圆角 + 细边 + hover 轻抬起（借鉴 nebula 通透感） */
.domain-card{cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);
  border-radius:var(--radius-lg)!important;border:1px solid var(--line)!important;box-shadow:var(--shadow-sm)}
.domain-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--brand-line)!important}
.domain-card.soon{opacity:.55;cursor:not-allowed;box-shadow:none}
.domain-card.soon:hover{transform:none;box-shadow:none;border-color:var(--line)!important}

/* 生命周期状态条 */
.lifebar{display:flex;flex-wrap:wrap;margin:2px 0}
.life-step{flex:1;min-width:104px;position:relative;padding:12px 14px 12px 24px;background:var(--surface-2);
  border:1px solid var(--line-2);border-right:none}
.life-step:first-child{border-radius:9px 0 0 9px}
.life-step:last-child{border-right:1px solid var(--line-2);border-radius:0 9px 9px 0}
.life-step .n{font-size:10.5px;color:var(--ink-3);font-weight:700}
.life-step .t{font-size:13px;font-weight:650;color:var(--ink-2);margin-top:2px}
.life-step.done{background:var(--st-active-bg)} .life-step.done .t{color:var(--st-active)}
.life-step.cur{background:var(--brand);border-color:var(--brand)}
.life-step.cur .n,.life-step.cur .t{color:#fff}
.life-step::after{content:"";position:absolute;right:-9px;top:50%;transform:translateY(-50%) rotate(45deg);
  width:15px;height:15px;background:inherit;border-top:1px solid var(--line-2);border-right:1px solid var(--line-2);z-index:2}
.life-step:last-child::after{display:none}
.life-step.cur::after{border-color:var(--brand)}

/* 业财双码 / 关系绑定的锁标 */
.lock{font-size:10.5px;color:var(--ink-3);border:1px solid var(--line);border-radius:5px;padding:1px 5px;margin-left:6px}

/* Key Mapping 映射行 */
.idmap-row{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:14px;padding:12px 4px;border-bottom:1px solid var(--line-2)}
.idmap-row:last-child{border-bottom:none}
.sys-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:8px}

/* survivorship 合并选源命中 */
.merge-win{color:var(--st-active);font-weight:650}

.muted{color:var(--ink-3)}
