/* Icon Display Fixes for Agentic SEO Manager - CRITICAL FIXES */

/* CRITICAL: Remove duplicate Font Awesome imports to prevent conflicts */
/* The CDN is already loaded in base.html, so we don't need @import here */

/* HIGHEST PRIORITY: Force Font Awesome font loading with maximum specificity */
html .fa, html .fas, html .far, html .fal, html .fab, html .fad, html .fass, html .fasr, html .fasl, html .fasb,
html [class*="fa-"], html i[class*="fa"], html span[class*="fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 6 Brands", "Font Awesome 5 Free", "Font Awesome 5 Pro", "FontAwesome" !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    line-height: 1 !important;
    display: inline-block !important;
    font-weight: 900 !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    speak: never !important;
    opacity: 1 !important;
    visibility: visible !important;
    color: inherit !important;
    width: auto !important;
    height: auto !important;
    background: none !important;
    border: none !important;
    text-decoration: none !important;
    vertical-align: baseline !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    word-spacing: normal !important;
    text-indent: 0 !important;
    text-shadow: none !important;
}

/* Specific font weights for different icon styles */
html .far {
    font-weight: 400 !important;
}

html .fal {
    font-weight: 300 !important;
}

html .fab {
    font-weight: 400 !important;
}

/* CRITICAL: Override any conflicting font-family declarations with maximum specificity */
body .fa, body .fas, body .far, body .fal, body .fab, body .fad, body .fass, body .fasr, body .fasl, body .fasb,
body [class*="fa-"], body i[class*="fa"], body span[class*="fa-"],
.container .fa, .container .fas, .container .far, .container .fal, .container .fab, .container .fad, .container .fass, .container .fasr, .container .fasl, .container .fasb,
.container [class*="fa-"], .container i[class*="fa"], .container span[class*="fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 6 Brands", "Font Awesome 5 Free", "Font Awesome 5 Pro", "FontAwesome" !important;
}

/* Navigation and menu icon fixes with enhanced specificity */
.sidebar-link i[class*="fa-"],
.submenu-link i[class*="fa-"],
.nav-link i[class*="fa-"],
.dropdown-item i[class*="fa-"],
.btn i[class*="fa-"],
.button i[class*="fa-"],
a i[class*="fa-"],
button i[class*="fa-"] {
    margin-right: 8px;
    width: 16px;
    text-align: center;
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 6 Brands" !important;
    font-weight: 900 !important;
    font-style: normal !important;
}

/* RTL layout adjustments */
[dir="rtl"] .sidebar-link i[class*="fa-"],
[dir="rtl"] .submenu-link i[class*="fa-"],
[dir="rtl"] .nav-link i[class*="fa-"],
[dir="rtl"] .dropdown-item i[class*="fa-"],
[dir="rtl"] .btn i[class*="fa-"],
[dir="rtl"] .button i[class*="fa-"],
[dir="rtl"] a i[class*="fa-"],
[dir="rtl"] button i[class*="fa-"] {
    margin-right: 0;
    margin-left: 8px;
}

/* Language switcher icon fixes */
.lang-icon, .language-switcher i[class*="fa-"] {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
    margin-right: 5px;
}

[dir="rtl"] .lang-icon, [dir="rtl"] .language-switcher i[class*="fa-"] {
    margin-right: 0;
    margin-left: 5px;
}

/* Form elements icon fixes */
label i[class*="fa-"],
.form-group i[class*="fa-"],
.input-group i[class*="fa-"] {
    margin-right: 5px;
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

[dir="rtl"] label i[class*="fa-"],
[dir="rtl"] .form-group i[class*="fa-"],
[dir="rtl"] .input-group i[class*="fa-"] {
    margin-right: 0;
    margin-left: 5px;
}

/* Alert and message icon fixes */
.alert i[class*="fa-"],
.message i[class*="fa-"],
.notification i[class*="fa-"] {
    margin-right: 8px;
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

[dir="rtl"] .alert i[class*="fa-"],
[dir="rtl"] .message i[class*="fa-"],
[dir="rtl"] .notification i[class*="fa-"] {
    margin-right: 0;
    margin-left: 8px;
}

/* Card and content icons */
.card-icon i[class*="fa-"],
.contact-icon,
.toggle-icon {
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-size: inherit !important;
}

/* Spinner animation fix */
.fa-spin {
    animation: fa-spin 2s infinite linear !important;
}

@keyframes fa-spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(359deg);
    }
}

/* CRITICAL: Ensure Font Awesome fonts are properly loaded */
@font-face {
    font-family: 'Font Awesome 6 Free';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/webfonts/fa-solid-900.woff2') format('woff2'),
         url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/webfonts/fa-solid-900.woff') format('woff');
}

@font-face {
    font-family: 'Font Awesome 6 Free';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/webfonts/fa-regular-400.woff2') format('woff2'),
         url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/webfonts/fa-regular-400.woff') format('woff');
}

@font-face {
    font-family: 'Font Awesome 6 Brands';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/webfonts/fa-brands-400.woff2') format('woff2'),
         url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/webfonts/fa-brands-400.woff') format('woff');
}

/* FINAL OVERRIDE: Maximum specificity icon visibility fix */
html body .fa, html body .fas, html body .far, html body .fal, html body .fab, html body .fad,
html body i[class*="fa-"], html body span[class*="fa-"] {
    display: inline-block !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 6 Brands" !important;
}

/* CRITICAL: Force icon display even if other CSS tries to hide them */
i.fa, i.fas, i.far, i.fab, i.fal, i.fad,
i[class*="fa-"], span[class*="fa-"] {
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
}