    /* BLU CRM - Manajemen Invoice & Pembayaran */
    .invoice-alert-box {
      border: 1px solid #fecaca;
      background: #fff1f2;
      color: #9f1239;
      border-radius: 16px;
      padding: 14px 16px;
      margin-bottom: 14px;
      display: flex;
      gap: 10px;
      align-items: flex-start;
      font-size: 13px;
      line-height: 1.45;
    }

    .invoice-alert-box b {
      color: #7f1d1d;
    }

    .invoice-status {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      border-radius: 999px;
      padding: 5px 10px;
      font-size: 11px;
      font-weight: 900;
      white-space: nowrap;
    }

    .invoice-status.unpaid {
      background: #fff0ea;
      color: #d84315;
    }

    .invoice-status.dp {
      background: #fff8db;
      color: #9a6700;
    }

    .invoice-status.paid {
      background: #e6f4ea;
      color: #2e7d32;
    }

    .invoice-status.overdue {
      background: #fce8e6;
      color: #c62828;
    }

    .invoice-actions {
      display: flex;
      gap: 6px;
      flex-wrap: wrap;
      align-items: center;
    }

    .invoice-mini-btn {
      border: 0;
      border-radius: 8px;
      padding: 6px 10px;
      font-size: 12px;
      font-weight: 800;
      cursor: pointer;
      touch-action: manipulation;
      white-space: nowrap;
    }

    .invoice-mini-primary {
      background: #eaf2ff;
      color: #1e55a8;
    }

    .invoice-mini-green {
      background: #e6f4ea;
      color: #2e7d32;
    }

    .invoice-mini-red {
      background: #ffecec;
      color: #c62828;
    }

    .invoice-mini-soft {
      background: #f7f9fe;
      color: #657086;
      border: 1px solid #e2e8f0;
    }

    .invoice-print-card {
      background: #fff;
      color: #1C3259;
      border-radius: 18px;
      padding: 22px;
      border: 1px solid #e2e8f0;
    }

    .invoice-print-head {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      border-bottom: 2px solid #101E36;
      padding-bottom: 14px;
      margin-bottom: 18px;
    }

    .invoice-print-title {
      font-size: 28px;
      font-weight: 900;
      letter-spacing: -.04em;
    }

    .invoice-print-meta {
      text-align: right;
      font-size: 13px;
      color: #657086;
    }

    .invoice-print-table {
      width: 100%;
      border-collapse: collapse;
      margin-top: 16px;
      font-size: 13px;
    }

    .invoice-print-table th {
      background: #f7f9fe;
      color: #1C3259;
      text-align: left;
      padding: 10px;
      border: 1px solid #e2e8f0;
    }

    .invoice-print-table td {
      padding: 10px;
      border: 1px solid #e2e8f0;
    }

    .invoice-print-total {
      text-align: right;
      font-size: 18px;
      font-weight: 900;
      margin-top: 14px;
    }

    @media (max-width: 640px) {
      .invoice-actions {
        justify-content: flex-end;
      }

      .invoice-mini-btn {
        padding: 7px 10px;
        font-size: 12px;
      }

      .invoice-print-head {
        flex-direction: column;
      }

      .invoice-print-meta {
        text-align: left;
      }
    }

    @media print {
      body * {
        visibility: hidden !important;
      }

      #invoicePrintArea,
      #invoicePrintArea * {
        visibility: visible !important;
      }

      #invoicePrintArea {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
      }

      .modal-head,
      .toolbar,
      .xbtn {
        display: none !important;
      }
    }
