/*
 * MemeCraft local icon compatibility layer.
 *
 * These fallback glyphs are intentionally scoped to MemeCraft roots and are
 * enabled only when the root receives the mc-icons-builtin class. This lets an
 * active theme/plugin supply Font Awesome without MemeCraft enqueueing or
 * downloading Font Awesome itself, and prevents MemeCraft from changing icon
 * classes elsewhere on the site.
 */
.mc-icons-builtin .fa-solid,
.mc-icons-builtin .fa-regular,
.mc-icons-builtin .fa-brands {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-style: normal !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    speak: never;
}

.mc-icons-builtin .fa-solid::before,
.mc-icons-builtin .fa-regular::before,
.mc-icons-builtin .fa-brands::before {
    display: block;
}

.mc-icons-builtin .fa-arrow-up::before { content: "↑"; }
.mc-icons-builtin .fa-arrow-down::before { content: "↓"; }
.mc-icons-builtin .fa-arrow-up-right-dots::before { content: "↗"; }
.mc-icons-builtin .fa-broom::before { content: "✦"; }
.mc-icons-builtin .fa-chevron-left::before { content: "‹"; }
.mc-icons-builtin .fa-chevron-right::before { content: "›"; }
.mc-icons-builtin .fa-circle::before { content: "●"; }
.mc-icons-builtin .fa-circle-check::before { content: "✓"; }
.mc-icons-builtin .fa-circle-exclamation::before { content: "!"; }
.mc-icons-builtin .fa-circle-notch::before,
.mc-icons-builtin .fa-spinner::before { content: "◌"; }
.mc-icons-builtin .fa-cloud-arrow-up::before { content: "⇧"; }
.mc-icons-builtin .fa-comments::before { content: "💬"; font-size: .9em; }
.mc-icons-builtin .fa-download::before { content: "↓"; }
.mc-icons-builtin .fa-eye::before { content: "◉"; }
.mc-icons-builtin .fa-eye-slash::before { content: "⊘"; }
.mc-icons-builtin .fa-face-laugh-squint::before { content: "☺"; }
.mc-icons-builtin .fa-facebook::before,
.mc-icons-builtin .fa-facebook-f::before {
    content: "f";
    font-family: Arial, sans-serif !important;
    font-weight: 900 !important;
}
.mc-icons-builtin .fa-fill-drip::before { content: "◒"; }
.mc-icons-builtin .fa-fire::before { content: "◆"; }
.mc-icons-builtin .fa-folder-open::before { content: "▱"; }
.mc-icons-builtin .fa-font::before { content: "A"; font-family: Georgia, serif !important; }
.mc-icons-builtin .fa-heading::before { content: "H"; font-family: Georgia, serif !important; }
.mc-icons-builtin .fa-image::before { content: "▣"; }
.mc-icons-builtin .fa-layer-group::before { content: "≡"; }
.mc-icons-builtin .fa-link::before { content: "↗"; }
.mc-icons-builtin .fa-minus::before { content: "−"; }
.mc-icons-builtin .fa-paper-plane::before { content: "➤"; }
.mc-icons-builtin .fa-play::before { content: "▶"; }
.mc-icons-builtin .fa-quote-left::before { content: "“"; font-family: Georgia, serif !important; }
.mc-icons-builtin .fa-rotate::before { content: "↻"; }
.mc-icons-builtin .fa-shapes::before { content: "◆"; }
.mc-icons-builtin .fa-share-nodes::before { content: "↗"; }
.mc-icons-builtin .fa-sliders::before { content: "☷"; }
.mc-icons-builtin .fa-square::before { content: "□"; }
.mc-icons-builtin .fa-star::before { content: "★"; }
.mc-icons-builtin .fa-tag::before { content: "◇"; }
.mc-icons-builtin .fa-trash-can::before { content: "×"; }
.mc-icons-builtin .fa-trophy::before { content: "★"; }
.mc-icons-builtin .fa-xmark::before { content: "×"; }

.mc-icons-builtin .fa-spin {
    animation: memecraft-icon-spin 1s linear infinite;
}

@keyframes memecraft-icon-spin {
    to { transform: rotate(360deg); }
}
