.doc.estrategia-doc { font-family: Arial, sans-serif; color: #000; font-size: 12px; line-height: 1.2; }
.estrategia-doc[data-doc-font="Aptos Narrow"] { font-family: "Aptos Narrow", "Arial Narrow", Arial, sans-serif; font-size: 14.67px; }
.estrategia-doc .doc-titulo { font-size: 16px; color: #000; }
.estrategia-doc .estra-capitulo { font-size: 14.67px; margin: 14px 0 8px; padding: 6px; background: #f2f2f2; color: #000; }
.estrategia-doc .estra-seccion { font-size: 14px; margin: 12px 0 5px; color: #000; }
.estrategia-doc .estra-variable { margin: 0 0 12px; }
.estrategia-doc table { border-collapse: collapse; table-layout: fixed; width: 100%; }
.estrategia-doc th, .estrategia-doc td { border: 1px solid #555; padding: 5px; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.estrategia-doc .estra-campos th { width: 42%; background: #f2efe6; }
.estrategia-doc .estra-campos td { width: 58%; }
.estrategia-doc .estra-repetida { font-size: 11.33px; }
.estrategia-doc .estra-repetida th { background: #f2f2f2; }
.estrategia-doc .estra-tabla-titulo { font-size: 12px; text-align: left; font-weight: 700; margin: 7px 0 4px; }
.estrategia-doc .estra-nota { font-size: 10.67px; margin: 6px 0; }
.estrategia-doc .doc-firma { font-size: 12px; }
@media print { .doc.estrategia-doc { padding: 0; } .estrategia-doc thead { display: table-header-group; } .estrategia-doc h2 { break-after: avoid; } .estrategia-doc .doc-firmas { break-inside: avoid; } }

.estrategia-doc .doc-firma { width: 40%; }

/* Elección de formato y propuestas de llenado: solo interfaz. */
.estrategia-modelo { margin:18px 0; padding:18px; border:1px solid var(--border,#dce7f5); border-radius:12px; background:var(--accent,#edf4ff); }
.estrategia-modelo label { margin-top:0; }
.estrategia-modelo p { margin:8px 0 0; line-height:1.55; }
.estrategia-opciones { margin:10px 0 4px; padding:10px; border-left:3px solid var(--border,#dce7f5); background:var(--bg,#f4f6f9); border-radius:0 8px 8px 0; }
.estrategia-opciones label { display:block; margin:0 0 6px; font-size:12px; font-weight:600; }
.estrategia-opciones-control { display:flex; align-items:center; gap:8px; }
.estrategia-opciones-control select { flex:1; min-width:0; font-size:13px; }
.estrategia-opciones-control button { flex-shrink:0; }
.estrategia-opciones .hint { margin:6px 0 0; font-size:12px; }
@media(max-width:520px) { .estrategia-modelo { padding:14px; } .estrategia-opciones-control { align-items:stretch; flex-direction:column; } }
@media print { .estrategia-modelo,.estrategia-opciones { display:none!important; } }
.estrategia-modelo-doc .estra-modelo-grilla { margin:0; line-height:1.1; }
.estrategia-modelo-doc .estra-modelo-grilla td { padding:2px 3px; overflow-wrap:anywhere; }
.estrategia-modelo-doc .estra-continuacion { margin-top:18px; }
.estrategia-modelo-doc .estra-continuacion h2 { font-size:13px; text-align:left; color:#000; }
.estrategia-modelo-doc .estra-continuacion table { font-size:10.67px; }
.estrategia-modelo-doc .doc-membrete { margin-bottom:10px; }
@media print { .estrategia-modelo-doc .estra-modelo-grilla tr { break-inside:avoid; } .estrategia-modelo-doc .estra-continuacion h2 { break-after:avoid; } .estrategia-modelo-doc .estra-continuacion tr { break-inside:avoid; } }
.estrategia-modelo-doc { print-color-adjust:exact; -webkit-print-color-adjust:exact; }
@media print { .estrategia-modelo-doc .doc-pie { position:static; margin-top:18px; break-inside:avoid; } }

/* Preparación de la estrategia antes de entrar al editor. */
.estrategia-paso { margin:0 0 8px; font-size:11px; font-weight:700; letter-spacing:.06em; color:#37698f; }
.estrategia-preparacion h2,.estrategia-propuesta h3 { margin-top:0; }
.estrategia-preparacion-campos { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:22px 0 10px; }
.estrategia-preparacion-campos>div { min-width:0; }
.estrategia-propuesta { border-left:4px solid #1871a5; }
.estrategia-propuesta .estrategia-paso { margin-top:0; }
.estrategia-modelo-alternativas,.estrategia-texto-anterior { margin:16px 0; padding:12px 14px; border:1px solid var(--border,#dce7f5); border-radius:9px; }
.estrategia-modelo-alternativas summary,.estrategia-texto-anterior summary { cursor:pointer; color:#164e7a; }
.estrategia-modelo-alternativas label { display:block; margin-top:14px; }
.estrategia-texto-anterior p { white-space:normal; overflow-wrap:anywhere; }
.estrategia-preparacion-acciones,.estrategia-editor-cabecera { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin:20px 0 0; }
.estrategia-editor-cabecera { justify-content:space-between; align-items:flex-start; margin-top:0; }
.estrategia-editor-cabecera>div { flex:1; min-width:240px; }
.estrategia-editor-cabecera h2 { margin:0 0 8px; }
.estrategia-apartado-a { margin:12px 0; padding:12px; background:#f2f6fa; border-radius:8px; }
.estrategia-apartado-a p { overflow-wrap:anywhere; }
@media(max-width:640px) { .estrategia-preparacion-campos { grid-template-columns:1fr; gap:12px; } .estrategia-editor-cabecera>div { min-width:0; flex-basis:100%; } .estrategia-preparacion-acciones { align-items:flex-start; flex-direction:column; } }

.estrategia-calendario { margin:14px 0; padding:16px; border:1px solid #c8dceb; border-radius:9px; background:#f4f8fc; }
.estrategia-calendario input { max-width:280px; }
.estrategia-calendario h3 { margin-top:0; }
.estrategia-sustento-propuesto { margin:10px 0; padding:10px; background:#f4f8fc; border-radius:8px; }
.estrategia-sustento-propuesto summary { cursor:pointer; color:#164e7a; }
.estrategia-sustento-propuesto p { overflow-wrap:anywhere; }

@media print { .estrategia-modelo-doc .estra-cierre { break-inside:avoid; } }

/* Unir el cierre a la última fila, conservando los cortes del resto de la tabla. */
@media print {
  .estrategia-modelo-doc .estra-continuacion-final,
  .estrategia-modelo-doc .estra-continuacion-final table,
  .estrategia-modelo-doc .estra-continuacion-final tbody,
  .estrategia-modelo-doc .estra-continuacion-final tbody > tr:last-child,
  .estrategia-modelo-doc .estra-continuacion-final tbody > tr:nth-last-child(2) { break-after:avoid; }
}

/* Anexo 01: matriz compacta del modelo Excel, sin tablas de detalle vacías. */
.doc.anexo-mercado-doc { font-family:"Aptos Narrow","Arial Narrow",Arial,sans-serif; font-size:11pt; line-height:1.1; }
.anexo-mercado-doc .doc-titulo { font-size:12pt; margin:0 0 8pt; }
.anexo-mercado-doc .anexo-matriz td { padding:3pt; border:.5pt solid #000; vertical-align:middle; font-weight:400; }
.anexo-mercado-doc .anexo-matriz p { margin:0 0 3pt; line-height:1.1; text-align:left; }
.anexo-mercado-doc .anexo-matriz p:last-child { margin-bottom:0; }
.anexo-mercado-doc .anexo-matriz .anexo-heading { color:#fff; background:#000; text-align:center; font-weight:700; }
.anexo-mercado-doc .anexo-matriz .anexo-label { background:#e8e8e8; }
.anexo-mercado-doc .anexo-matriz [data-anexo-field] { text-align:center; }
.anexo-mercado-doc .anexo-note { font-size:9pt; }
.anexo-mercado-doc .anexo-matriz [data-doc-size="10"] { font-size:10pt; }
.anexo-mercado-doc .anexo-sustento-title td { font-weight:700; }
.anexo-mercado-doc .anexo-sustento td { min-height:24pt; vertical-align:top; }
@media print { .anexo-mercado-doc .anexo-matriz tr { break-inside:avoid; } .anexo-mercado-doc .anexo-matriz .anexo-sustento { break-inside:auto; } }
