/* 
 * Font Size Overrides - Reducing all font sizes by 1.5px
 * This file overrides all font sizes system-wide for better readability
 */

/* ========== TAILWIND CSS OVERRIDES ========== */

/* Standard Tailwind text size classes - reduced by 1.5px */
.text-xs { font-size: 0.6rem !important; }      /* was 0.75rem (12px) -> 10.5px */
.text-sm { font-size: 0.7125rem !important; }   /* was 0.875rem (14px) -> 12.5px */
.text-base { font-size: 0.8125rem !important; } /* was 1rem (16px) -> 14.5px */
.text-lg { font-size: 1.0625rem !important; }   /* was 1.125rem (18px) -> 16.5px */
.text-xl { font-size: 1.1563rem !important; }   /* was 1.25rem (20px) -> 18.5px */
.text-2xl { font-size: 1.3125rem !important; }  /* was 1.5rem (24px) -> 22.5px */
.text-3xl { font-size: 1.6875rem !important; }  /* was 1.875rem (30px) -> 28.5px */
.text-4xl { font-size: 2.0625rem !important; }  /* was 2.25rem (36px) -> 34.5px */
.text-5xl { font-size: 2.8125rem !important; }  /* was 3rem (48px) -> 46.5px */
.text-6xl { font-size: 3.5625rem !important; }  /* was 3.75rem (60px) -> 58.5px */

/* Responsive Tailwind overrides */
@media (min-width: 640px) {
    .sm\:text-xs { font-size: 0.6rem !important; }
    .sm\:text-sm { font-size: 0.7125rem !important; }
    .sm\:text-base { font-size: 0.8125rem !important; }
    .sm\:text-lg { font-size: 1.0625rem !important; }
    .sm\:text-xl { font-size: 1.1563rem !important; }
    .sm\:text-2xl { font-size: 1.3125rem !important; }
    .sm\:text-3xl { font-size: 1.6875rem !important; }
}

@media (min-width: 768px) {
    .md\:text-xs { font-size: 0.6rem !important; }
    .md\:text-sm { font-size: 0.7125rem !important; }
    .md\:text-base { font-size: 0.8125rem !important; }
    .md\:text-lg { font-size: 1.0625rem !important; }
    .md\:text-xl { font-size: 1.1563rem !important; }
    .md\:text-2xl { font-size: 1.3125rem !important; }
}

@media (min-width: 1024px) {
    .lg\:text-xs { font-size: 0.6rem !important; }
    .lg\:text-sm { font-size: 0.7125rem !important; }
    .lg\:text-base { font-size: 0.8125rem !important; }
    .lg\:text-lg { font-size: 1.0625rem !important; }
    .lg\:text-xl { font-size: 1.1563rem !important; }
    .lg\:text-2xl { font-size: 1.3125rem !important; }
}

/* ========== BOOTSTRAP/ADMINLTE OVERRIDES ========== */
.text-md { font-size: 0.8125rem !important; }   /* was 1rem -> 14.5px */

/* ========== CUSTOM APP CLASSES ========== */

/* Form elements */
.form-label { font-size: 0.7125rem !important; }     /* was 14px -> 12.5px */
.form-input { font-size: 0.7125rem !important; }     /* was 14px -> 12.5px */
.form-error { font-size: 0.7125rem !important; }     /* was 14px -> 12.5px */
.input-primary { font-size: 0.7125rem !important; }  /* was 14px -> 12.5px */

/* Table elements */
.table-head-cell { font-size: 0.6rem !important; }   /* was 12px -> 10.5px */
.table-cell { font-size: 0.7125rem !important; }     /* was 14px -> 12.5px */

/* Button elements */
.btn-primary { font-size: 0.7125rem !important; }    /* was 14px -> 12.5px */
.btn-secondary { font-size: 0.7125rem !important; }  /* was 14px -> 12.5px */

