.detailed-crosscheck { background: #f2f5f3; }
.cross-source-map { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 28px 0 18px; }
.cross-source-map a { display: flex; gap: 12px; align-items: center; min-height: 84px; padding: 16px; border: 1px solid #ccd8d4; border-radius: 17px; background: #fff; color: #294650; text-decoration: none; box-shadow: 0 8px 24px rgba(30, 62, 67, .05); }
.cross-source-map a:hover { border-color: #8aa7a3; transform: translateY(-2px); }
.cross-source-map a b { display: grid; place-items: center; flex: 0 0 52px; height: 52px; border-radius: 50%; background: #173944; color: #fff; font-size: .75rem; }
.cross-source-map a span { line-height: 1.55; font-weight: 800; }
.cross-source-map .is-current { background: #173944; color: #fff; }
.cross-source-map .is-current b { background: #d8a65d; color: #173944; }
.cross-status-legend { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 22px; }
.cross-status-legend span,
.cross-dossiers summary small { display: inline-flex; width: max-content; padding: .3rem .62rem; border-radius: 999px; font-size: .72rem; font-weight: 950; letter-spacing: .04em; }
.status-conflict { background: #f3d8d3; color: #7e3029; }
.status-partial { background: #f4e5bd; color: #6b4a12; }
.status-chain { background: #d9ebea; color: #1c5960; }
.status-limit { background: #e3e5e2; color: #485459; }
.cross-dossiers { display: grid; gap: 15px; }
.cross-dossiers details { border: 1px solid #cbd6d3; border-radius: 21px; background: #fff; overflow: hidden; box-shadow: 0 12px 34px rgba(28, 60, 66, .06); }
.cross-dossiers summary { display: grid; grid-template-columns: 58px 1fr auto; gap: 15px; align-items: center; padding: 20px 23px; cursor: pointer; list-style: none; }
.cross-dossiers summary::-webkit-details-marker { display: none; }
.cross-dossiers summary > span { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: #e7efec; color: #173944; font-weight: 950; }
.cross-dossiers summary h3 { margin: 7px 0 0; color: #173944; font-size: clamp(1.08rem, 2vw, 1.35rem); line-height: 1.45; }
.cross-dossiers summary::after { content: "＋"; grid-column: 3; grid-row: 1; color: #8c4c40; font-size: 1.35rem; font-weight: 950; }
.cross-dossiers details[open] summary::after { content: "−"; }
.cross-dossier-body { display: grid; grid-template-columns: .9fr 1.35fr; gap: 14px; padding: 0 23px 23px 96px; }
.cross-dossier-body section { padding: 18px; border-radius: 16px; background: #f7f4ee; }
.cross-dossier-body section:nth-child(2) { background: #edf3f1; }
.cross-dossier-body h4 { margin: 0 0 10px; color: #8b493e; font-size: .86rem; letter-spacing: .05em; }
.cross-dossier-body p { margin: .45rem 0; color: #304b54; line-height: 1.78; }
.cross-dossier-body aside { grid-column: 1 / -1; padding: 17px 19px; border-left: 5px solid #d2a15d; border-radius: 14px; background: #fff8e9; color: #304b54; }
.cross-dossier-body aside b { color: #6d4616; }
.cross-dossier-body aside p { margin: .35rem 0 0; }
@media (max-width: 820px) {
  .cross-source-map { grid-template-columns: 1fr 1fr; }
  .cross-dossier-body { grid-template-columns: 1fr; padding-left: 23px; }
}
@media (max-width: 560px) {
  .cross-source-map { grid-template-columns: 1fr; }
  .cross-source-map a { min-height: 72px; }
  .cross-dossiers summary { grid-template-columns: 46px 1fr; padding: 17px 16px; }
  .cross-dossiers summary > span { width: 42px; height: 42px; }
  .cross-dossiers summary::after { display: none; }
  .cross-dossier-body { padding: 0 16px 17px; }
}
