/**
 * Float Menu Custom Icons - Frontend Styles
 */

/* Make float menu items flex containers */
.stm_lms_acc_tabs .float_menu_item__inline.has-custom-icon {
    display: flex !important;
    align-items: center;
    flex-direction: row;
}

/* Custom icon styling - match default icons */
.stm_lms_acc_tabs .float_menu_item__inline .custom-menu-icon.float_menu_item__icon {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px;
    max-height: 16px;
    object-fit: contain;
    display: inline-block;
    margin-right: 10px;
    order: -1;
    flex-shrink: 0;
}

/* Inline SVG icon styling */
.stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon {
    width: 16px !important;
    height: 16px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    order: -1;
    flex-shrink: 0;
}

.stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon svg {
    width: 100%;
    height: 100%;
    display: block;
}

/* SVG fill color control - inherits from text color */
.stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon svg,
.stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon svg path,
.stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon svg g {
    fill: currentColor;
}

/* SVG stroke color control */
.stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon svg path[stroke],
.stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon svg [stroke] {
    stroke: currentColor;
}

/* Default white color for icons */
.stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon {
    color: #fff;
}

/* Title should come after icon */
.stm_lms_acc_tabs .float_menu_item__inline.has-custom-icon .float_menu_item__title {
    order: 0;
    letter-spacing: .5px;
    font-size: 12px;
    font-weight: 600;
}

/* Ensure proper spacing when custom icon is used */
.stm_lms_user_float_menu .float_menu_item.has-custom-icon {
    display: flex;
    align-items: center;
}


/* Match the hover effects for regular images */
.stm_lms_user_float_menu .float_menu_item.has-custom-icon:hover .custom-menu-icon,
.stm_lms_user_float_menu .float_menu_item.has-custom-icon.float_menu_item_active .custom-menu-icon {
    opacity: 1;
}

/* For collapsed menu, show only icon */
.stm_lms_user_float_menu.__collapsed .float_menu_item.has-custom-icon .custom-menu-icon,
.stm_lms_user_float_menu.__collapsed .float_menu_item.has-custom-icon .inline-svg-icon {
    width: 20px !important;
    height: 20px !important;
    margin-right: 0;
}

/* Adjust icon size for different screen sizes */
@media (max-width: 768px) {
    .stm_lms_acc_tabs .float_menu_item__inline .custom-menu-icon.float_menu_item__icon,
    .stm_lms_acc_tabs .float_menu_item__inline .inline-svg-icon {
        width: 14px !important;
        height: 14px !important;
        max-width: 14px;
        max-height: 14px;
    }
}

/* Smooth transition for icon changes */
.custom-menu-icon,
.inline-svg-icon,
.inline-svg-icon svg {
    transition: all 0.3s ease;
}





/* Hide default icons when custom icon exists */
.float_menu_item.has-custom-icon i.fa {
    display: none !important;
}

/* ============================================
   PAGE HEADER CUSTOM ICONS
   For custom icons used in page titles
   ============================================ */

/* Custom page icon wrapper */
.custom-page-icon-wrapper {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
}

/* Custom page icon - img */
img.custom-page-icon {
    width: 28px;
    height: 28px;
    object-fit: contain;
    vertical-align: middle;
    margin-right: 4px;
}

/* Custom page icon - SVG */
svg.custom-page-icon {
    width: 28px;
    height: 28px;
    vertical-align: middle;
    margin-right: 4px;
}

/* SVG color inheritance - inherit from parent text color */
svg.custom-page-icon,
svg.custom-page-icon path,
svg.custom-page-icon g {
    fill: #E7921A !important;
}

/* SVG stroke color */
svg.custom-page-icon path[stroke],
svg.custom-page-icon [stroke] {
    stroke: #E7921A !important;
}

/* Make sure SVGs in wrapper also get styled */
.custom-page-icon-wrapper svg {
    width: 28px;
    height: 28px;
}

.custom-page-icon-wrapper svg,
.custom-page-icon-wrapper svg path,
.custom-page-icon-wrapper svg g {
    fill: #E7921A !important;
}

/* Responsive */
@media (max-width: 768px) {
    img.custom-page-icon,
    svg.custom-page-icon,
    .custom-page-icon-wrapper svg {
        width: 22px;
        height: 22px;
    }
}
