/* ==========================================================================
   Estilos base compartidos por los documentos institucionales imprimibles.
   Compatible con Dompdf (CSS 2.1). No usar flexbox ni grid.
   ========================================================================== */

/* Los márgenes de página los fija DocumentRenderer inyectando el relleno del
   body. No se declara padding aquí para no anularlo por cascada. */

html,
body {
    margin: 0;
    font-family: "DejaVu Serif", "Times New Roman", serif;
    font-size: 10.5pt;
    color: #000;
}

table {
    border-collapse: collapse;
    width: 100%;
}

.doc {
    width: 100%;
    font-size: 10pt;
    color: #000;
}

.doc__logo {
    height: 78px;
    max-width: 78px;
    object-fit: contain;
}

.doc__title {
    font-size: 16pt;
    font-weight: bold;
    text-align: center;
    margin: 0;
    letter-spacing: 0.4pt;
}

.doc__subtitle {
    font-size: 12pt;
    font-weight: bold;
    text-align: center;
    margin: 2pt 0 0;
    letter-spacing: 0.4pt;
}

.doc__label {
    font-weight: bold;
    font-size: 9.5pt;
    text-transform: uppercase;
    letter-spacing: 0.3pt;
}

.doc__value {
    font-size: 10pt;
}

.doc__pending {
    color: #c00000;
    font-weight: bold;
    font-size: 11pt;
}

.doc__folio {
    font-size: 10.5pt;
}

.doc__rule {
    border-top: 1px solid #000;
    margin: 6pt 0;
}

.doc__rule--thick {
    border-top: 2px solid #000;
    margin: 8pt 0;
}

/* Líneas de captura de datos */
.doc__field {
    border-bottom: 1px solid #000;
    display: inline-block;
    min-height: 12pt;
    vertical-align: bottom;
}

.doc__field--short { width: 90pt; }
.doc__field--medium { width: 160pt; }
.doc__field--long { width: 280pt; }
.doc__field--flex { width: 100%; }

.doc__legend {
    font-size: 8pt;
    line-height: 1.35;
    text-transform: uppercase;
}

.doc__signature {
    border-top: 1px solid #000;
    margin-top: 34pt;
    padding-top: 3pt;
    text-align: center;
    font-size: 8.5pt;
    font-weight: bold;
    letter-spacing: 0.3pt;
}

.doc__totals {
    width: 46%;
    border: 1px solid #000;
}

.doc__totals td {
    border: 1px solid #000;
    padding: 4pt 6pt;
    font-size: 9.5pt;
}

.doc__totals .doc__totals-label {
    font-weight: bold;
    width: 58%;
}

.doc__totals .doc__totals-value {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.doc__totals tr.doc__totals-grand td {
    font-weight: bold;
    font-size: 10.5pt;
}

.doc__note {
    font-size: 8pt;
    color: #333;
}
