.pulse-detail{max-width:1200px;margin:auto;padding:0 5vw 80px}.pulse-detail-head{border-bottom:1px solid var(--pulse-border);padding:30px 0 20px}.pulse-kicker{color:var(--pulse-cyan);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.pulse-detail-head h1{color:#fff;font-size:clamp(30px,4vw,50px);font-weight:800;line-height:1.15;margin:14px 0 20px}.pulse-metrics{display:flex;gap:30px;color:var(--pulse-muted);font-size:12px}.pulse-metrics b{color:#fff}.pulse-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;margin-top:30px}.pulse-detail-copy{background:var(--pulse-surface);border:1px solid var(--pulse-border);border-radius:8px;padding:clamp(20px,4vw,40px)}.pulse-side{display:flex;flex-direction:column;gap:20px}.pulse-side-box{background:var(--pulse-surface);border:1px solid var(--pulse-border);border-radius:8px;padding:20px}.pulse-side-title{font-size:13px;font-weight:800;color:var(--pulse-cyan);margin-bottom:14px;letter-spacing:.05em}.pulse-side a{display:block;color:var(--pulse-ink);text-decoration:none;font-size:14px;font-weight:600;padding:10px 0;border-bottom:1px solid var(--pulse-border)}.pulse-side a:hover{color:var(--pulse-cyan)}.pulse-neighbors{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.pulse-neighbors a{background:var(--pulse-surface);border:1px solid var(--pulse-border);border-radius:8px;padding:20px;color:inherit;text-decoration:none}.pulse-neighbors a:hover{border-color:var(--pulse-cyan)}.pulse-neighbors small{display:block;color:var(--pulse-cyan);font-size:11px;margin-bottom:6px}.pulse-related{margin-top:40px}.pulse-related h2{color:#fff;font-size:22px;margin-bottom:20px}.pulse-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}@media(max-width:850px){.pulse-detail-grid{display:flex;flex-direction:column}.pulse-neighbors{grid-template-columns:1fr}}

/* 样式防御：隐藏外源抓取残留的未闭合/浮动标签与 popover */
.detail-prose [role="alertdialog"],
.detail-prose [role="tooltip"],
.detail-prose header,
.detail-prose .show-comments,
.detail-prose .viafoura,
.detail-prose .pagination,
.detail-prose .hydrate-root,
.detail-prose [data-component],
.detail-prose [data-focus-guard],
.detail-prose button:not(.btn) {
    display: none !important;
}
.detail-prose {
    position: relative;
    overflow: hidden;
    line-height: 1.8;
    color: inherit;
}
.detail-prose p {
    margin: 1.2em 0;
}
.detail-prose img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    margin: 1.5em 0;
}
