html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    white-space: nowrap;
    line-height: 60px;
}

/* Finding cards */
.card {
    transition: box-shadow 0.15s ease;
}

.card:hover {
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

/* Tab styling */
.nav-tabs .nav-link {
    color: #555;
}

.nav-tabs .nav-link.active {
    font-weight: 600;
}

/* Pre-formatted remediation text */
.card-body [style*="white-space: pre-line"] {
    font-size: 0.9rem;
}

/* Print styles */
@media print {
    .navbar, .footer, .btn, .nav-tabs {
        display: none !important;
    }

    .tab-pane {
        display: block !important;
        opacity: 1 !important;
    }

    .collapse {
        display: block !important;
    }

    .card {
        break-inside: avoid;
        border: 1px solid #ddd !important;
    }
}
