/* Accessibility improvements for TermsToText */

/* Ensure minimum 16px font size throughout the site */
body {
    font-size: 16px !important;
}

/* Override Bootstrap's small text classes */
.small, 
small {
    font-size: 16px !important;
}

/* Ensure all text elements have minimum 16px */
p, 
div, 
span, 
li, 
td, 
th, 
label, 
input, 
textarea, 
button, 
.btn {
    font-size: 16px !important;
}

/* Maintain proper hierarchy while ensuring readability */
h1 { font-size: 2.5rem !important; }
h2 { font-size: 2rem !important; }
h3 { font-size: 1.75rem !important; }
h4 { font-size: 1.5rem !important; }
h5 { font-size: 1.25rem !important; }
h6 { font-size: 1.125rem !important; }

/* Lead text should be larger */
.lead {
    font-size: 1.25rem !important;
}

/* Card titles and subtitles */
.card-title {
    font-size: 1.5rem !important;
}

.card-subtitle {
    font-size: 1rem !important;
}

/* Navigation and menu items */
.nav-link,
.navbar-nav .nav-link {
    font-size: 16px !important;
}

/* Form elements */
.form-control,
.form-select,
.form-label {
    font-size: 16px !important;
}

/* Alert and notification text */
.alert {
    font-size: 16px !important;
}

/* Footer text */
.footer {
    font-size: 16px !important;
}

/* Breadcrumb text */
.breadcrumb {
    font-size: 16px !important;
}

/* Badge text */
.badge {
    font-size: 14px !important;
    min-font-size: 14px !important;
}

/* Tooltip and popover text */
.tooltip,
.popover {
    font-size: 16px !important;
}

/* Responsive text sizing */
@media (max-width: 768px) {
    body {
        font-size: 16px !important;
    }
    
    .small, 
    small {
        font-size: 16px !important;
    }
}

/* Better contrast for darker backgrounds */
.bg-dark {
    background-color: #1a1a1a !important;
}

.bg-primary {
    background-color: #0d47a1 !important;
}

.bg-info {
    background-color: #01579b !important;
}

/* Focus indicators for accessibility */
.btn:focus,
.form-control:focus,
.form-select:focus {
    outline: 2px solid #0d47a1;
    outline-offset: 2px;
}

/* Ensure proper line height for readability */
body, 
p, 
div, 
span, 
li {
    line-height: 1.6 !important;
}