/* ── back link ── */
.dc-back { display:inline-flex; align-items:center; gap:5px; color:#555; text-decoration:none; font-size:13px; margin-bottom:18px; }
.dc-back:hover { color:#4a8246; text-decoration:underline; }

/* ── panel shell ── */
.dc-panel { border:1px solid #ddd; border-radius:8px; margin-bottom:24px; overflow:hidden; }

/* ── header: grey card ── */
.dc-panel-head { background:#f6f6f4; padding:18px 22px 14px; border-bottom:1px solid #eee; }
.dc-head-top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:10px; }
.dc-panel-head h1 { margin:0; font-size:16px; font-weight:700; font-family:inherit; line-height:1.4; color:#111; }
.dc-active-badge { display:inline-flex; align-items:center; gap:4px; flex-shrink:0; font-size:11px; font-weight:700; padding:3px 10px; border-radius:999px; background:#e4f4e8; color:#1c7a32; border:1px solid #b2d9bb; white-space:nowrap; }
.dc-active-badge::before { content:''; width:6px; height:6px; border-radius:50%; background:#2e7d32; display:inline-block; }

.dc-done-badge { display:inline-flex; align-items:center; gap:4px; flex-shrink:0; font-size:11px; font-weight:700; padding:3px 10px; border-radius:999px; background:#ffffff; color:#555555; border:1px solid #cccccc; white-space:nowrap; }
.dc-done-badge::before { content:''; width:6px; height:6px; border-radius:50%; background:#888888; display:inline-block; }
/* ── tags ── */
.dc-tags { display:flex; flex-wrap:wrap; gap:6px; }
.dc-tag { font-size:11px; font-weight:600; padding:2px 9px; border-radius:3px; }
.dc-tag-ai     { background:#e8f5e9; color:#1b6e2e; }


/* ── body ── */
.dc-panel-body { padding:20px 22px; }
.dc-meta { font-size:13.5px; margin-bottom:6px; color:#000; }
.dc-meta strong { color:#1a1a1a; }
.dc-panel-body p { font-size:14px; line-height:1.8; color:#000; margin-bottom:16px; }
.dc-panel-body p:last-child { margin-bottom:0; }
.dc-divider { border:none; border-top:1px solid #eee; margin:16px 0; }

/* ── workpackage boxes ── */
.dc-wps { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:14px 0 18px; }
.dc-wp { background:#fafafa; border:1px solid #e0e0e0; border-radius:4px; padding:12px 14px; text-align:center; }
.dc-wp-name { font-size:13px; font-weight:700; color:#1a1a1a; margin-bottom:5px; }
.dc-wp-detail { font-size:12px; color:#000; line-height:1.6; }

/* ── indicator row ── */
.dc-indicators { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:14px 0 0; }
.dc-ind { background:#e8f0e8; border-radius:4px; padding:12px 14px; text-align:center; }
.dc-ind-val { font-size:22px; font-weight:700; color:#4a8246; line-height:1.1; margin-bottom:4px; }
.dc-ind-lbl { font-size:11px; color:#000; line-height:1.4; }

/* ── meta grid ── */
.dc-meta-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:6px 20px; padding-top:12px; border-top:1px solid #eee; }
.dc-meta-item { display:flex; flex-direction:column; gap:1px; }
.dc-meta-label { font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:#000; }
.dc-meta-value { font-size:13px; color:#000; }

/* ── Right-side header column (Active + buttons) ── */
.dc-head-right { display:flex; flex-direction:row; align-items:center; gap:8px; flex-shrink:0; }

/* ── Pill buttons – same shape as Active badge ── */
.dc-nav-btns { display:flex; flex-direction:row; align-items:center; gap:5px; }

.dc-pill-btn {
  display:inline-flex; align-items:center; flex-shrink:0;
  font-size:11px; font-weight:700; padding:5px 16px;
  border-radius:999px; white-space:nowrap;
  text-decoration:none; transition:opacity .15s;
  background:#ffffff !important; color:#555555 !important; border:1px solid #cccccc !important;
}
.dc-pill-btn:link, .dc-pill-btn:visited, .dc-pill-btn:hover, .dc-pill-btn:active, .dc-pill-btn:focus {
  color:#555555 !important; text-decoration:none !important; border-color:#cccccc !important; outline:none;
}
.dc-pill-btn:hover { opacity:0.8; }

/* ── Section headings (Partners / Publications) ── */
.dc-section-title {
  font-size:15px; font-weight:700; color:#111;
  margin:0 0 12px; padding:0; font-family:inherit;
  scroll-margin-top:20px;
}