/* =========================================
   SurgBot 文档站 — 自定义样式
   ========================================= */

/* ---------- 首页 Hero ---------- */
.hero {
  padding: 3rem 0 2rem;
  text-align: center;
}
.hero h1 {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}
.hero p {
  color: var(--md-default-fg-color--light);
  font-size: 1.05rem;
}

/* ---------- 模块模板 — 状态徽章 ---------- */
.status-done    { background: #e6f4ea; color: #1a7f37; border: 1px solid #82c99a; padding: 2px 10px; border-radius: 20px; font-size: .8rem; font-weight: 500; }
.status-wip     { background: #fff8e1; color: #b45309; border: 1px solid #f6c94e; padding: 2px 10px; border-radius: 20px; font-size: .8rem; font-weight: 500; }
.status-todo    { background: #f3f4f6; color: #6b7280; border: 1px solid #d1d5db; padding: 2px 10px; border-radius: 20px; font-size: .8rem; font-weight: 500; }
.status-blocked { background: #fef2f2; color: #b91c1c; border: 1px solid #fca5a5; padding: 2px 10px; border-radius: 20px; font-size: .8rem; font-weight: 500; }

/* ---------- 模块模板 — 接口卡片 ---------- */
.interface-card {
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 8px;
  padding: 1rem 1.2rem;
  margin: 0.8rem 0;
  background: var(--md-code-bg-color);
}
.interface-card .label {
  font-size: .75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--md-default-fg-color--light);
  margin-bottom: 4px;
}
.interface-card .value {
  font-family: var(--md-code-font);
  font-size: .88rem;
}

/* ---------- Sim2Real 面板 ---------- */
.sim2real-panel {
  font-family: var(--md-text-font);
}

/* 三级轨道 */
.tier-track {
  display: flex;
  align-items: flex-start;
  gap: 0;
  margin: 1.5rem 0 2rem;
  position: relative;
}
.tier-step {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.tier-circle {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 1rem;
  border: 2px solid transparent;
  position: relative;
  z-index: 2;
}
.tier-circle.done   { background: #e6f4ea; color: #1a7f37; border-color: #82c99a; }
.tier-circle.wip    { background: #fff8e1; color: #b45309; border-color: #f6c94e; }
.tier-circle.queued { background: #f3f4f6; color: #9ca3af; border-color: #d1d5db; }
.tier-name  { font-size: .82rem; font-weight: 600; margin-top: 8px; color: var(--md-default-fg-color); }
.tier-sub   { font-size: .75rem; color: var(--md-default-fg-color--light); }
.tier-connector {
  flex: 0.35;
  height: 2px;
  margin-top: 21px;
  position: relative;
  z-index: 1;
}
.tier-connector.done-wip {
  background: linear-gradient(90deg, #82c99a, #f6c94e);
}
.tier-connector.wip-q {
  background: #d1d5db;
}

/* Sim Gap 表 */
.sim-gap-table { width: 100%; border-collapse: collapse; font-size: .88rem; }
.sim-gap-table th {
  text-align: left;
  padding: 6px 10px;
  font-size: .78rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--md-default-fg-color--light);
  border-bottom: 2px solid var(--md-default-fg-color--lightest);
}
.sim-gap-table td {
  padding: 8px 10px;
  vertical-align: top;
  border-bottom: 1px solid var(--md-default-fg-color--lightest);
  line-height: 1.5;
}
.gap-high   { background:#fef2f2; color:#b91c1c; border:1px solid #fca5a5; padding:1px 7px; border-radius:20px; font-size:.75rem; font-weight:500; white-space:nowrap; }
.gap-mid    { background:#fff8e1; color:#b45309; border:1px solid #f6c94e; padding:1px 7px; border-radius:20px; font-size:.75rem; font-weight:500; white-space:nowrap; }
.gap-low    { background:#e6f4ea; color:#1a7f37; border:1px solid #82c99a; padding:1px 7px; border-radius:20px; font-size:.75rem; font-weight:500; white-space:nowrap; }

/* 指标卡片 */
.metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 10px;
  margin: 1rem 0;
}
.metric-card {
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 8px;
  padding: 12px 10px;
  text-align: center;
  background: var(--md-code-bg-color);
}
.metric-val  { font-size: 1.5rem; font-weight: 600; color: var(--md-default-fg-color); }
.metric-unit { font-size: .8rem; color: var(--md-default-fg-color--light); }
.metric-lbl  { font-size: .75rem; color: var(--md-default-fg-color--light); margin-top: 2px; line-height: 1.3; }
.metric-now  { font-size: .7rem;  color: var(--md-default-fg-color--lighter); margin-top: 4px; }

/* ---------- 全局追踪表 ---------- */
.priority-p0 { background:#fef2f2; color:#b91c1c; border:1px solid #fca5a5; padding:1px 7px; border-radius:20px; font-size:.75rem; font-weight:500; }
.priority-p1 { background:#fff8e1; color:#b45309; border:1px solid #f6c94e; padding:1px 7px; border-radius:20px; font-size:.75rem; font-weight:500; }
.priority-p2 { background:#eff6ff; color:#1d4ed8; border:1px solid #93c5fd; padding:1px 7px; border-radius:20px; font-size:.75rem; font-weight:500; }

/* ---------- 更新时间 footer ---------- */
.doc-footer {
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px solid var(--md-default-fg-color--lightest);
  font-size: .8rem;
  color: var(--md-default-fg-color--light);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px;
}

/* ---------- 侧边栏导航层级区分 ---------- */

/* 二级分组标题（如「感知模块」「NLP 模块」）*/
.md-nav--primary .md-nav__item--section > .md-nav__link {
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--md-default-fg-color--light);
  margin-top: .6rem;
  padding-left: .6rem;
  border-left: 3px solid var(--md-primary-fg-color);
}

/* 分组标题悬停时不变色，保持静态感 */
.md-nav--primary .md-nav__item--section > .md-nav__link:hover {
  color: var(--md-default-fg-color--light);
}

/* 三级页面链接（如「概述与状态」「YOLO器械检测」）*/
.md-nav--primary .md-nav__item--section .md-nav .md-nav__link {
  font-size: .82rem;
  font-weight: 400;
  padding-left: 1.1rem;
}

/* 激活页面链接加粗 */
.md-nav--primary .md-nav__item--section .md-nav .md-nav__item--active > .md-nav__link {
  font-weight: 600;
  color: var(--md-accent-fg-color);
}

/* ---------- 深色模式适配 ---------- */
[data-md-color-scheme="slate"] .status-done    { background: #052e16; color: #4ade80; border-color: #166534; }
[data-md-color-scheme="slate"] .status-wip     { background: #1c1400; color: #fcd34d; border-color: #92400e; }
[data-md-color-scheme="slate"] .status-todo    { background: #1f2937; color: #9ca3af; border-color: #374151; }
[data-md-color-scheme="slate"] .status-blocked { background: #1f0000; color: #f87171; border-color: #7f1d1d; }
[data-md-color-scheme="slate"] .tier-circle.done   { background: #052e16; color: #4ade80; border-color: #166534; }
[data-md-color-scheme="slate"] .tier-circle.wip    { background: #1c1400; color: #fcd34d; border-color: #92400e; }
[data-md-color-scheme="slate"] .tier-circle.queued { background: #1f2937; color: #6b7280; border-color: #374151; }
[data-md-color-scheme="slate"] .gap-high   { background:#1f0000; color:#f87171; border-color:#7f1d1d; }
[data-md-color-scheme="slate"] .gap-mid    { background:#1c1400; color:#fcd34d; border-color:#92400e; }
[data-md-color-scheme="slate"] .gap-low    { background:#052e16; color:#4ade80; border-color:#166534; }
[data-md-color-scheme="slate"] .priority-p0 { background:#1f0000; color:#f87171; border-color:#7f1d1d; }
[data-md-color-scheme="slate"] .priority-p1 { background:#1c1400; color:#fcd34d; border-color:#92400e; }
[data-md-color-scheme="slate"] .priority-p2 { background:#0f1e3d; color:#93c5fd; border-color:#1e3a6e; }
