.sidebar-link {
    display: block;
    margin-bottom: 0.25rem;
    border-radius: 0.5rem;
    padding: 0.5rem 0.75rem;
    color: #cbd5e1;
    transition: background-color 120ms ease, color 120ms ease;
}

.sidebar-link:hover {
    background: #1e293b;
    color: #ffffff;
}

.sidebar-link-active {
    background: #334155;
    color: #ffffff;
    font-weight: 600;
}

@media print {
    body {
        background: #ffffff !important;
        color: #0f172a !important;
    }

    .no-print {
        display: none !important;
    }

    main {
        padding: 0 !important;
    }

    .rounded-xl,
    .rounded-lg,
    .shadow-sm {
        box-shadow: none !important;
    }

    .border,
    .border-b,
    .border-r {
        border-color: #cbd5e1 !important;
    }

    section,
    article,
    table {
        break-inside: avoid;
    }

    table {
        width: 100%;
        border-collapse: collapse;
    }

    th,
    td {
        border: 1px solid #cbd5e1 !important;
        vertical-align: top;
    }

    a {
        color: inherit !important;
        text-decoration: none !important;
    }

    canvas {
        max-height: 320px !important;
    }
}
