/* desk-calendar · 详情页：带红色页边线的横格计划页 */
.dc-detail { max-width: 980px; margin: 0 auto; }
.dc-detail .detail-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 0 12px; color: var(--dc-soft); font-size: .9rem; }
.dc-detail .detail-breadcrumb a { flex: none; color: var(--dc-date); font-weight: 700; }
.dc-detail .detail-top-ad:has(.ad) { margin: 8px 0 28px; }

.dc-planner { padding: 0 0 12px; border-radius: 10px; background: var(--dc-leaf); box-shadow: 0 2px 0 var(--dc-rule), 0 5px 0 #f6f7fb, 0 7px 0 var(--dc-rule); }
.dc-planner .dc-wire { margin: -8px 20px 0; }
.dc-planner-head { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 22px; align-items: start; padding: 24px 32px 20px; border-bottom: 2px solid var(--dc-rule); }
.dc-planner-day { margin: 0 0 8px; font-size: .92rem; color: var(--dc-soft); }
.dc-planner-day a { color: var(--dc-date); font-weight: 700; text-decoration: underline; }
.dc-planner-title h1 { margin: 0; font-family: var(--dc-display); font-weight: 800; font-size: clamp(1.8rem, 4vw, 2.6rem); line-height: 1.14; letter-spacing: -.02em; }
.dc-planner-by { margin: 12px 0 0; font-size: .9rem; color: var(--dc-soft); }
.dc-planner-page { padding: 20px 32px 8px 64px; background: linear-gradient(90deg, transparent 44px, #e7a3bd 44px, #e7a3bd 46px, transparent 46px); }
.dc-planner-page .detail-summary { padding: 12px 16px; border-radius: 6px; background: #eef0fb; line-height: 1.6; }
.dc-planner-page .detail-image img { border-radius: 6px; }
.dc-planner-page .detail-prose { max-width: 70ch; font-size: 1.06rem; line-height: 1.75; }
.dc-planner-page .detail-prose h2, .dc-planner-page .detail-prose h3 { font-family: var(--dc-display); font-weight: 800; }
.dc-planner-page .detail-prose a { color: var(--dc-date); }

.dc-flip { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 28px 0 8px; }
.dc-flip-link { display: grid; gap: 4px; padding: 14px 18px; border-radius: 8px; background: var(--dc-leaf); font-family: var(--dc-display); font-weight: 600; line-height: 1.35; box-shadow: 0 2px 0 var(--dc-rule); }
.dc-flip-link:hover { color: var(--dc-date); }
.dc-flip-link small { font-family: var(--dc-body); font-size: .76rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--dc-sun); }
.dc-flip-next { grid-column: 2; text-align: right; }

@media (max-width: 767px) {
    .dc-planner-head { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 18px 14px 14px; }
    .dc-planner-head .dc-date-big { justify-self: start; }
    .dc-planner-title h1 { font-size: 1.6rem; }
    .dc-planner-page { padding: 14px 12px 6px 26px; background: linear-gradient(90deg, transparent 12px, #e7a3bd 12px, #e7a3bd 14px, transparent 14px); }
    .dc-flip { grid-template-columns: minmax(0, 1fr); }
    .dc-flip-next { grid-column: auto; }
}