/* Badge elements */
.badge { font-size: 0.6rem !important; }             /* was 12px -> 10.5px */

/* Navigation elements */
.sidebar a { font-size: 0.7125rem !important; }      /* Sidebar links */
.nav-link { font-size: 0.7125rem !important; }       /* Navigation links */

/* ========== CUSTOM LAYOUT OVERRIDES ========== */

/* Section titles */
.section-title { font-size: 1.3125rem !important; }      /* was 24px -> 22.5px */
.section-subtitle { font-size: 0.9375rem !important; }   /* was 18px -> 16.5px */

/* Header elements */
.header { font-size: 0.8125rem !important; }         /* was 16px -> 14.5px */
.footer { font-size: 0.7125rem !important; }         /* was 14px -> 12.5px */

/* Card elements */
.card-title { font-size: 0.9375rem !important; }     /* was 18px -> 16.5px */
.card-subtitle { font-size: 0.7125rem !important; }  /* was 14px -> 12.5px */
.card-text { font-size: 0.7125rem !important; }      /* was 14px -> 12.5px */

/* ========== TABLE SPECIFIC OVERRIDES ========== */

/* Standard table classes from the app */
.standard-table thead th { font-size: 0.7125rem !important; }  /* was 14px -> 12.5px */
.standard-table tbody td { font-size: 0.7125rem !important; }  /* was 14px -> 12.5px */
.table-data-secondary { font-size: 0.6875rem !important; }     /* was 13px -> 11.5px */

/* Table hierarchy classes */
.table-h1 { font-size: 1.3125rem !important; }       /* was 24px -> 22.5px */
.table-h2 { font-size: 1.125rem !important; }        /* was 20px -> 18.5px */
.table-h3 { font-size: 0.9375rem !important; }       /* was 18px -> 16.5px */
.table-h4 { font-size: 0.8125rem !important; }       /* was 16px -> 14.5px */
.table-body { font-size: 0.7125rem !important; }     /* was 14px -> 12.5px */
.table-caption { font-size: 0.6rem !important; }     /* was 12px -> 10.5px */

/* ========== MODAL AND POPUP OVERRIDES ========== */
.modal-title { font-size: 0.9375rem !important; }    /* was 18px -> 16.5px */
.modal-body { font-size: 0.7125rem !important; }     /* was 14px -> 12.5px */
.modal-footer { font-size: 0.7125rem !important; }   /* was 14px -> 12.5px */

/* ========== FORM SPECIFIC OVERRIDES ========== */
input, textarea, select { font-size: 0.7125rem !important; }    /* was 14px -> 12.5px */
label { font-size: 0.7125rem !important; }                      /* was 14px -> 12.5px */
.form-control { font-size: 0.7125rem !important; }              /* was 14px -> 12.5px */

/* ========== DASHBOARD SPECIFIC OVERRIDES ========== */
.stats-number { font-size: 1.3125rem !important; }   /* was 24px -> 22.5px */
.stats-label { font-size: 0.7125rem !important; }    /* was 14px -> 12.5px */
.widget-title { font-size: 0.9375rem !important; }   /* was 18px -> 16.5px */

/* ========== BREADCRUMB AND NAVIGATION ========== */
.breadcrumb { font-size: 0.7125rem !important; }     /* was 14px -> 12.5px */
.breadcrumb-item { font-size: 0.7125rem !important; }/* was 14px -> 12.5px */

/* ========== ALERT AND MESSAGE OVERRIDES ========== */
.alert { font-size: 0.7125rem !important; }          /* was 14px -> 12.5px */
.alert-title { font-size: 0.8125rem !important; }    /* was 16px -> 14.5px */

/* ========== DROPDOWN OVERRIDES ========== */
.dropdown-item { font-size: 0.7125rem !important; }  /* was 14px -> 12.5px */
.dropdown-header { font-size: 0.6rem !important; }   /* was 12px -> 10.5px */

