.data-difference {
    display: inline-block;
    font-weight: normal;
    font-size: 0.7em;
    color: white;
    background-color: var(--bs-red);
    border: none;
    border-radius: .3em;
    padding: 0 .3em;
    margin: 0 0 0 .3em;
    cursor: pointer;
    position: relative;
    top: -2px;
}

.data-difference.indented {
    margin-left:1em;
}

.print-only {
    display: none;
}

@media print {
    @page {
        margin: 0;
    }

    body {
        padding: 1cm;
    }

    :root {
        --bs-body-color: #000;
    }

    .data-difference,
    .no-print,
    .navbar.fixed-top {
        display: none !important;
    }

    html,* {
        color:#000;
        font-size:10px;
    }

    h1 {
        font-weight:bold;
        font-size:22px;
        border-bottom: solid 1px #000;
    }

    h2 {
        font-weight: bold;
        font-size: 1.1em;
    }

    table.table thead tr th,
    table.table tbody tr td,
    table.table tfoot tr td {
        color:#000;
    }

    #page-area:not(.maintenance-mode) {
        padding: 0;
    }

    .mb-2,
    .mb-3,
    .mb-4 {
        margin-bottom: .2em !important;
    }

    .print-only {
        display: revert;
    }

    .print-only .row {
        margin-bottom: 1em;
    }

    .student-report .row,
    .student-report .row *,
    .student-report .semester-data * {
        font-size: 9pt;
    }

    .sticky-menu-pinned {
        position:revert;
        top: 0px;
    }

    .sticky-menu-icon {
        display:none;
    }
}

.report-table {
    font-size:0.8em;
}

.table-sm.report-table > :not(caption) > * > * {
    padding: 0.05rem 0.05rem;
}

table.report-table thead tr th:first-child,
table.report-table tbody tr td:first-child {
    padding-left: 0.5em;
}

table.report-table thead tr th:last-child,
table.report-table tbody tr td:last-child {
    padding-right: 0.5em;
}

.report-table tr.highlighted td {
    background-color: var(--bs-border-color);
}

table.bordered, table.bordered th, table.bordered td {
    border: 1px solid var(--bs-border-color);
}

table.top tr, table.top td {
    vertical-align:top ;
}

.warning,
.form-control.warning:disabled {
    background-color: var(--bs-red);
    color: white;
}

.right {
    text-align: right;
}

fieldset, legend {
    all: revert;
}

fieldset {
    border: 1px solid var(--bs-border-color);
    border-radius: .4em;
    margin:0;
}

legend {
    font-weight: bold;
}

table.table.border-outline {
    border-top: solid 1px var(--bs-border-color);
    border-left: solid 1px var(--bs-border-color);
    border-right: solid 1px var(--bs-border-color);
}

.strong {
    font-weight:bold;
}

.semester-data {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: start;
}

.semester-data .col1 {
    flex-grow:1;
}

.semester-data .col2 {
    flex-grow:0;
    flex-shrink: 0;
    flex-basis:content;
    padding-left:.7em;
}

.semester-data .col1 input[type="number"].form-control.center {
    padding-left:1.5em;
}

.semester-data .col2 .form-control {
    width:55px;
    text-align: center;
}

.input-group-text.student-info {
    min-width: 77px;
}

.input-group-text.student-info i {
    width: 100%;
    text-align:right;
}