/* Print styles */
@media print {
    body {
        background: white !important;
    }

    #sidebar {
        display: none !important;
    }

    main {
        margin-left: 0 !important;
    }

    .print\:hidden {
        display: none !important;
    }

    .bg-white {
        box-shadow: none !important;
        border: 1px solid #e5e7eb !important;
    }

    a {
        color: #1e40af !important;
        text-decoration: none !important;
    }

    .policy-document {
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }

    h1, h2, h3 {
        page-break-after: avoid;
    }

    table {
        page-break-inside: avoid;
    }

    .bg-amber-100 {
        background-color: #fef3c7 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .bg-blue-100 {
        background-color: #dbeafe !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* Scrollbar styling for sidebar */
#sidebar::-webkit-scrollbar {
    width: 6px;
}

#sidebar::-webkit-scrollbar-track {
    background: transparent;
}

#sidebar::-webkit-scrollbar-thumb {
    background: #475569;
    border-radius: 3px;
}

#sidebar::-webkit-scrollbar-thumb:hover {
    background: #64748b;
}

/* Smooth scrolling for anchor links */
html {
    scroll-behavior: smooth;
}

/* Focus styles for keyboard navigation */
a:focus-visible,
button:focus-visible,
input:focus-visible {
    outline: 2px solid #3b82f6;
    outline-offset: 2px;
}

/* Table hover rows */
tbody tr:hover {
    background-color: #f9fafb;
}

/* Policy document customize highlight animation */
.bg-amber-100 {
    transition: background-color 0.2s ease;
}

.bg-amber-100:hover {
    background-color: #fde68a;
}
