/* 首页 AI执行中心摘要卡（MTK-008，快照契约 §8） */
.exec-center {
  display:flex;
  flex-direction:column;
  gap:14px
}
.exec-center .block-status {
  margin-bottom:0
}
.exec-hero {
  display:flex;
  flex-wrap:wrap;
  gap:10px 20px;
  align-items:center;
  justify-content:space-between;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--soft)
}
.exec-hero-main {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 14px
}
.exec-hero-label {
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  color:var(--muted)
}
.exec-hero-status {
  font-size:20px;
  font-weight:800;
  letter-spacing:-.3px;
  color:var(--text)
}
.exec-online {
  font-size:12px;
  font-weight:700;
  padding:3px 11px;
  border-radius:999px;
  border:1px solid var(--line)
}
.exec-online.is-on {
  color:#047857;
  background:#ecfdf5;
  border-color:#a7f3d0
}
.exec-online.is-off {
  color:#be123c;
  background:#fff1f2;
  border-color:#fecdd3
}
:root[data-theme=dark] .exec-online.is-on {
  color:#34d399;
  background:#064e3b;
  border-color:#065f46
}
:root[data-theme=dark] .exec-online.is-off {
  color:#fda4af;
  background:#4c0519;
  border-color:#881337
}
.exec-last-sync {
  margin:0;
  font-size:12.5px;
  font-weight:550;
  color:var(--muted)
}
.exec-counts {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0
}
.exec-count {
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--surface);
  display:flex;
  flex-direction:column;
  gap:4px
}
.exec-count--running {
  border-top:3px solid #2563eb
}
.exec-count--ready {
  border-top:3px solid #10b981
}
.exec-count--blocked {
  border-top:3px solid #f59e0b
}
.exec-count dt {
  font-size:12px;
  font-weight:650;
  letter-spacing:.04em;
  color:var(--muted)
}
.exec-count dd {
  margin:0;
  font-size:24px;
  font-weight:800;
  color:var(--text);
  font-variant-numeric:tabular-nums
}
.exec-stack {
  display:flex;
  flex-direction:column;
  gap:14px
}
.exec-block {
  display:flex;
  flex-direction:column;
  gap:8px
}
.exec-block-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px
}
.exec-block h3 {
  margin:0;
  font-size:14px;
  font-weight:750;
  color:var(--ink-strong)
}
.exec-block-count {
  font-size:11.5px;
  font-weight:650;
  padding:2px 8px;
  border-radius:999px;
  background:var(--soft);
  border:1px solid var(--line);
  color:var(--muted)
}
.exec-block-count.is-warn {
  background:#fffbeb;
  border-color:#fde68a;
  color:#b45309
}
:root[data-theme=dark] .exec-block-count.is-warn {
  background:#451a03;
  border-color:#78350f;
  color:#fcd34d
}
.exec-tasks,.exec-completed,.exec-attention {
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px
}
.exec-task,.exec-completed-item {
  padding:11px 14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--soft)
}
.exec-task-title {
  margin:0;
  font-size:13.5px;
  font-weight:650;
  line-height:1.5;
  color:var(--text);
  overflow-wrap:anywhere
}
.exec-task-title a {
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--ink-strong)
}
.exec-task-title a svg {
  width:12px;
  height:12px;
  color:var(--ink-link);
  flex-shrink:0
}
.exec-task-title a:hover {
  color:var(--ink-link)
}
.exec-meta {
  margin:4px 0 0;
  font-size:12px;
  line-height:1.55;
  color:var(--muted);
  overflow-wrap:anywhere
}
.exec-empty {
  margin:0;
  font-size:13px;
  color:var(--muted)
}
.exec-empty--inline {
  padding:10px 14px;
  border-radius:10px;
  background:var(--soft);
  border:1px dashed var(--line);
  font-size:13px
}
.exec-attention li {
  padding:10px 14px;
  border:1px solid #fde68a;
  border-left:3px solid #f59e0b;
  border-radius:10px;
  background:#fffbeb;
  font-size:13px;
  line-height:1.6;
  color:#92400e;
  overflow-wrap:anywhere
}
.exec-unknown {
  margin:0;
  padding:14px 16px;
  border:1px dashed var(--line);
  border-radius:12px;
  background:var(--soft);
  font-size:13px;
  line-height:1.7;
  color:#be123c;
  overflow-wrap:anywhere
}
.exec-footer {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding-top:6px;
  border-top:1px solid var(--line);
  font-size:12px;
  color:var(--muted)
}
.exec-footnote {
  color:var(--muted)
}
.exec-open {
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--ink-link);
  font-weight:700
}
.exec-open svg {
  width:13px;
  height:13px
}
:root[data-theme=dark] .exec-attention li {
  border-color:#78350f;
  border-left-color:#f59e0b;
  background:#2e1a05;
  color:#fcd34d
}
:root[data-theme=dark] .exec-unknown {
  color:#fda4af
}
.exec-center--compact {
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px 14px;
  padding:12px 16px;
  border:1px dashed var(--line);
  border-radius:10px;
  background:var(--soft)
}
.exec-center--compact .exec-unknown {
  padding:0;
  border:0;
  background:transparent;
  font-size:13px;
  color:var(--ink-soft)
}
.exec-unknown-hint {
  font-size:12px;
  color:var(--muted)
}
.exec-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:start
}
@media(max-width:960px) {
  .exec-grid {
    grid-template-columns:1fr
  }
}
@media(max-width:700px) {
  .exec-counts {
    grid-template-columns:1fr
  }
  .exec-count {
    flex-direction:row;
    align-items:baseline;
    justify-content:space-between;
    gap:12px;
    padding:12px 14px
  }
  .exec-count dd {
    margin:0;
    font-size:22px
  }
  .exec-hero {
    padding:14px
  }
  .exec-hero-status {
    font-size:18px
  }
  .exec-task,.exec-completed-item {
    padding:11px 12px
  }
}
