body { background-color: #F8FAFC; }
    .modul-blok { display: none; animation: slideUp 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
    .modul-blok.aktif { display: block; }
    @keyframes slideUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
    .glass-nav { background: rgba(255, 255, 255, 0.8); backdrop-filter: blur(10px); border-bottom: 1px solid rgba(226, 232, 240, 0.8); }
    .stat-card { transition: all 0.3s ease; border: 1px solid rgba(243, 112, 33, 0.05); }
    .stat-card:hover { transform: translateY(-5px); box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05); }
    
    .ts-dropdown { z-index: 9999 !important; border-radius: 8px !important; }
    .ts-control { border-radius: 8px !important; padding: 10px 12px !important; border-color: #e5e7eb !important; }
    .ts-dropdown .option, .ts-control { color: #1F2937 !important; }
    .ts-dropdown .active { background-color: #FEF3EA !important; color: #F37021 !important; }
    .swal2-styled.swal2-confirm { background-color: #F37021 !important; border-radius: 8px !important; }
    
    /* Penyesuaian Select2 dengan Tailwind CSS */
    .select2-container .select2-selection--single {
    height: 42px !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0.375rem !important;
    display: flex !important;
    align-items: center !important;
    outline: none !important;
    }
    .select2-container--default .select2-selection--single .select2-selection__arrow {height: 40px !important;}
    .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #374151 !important; /* Warna teks abu-abu gelap */
}

    /* --- CSS Khusus Modul E-Budgeting --- */
    .input-field { 
    width: 100%; 
    border: 1px solid #cbd5e1; 
    border-radius: 0; 
    padding: 0.5rem 0.75rem; 
    outline: none; 
    transition: border-color 0.2s; 
  }
    .input-field:focus { border-color: #f97316; box-shadow: 0 0 0 1px #f97316; }
    .table-input { width: 100%; min-width: 80px; border: none; background: transparent; outline: none;}
    .tab-active { border-bottom: 3px solid #f97316; color: #ea580c; font-weight: bold; }
    .tab-inactive { color: #64748b; font-weight: 500; }
    .tab-inactive:hover { color: #f97316; }
    .lap-input { width: 100%; background: transparent; outline: none; text-align: center; border: 1px solid #e2e8f0; border-radius: 0.25rem; padding: 0.25rem;}
    .lap-input:focus { border-color: #3b82f6;}
  
  @media print {
    @page { size: A4 portrait; margin: 1.5cm 2cm; }
    body * { visibility: hidden; }
    #modalDetailAnggaran, #modalDetailAnggaran * { visibility: visible; color: black !important; }
    
    #modalDetailAnggaran {
      position: absolute !important; left: 0 !important; top: 0 !important;
      width: 100% !important; height: auto !important;
      background: white !important; padding: 0 !important; margin: 0 !important;
    }
    
    /* Hilangkan scroll dan batasan tinggi */
    #modalDetailAnggaran > div, #modalDetailAnggaran .overflow-y-auto, .overflow-x-auto {
      position: relative !important; max-height: none !important; height: auto !important;
      overflow: visible !important; box-shadow: none !important;
    }

    .btn-no-print { display: none !important; }
    
    /* Garis tabel formal hitam solid */
    table { border-collapse: collapse !important; width: 100% !important; }
    th, td { border: 1px solid black !important; padding: 6px 8px !important; }
    
    /* Hilangkan warna background header tabel saat print */
    th { background-color: transparent !important; }
    
    /* Mencegah tabel dan kolom TTD terpotong halaman */
    tr { page-break-inside: avoid; }
    .page-break-avoid { page-break-inside: avoid; }
  }