/* Font Awesome Icon Fallback CSS */
/* This provides professional SVG fallbacks for all Font Awesome icons used in SnapMac */

/* If Font Awesome fails to load, use SVG fallbacks */
@supports not (font-family: "Font Awesome 6 Free") {
    .fas, .far, .fab, .fa {
        font-family: Arial, sans-serif !important;
        font-weight: normal !important;
    }
}

/* Professional SVG icon fallbacks for all SnapMac icons - No emojis */
.fas.fa-camera::before, .fa.fa-camera::before { 
    content: "" !important; 
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12 15.5A3.5 3.5 0 0 1 8.5 12A3.5 3.5 0 0 1 12 8.5a3.5 3.5 0 0 1 3.5 3.5a3.5 3.5 0 0 1-3.5 3.5M12 9a3 3 0 0 0-3 3a3 3 0 0 0 3 3a3 3 0 0 0 3-3a3 3 0 0 0-3-3M12 7.5c2.67 0 8 1.34 8 4v8.5H4V11.5c0-2.66 5.33-4 8-4M12 6C8.67 6 2 7.34 2 10.5V21h20V10.5C22 7.34 15.33 6 12 6Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fas.fa-chart-line::before, .fa.fa-chart-line::before { 
    content: "" !important; 
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M16 6l2.29 2.29-4.88 4.88-4-4L2 16.59 3.41 18l6-6 4 4 6.3-6.29L22 12V6h-6z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fa-tachometer-alt::before { 
    content: "" !important; 
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12c0 5.52 4.48 10 10 10s10-4.48 10-10c0-5.52-4.48-10-10-10zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5s.67 1.5 1.5 1.5zM12 17l2.88-6.71c.4-.93-.25-1.93-1.28-1.93s-1.68 1-1.28 1.93L12 17z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fa-search::before { 
    content: "" !important; 
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fa-lightbulb::before { 
    content: "" !important; 
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12 2A7 7 0 0 0 5 9c0 2.38 1.19 4.47 3 5.74V17a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-2.26c1.81-1.27 3-3.36 3-5.74A7 7 0 0 0 12 2M9 21v-1h6v1a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fa-history::before { 
    content: "" !important; 
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M13.5 8H12v5l4.28 2.54.72-1.21-3.5-2.08V8M13 3a9 9 0 0 0-9 9H1l3.96 4.03L9 12H6a7 7 0 1 1 7 7 7 7 0 0 1-7-7h-2a9 9 0 1 0 9-9'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fa-user::before { 
    content: "" !important; 
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12 4A4 4 0 0 1 16 8A4 4 0 0 1 12 12A4 4 0 0 1 8 8A4 4 0 0 1 12 4M12 14C16.42 14 20 15.79 20 18V20H4V18C4 15.79 7.58 14 12 14Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fa-crown::before { 
    content: "" !important; 
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M5 16L3 5l3.7 3L12 4l5.3 4L21 5l-2 11H5M19 19v1H5v-1h14M12 6L9.1 9.9l-1.9-1.5L8.5 6h7l1.3 2.4-1.9 1.5L12 6Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
.fa-sync::before, .fa-sync-alt::before, .fa-refresh::before, .fa-redo::before { 
    content: "•" !important; 
    color: #000 !important;
    font-family: Arial, sans-serif !important;
    font-size: 0.8em !important;
}
.fa-plus::before { content: "+"; font-family: Arial, sans-serif; font-weight: bold; }
.fa-sign-in-alt::before, .fa-sign-in::before { 
    content: "•" !important; 
    color: #000 !important;
    font-family: Arial, sans-serif !important;
    font-size: 0.8em !important;
}
.fa-user-plus::before { 
    content: "•" !important; 
    color: #000 !important;
    font-family: Arial, sans-serif !important;
    font-size: 0.8em !important;
}
.fa-credit-card::before { 
    content: "•" !important; 
    color: #000 !important;
    font-family: Arial, sans-serif !important;
    font-size: 0.8em !important;
}
.fa-times::before { content: "✕"; font-family: Arial, sans-serif; font-weight: bold; }
.fa-check::before { content: "✓"; font-family: Arial, sans-serif; font-weight: bold; }
.fa-upload::before { content: "•" !important; color: #000 !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }

/* Force display for icon elements */
.fas, .far, .fab, .fa {
    display: inline-block !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    line-height: 1 !important;
}

/* Fallbacks for common icons that might cause squares */
.fa-drumstick-bite::before { content: "•" !important; color: #000 !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-bread-slice::before { content: "•" !important; color: #000 !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-seedling::before { content: "•" !important; color: #000 !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-leaf::before { content: "•" !important; color: #000 !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-utensils::before { content: "•" !important; color: inherit !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-chart-pie::before { content: "•" !important; color: inherit !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-list::before { content: "•" !important; color: inherit !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-robot::before { content: "•" !important; color: inherit !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-clock::before { content: "•" !important; color: inherit !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-exclamation-triangle::before { content: "•" !important; color: inherit !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }
.fa-arrow-left::before { content: "←" !important; color: inherit !important; font-family: Arial, sans-serif !important; }
.fa-expand-arrows-alt::before { content: "•" !important; color: inherit !important; font-family: Arial, sans-serif !important; font-size: 0.8em !important; }

/* Ensure icons are visible and inherit parent colors */
.fas::before, .far::before, .fab::before, .fa::before {
    display: inline-block !important;
    color: inherit !important;
    font-size: inherit !important;
}