/* instant-prints · 详情页：两枚图钉钉住的长相纸 */
.ip-detail { max-width: 920px; margin: 0 auto; }
.ip-detail .detail-breadcrumb { width: fit-content; max-width: 100%; box-sizing: border-box; margin-bottom: 12px; padding: 6px 12px; background: var(--ip-print); color: var(--ip-soft); }
.ip-detail .detail-breadcrumb a { color: var(--ip-link); font-weight: 700; }
.ip-detail .detail-top-ad:has(.ad) { margin: 4px 0 24px; }

.ip-sheet { position: relative; padding: 18px 18px 8px; background: var(--ip-print); box-shadow: 0 8px 22px rgba(35, 28, 21, .4); }
.ip-sheet-pin { position: absolute; top: -9px; z-index: 2; width: 22px; height: 22px; border-radius: 50%;
    background: radial-gradient(circle at 35% 35%, rgba(255, 255, 255, .7) 0 3px, transparent 4px), var(--ip-pin, #d7263d); box-shadow: 0 3px 4px rgba(35, 28, 21, .45); }
.ip-sheet-pin-left { left: 28px; }
.ip-sheet-pin-right { right: 28px; }
.ip-sheet-head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 20px 20px 22px; border-bottom: 2px dashed var(--ip-rule); }
.ip-sheet-caption { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin: 0; color: var(--ip-soft); }
.ip-sheet-head h1 { margin: 0; font-family: var(--ip-display); font-weight: 800; font-size: clamp(1.9rem, 4vw, 2.8rem); line-height: 1.12; letter-spacing: -.02em; }
.ip-sheet-meta { display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 0; font-size: .9rem; color: var(--ip-soft); }
.ip-sheet-body { padding: 20px 20px 12px; }
.ip-sheet-body .detail-summary { padding: 14px 18px; border-left: 6px solid var(--ip-pin, #d7263d); background: #f8f4ee; line-height: 1.6; }
.ip-sheet-body .detail-image { padding: 10px 10px 34px; background: #fff; box-shadow: 0 3px 10px rgba(35, 28, 21, .25); }
.ip-sheet-body .detail-prose { max-width: 70ch; font-size: 1.08rem; line-height: 1.75; }
.ip-sheet-body .detail-prose a { color: var(--ip-link); }

.ip-flip { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 28px 0 8px; }
.ip-flip a { display: grid; gap: 6px; padding: 14px 18px; background: var(--ip-print); font-family: var(--ip-display); font-weight: 600; line-height: 1.35; box-shadow: 0 4px 10px rgba(35, 28, 21, .3); }
.ip-flip a:hover { text-decoration: underline; }
.ip-flip .ip-hand { color: var(--ip-soft); }
.ip-flip-next { grid-column: 2; text-align: right; }

@media (max-width: 767px) {
    .ip-sheet { padding: 10px 8px 4px; }
    .ip-sheet-head { padding: 16px 8px; }
    .ip-sheet-head h1 { font-size: 1.7rem; }
    .ip-sheet-body { padding: 14px 8px 8px; }
    .ip-flip { grid-template-columns: minmax(0, 1fr); }
    .ip-flip-next { grid-column: auto; text-align: left; }
}
