/**
 * SDGA Application Styles - Consolidated Master
 * Version: 2.5
 * Fixes: "Status/Title" Blue Links, Settings Menu, Form Borders
 */

/* ============================================
   I. FONTS
   ============================================ */
@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3MZRtWPQCuHme67tEYUIx3Kh0PHR9N6YNe3PA.ttf) format('truetype');
}
@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPy_dCT.ttf) format('truetype');
}
@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOW_tCT.ttf) format('truetype');
}
@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6bs6.ttf) format('truetype');
}
@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPO_9CT.ttf) format('truetype');
}
@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPi-NCT.ttf) format('truetype');
}
@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOG-dCT.ttf) format('truetype');
}
@font-face {
    font-family: 'Droid Arabic Kufi';
    font-style: normal;
    font-weight: 400;
    src: url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Regular.eot);
    src: url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Regular.eot?#iefix) format('embedded-opentype'),
         url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Regular.woff2) format('woff2'),
         url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Regular.woff) format('woff'),
         url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Regular.ttf) format('truetype');
}
@font-face {
    font-family: 'Droid Arabic Kufi';
    font-style: normal;
    font-weight: 700;
    src: url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Bold.eot);
    src: url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Bold.eot?#iefix) format('embedded-opentype'),
         url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Bold.woff2) format('woff2'),
         url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Bold.woff) format('woff'),
         url(//fonts.gstatic.com/ea/droidarabickufi/v6/DroidKufi-Bold.ttf) format('truetype');
}

/* ============================================
   II. VARIABLES
   ============================================ */
