/*
 * MemeCraft Lucide icon layer.
 *
 * Core MemeCraft icons are rendered as inline Lucide SVGs by the local
 * memecraft-lucide.js runtime. No icon font or Font Awesome stylesheet is
 * required. The runtime also translates legacy Font Awesome-style icon
 * classes emitted by optional MemeCraft extensions into Lucide SVGs.
 */

#memecraft-app-container .lucide,
.mc-gallery-wrapper .lucide,
#mc-meme-modal .lucide,
#mc_appModal .lucide,
.mc-modal-overlay .lucide,
[data-mc-theme-instance] .lucide {
    display: inline-block;
    width: 1em;
    height: 1em;
    min-width: 1em;
    flex: 0 0 auto;
    vertical-align: -0.125em;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    overflow: visible;
    box-sizing: content-box;
}

#memecraft-app-container .bento-btn .lucide {
    font-size: clamp(1.05rem, 2vw, 1.5rem) !important;
    color: var(--mc-text) !important;
    transition: color .2s ease, transform .2s ease !important;
    margin: 0 !important;
}
#memecraft-app-container .bento-btn:hover .lucide {
    color: var(--mc-accent) !important;
    transform: scale(1.1);
}
#memecraft-app-container .bento-btn.active .lucide { color: var(--mc-accent) !important; }
#memecraft-app-container .mc-tool-btn .lucide { font-size: 1.2rem !important; margin: 0 !important; }
#memecraft-app-container .mc-bottom-action .lucide { vertical-align: -0.15em; }
#memecraft-app-container .bg-green .mc-bottom-action .lucide { color: var(--mc-on-accent) !important; }
#memecraft-app-container .mc-fx-btn .lucide { width: 1.05em; height: 1.05em; }

#memecraft-app-container.mc-container-narrow .bento-btn .lucide { font-size: .95rem !important; }
#memecraft-app-container.mc-container-narrow .mc-title-card > .lucide { font-size: 1.1rem !important; }
#memecraft-app-container.mc-container-micro .bento-btn .lucide { font-size: .82rem !important; }

.mc-lucide-spin {
    animation: memecraft-lucide-spin .9s linear infinite;
    transform-origin: 50% 50%;
}
@keyframes memecraft-lucide-spin { to { transform: rotate(360deg); } }

/* Never let a placeholder flash as a missing square before JS upgrades it. */
[data-lucide] { font-style: normal; }

/* MemeCraft 11.5.25 — gallery viewer icon normalization.
   The viewer is portaled directly under <body>; keep all Lucide SVGs compact there too. */
#mc-meme-modal .lucide {
    width: 1em !important;
    height: 1em !important;
    min-width: 1em !important;
    max-width: 1em !important;
    max-height: 1em !important;
    flex: 0 0 auto !important;
    vertical-align: -0.125em !important;
}
#mc-meme-modal button .lucide,
#mc-meme-modal a .lucide { pointer-events: none; }