/* ========== PAGINATION OVERRIDES ========== */
.pagination { font-size: 0.7125rem !important; }     /* was 14px -> 12.5px */
.page-link { font-size: 0.7125rem !important; }      /* was 14px -> 12.5px */

/* ========== GLOBAL ELEMENT OVERRIDES ========== */

/* Base body font size */
body { font-size: 0.8125rem !important; }            /* was 16px -> 14.5px */

/* Headings */
h1 { font-size: 1.75rem !important; }                /* was 2rem (32px) -> 30.5px */
h2 { font-size: 1.3125rem !important; }              /* was 1.5rem (24px) -> 22.5px */
h3 { font-size: 1.0625rem !important; }              /* was 1.25rem (20px) -> 18.5px */
h4 { font-size: 0.9375rem !important; }              /* was 1.125rem (18px) -> 16.5px */
h5 { font-size: 0.8125rem !important; }              /* was 1rem (16px) -> 14.5px */
h6 { font-size: 0.7125rem !important; }              /* was 0.875rem (14px) -> 12.5px */

/* Paragraphs and text elements */
p { font-size: 0.8125rem !important; }               /* was 16px -> 14.5px */
span { font-size: inherit !important; }
div { font-size: inherit !important; }

/* Links */
a { font-size: inherit !important; }

/* Lists */
ul, ol { font-size: 0.8125rem !important; }          /* was 16px -> 14.5px */
li { font-size: inherit !important; }

/* Code elements */
code { font-size: 0.6875rem !important; }            /* was 13px -> 11.5px */
pre { font-size: 0.6875rem !important; }             /* was 13px -> 11.5px */

/* ========== SPECIFIC COMPONENT OVERRIDES ========== */

/* FAB dropdown */
.fab-dropdown .font-medium { font-size: 0.7125rem !important; } /* was 14px -> 12.5px */
.fab-dropdown .text-sm { font-size: 0.625rem !important; }      /* was 12px -> 10.5px */

/* Sidebar menu items */
.sidebar-nav a { font-size: 0.7125rem !important; }   /* was 14px -> 12.5px */
.sidebar-nav .text-xs { font-size: 0.6rem !important; } /* was 12px -> 10.5px */

/* ========== PRINT MEDIA OVERRIDES ========== */
@media print {
    body { font-size: 0.6875rem !important; }         /* was 13px -> 11.5px for print */
    h1 { font-size: 1.1875rem !important; }           /* was 19px -> 17.5px */
    h2 { font-size: 0.9375rem !important; }           /* was 16px -> 14.5px */
    h3 { font-size: 0.8125rem !important; }           /* was 14px -> 12.5px */
    .table-cell { font-size: 0.6rem !important; }     /* was 12px -> 10.5px for print */
}

/* ========== RESPONSIVE OVERRIDES ========== */
@media (max-width: 768px) {
    /* Mobile font size adjustments */
    .text-lg { font-size: 0.9375rem !important; }     /* Smaller on mobile */
    .text-xl { font-size: 1.0625rem !important; }     /* Smaller on mobile */
    .text-2xl { font-size: 1.1875rem !important; }    /* Smaller on mobile */
}

/* ========== CONTRACT SPECIFIC OVERRIDES ========== */
.contract-title { font-size: 2.34375rem !important; } /* was 40px -> 38.5px */
.ministry-text { font-size: 0.625rem !important; }    /* was 12px -> 10.5px */
.section-title { font-size: 0.8125rem !important; }   /* was 16px -> 14.5px */
.fill-field { font-size: 0.8125rem !important; }      /* was 16px -> 14.5px */

/* ========== ENSURE CONSISTENCY ========== */
/* Force override any conflicting styles */
* {
    line-height: inherit !important;
}

/* Specific fixes for common elements */
.font-medium { font-weight: 500 !important; }
.font-semibold { font-weight: 600 !important; }
.font-bold { font-weight: 700 !important; } 