@media print {
    body { background-color: white !important; font-family: 'Times New Roman', Times, serif; }
    .navbar, .btn, .card-footer, .alert, .no-print { display: none !important; }
    .card { border: none !important; box-shadow: none !important; }
    .card-header { background-color: transparent !important; border-bottom: 2px solid #000 !important; }
    .stat-card { border: 1px solid #ccc !important; color: black !important; }
    .stat-card .card-body { padding: 10px !important; }
    .badge { border: 1px solid #000; color: black !important; background: transparent !important; }
    h1 { font-size: 24pt; color: black !important; }
     /* Force background colors for charts if possible, though browsers often block this */
    canvas { max-width: 50% !important; margin: 0 auto; }
    
    /* Layout adjustments */
    .col-md-3 { width: 25%; float: left; }
    .col-md-8 { width: 100%; }
    .row { display: flex; flex-wrap: wrap; }
    
    /* Tables */
    table { width: 100%; border-collapse: collapse; }
    th, td { border: 1px solid #ddd; padding: 8px; }
    th { background-color: #f2f2f2 !important; font-weight: bold; }
}
