/* ========================================
   FONT SIZE ADJUSTMENTS FOR SOSMA APPLICATION
   ======================================== */

:root {
    --font-size-base: 0.9rem;
    --font-size-sm: 0.85rem;
    --font-size-xs: 0.75rem;
    --font-size-h1: 2rem;
    --font-size-h2: 1.6rem;
    --font-size-h3: 1.4rem;
    --font-size-h4: 1.2rem;
    --font-size-h5: 1rem;
    --font-size-h6: 0.9rem;
    --font-size-page-title: 1.3rem;
    --font-size-page-pretitle: 0.7rem;
    --font-size-modal-title: 1.2rem;
}

/* Reduce base font size for the entire application */
body {
    font-size: var(--font-size-base) !important;
}

/* Reduce heading sizes */
h1, .h1 {
    font-size: var(--font-size-h1) !important;
}

h2, .h2 {
    font-size: var(--font-size-h2) !important;
}

h3, .h3 {
    font-size: var(--font-size-h3) !important;
}

h4, .h4 {
    font-size: var(--font-size-h4) !important;
}

h5, .h5 {
    font-size: var(--font-size-h5) !important;
}

h6, .h6 {
    font-size: var(--font-size-h6) !important;
}

/* Reduce form control font sizes */
.form-control {
    font-size: var(--font-size-sm) !important;
}

/* Reduce button font sizes */
.btn {
    font-size: var(--font-size-sm) !important;
}

.btn-lg {
    font-size: 1rem !important; /* Reduced from 1.25rem */
}

.btn-sm {
    font-size: var(--font-size-xs) !important;
}

/* Reduce table font sizes */
.table,
.table th,
.table td {
    font-size: var(--font-size-sm) !important;
}

/* Reduce card header font sizes */
.card-header h3 {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

/* Reduce page title font sizes */
.page-title {
    font-size: var(--font-size-page-title) !important;
}

.page-pretitle {
    font-size: var(--font-size-page-pretitle) !important;
}

/* Reduce sidebar font sizes */
#sidebar .nav-link {
    font-size: 0.9rem !important; /* Reduced from 1rem */
}

/* Reduce navbar font sizes */
.navbar-nav .nav-link {
    font-size: 0.9rem !important;
}

/* Reduce dropdown font sizes */
.dropdown-menu,
.dropdown-item {
    font-size: var(--font-size-sm) !important;
}

/* Reduce alert font sizes */
.alert {
    font-size: var(--font-size-sm) !important;
}

/* Badge: mínimo 0.75rem para legibilidad (WCAG) */
.badge {
    font-size: var(--font-size-xs) !important;
}

/* Reduce small text */
small, .small {
    font-size: var(--font-size-xs) !important;
}

/* Reduce lead text */
.lead {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

/* Reduce display classes */
.display-1 {
    font-size: 4.5rem !important; /* Reduced from 6rem */
}

.display-2 {
    font-size: 4rem !important; /* Reduced from 5.5rem */
}

.display-3 {
    font-size: 3.5rem !important; /* Reduced from 4.5rem */
}

.display-4 {
    font-size: 3rem !important; /* Reduced from 3.5rem */
}

/* Reduce list font sizes */
.list-group-item {
    font-size: var(--font-size-sm) !important;
}

/* Reduce modal font sizes */
.modal-title {
    font-size: var(--font-size-modal-title) !important;
}

.modal-body {
    font-size: var(--font-size-sm) !important;
}

/* Reduce tooltip font sizes */
.tooltip {
    font-size: 0.75rem !important; /* Reduced from 0.875rem */
}

/* Reduce popover font sizes */
.popover {
    font-size: 0.75rem !important; /* Reduced from 0.875rem */
}

/* Reduce breadcrumb font sizes */
.breadcrumb {
    font-size: 0.8rem !important;
}

/* Reduce pagination font sizes */
.pagination {
    font-size: 0.85rem !important;
}

.pagination-lg .page-link {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

.pagination-sm .page-link {
    font-size: 0.75rem !important; /* Reduced from 0.875rem */
}

/* Reduce input group font sizes */
.input-group-text {
    font-size: 0.85rem !important;
}

/* Reduce custom select font sizes */
.custom-select {
    font-size: 0.85rem !important;
}

/* Reduce textarea font sizes */
textarea.form-control {
    font-size: 0.85rem !important;
}

/* Reduce label font sizes */
label {
    font-size: 0.85rem !important;
}

/* Reduce help text font sizes */
.form-text {
    font-size: 0.75rem !important; /* Reduced from 80% */
}

/* Reduce validation message font sizes */
.invalid-feedback,
.valid-feedback {
    font-size: 0.75rem !important; /* Reduced from 80% */
}

/* Reduce toast font sizes */
.toast {
    font-size: 0.75rem !important; /* Reduced from 0.875rem */
}

/* Reduce progress bar font sizes */
.progress {
    font-size: 0.65rem !important; /* Reduced from 0.75rem */
}

/* Reduce close button font sizes */
.close {
    font-size: 1.3rem !important; /* Reduced from 1.5rem */
}

/* Reduce blockquote font sizes */
.blockquote {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

.blockquote-footer {
    font-size: 0.75rem !important; /* Reduced from 80% */
}

/* Reduce figure caption font sizes */
.figure-caption {
    font-size: 0.8rem !important; /* Reduced from 90% */
}

/* Reduce code font sizes */
code {
    font-size: 0.8rem !important; /* Reduced from 87.5% */
}

pre {
    font-size: 0.8rem !important; /* Reduced from 87.5% */
}

/* Reduce kbd font sizes */
kbd {
    font-size: 0.8rem !important; /* Reduced from 87.5% */
}

/* Reduce mark font sizes */
.mark, mark {
    font-size: 0.85rem !important;
}

/* Reduce initialism font sizes */
.initialism {
    font-size: 0.8rem !important; /* Reduced from 90% */
}

/* Reduce list inline font sizes */
.list-inline-item {
    font-size: 0.85rem !important;
}

/* Reduce navbar brand font sizes */
.navbar-brand {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

/* Reduce navbar toggler font sizes */
.navbar-toggler {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

/* Reduce form control large and small sizes */
.form-control-lg {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

.form-control-sm {
    font-size: 0.75rem !important; /* Reduced from 0.875rem */
}

/* Reduce custom select large and small sizes */
.custom-select-lg {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

.custom-select-sm {
    font-size: 0.75rem !important; /* Reduced from 0.875rem */
}

/* Reduce input group large and small sizes */
.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-append > .btn,
.input-group-lg > .input-group-prepend > .btn {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-append > .btn,
.input-group-sm > .input-group-prepend > .btn {
    font-size: 0.75rem !important; /* Reduced from 0.875rem */
}

/* Reduce col form label sizes */
.col-form-label-lg {
    font-size: 1.1rem !important; /* Reduced from 1.25rem */
}

.col-form-label-sm {
    font-size: 0.75rem !important; /* Reduced from 0.875rem */
}
