.rifa-pdf-export-host {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 2147483000;
    background: #fff;
    pointer-events: none;
    overflow: visible;
    isolation: isolate;
}
.rifa-pdf-document {
    width: 297mm;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    background: #fff;
    color: #252938;
    font-family: Arial, Helvetica, sans-serif;
}
.rifa-pdf-page {
    position: relative;
    width: 297mm;
    height: 210mm;
    box-sizing: border-box;
    overflow: hidden;
    padding: 6mm 10mm 9mm;
    background: #fff;
    margin: 0 !important;
    transform: none !important;
    page-break-after: auto;
    break-after: auto;
}
.rifa-pdf-page-break { display: none !important; }
.rifa-pdf-header {
    height: 17mm;
    display: flex;
    align-items: center;
    gap: 8mm;
}
.rifa-pdf-logo-wrap {
    width: 62mm;
    height: 14mm;
    display: flex;
    align-items: center;
}
.rifa-pdf-logo-wrap img {
    max-width: 60mm;
    max-height: 13mm;
    object-fit: contain;
    display: block;
}
.rifa-pdf-title-box {
    margin-left: auto;
    width: 143mm;
    height: 14mm;
    padding: 2.1mm 4mm 1.5mm;
    box-sizing: border-box;
    background: #252938;
    color: #fff;
    text-align: right;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.rifa-pdf-title-box strong {
    font-size: 15pt;
    line-height: 1;
    letter-spacing: .1pt;
}
.rifa-pdf-title-box span {
    margin-top: 1.2mm;
    color: #00a65a;
    font-size: 7.5pt;
    font-weight: 700;
}
.rifa-pdf-green-line {
    height: .7mm;
    margin-top: 1.2mm;
    background: #00a65a;
}
.rifa-pdf-content {
    padding-top: 2.2mm;
    height: 168mm;
    box-sizing: border-box;
    overflow: hidden;
}
.rifa-pdf-meta-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 3.4mm;
    background: #edf8f2;
}
.rifa-pdf-meta-item {
    min-height: 15mm;
    padding: 2.1mm 3mm;
    box-sizing: border-box;
    border-right: .35mm solid #fff;
}
.rifa-pdf-meta-item:last-child { border-right: 0; }
.rifa-pdf-meta-label,
.rifa-pdf-summary-label {
    color: #009b55;
    font-size: 6.5pt;
    font-weight: 800;
    line-height: 1.1;
}
.rifa-pdf-meta-value {
    margin-top: 1.2mm;
    color: #252938;
    font-size: 9.3pt;
    font-weight: 700;
    line-height: 1.15;
}
.rifa-pdf-section-title {
    min-height: 7mm;
    margin: 2.6mm 0 1.5mm;
    padding: 1.05mm 0 1.05mm 2.3mm;
    box-sizing: border-box;
    border-left: 1mm solid #00a65a;
    border-bottom: .28mm solid #d4dae1;
    color: #252938;
    display: flex;
    align-items: baseline;
    gap: 2mm;
    break-inside: avoid;
    page-break-inside: avoid;
}
.rifa-pdf-section-title span {
    font-size: 10.5pt;
    font-weight: 800;
    line-height: 1.1;
}
.rifa-pdf-section-title small {
    color: #6b7280;
    font-size: 6.4pt;
    line-height: 1.1;
}
.rifa-pdf-summary-grid {
    display: grid;
    border-left: .28mm solid #fff;
    border-top: .28mm solid #fff;
}
.rifa-pdf-summary-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
.rifa-pdf-summary-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
.rifa-pdf-summary-card {
    min-height: 12.4mm;
    padding: 2.1mm 2.5mm;
    box-sizing: border-box;
    background: #edf8f2;
    border-right: .35mm solid #fff;
    border-bottom: .35mm solid #fff;
    break-inside: avoid;
    page-break-inside: avoid;
}
.rifa-pdf-summary-card:nth-child(even) { background: #f1f2f5; }
.rifa-pdf-summary-value {
    margin-top: 1.1mm;
    color: #252938;
    font-size: 9.1pt;
    font-weight: 800;
    line-height: 1.05;
}
.rifa-pdf-summary-note {
    margin-top: .8mm;
    color: #6b7280;
    font-size: 5.6pt;
}
.rifa-pdf-table-wrap {
    width: 100%;
    overflow: hidden;
}
.rifa-pdf-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    color: #303545;
    font-size: 6.8pt;
}
.rifa-pdf-table th {
    padding: 2mm 1.2mm;
    background: #252938;
    color: #fff;
    border: .25mm solid #fff;
    font-size: 6.35pt;
    font-weight: 800;
    line-height: 1.05;
    text-align: center;
    vertical-align: middle;
}
.rifa-pdf-table td {
    padding: 1.55mm 1.2mm;
    background: #f1faf5;
    border: .25mm solid #d6dde3;
    line-height: 1.15;
    text-align: center;
    vertical-align: middle;
    overflow-wrap: anywhere;
    word-break: break-word;
}
.rifa-pdf-table.compact th { padding-top: 1.55mm; padding-bottom: 1.55mm; }
.rifa-pdf-table.compact td { padding-top: 1.15mm; padding-bottom: 1.15mm; font-size: 6.25pt; }
.rifa-pdf-table.deal-compact th {
    padding-top: 1.15mm;
    padding-bottom: 1.15mm;
    font-size: 6pt;
}
.rifa-pdf-table.deal-compact td {
    padding-top: .78mm;
    padding-bottom: .78mm;
    font-size: 5.9pt;
    line-height: 1.05;
}
.rifa-pdf-table tbody tr { break-inside: avoid; page-break-inside: avoid; }
.rifa-pdf-table td.left { text-align: left; }
.rifa-pdf-table td.money { text-align: right; white-space: nowrap; }
.rifa-pdf-table td.strong { font-weight: 800; }
.rifa-pdf-table td.positive { color: #078442; }
.rifa-pdf-table td.negative { color: #c62828; }
.rifa-pdf-table td.empty { padding: 4mm; color: #6b7280; font-style: italic; }
.rifa-pdf-evaluation-box {
    min-height: 25mm;
    padding: 4mm;
    box-sizing: border-box;
    background: #f1f2f5;
    border-left: .8mm solid #00a65a;
    color: #303545;
    font-size: 8pt;
    line-height: 1.55;
    white-space: pre-wrap;
}
.rifa-pdf-footer {
    position: absolute;
    left: 10mm;
    right: 10mm;
    bottom: 4.3mm;
    padding-top: 1.2mm;
    border-top: .25mm solid #d4dae1;
    color: #6b7280;
    font-size: 5.5pt;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* =========================
   SLIP GAJI PDF - A4 POTRAIT
   ========================= */
.rifa-slip-export-host {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 210mm !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 2147483000;
    background: #fff;
    pointer-events: none;
    overflow: visible;
    isolation: isolate;
}
.rifa-slip-document {
    width: 210mm;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    background: #fff;
    color: #252938;
    font-family: Arial, Helvetica, sans-serif;
}
.rifa-slip-page {
    position: relative;
    width: 210mm;
    height: 297mm;
    box-sizing: border-box;
    overflow: hidden;
    padding: 8mm 10mm 11mm;
    background: #fff;
    margin: 0 !important;
    transform: none !important;
}
.rifa-slip-header {
    height: 18mm;
    display: flex;
    align-items: center;
    gap: 6mm;
}
.rifa-slip-logo-wrap {
    width: 73mm;
    height: 15mm;
    display: flex;
    align-items: center;
}
.rifa-slip-logo-wrap img {
    max-width: 70mm;
    max-height: 14mm;
    object-fit: contain;
    display: block;
}
.rifa-slip-title-box {
    margin-left: auto;
    width: 86mm;
    height: 15mm;
    padding: 2.4mm 4mm 1.7mm;
    box-sizing: border-box;
    background: #252938;
    color: #fff;
    text-align: right;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.rifa-slip-title-box strong {
    font-size: 15pt;
    line-height: 1;
}
.rifa-slip-title-box span {
    margin-top: 1.2mm;
    color: #00a65a;
    font-size: 7.5pt;
    font-weight: 800;
}
.rifa-slip-green-line {
    height: .7mm;
    margin-top: 1.3mm;
    background: #00a65a;
}
.rifa-slip-content {
    padding-top: 3mm;
    height: 248mm;
    box-sizing: border-box;
    overflow: hidden;
}
.rifa-slip-meta-grid {
    display: grid;
    grid-template-columns: 1.35fr 1fr 1.25fr;
    background: #edf8f2;
}
.rifa-slip-meta-grid > div {
    min-height: 17mm;
    padding: 2.5mm 3mm;
    box-sizing: border-box;
    border-right: .35mm solid #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.rifa-slip-meta-grid > div:last-child { border-right: 0; }
.rifa-slip-meta-grid small {
    color: #009b55;
    font-size: 6.2pt;
    font-weight: 900;
    line-height: 1;
}
.rifa-slip-meta-grid strong {
    margin-top: 1.3mm;
    color: #252938;
    font-size: 9.3pt;
    line-height: 1.15;
}
.rifa-slip-two-columns {
    margin-top: 2.3mm;
    display: grid;
    grid-template-columns: .94fr 1.06fr;
    gap: 3.5mm;
    align-items: start;
}
.rifa-slip-section-title {
    min-height: 7mm;
    margin: 2.3mm 0 1.5mm;
    padding: 1mm 0 1mm 2.2mm;
    box-sizing: border-box;
    border-left: 1mm solid #00a65a;
    border-bottom: .28mm solid #d4dae1;
    color: #252938;
    display: flex;
    align-items: baseline;
    gap: 1.8mm;
}
.rifa-slip-section-title span {
    font-size: 9.2pt;
    font-weight: 900;
    line-height: 1.1;
}
.rifa-slip-section-title small {
    color: #6b7280;
    font-size: 5.7pt;
    line-height: 1.1;
}
.rifa-slip-kv-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    color: #303545;
    font-size: 6.6pt;
}
.rifa-slip-kv-table td {
    padding: 1.55mm 1.8mm;
    border: .25mm solid #d6dde3;
    background: #f1faf5;
    line-height: 1.14;
    vertical-align: middle;
    overflow-wrap: anywhere;
}
.rifa-slip-kv-table tr:nth-child(even) td { background: #f1f2f5; }
.rifa-slip-kv-table td:first-child { width: 57%; }
.rifa-slip-kv-table td:last-child {
    width: 43%;
    text-align: right;
    font-weight: 800;
}
.rifa-slip-kv-table.indicators td { padding-top: 1.28mm; padding-bottom: 1.28mm; }
.rifa-slip-kv-table .money { white-space: nowrap; }
.rifa-slip-kv-table .negative { color: #c62828; }
.rifa-slip-kv-table .total { color: #fff; font-size: 8.8pt; }
.rifa-slip-kv-table tr.grand-total td {
    background: #00a65a !important;
    color: #fff;
    font-weight: 900;
    padding-top: 2.2mm;
    padding-bottom: 2.2mm;
}
.rifa-slip-note {
    min-height: 16mm;
    padding: 3mm;
    box-sizing: border-box;
    background: #f1f2f5;
    border-left: .8mm solid #00a65a;
    color: #3e4656;
    font-size: 6.25pt;
    line-height: 1.5;
}
.rifa-slip-signatures {
    margin-top: 5mm;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14mm;
}
.rifa-slip-signature {
    text-align: center;
    color: #3e4656;
    font-size: 6pt;
    font-weight: 700;
}
.rifa-slip-signature > span { display: block; margin-bottom: 1mm; }
.rifa-slip-signature img {
    width: 22mm;
    height: 22mm;
    object-fit: contain;
    display: block;
    margin: 0 auto 1.3mm;
}
.rifa-slip-signature .line {
    height: .4mm;
    background: #00a65a;
    margin-bottom: 1.5mm;
}
.rifa-slip-signature strong {
    color: #3e4656;
    font-size: 6.5pt;
}
.rifa-slip-footer {
    position: absolute;
    left: 10mm;
    right: 10mm;
    bottom: 5mm;
    padding-top: 1.3mm;
    border-top: .25mm solid #d4dae1;
    color: #6b7280;
    font-size: 5.5pt;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.rifa-slip-page .rifa-pdf-table {
    font-size: 7.3pt;
}
.rifa-slip-page .rifa-pdf-table th {
    padding: 2.3mm 1.4mm;
    font-size: 7pt;
}
.rifa-slip-page .rifa-pdf-table td {
    padding: 1.8mm 1.4mm;
    font-size: 6.8pt;
}
.rifa-slip-page .rifa-pdf-table.compact td {
    padding-top: 1.5mm;
    padding-bottom: 1.5mm;
    font-size: 6.7pt;
}

/* =========================================================
   SLIP GAJI PDF v3 - SELARAS DENGAN TEMPLATE DOCX TERBARU
   ========================================================= */
.rifa-slip-main-page .rifa-slip-header {
    height: 22mm;
}
.rifa-slip-main-page .rifa-slip-logo-wrap {
    width: 82mm;
    height: 18mm;
}
.rifa-slip-main-page .rifa-slip-logo-wrap img {
    max-width: 79mm;
    max-height: 17mm;
}
.rifa-slip-main-page .rifa-slip-title-box {
    width: 86mm;
    height: 18mm;
    padding: 3mm 4mm 2.2mm;
}
.rifa-slip-main-page .rifa-slip-title-box strong {
    font-size: 13.5pt;
}
.rifa-slip-main-page .rifa-slip-title-box span {
    margin-top: 1.4mm;
    font-size: 7.4pt;
}
.rifa-slip-main-page .rifa-slip-content {
    padding-top: 1.6mm;
    height: 244mm;
}
.rifa-slip-main-page .rifa-slip-section-title {
    margin-top: 2mm;
    margin-bottom: 1.3mm;
    min-height: 6.6mm;
}
.rifa-slip-main-page .rifa-slip-section-title span {
    font-size: 8.8pt;
}
.rifa-slip-meta-grid {
    grid-template-columns: 1fr 1fr;
    margin-bottom: 3.5mm;
}
.rifa-slip-meta-grid > div {
    min-height: 14.5mm;
    padding: 2.2mm 2.6mm;
}
.rifa-slip-meta-grid small {
    font-size: 5.8pt;
}
.rifa-slip-meta-grid strong {
    font-size: 8.5pt;
}
.rifa-slip-two-columns {
    margin-top: 0;
    grid-template-columns: .88fr 1.12fr;
    gap: 2.2mm;
}
.rifa-slip-kv-table {
    font-size: 6.25pt;
}
.rifa-slip-kv-table thead th {
    padding: 1.7mm 1.8mm;
    background: #252938;
    color: #fff;
    border: .25mm solid #fff;
    font-size: 6.25pt;
    font-weight: 800;
    line-height: 1.05;
    text-align: left;
}
.rifa-slip-kv-table thead th:last-child {
    text-align: right;
}
.rifa-slip-kv-table td {
    padding: 1.25mm 1.55mm;
    line-height: 1.1;
}
.rifa-slip-kv-table.indicators td {
    padding-top: 1.04mm;
    padding-bottom: 1.04mm;
}
.rifa-slip-kv-table .detail {
    font-weight: 700;
}
.rifa-slip-kv-table .strong {
    font-weight: 900;
}
.rifa-slip-kv-table tr.rifa-slip-group-row td {
    padding-top: 1.05mm;
    padding-bottom: 1.05mm;
    background: #f1f2f5 !important;
    color: #4b5563;
    font-size: 6.1pt;
    font-weight: 800;
    text-align: left;
}
.rifa-slip-kv-table tr.deduction-total td {
    font-weight: 900;
    border-top: .45mm solid #c8d0d8;
}
.rifa-slip-note-inline {
    margin-top: 3.4mm;
    min-height: 8mm;
    padding: 2mm 2.4mm;
    box-sizing: border-box;
    background: #f1f2f5;
    border-left: .9mm solid #00a65a;
    color: #3e4656;
    font-size: 5.85pt;
    line-height: 1.35;
    display: flex;
    align-items: flex-start;
    gap: 2.2mm;
}
.rifa-slip-note-inline strong {
    flex: 0 0 auto;
    color: #008c4d;
    font-size: 6.1pt;
}
.rifa-slip-note-inline span {
    flex: 1 1 auto;
}
.rifa-slip-signatures {
    margin-top: 3mm;
    gap: 11mm;
}
.rifa-slip-signature {
    font-size: 5.6pt;
}
.rifa-slip-signature > span {
    margin-bottom: .6mm;
}
.rifa-slip-signature img {
    width: 20mm;
    height: 20mm;
    margin-bottom: .8mm;
}
.rifa-slip-signature .line {
    margin-bottom: 1mm;
}
.rifa-slip-signature strong {
    font-size: 6.1pt;
}
.rifa-slip-footer {
    justify-content: center;
    text-align: center;
}
.rifa-slip-appendix-page {
    padding: 10mm 12mm 11mm;
}
.rifa-slip-appendix-page .rifa-slip-content {
    padding-top: 0;
    height: 254mm;
}
.rifa-slip-appendix-label {
    height: 11mm;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #252938;
    font-size: 8.5pt;
    font-weight: 800;
}
.rifa-slip-appendix-page .rifa-slip-section-title {
    margin-top: 0;
    margin-bottom: 3mm;
    min-height: 7.5mm;
}
.rifa-slip-appendix-page .rifa-slip-section-title span {
    font-size: 9.5pt;
}
.rifa-slip-appendix-page .rifa-pdf-table {
    font-size: 6.55pt;
}
.rifa-slip-appendix-page .rifa-pdf-table th {
    padding: 2.1mm 1.35mm;
    font-size: 6.2pt;
}
.rifa-slip-appendix-page .rifa-pdf-table.compact td {
    padding-top: 1.15mm;
    padding-bottom: 1.15mm;
    font-size: 6.1pt;
    line-height: 1.1;
}