.theme-sdga {
    /* SDGA Official Color Palette */
    --sdga-gold: #BA9560;
    --sdga-green-600: #1B8534; /* Primary Green */
    --sdga-green-700: #166A2A;
    --sdga-green-800: #14573A;
    --sdga-gray-50: #FCFCFD;
    --sdga-gray-100: #F9FAFB;
    --sdga-gray-200: #F3F4F6;
    --sdga-gray-300: #E5E7EB;
    --sdga-gray-400: #9DA4AE;
    --sdga-gray-500: #6C737F;
    --sdga-gray-600: #4D5761; /* Dark Text Color */
    --sdga-dark: #0D121C;

    /* NDDS Defaults */
    --ndds-radius-sm: 0.25rem;
    --ndds-radius-md: 0.5rem;
    --ndds-radius-lg: 0.75rem;
    --ndds-radius-xl: 1rem;
    --ndds-radius-full: 9999px;
    --ndds-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --ndds-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    --ndds-spacing-sm: 0.5rem;
    --ndds-spacing-md: 1rem;
    --ndds-spacing-lg: 1.5rem;

    margin: 0;
    padding: 0;
    background-color: var(--sdga-gray-50);
    font-family: 'IBM Plex Sans Arabic', 'Droid Arabic Kufi', sans-serif;
    color: var(--sdga-dark);
    line-height: 1.6;

    /* ============================================
       III. BASE COMPONENTS
       ============================================ */
    * { box-sizing: border-box; }

    /* App Icon */
    .app-icon {
        background-image: url(/images/app-icon.svg); 
        background-repeat: no-repeat;
        background-size: cover;
        background-position: 50%;
        background-color: #6E8598;
    }

    /* Typography */
    h1, h2, h3, h4, h5, h6 {
        font-family: 'IBM Plex Sans Arabic', 'Droid Arabic Kufi', 'Cairo', sans-serif;
        font-weight: 600;
        color: var(--sdga-dark);
        margin: 0;
    }
    h1 { font-weight: 700; }

    /* Text Selection - Gold Highlight */
    ::selection {
        background-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
    }
    ::-moz-selection {
        background-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
    }
    .theme-sdga ::selection,
    .theme-sdga::-moz-selection {
        background-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
    }

    /* --- NAVIGATION BAR --- */
    /* Light Green Background */
    nav.bg-gray-800,
    nav[class*="bg-gray-800"] {
        background-color: var(--sdga-green-600) !important; 
        border-top: 4px solid var(--sdga-gold) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }

    /* Top Navigation Links - White Text - Comprehensive Rules */
    /* Force ALL text in navbar to white (highest priority) */
    .theme-sdga nav.bg-gray-800,
    .theme-sdga nav.bg-gray-800 *,
    .theme-sdga nav[class*="bg-gray-800"],
    .theme-sdga nav[class*="bg-gray-800"] * {
        color: #ffffff !important;
    }
    
    /* Specific overrides for navigation elements */
    .theme-sdga nav.bg-gray-800 a,
    .theme-sdga nav.bg-gray-800 a span,
    .theme-sdga nav.bg-gray-800 button,
    .theme-sdga nav.bg-gray-800 button span,
    .theme-sdga nav.bg-gray-800 .nav-link,
    .theme-sdga nav.bg-gray-800 .text-gray-300,
    .theme-sdga nav.bg-gray-800 .text-gray-400,
    .theme-sdga nav.bg-gray-800 .text-white,
    .theme-sdga nav[class*="bg-gray-800"] a,
    .theme-sdga nav[class*="bg-gray-800"] button {
        color: #ffffff !important;
        transition: background-color 0.2s ease, color 0.2s ease;
    }

    /* Hover State - Gold with dark text */
    .theme-sdga nav.bg-gray-800 a:hover,
    .theme-sdga nav.bg-gray-800 a:hover *,
    .theme-sdga nav.bg-gray-800 button:hover,
    .theme-sdga nav.bg-gray-800 button:hover *,
    .theme-sdga nav[class*="bg-gray-800"] a:hover,
    .theme-sdga nav[class*="bg-gray-800"] a:hover * {
        background-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
        border-radius: var(--ndds-radius-md);
    }

    /* Active State - Green background with white text */
    .theme-sdga nav.bg-gray-800 a.bg-gray-700,
    .theme-sdga nav.bg-gray-800 a.bg-gray-700 *,
    .theme-sdga nav.bg-gray-800 a.bg-gray-900,
    .theme-sdga nav.bg-gray-800 .active {
        background-color: var(--sdga-green-700) !important;
        color: #ffffff !important;
        font-weight: 600 !important;
        border-radius: var(--ndds-radius-md);
    }

    /* Mobile Menu */
    nav .bg-gray-800[class*="sm:hidden"],
    nav [class*="bg-gray-800"][class*="border-t"] {
        background-color: var(--sdga-green-600) !important;
        border-top-color: rgba(255, 255, 255, 0.1) !important;
    }

    /* Navbar Dropdowns */
    nav.bg-gray-800 div.absolute {
        background-color: var(--sdga-green-600) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3) !important;
    }
    nav.bg-gray-800 div.absolute a { color: #ffffff !important; }
    nav.bg-gray-800 div.absolute a:hover {
        background-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
    }
    
    /* Replace Dark Gray with Dark Green in Navbar */
    nav.bg-gray-800 .bg-gray-700,
    nav.bg-gray-800 .bg-gray-600,
    nav.bg-gray-800 button.bg-gray-700,
    nav.bg-gray-800 button.bg-gray-600,
    nav.bg-gray-800 a.bg-gray-700,
    nav.bg-gray-800 a.bg-gray-600,
    nav[class*="bg-gray-800"] .bg-gray-700,
    nav[class*="bg-gray-800"] .bg-gray-600 {
        background-color: var(--sdga-green-700) !important;
    }
    
    /* Active state - darker green */
    nav.bg-gray-800 .bg-gray-700.active,
    nav.bg-gray-800 a.bg-gray-700.active,
    nav.bg-gray-800 button.bg-gray-600.active {
        background-color: var(--sdga-green-800) !important;
    }
    
    /* Hover states - Gold */
    nav.bg-gray-800 .hover\:bg-gray-700:hover,
    nav.bg-gray-800 .hover\:bg-gray-600:hover,
    nav.bg-gray-800 a:hover.bg-gray-700,
    nav.bg-gray-800 button:hover.bg-gray-700,
    nav.bg-gray-800 a.hover\:bg-gray-700:hover,
    nav.bg-gray-800 button.hover\:bg-gray-700:hover {
        background-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
    }
    
    /* Borders */
    nav.bg-gray-800 .border-gray-700,
    nav.bg-gray-800 .border-gray-600,
    nav[class*="bg-gray-800"] .border-gray-700 {
        border-color: var(--sdga-green-700) !important;
    }
    
    /* Text colors - keep white for readability - Override all gray text classes */
    nav.bg-gray-800 .text-gray-300,
    nav.bg-gray-800 .text-gray-400,
    nav.bg-gray-800 .text-gray-500,
    nav.bg-gray-800 .text-gray-600,
    nav.bg-gray-800 .text-gray-700,
    nav.bg-gray-800 button.text-gray-300,
    nav.bg-gray-800 button span,
    nav.bg-gray-800 .nav-link,
    nav.bg-gray-800 .nav-link span,
    nav.bg-gray-800 a,
    nav.bg-gray-800 a span,
    nav.bg-gray-800 button,
    nav.bg-gray-800 button span {
        color: #ffffff !important;
    }
    
    /* Resources dropdown items - force white */
    nav.bg-gray-800 div.absolute a,
    nav.bg-gray-800 div.absolute a.text-gray-300,
    nav.bg-gray-800 div[class*="absolute"] a,
    nav.bg-gray-800 div[class*="absolute"] a.text-gray-300 {
        color: #ffffff !important;
    }
    
    /* Mobile navigation - force white */
    nav.bg-gray-800 .responsive-nav-link,
    nav.bg-gray-800 .responsive-nav-link span {
        color: #ffffff !important;
    }
    
    /* Focus rings */
    nav.bg-gray-800 .focus\:ring-gray-500:focus,
    nav.bg-gray-800 .focus\:ring-offset-gray-800:focus {
        --tw-ring-color: var(--sdga-green-600) !important;
        --tw-ring-offset-color: var(--sdga-green-600) !important;
    }

    /* --- PAGE TABS & PILLS --- */
    
    /* Tabs */
    .nav-tabs .nav-link {
        color: var(--sdga-gray-600) !important;
        background-color: transparent !important;
        border: none !important;
        border-bottom: 2px solid transparent !important;
        margin-bottom: -1px;
    }
    .nav-tabs .nav-link:hover {
        color: var(--sdga-green-600) !important;
        background-color: var(--sdga-gray-100) !important;
    }
    .nav-tabs .nav-link.active {
        color: var(--sdga-green-600) !important;
        background-color: transparent !important;
        border-bottom: 2px solid var(--sdga-green-600) !important;
        font-weight: 600;
    }

    /* Pills (Gold Active State) */
    .nav-pills .nav-link {
        color: var(--sdga-gray-600) !important;
        background-color: transparent !important;
        border: 1px solid transparent;
        border-radius: var(--ndds-radius-md) !important;
        padding: 0.5rem 1rem;
        font-weight: 500;
    }
    .nav-pills .nav-link.active {
        background-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
        border-color: var(--sdga-gold) !important;
        font-weight: 600 !important;
    }

    /* --- BUTTONS & CONTROLS --- */
    .btn-primary, 
    .btn-success,
    button.btn-primary,
    button.btn-success {
        background-color: var(--sdga-green-600) !important;
        border-color: var(--sdga-green-600) !important;
        color: #ffffff !important;
    }
    .btn-primary:hover, 
    .btn-success:hover,
    button.btn-primary:hover,
    button.btn-success:hover {
        background-color: var(--sdga-green-700) !important;
        border-color: var(--sdga-green-700) !important;
    }
    
    /* Outline Primary Buttons -> Green Outline */
    .btn-outline-primary,
    button.btn-outline-primary,
    a.btn-outline-primary {
        background-color: transparent !important;
        border-color: var(--sdga-green-600) !important;
        color: var(--sdga-green-600) !important;
    }
    .btn-outline-primary:hover,
    button.btn-outline-primary:hover,
    a.btn-outline-primary:hover,
    .btn-outline-primary:focus,
    button.btn-outline-primary:focus,
    a.btn-outline-primary:focus {
        background-color: var(--sdga-green-600) !important;
        border-color: var(--sdga-green-600) !important;
        color: #ffffff !important;
    }
    
    /* Small outline buttons */
    .btn-sm.btn-outline-primary,
    button.btn-sm.btn-outline-primary,
    a.btn-sm.btn-outline-primary {
        background-color: transparent !important;
        border-color: var(--sdga-green-600) !important;
        color: var(--sdga-green-600) !important;
    }
    .btn-sm.btn-outline-primary:hover,
    button.btn-sm.btn-outline-primary:hover,
    a.btn-sm.btn-outline-primary:hover {
        background-color: var(--sdga-green-600) !important;
        border-color: var(--sdga-green-600) !important;
        color: #ffffff !important;
    }
    
    /* "Info" buttons -> Gold */
    .btn-info, .border-info {
        background-color: var(--sdga-gold) !important;
        border-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
    }
    .btn-info:hover {
        background-color: #A6854F !important;
        border-color: #A6854F !important;
    }

    /* "Reset" Link Button -> Green/Gold */
    .btn-link, a.btn-link {
        color: var(--sdga-green-600) !important;
        text-decoration: none !important;
    }
    .btn-link:hover, a.btn-link:hover {
        color: var(--sdga-gold) !important;
    }

    /* Form Inputs (DARKER BORDERS) */
    .form-control, .form-select, input, textarea, select {
        border: 1px solid var(--sdga-gray-400) !important; /* Darker border */
        border-radius: var(--ndds-radius-md) !important;
        padding: 0.5rem 1rem;
        background-color: #ffffff;
        color: var(--sdga-dark);
    }
    .form-control:focus, input:focus, select:focus {
        border-color: var(--sdga-green-600) !important;
        outline: none;
        box-shadow: 0 0 0 3px rgba(27, 133, 52, 0.1) !important;
    }

    /* --- SETTINGS LIST & MENUS --- */
    
    /* List Group (Settings Page) */
    .list-group-item {
        border-color: var(--sdga-gray-300) !important;
        color: var(--sdga-dark) !important;
    }
    .list-group-item-action:hover, .list-group-item-action:focus {
        background-color: var(--sdga-gray-100) !important;
        color: var(--sdga-green-600) !important;
    }
    .list-group-item.active {
        background-color: var(--sdga-green-600) !important;
        border-color: var(--sdga-green-600) !important;
        color: #ffffff !important;
    }
    
    /* List Group Links - Change blue to SDGA green */
    .list-group-item a,
    .list-group a {
        color: var(--sdga-green-600) !important;
        text-decoration: none !important;
        transition: color 0.2s ease;
    }
    .list-group-item a:hover,
    .list-group a:hover {
        color: var(--sdga-gold) !important;
        text-decoration: underline !important;
    }

    /* --- REPORTS & CARDS --- */
    
    .card {
        background-color: #ffffff !important;
        border: 1px solid var(--sdga-gray-300) !important; /* Darker border */
        border-radius: var(--ndds-radius-lg) !important;
        box-shadow: var(--ndds-shadow-sm) !important;
    }
    
    .card-header {
        background-color: #ffffff !important;
        border-bottom: 1px solid var(--sdga-gray-300) !important;
        padding: 1rem 1.5rem;
        font-weight: 600;
        color: var(--sdga-dark);
    }
    
    /* Report Card Header - Force Gold/Beige */
    .report-card .bg-gradient-to-r,
    .bg-gradient-to-r {
        background: linear-gradient(to right, #FCF8F2, #F3EAD8) !important;
        border-bottom-color: rgba(186, 149, 96, 0.2) !important;
    }
    
    /* Report Type Badge */
    .report-card .bg-blue-100,
    .bg-blue-100 {
        background-color: rgba(186, 149, 96, 0.15) !important;
        color: #8A6D3B !important;
    }

    /* Report Buttons */
    .report-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0.5rem 1rem;
        color: white !important;
        border-radius: 0.5rem;
        transition: all 0.2s;
    }
    /* Generate New Report button - force white text */
    .report-btn-primary,
    a.report-btn-primary {
        background-color: var(--sdga-green-600) !important;
        color: #ffffff !important;
    }
    .report-btn-primary *,
    a.report-btn-primary *,
    .report-btn-primary span,
    a.report-btn-primary span {
        color: #ffffff !important;
    }
    .report-btn-primary svg,
    a.report-btn-primary svg {
        color: #ffffff !important;
        stroke: #ffffff !important;
    }
    .report-btn-primary:hover,
    a.report-btn-primary:hover {
        background-color: var(--sdga-green-700) !important;
        color: #ffffff !important;
    }
    .report-btn-primary:hover *,
    a.report-btn-primary:hover * {
        color: #ffffff !important;
    }
    .report-btn-view { background-color: var(--sdga-green-600) !important; color: #ffffff !important; }
    .report-btn-view * { color: #ffffff !important; }
    .report-btn-download { background-color: var(--sdga-gold) !important; color: var(--sdga-dark) !important; }
    .report-btn-download * { color: var(--sdga-dark) !important; }
    .report-btn-delete { background-color: #dc2626 !important; color: #ffffff !important; }
    .report-btn-delete * { color: #ffffff !important; }
    
    /* Progress Bars */
    .text-blue-600:not(.bg-green-600 *):not(.bg-blue-600 *):not([class*="bg-green"] *) { color: var(--sdga-green-600) !important; }
    .bg-blue-600 { background-color: var(--sdga-green-600) !important; color: #ffffff !important; }
    .bg-blue-600 * { color: #ffffff !important; }
    
    /* Purple/Yellow Buttons -> Gold */
    .bg-purple-600,
    button.bg-purple-600,
    .bg-yellow-600,
    button.bg-yellow-600 {
        background-color: var(--sdga-gold) !important;
        color: var(--sdga-dark) !important;
    }
    .bg-purple-600:hover,
    button.bg-purple-600:hover,
    .hover\:bg-purple-700:hover,
    .bg-yellow-600:hover,
    button.bg-yellow-600:hover,
    .hover\:bg-yellow-700:hover {
        background-color: #A6854F !important;
        background: #A6854F !important;
    }
    
    /* Ensure text is dark on gold buttons */
    .bg-yellow-600,
    button.bg-yellow-600,
    .bg-yellow-600 span,
    button.bg-yellow-600 span {
        color: var(--sdga-dark) !important;
    }
    
    /* Blue Gradient Buttons -> Green */
    .bg-gradient-to-r.from-blue-600,
    .from-blue-600,
    button[class*="from-blue-600"],
    .bg-green-600 {
        background-color: var(--sdga-green-600) !important;
        background: var(--sdga-green-600) !important;
        color: #ffffff !important;
    }
    .bg-gradient-to-r.from-blue-600:hover,
    .hover\:from-blue-700:hover,
    button[class*="from-blue-600"]:hover,
    .bg-green-600:hover,
    .hover\:bg-green-700:hover {
        background-color: var(--sdga-green-700) !important;
        background: var(--sdga-green-700) !important;
        color: #ffffff !important;
    }
    
    /* Blue/Purple Icons -> SDGA Colors (only when NOT inside green bg) */
    .text-blue-600:not(.bg-green-600 *):not(.bg-blue-600 *):not([class*="bg-green"] *),
    svg.text-blue-600:not(.bg-green-600 *):not(.bg-blue-600 *):not([class*="bg-green"] *) {
        color: var(--sdga-green-600) !important;
    }
    
    /* Force white text on all green background elements */
    .bg-green-600 *,
    .bg-green-700 *,
    .bg-green-800 *,
    .bg-blue-600 *,
    [class*="bg-green-600"] *,
    [class*="bg-green-700"] *,
    [class*="bg-green-800"] * {
        color: #ffffff !important;
    }
    .text-purple-600,
    svg.text-purple-600,
    .text-purple-600 svg {
        color: var(--sdga-gold) !important;
    }
    
    /* Focus rings and borders */
    .focus\:ring-blue-500:focus,
    .focus\:border-blue-500:focus,
    input:focus[class*="focus:ring-blue-500"],
    select:focus[class*="focus:ring-blue-500"],
    textarea:focus[class*="focus:ring-blue-500"],
    input:focus[class*="focus:border-blue-500"],
    select:focus[class*="focus:border-blue-500"],
    textarea:focus[class*="focus:border-blue-500"] {
        --tw-ring-color: var(--sdga-green-600) !important;
        border-color: var(--sdga-green-600) !important;
    }
    
    /* Checkbox colors */
    input[type="checkbox"].text-blue-600:checked,
    input[type="checkbox"][class*="text-blue-600"]:checked,
    input[type="checkbox"][class*="focus:ring-blue-500"]:checked {
        accent-color: var(--sdga-green-600) !important;
    }

    /* Dashboard Stat Cards */
    .stat-card {
        transition: transform 0.2s;
        border-left: 4px solid;
    }
    .stat-card.blue { border-left-color: #3b82f6; }
    .stat-card.green { border-left-color: #10b981; }
    
    /* Scope Indicator */
    .scope-indicator {
        background-color: #fff;
        border: 1px solid var(--sdga-gray-300);
        padding: 0.75rem 1rem;
        border-radius: 0.5rem;
        margin-bottom: 1.5rem;
    }

    /* --- TABLES (Link Fix) --- */
    
    .table {
        border-collapse: separate;
        border-spacing: 0;
        width: 100%;
    }
    
    .table thead th {
        background-color: var(--sdga-gray-50);
        color: var(--sdga-gray-600);
        font-weight: 600;
        border-bottom: 2px solid var(--sdga-gray-400) !important;
        text-transform: uppercase;
        font-size: 0.85rem;
    }

    /* FIX: Force links in Table Headers (Sorting) to be Dark */
    .table thead th a {
        color: var(--sdga-gray-600) !important;
        text-decoration: none !important;
        transition: color 0.2s ease;
    }
    .table thead th a:hover {
        color: var(--sdga-gold) !important;
    }

    .table tbody td {
        border-bottom: 1px solid var(--sdga-gray-300) !important;
        vertical-align: middle;
    }
    
    /* Fix: Table body links - Change blue to SDGA green */
    .table tbody td a,
    .table tbody a,
    .table a:not(.btn):not(.dropdown-item) {
        color: var(--sdga-green-600) !important;
        text-decoration: none !important;
        transition: color 0.2s ease;
    }
    .table tbody td a:hover,
    .table tbody a:hover,
    .table a:not(.btn):not(.dropdown-item):hover {
        color: var(--sdga-gold) !important;
        text-decoration: underline !important;
    }
    
    /* Fix: All general links - Change blue to SDGA green (cards, lists, etc.) */
    .card a:not(.btn):not(.dropdown-item):not(.nav-link),
    a:not(.btn):not(.nav-link):not(.dropdown-item):not(.page-link) {
        color: var(--sdga-green-600) !important;
        text-decoration: none !important;
        transition: color 0.2s ease;
    }
    .card a:not(.btn):not(.dropdown-item):not(.nav-link):hover,
    a:not(.btn):not(.nav-link):not(.dropdown-item):not(.page-link):hover {
        color: var(--sdga-gold) !important;
        text-decoration: underline !important;
    }

    /* Pagination */
    .page-item.active .page-link {
        background-color: var(--sdga-green-600) !important;
        border-color: var(--sdga-green-600) !important;
        color: #fff !important;
    }
    .page-link { color: var(--sdga-green-600) !important; }

    /* Digital Stamp Card */
    .digital-stamp-card {
        padding: 8px 32px;
        background: var(--sdga-gray-200);
        border: 1px solid var(--sdga-gray-300);
        border-radius: var(--ndds-radius-lg);
    }
    .digital-stamp-card .digital-stamp-header { display: flex; align-items: center; gap: 10px; cursor: pointer; }
    .digital-stamp-card .digital-stamp-body { padding-top: 40px; padding-bottom: 32px; display: none; }
    .digital-stamp-card.open .btn-digital-stamp-card img { transform: rotate(180deg); }

    /* Alerts & Badges */
    .alert { border-left-width: 4px; border-right-width: 0; }
    .alert-success { background-color: var(--sdga-gray-50); border-left-color: var(--sdga-green-600); color: var(--sdga-green-600); }
    .badge { border-radius: var(--ndds-radius-full); }
    .badge.bg-primary { background-color: var(--sdga-green-600) !important; color: #ffffff !important; }
    .badge.text-bg-success { background-color: var(--sdga-green-600) !important; color: #fff !important; }

} /* END .theme-sdga SCOPE */


/* ============================================
   V. GLOBAL RTL & UTILITY FIXES
   ============================================ */
html[dir="rtl"] { direction: rtl; text-align: right; }
html[dir="ltr"] { direction: ltr; text-align: left; }

/* Flip borders for RTL */
html[dir="rtl"] .stat-card { border-left: none; border-right: 4px solid; }
html[dir="rtl"] .alert { border-left-width: 0; border-right-width: 4px; }

/* Utilities */
html[dir="rtl"] .ms-auto { margin-right: auto !important; margin-left: 0 !important; }
html[dir="rtl"] .me-auto { margin-left: auto !important; margin-right: 0 !important; }
html[dir="rtl"] .me-2 { margin-left: 0.5rem !important; margin-right: 0 !important; }
html[dir="rtl"] .text-end { text-align: left !important; }
html[dir="rtl"] .text-start { text-align: right !important; }

/* Grid Fix */
@media (min-width: 1280px) {
    .grid.xl\:grid-cols-5 > * { max-width: 100%; }
}
