.form-insular, .form-ms { width: 100%; max-width: 100%; min-width: 0; --a4-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; --a4-text: #1a1a1a; --a4-muted: #6b7280; --a4-border: #d4d7de; --a4-border-strong: #6b7280; --a4-header-bg: #eceef2; --a4-header-bg-soft: #f4f5f8; --a4-accent: #1e3a5f; font-family: var(--a4-font); font-size: 9pt; color: var(--a4-text); print-color-adjust: exact; -webkit-print-color-adjust: exact; } .form-insular > table:not(.tabla-datos) { width: 100%; border-collapse: collapse; margin: 0; } .form-insular > table:not(.tabla-datos) th, .form-insular > table:not(.tabla-datos) td { border: 1px solid var(--a4-border); padding: 5px 8px; vertical-align: middle; } .form-insular table.tabla-datos, .form-ms table.tabla-datos { width: 100%; max-width: 100%; border-collapse: collapse; margin: 0 0 4px; border: 1px solid var(--a4-border); border-radius: 4px; overflow: hidden; } .form-insular table.tabla-datos th, .form-insular table.tabla-datos td, .form-ms table.tabla-datos th, .form-ms table.tabla-datos td { border: none; border-bottom: 1px solid var(--a4-border); padding: 7px 9px; vertical-align: middle; } .form-insular table.tabla-datos thead th, .form-ms table.tabla-datos thead th { border-bottom: 2px solid var(--a4-accent); } .form-insular table.tabla-datos tbody tr:last-child td, .form-ms table.tabla-datos tbody tr:last-child td { border-bottom: none; } .form-insular table.a4-datos-cliente { table-layout: fixed; } .form-insular .lbl, .form-ms .lbl { font-weight: 700; font-size: 8pt; letter-spacing: 0.04em; text-transform: uppercase; background: var(--a4-header-bg); color: var(--a4-text); } .form-insular .no-border { border: none !important; } .form-ms table.no-border { border: none; } .a4-sin-datos { color: var(--a4-muted); font-style: italic; text-align: center; padding: 10px 8px !important; } .dual-brand { width: 100%; max-width: 100%; border-collapse: collapse; margin-bottom: 8px; page-break-inside: avoid; border: 1px solid var(--a4-border); border-radius: 4px; overflow: hidden; } .dual-brand > tbody > tr > td { width: 50%; vertical-align: top; padding: 8px 10px; border: none; } .dual-brand > tbody > tr > td:first-child { border-right: 1px solid var(--a4-border); } .dual-brand > tbody > tr > td:last-child { box-shadow: inset 3px 0 0 0 var(--a4-accent); background: linear-gradient(90deg, rgba(30, 58, 95, 0.05) 0%, transparent 72%); } .dual-brand .marca-titulo { font-size: 11pt; font-weight: 800; margin: 0 0 4px; line-height: 1.2; color: var(--a4-text); } .dual-brand .marca-sub { font-size: 8.5pt; font-weight: 700; margin: 0 0 4px; color: var(--a4-muted); } .dual-brand .marca-meta { font-size: 8pt; line-height: 1.4; margin: 0; color: var(--a4-text); } .dual-brand .logo-slot { max-height: 44px; max-width: 168px; margin-bottom: 6px; object-fit: contain; } .cliente-parte { width: 100%; max-width: 100%; table-layout: fixed; border-collapse: collapse; } .cliente-parte > tbody > tr > td { vertical-align: top; padding: 0; border: 1px solid var(--a4-border); } .cliente-parte > tbody > tr > td:first-child { width: 72%; } .cliente-parte > tbody > tr > td.bloque-parte-dcha { width: 28%; } .cliente-parte .inner { width: 100%; max-width: 100%; border: none; } .cliente-parte .inner td { border: 1px solid var(--a4-border); } .bloque-parte-dcha { text-align: center; padding: 12px 10px !important; background: var(--a4-header-bg-soft); border-left: 1px solid var(--a4-border) !important; } .bloque-parte-dcha .t-parte { font-size: 9pt; font-weight: 800; margin: 0 0 6px; letter-spacing: 0.08em; color: var(--a4-muted); } .bloque-parte-dcha .t-num { font-size: 18pt; font-weight: 800; margin: 0 0 8px; color: var(--a4-accent); line-height: 1; } .bloque-parte-dcha .t-fecha { font-size: 9pt; margin: 0; } .header-top { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(124px, 168px); width: 100%; margin-bottom: 8px; border: 1px solid var(--a4-border); border-radius: 4px; overflow: hidden; page-break-inside: avoid; align-items: stretch; } .header-top > div { min-width: 0; padding: 8px 10px; vertical-align: top; } .header-top > div:first-child { border-right: 1px solid var(--a4-border); } .box-ref { width: auto; min-width: 148px; padding-left: 6px !important; } .box-ref table { border: none; } .box-ref td { height: 22px; border: 1px solid var(--a4-border); border-bottom: none; } .box-ref tr:last-child td { border-bottom: 1px solid var(--a4-border); } .box-ref .lbl-sm { font-size: 7.5pt; font-weight: 700; width: 28%; background: var(--a4-header-bg-soft); letter-spacing: 0.03em; } .box-num-parte { width: auto; min-width: 124px; max-width: none; text-align: center; align-self: stretch; display: flex; flex-direction: column; justify-content: center; border-left: 1px solid var(--a4-border) !important; background: var(--a4-header-bg-soft); } .box-num-parte .t1 { font-size: 8pt; font-weight: 700; margin: 0; letter-spacing: 0.06em; } .box-num-parte .t2 { font-size: 17pt; font-weight: 800; margin: 6px 0 0; color: var(--a4-accent); } .box-num-parte p { margin-left: 0; margin-right: 0; } .empresa-titulo { font-size: 16pt; font-weight: 800; letter-spacing: 0.02em; line-height: 1.1; margin: 0; } .empresa-sub { font-size: 9pt; font-weight: 700; margin: 2px 0 4px; color: var(--a4-muted); } .empresa-meta { font-size: 8.5pt; line-height: 1.4; margin: 0; color: var(--a4-text); } .ruled-area, .obs-area { width: 100%; box-sizing: border-box; min-height: 3.5em; padding: 8px 10px; line-height: 1.45; white-space: pre-wrap; border: 1px solid var(--a4-border); border-radius: 4px; background: #fff; page-break-inside: auto; } .sec-title { font-size: 8.5pt; font-weight: 700; margin: 10px 0 4px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--a4-accent); } .horas-sub th { font-size: 7pt; text-align: center; font-weight: 700; background: var(--a4-header-bg-soft); } .horas-sub th, .horas-sub td { padding: 3px 4px; } .txt-c { text-align: center; } .footer-grid { width: 100%; margin-top: 0; page-break-inside: avoid; } .footer-grid > tbody > tr > td { vertical-align: top; border: 1px solid var(--a4-border); border-radius: 2px; } .firma-cell { width: 33.33%; height: 72px; text-align: center; font-size: 7.5pt; font-weight: 700; padding-top: 8px; border: 1px solid var(--a4-border) !important; } .gastos { width: 28%; font-size: 8pt; } .form-insular .gastos > table, .form-ms .gastos > table { width: 100%; border: 1px solid var(--a4-border); border-radius: 4px; overflow: hidden; border-collapse: collapse; } .gastos td { height: 22px; border: none; border-bottom: 1px solid var(--a4-border); } .gastos tr:last-child td { border-bottom: none; } .gastos .gl { font-weight: 700; background: var(--a4-header-bg); width: 55%; } .form-insular .horas-data tbody tr:nth-child(even) td, .form-ms .horas-data tbody tr:nth-child(even) td { background: #fafafa; }