/* kanban-lanes · 详情页：展开的卡片，属性行 + 描述 + 动态记录 */
.kb-detail { max-width: 980px; margin: 0 auto; }
.kb-detail .detail-breadcrumb { padding: 4px 0 16px; color: var(--kb-soft); text-transform: none; letter-spacing: 0; font-size: .9rem; }
.kb-detail .detail-breadcrumb a { flex: none; color: var(--kb-accent); font-weight: 700; text-decoration: none; }

.kb-open-card { border-radius: 16px; background: var(--kb-card); box-shadow: 0 1px 0 var(--kb-line); }
.kb-open-head { padding: 24px 32px 20px; border-bottom: 1px solid var(--kb-line); }
.kb-open-lane { margin: 0 0 8px; font-size: .88rem; color: var(--kb-soft); }
.kb-open-lane a { color: var(--kb-accent); font-weight: 700; text-decoration: underline; }
.kb-open-head h1 { margin: 0; font-family: var(--kb-display); font-weight: 800; font-size: clamp(1.9rem, 4vw, 2.7rem); line-height: 1.12; letter-spacing: -.02em; }
.kb-open-props { display: flex; flex-wrap: wrap; gap: 14px 28px; margin-top: 18px; }
.kb-prop { display: grid; gap: 4px; justify-items: start; }
.kb-prop small { font-size: .74rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--kb-soft); }
.kb-prop > span { font-weight: 600; }
.kb-section-head { margin: 0 0 14px; font-family: var(--kb-display); font-weight: 800; font-size: 1.05rem; }
.kb-open-desc { padding: 24px 32px 12px; }
.kb-open-desc .detail-summary { padding: 14px 18px; border-radius: 10px; background: var(--kb-lane); }
.kb-open-desc .detail-image img { border-radius: 10px; }
.kb-open-desc .detail-prose { max-width: 70ch; font-size: 1.06rem; line-height: 1.75; }
.kb-open-desc .detail-prose h2, .kb-open-desc .detail-prose h3 { font-family: var(--kb-display); font-weight: 800; }
.kb-open-desc .detail-prose a { color: var(--kb-accent); }
.kb-activity { padding: 20px 32px 24px; border-top: 1px solid var(--kb-line); }
.kb-activity ol { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.kb-activity li { position: relative; padding-left: 22px; color: var(--kb-soft); font-size: .92rem; }
.kb-activity li::before { content: ""; position: absolute; left: 0; top: .35em; width: 10px; height: 10px; border-radius: 50%; background: var(--kb-accent); }

.kb-move { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 24px 0 32px; }
.kb-move a { display: grid; gap: 4px; padding: 14px 18px; border-radius: var(--kb-r); background: var(--kb-card); font-weight: 700; line-height: 1.35; box-shadow: 0 1px 0 var(--kb-line); }
.kb-move a:hover { box-shadow: 0 0 0 2px var(--kb-accent); }
.kb-move small { font-size: .76rem; letter-spacing: .06em; text-transform: uppercase; color: var(--kb-soft); }

@media (max-width: 767px) {
    .kb-open-head { padding: 16px 14px; }
    .kb-open-head h1 { font-size: 1.6rem; }
    .kb-open-desc { padding: 16px 14px 8px; }
    .kb-activity { padding: 16px 14px 18px; }
    .kb-move { grid-template-columns: minmax(0, 1fr); }
}
