/* blueprint-sheet · 详情页：一整张图纸，标题栏 + 正文 + 修订表 */
.bp-detail { max-width: 1000px; margin: 0 auto; }
.bp-detail .detail-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 0 12px; color: var(--bp-on-blue); font-size: .9rem; text-transform: none; letter-spacing: 0; }
.bp-detail .detail-breadcrumb > * { color: var(--bp-on-blue); opacity: 1; }
.bp-detail .detail-breadcrumb a { flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.bp-detail .detail-top-ad:has(.ad) { margin: 8px 0 24px; }

.bp-full { padding: 12px; background: var(--bp-sheet); box-shadow: inset 0 0 0 2px var(--bp-ink), inset 0 0 0 8px var(--bp-sheet), inset 0 0 0 9px var(--bp-ink); }
.bp-full-head { margin: 8px; border: 2px solid var(--bp-ink); }
.bp-full-head h1 { margin: 0; padding: 20px 24px; font-family: var(--bp-display); font-weight: 900; font-size: clamp(1.8rem, 4vw, 2.7rem); line-height: 1.12; }
.bp-full-block { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1.2fr) minmax(0, 1fr) auto; margin: 0; border-top: 2px solid var(--bp-ink); }
.bp-full-block > div { padding: 8px 14px; min-width: 0; overflow-wrap: anywhere; }
.bp-full-block > div + div { border-left: 1px solid var(--bp-ink); }
.bp-full-block dt { font-size: .66rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--bp-soft); }
.bp-full-block dd { margin: 2px 0 0; font-weight: 500; }
.bp-full-block dd a { color: var(--bp-line); font-weight: 700; text-decoration: underline; }
.bp-full-body { padding: 20px 32px 8px; }
.bp-full-body .detail-summary { padding: 12px 16px; border-left: 4px solid var(--bp-red); background: #eef4fb; line-height: 1.6; }
.bp-full-body .detail-prose { max-width: 70ch; font-size: 1.06rem; line-height: 1.75; }
.bp-full-body .detail-prose h2, .bp-full-body .detail-prose h3 { font-family: var(--bp-display); font-weight: 900; }
.bp-full-body .detail-prose a { color: var(--bp-line); }
.bp-revisions { width: calc(100% - 16px); margin: 12px 8px 8px; border-collapse: collapse; font-size: .9rem; }
.bp-revisions caption { padding: 0 0 6px; text-align: left; font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--bp-soft); }
.bp-revisions th, .bp-revisions td { padding: 6px 10px; border: 1px solid var(--bp-ink); text-align: left; }
.bp-revisions th { font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; }
.bp-revisions td:first-child { width: 48px; font-family: var(--bp-display); font-weight: 900; color: var(--bp-red); }

.bp-turn { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 24px 0 8px; }
.bp-turn a { display: grid; gap: 4px; padding: 14px 18px; background: var(--bp-sheet); border: 2px solid var(--bp-ink); font-family: var(--bp-display); font-weight: 700; line-height: 1.35; }
.bp-turn a:hover { color: var(--bp-line); }
.bp-turn small { font-family: var(--bp-body); font-size: .74rem; letter-spacing: .08em; text-transform: uppercase; color: var(--bp-red); }
.bp-turn-next { grid-column: 2; text-align: right; }

@media (max-width: 767px) {
    .bp-full { padding: 6px; }
    .bp-full-head { margin: 6px; }
    .bp-full-head h1 { padding: 14px; font-size: 1.6rem; }
    .bp-full-block { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .bp-full-block > div:nth-child(3) { border-left: 0; }
    .bp-full-block > div:nth-child(n+3) { border-top: 1px solid var(--bp-ink); }
    .bp-full-body { padding: 14px 10px 6px; }
    .bp-turn { grid-template-columns: minmax(0, 1fr); }
    .bp-turn-next { grid-column: auto; }
}
