/* Font Awesome only: Free is bundled; a configured licensed Kit enables Duotone. */
.op-fa { --fa-primary-color:currentColor;--fa-secondary-color:currentColor;--fa-secondary-opacity:.48;vertical-align:-.08em;flex-shrink:0; }
html[data-op-icons="free"] i.op-fa:not(.fa-brands) {font-family:"Font Awesome 6 Free"!important;font-weight:900!important;font-style:normal;}
html[data-op-icons="free"] i.op-fa.fa-brands {font-family:"Font Awesome 6 Brands"!important;font-weight:400!important;}
html[data-op-icons="free"] i.op-fa::after {display:none!important;}
html[data-op-icons="free"] i.op-fa::before {position:static!important;opacity:1!important;color:inherit!important;}
.btn .op-fa {font-size:1.15em;}
.menu-icon .op-fa {font-size:1.4rem;width:1.6rem;text-align:center;}
/* Preserve the existing filled/unfilled language rating colors after migration. */
#kt_modal_resume_languages .op-language-star > i.op-fa {color:#fff!important;font-size:1.35rem;filter:drop-shadow(0 0 1px rgba(70,35,35,.55));}
#kt_modal_resume_languages .op-language-star.is-filled > i.op-fa {color:var(--bs-primary)!important;filter:none;}

/* Use the family actually delivered by the Pro kit (v5, v6 or v7).
   fad supplies the v5 two-layer layout; fa-duotone supports newer kits. */
html[data-op-icons="pro"] i.op-fa:not(.fa-brands) {
    font-family:var(--op-duotone-family)!important;
    font-weight:900!important;
    font-style:normal;
}

/* Both v5 glyph layers share one cell: no drifting absolute layer or missing
   :after rules for v6-renamed icons. Brand icons retain their own single font. */
html[data-op-icons="pro"][data-op-icon-version="5"] i.op-fa:not(.fa-brands) {
 display:inline-grid;grid-template-columns:1fr;align-items:center;justify-items:center;
 line-height:1;vertical-align:-.125em;isolation:isolate;
}
html[data-op-icons="pro"][data-op-icon-version="5"] i.op-fa:not(.fa-brands)::before,
html[data-op-icons="pro"][data-op-icon-version="5"] i.op-fa:not(.fa-brands)::after {
 grid-area:1/1;position:static!important;display:block!important;transform:none!important;
 font-family:inherit!important;font-weight:inherit!important;line-height:inherit;
 width:auto;inset:auto;white-space:normal;
}
html[data-op-icons="pro"][data-op-icon-version="5"] i.op-fa:not(.fa-brands)::before {
 content:var(--op-icon-primary)!important;color:var(--fa-primary-color,currentColor);
 opacity:var(--fa-primary-opacity,1);z-index:1;
}
html[data-op-icons="pro"][data-op-icon-version="5"] i.op-fa:not(.fa-brands)::after {
 content:var(--op-icon-secondary)!important;color:var(--fa-secondary-color,currentColor);
 opacity:var(--fa-secondary-opacity,.48);
}
.op-field-icon{flex-shrink:0;min-width:1em;text-align:center;}

/* Reserve icon geometry from the first stylesheet paint. Never paint a Free or
   legacy glyph while the licensed duotone font is still loading. */
html:not([data-op-icons="pro"]):not([data-op-icons="free"]) :is(i.op-fa,i.ki-duotone,i.ki-solid,i.ki-outline,i.bi,i.fas,i.far,i.fab,i.fa-duotone,i.fa-solid,i.fa-brands,i.fad){visibility:hidden!important;}

/* Close controls use the bundled solid, conventional cross, never a duotone X.
   Brand X/Twitter icons are intentionally excluded. */
html[data-op-icons] body i.op-fa.op-fa:is(.fa-xmark,.fa-times,.fa-close){font-family:"Font Awesome 6 Free"!important;font-weight:900!important;font-style:normal;}
html[data-op-icons] body i.op-fa.op-fa:is(.fa-xmark,.fa-times,.fa-close)::before{font-family:inherit!important;content:"\f00d"!important;color:currentColor!important;opacity:1!important;}
html[data-op-icons] body i.op-fa.op-fa:is(.fa-xmark,.fa-times,.fa-close)::after{display:none!important;content:none!important;}
