/* Sólo se carga en CP143, CP146, CP147, requisitos y la guía de Laredo. */
.doc code, .doc blockquote { overflow-wrap: anywhere; }
.doc .diagnostico { margin: 28px 0; padding: clamp(16px,3vw,24px); border: 1px solid #d4c8b4; border-top: 4px solid #a94331; border-radius: 8px; background: #fffdf8; }
.doc .diagnostico h2 { margin-top: 0; }
.doc .diag-label { margin: 0 0 8px; color: #7b3529; font-size: .76rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.doc .diag-steps { display: grid; gap: 12px; padding-left: 1.4rem; }
.doc .diag-steps li { padding-left: 6px; }
.doc .diag-steps strong { display: block; }
.doc .diag-note { padding: 12px 14px; background: #f3eee4; border-left: 3px solid #9b7950; }
.doc .diag-cases { display: grid; gap: 14px; margin: 18px 0; }
.doc .diag-case { padding: 16px; border: 1px solid #d4c8b4; border-radius: 6px; min-width: 0; }
.doc .diag-case h3 { margin: 0 0 8px; }
.doc .diag-case p:last-child { margin-bottom: 0; }
.doc .diag-table { table-layout: fixed; width: 100%; border-collapse: collapse; font-size: .9rem; }
.doc .diag-table caption { text-align: left; font-weight: 700; margin: 10px 0; }
.doc .diag-table th, .doc .diag-table td { padding: 10px; border: 1px solid #d4c8b4; vertical-align: top; overflow-wrap: anywhere; }
.doc .diag-table th { text-align: left; background: #f3eee4; }
.doc .diag-links { display: flex; flex-wrap: wrap; gap: 12px 20px; margin: 18px 0 0; }
.doc .diag-links a { min-height: 44px; display: inline-flex; align-items: center; font-weight: 600; }
.doc .diagnostico a:focus-visible, .doc .corredor a:focus-visible { outline: 3px solid #a94331; outline-offset: 3px; }
.doc .diag-source { font-size: .82rem; color: #554d40; }
.doc .corredor { margin: 30px 0; }
.doc .corredor h2 { margin-top: 0; }
.doc .corr-metric { margin: 10px 0; font-size: clamp(2.1rem,8vw,3.5rem); line-height: 1.1; font-weight: 700; color: #7b3529; font-variant-numeric: tabular-nums; }
.doc .corr-chart { padding: 0; margin: 16px 0; list-style: none; }
.doc .corr-chart li { display: grid; grid-template-columns: 3em minmax(0,1fr) 5.4em; align-items: center; gap: 10px; margin: 7px 0; font-size: .86rem; font-variant-numeric: tabular-nums; }
.doc .corr-bar-track { height: 15px; background: #eee7db; }
.doc .corr-bar { display: block; height: 100%; width: var(--bar); background: #a94331; }
.doc .corr-chart li > span:last-child { text-align: right; }
.doc .corr-period { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: .85rem; }
.doc .corr-checks { display: grid; gap: 14px; padding: 0; list-style: none; }
.doc .corr-checks li { border-left: 3px solid #a94331; padding: 2px 0 2px 14px; }
.doc .corr-checks strong { display: block; }
@media(min-width:650px) { .doc .diag-cases, .doc .corr-checks { grid-template-columns: 1fr 1fr; } }
