=== Giuliomax Menu Builder ===
Contributors: giuliomax
Donate link: https://www.paypal.com/paypalme/giuliosw
Tags: menu, navigation, mega menu, hamburger menu, woocommerce cart
Requires at least: 5.8
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 3.8.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

The menu plugin that gives you everything — mega menus, WooCommerce cart, 50 themes, CTA buttons. 100% free. No Pro version. No catch.

== Description ==

📖 **[Full Documentation →](https://giulio001.github.io/)**

**What if the best menu plugin didn't cost anything?**

You've seen the pattern: install a menu plugin, get excited, then hit the paywall. The mega menu? Pro. The cart icon? Pro. The nice themes? Pro. Giuliomax Menu Builder breaks that pattern. **Every single feature is free.** Not a teaser version — the whole thing.

Build a navigation bar that looks like it was custom-designed for your brand, in minutes. Pick one of **50 designer themes** and go live in one click, or fine-tune every pixel with the visual editor. Drop the **MenuX block** into your header in the Site Editor, or paste `[menux]` anywhere. Desktop, tablet, phone — it just looks right.

= 💎 Why "free" actually means free here =

No watermarks. No ads in your dashboard. No "Upgrade" buttons taunting you next to locked features. No newsletter blackmail. Everything below works the moment you click Activate:

**Navigation**

* ✅ Mega menus (4 columns, 20 industry templates)
* ✅ Multi-level dropdowns
* ✅ Visual drag-and-drop builder
* ✅ Import from WordPress menus
* ✅ Sticky header with shrink-on-scroll
* ✅ Built-in menu & page search

**Conversion**

* ✅ CTA button items
* ✅ Announcement bar with live countdown
* ✅ Badges ("New", "Hot") & notification dots
* ✅ Live WooCommerce cart with mini-cart
* ✅ Smart visibility (role, device, page, schedule, campaign)

**Design**

* ✅ 50 one-click themes in 10 style categories
* ✅ 70+ Google Fonts with live preview
* ✅ Visual gradient picker
* ✅ Hover & entrance animations
* ✅ Logo placement with pill/circle shapes
* ✅ Dark mode (Light / Dark / Auto)
* ✅ Scroll progress bar
* ✅ Scroll spy (auto-highlight current section)

**Mobile**

* ✅ 4 opening styles (dropdown, fullscreen, left/right drawer)
* ✅ 3 hamburger icon styles
* ✅ Mobile-specific text colors
* ✅ Overlay with blur effect
* ✅ Accordion submenus

**Platform**

* ✅ Gutenberg block for FSE themes
* ✅ Shortcode for any builder (Elementor, Divi, WPBakery)
* ✅ WPML / Polylang / TranslatePress support
* ✅ WCAG 2.2 AA accessibility
* ✅ One-file export/import
* ✅ Real-time 3-device preview

That's **30+ features other plugins split between Free and Pro** — here they're just... features.

= 💰 One plugin instead of five =

Other plugins split these features across separate paid products — a mega menu add-on, a cart widget, an announcement bar, a sticky header, a styling pack. Each one costs money, loads its own scripts, fights the others' CSS and needs its own update cycle.

MenuX replaces all of them with a single consistent plugin. **$0.** If it saves you time or money, a small donation keeps development going — that's the whole business model.

= 👤 Who is it for? =

* **Shop owners** — live cart in the menu, countdown sales bar, "Offers" badge on the promo category. Your navigation becomes a salesperson
* **Restaurants & local business** — show "🍕 Lunch Menu" only between 12:00 and 15:00 with time-based visibility. Yes, really
* **Agencies & freelancers** — style a menu once, export the config file, import it on every client site. Minutes instead of hours, on every project
* **Bloggers & creators** — 50 themes mean your nav matches your brand without hiring a designer; the scroll progress bar keeps readers engaged
* **Marketers** — CTA buttons, campaign-targeted menu items (UTM visibility), countdown urgency — A/B test your navigation like a landing page
* **Membership & community sites** — different menus for logged-in members, per-role items, login/logout aware navigation out of the box

= 🚀 Launch in 60 seconds =

* **50 one-click themes** — from sleek dark navs to playful gradients, filter by mood (Dark, Minimal, Vibrant, Glass, Corporate, Retro and more), preview live, apply with one click. Your menu goes from default-theme-boring to *"wait, what plugin is that?"* instantly
* **Import your existing menu** — already built a menu in Appearance → Menus? One click pulls it into the builder, sub-items included. Nothing to rebuild
* **A bee shows you around** — first time? Our 🐝 onboarding guide walks you through setup so you're never staring at an empty screen

= 🎯 Built to convert, not just navigate =

Your menu is prime real estate — the one element on every single page. Make it work for you:

* **CTA Button items** — turn "Book Now", "Get a Quote" or "Start Free Trial" into a real button with its own colors, hover effect and rounded corners. It sits right in your menu, impossible to miss
* **Announcement Bar with live countdown** — run flash sales with a ticking timer that creates real urgency. Dismissible, brandable, clickable
* **Badges & notification dots** — highlight "New" or "Hot" items so visitors' eyes go exactly where you want
* **Smart visibility** — show different items to logged-in customers, mobile visitors, specific pages, certain hours of the day, or traffic from a specific campaign. The right menu for the right person, automatically

= 🛒 Your shop's command center — free =

Other plugins charge for this. Here it's included:

* **Live cart icon** — cart, bag or basket, with a count badge that updates the *instant* something is added. No refresh
* **Running subtotal** — shoppers always know where they stand
* **Mini-cart dropdown** — peek at the cart on hover or click, straight to checkout in fewer clicks
* **Fully brandable** — icon style, position, colors, badge — all yours
* **Zero config debt** — no WooCommerce? The cart silently waits and activates itself the day you install it

= ⚡ Mega menus like the big brands — free =

The multi-column dropdowns you see on Apple-sized websites, built visually in your dashboard:

* **Up to 4 columns** of links, headings, dividers, images, shortcodes or blocks — yes, you can embed forms, latest-posts widgets or product grids via shortcode
* **Icons + descriptions per link** — visitors know where they're going before they click
* **20 industry templates** — SaaS, E-Commerce, Agency, Restaurant, Travel, Healthcare, Real Estate, Law Firm, Finance, Fashion, Hotel, Nonprofit, Events, Automotive, Gaming and more, loaded in one click
* **Every mega menu unique** — per-menu backgrounds (solids or gradients), spacing, colors and corner rounding from a dedicated 🎨 Appearance tab
* **Forgiving hover** — the panel waits for the mouse instead of vanishing mid-journey
* **Mobile-smart** — choose how it folds on phones: a stacked accordion list, a compact 2-column grid (perfect for category menus), or hidden entirely

= 📱 Mobile menus people actually enjoy =

* **4 opening styles** — classic dropdown, immersive fullscreen, or a drawer sliding from either side
* **3 hamburger icon styles** — Classic, Modern, Minimal — in your brand colors, on a guaranteed-transparent button (we fight your theme's CSS so you don't have to)
* **Mobile-specific text colors** — normal, hover and active states, independent from desktop
* **Overlay magic** — tint it, fade it, even blur the page behind your menu
* **Accordion submenus** — optional one-at-a-time expansion keeps long menus tidy

= ✨ Design without compromise =

* **Visual drag-and-drop builder** — every item expands into clean labelled sections. You will never touch code
* **70+ Google Fonts** — searchable picker with live preview; size, weight, spacing, transforms
* **Gradient picker** — paint with rich gradients using a visual compass — no hex codes, no CSS
* **Hover animations** — Lift, Scale, Glow, Underline and more; plus entrance animations with stagger
* **Sticky header** — stays visible on scroll, mirrors your menu automatically or gets its own shrink-on-scroll look
* **Your logo, your way** — drop it in the bar, position it, round it into a circle or pill
* **Dark mode** — Light, Dark, or Auto-follow the visitor's system
* **Built-in search** — a magnifying glass that searches your menu *and* the text on the page
* **Real-time preview** — desktop, tablet and mobile views while you edit, before anyone else sees it

= ♿ Accessibility is one switch away =

Flip the master toggle and get full WCAG 2.2 AA: keyboard navigation, visible focus rings, skip links, ARIA labels, comfortable touch targets, reduced-motion respect and high-contrast mode. Inclusive by default, not as an afterthought.

= ⚡ Light by design. Private by default =

* **Server-side rendering** — your menu is plain HTML and CSS generated on the server. No React bundle, no framework tax, no layout shift
* **Zero external requests** — Font Awesome is bundled locally; nothing loads from a CDN. Google Fonts connect only if *you* explicitly pick one
* **GDPR-friendly out of the box** — no tracking, no analytics calls, no cookies, no data sent anywhere. Nothing to add to your privacy policy
* **Cache-plugin native** — static output that WP Rocket, LiteSpeed and W3TC can cache aggressively

= 🌍 Works with your stack =

* **Site Editor / FSE themes** — drag the MenuX block into any header. Done
* **Page builders** — Elementor, Divi, WPBakery: paste `[menux]` in a shortcode element
* **WPML · Polylang · TranslatePress** — a label per language on every item, detected automatically
* **Caching plugins** — server-side HTML, friends with WP Rocket, LiteSpeed and W3TC
* **Theme switches** — your menu lives in the plugin, not the theme. Change themes, keep everything
* **Move between sites** — export the entire setup to a file, import it elsewhere in seconds

= 🔌 Get started =

1. Open **Giuliomax Menu Builder** in your admin sidebar
2. Add items in the drag-and-drop builder — or import your existing WP menu in one click
3. Apply one of the 50 themes, or style it yourself
4. Drop the **MenuX block** in your header (or paste `[menux]` anywhere)
5. Optional: enable the Mega Menu, WooCommerce cart, or Announcement Bar from the sidebar

That's it. No license keys, no account, no credit card field hiding in step 5.

Still deciding? Install it, click one theme, and look at your site. That's 90 seconds. If it's not for you, deactivate — your theme's old menu is exactly where you left it, and deleting the plugin removes every trace from your database. There is literally nothing to lose.

= ☕ Keep it free =

This plugin is free and always will be. If it saves you time or money, a small donation keeps development going:

👉 https://www.paypal.com/paypalme/giuliosw

Every contribution genuinely matters. Thank you.

== Installation ==

= From the WordPress Plugin Directory (recommended) =

1. In your WordPress admin go to **Plugins → Add New**
2. Search for **Giuliomax Menu Builder**
3. Click **Install Now**, then **Activate**

= Manual installation =

1. Download the zip from the plugin page or from GitHub
2. Go to **Plugins → Add New → Upload Plugin** and upload the zip, or extract it to `/wp-content/plugins/`
3. Activate the plugin from **Plugins → Installed Plugins**

= First setup =

1. Go to **MenuX** in the admin sidebar
2. Open **Menu Structure** and add your navigation items
3. **FSE / block themes** — open the Site Editor, click **+** in any header template part, search for **MenuX** and drop the block in; pick the menu location from the block sidebar. Done — no code needed.
4. **Classic themes / page builders** — copy the shortcode `[menux]` and paste it into any page, post, widget or template area; use `[menux location="footer"]` to show a location-specific menu.
5. Use the **Style**, **Themes** and other panels to customise colors, typography, mobile behavior and more.

= Requirements =

* WordPress 5.8 or higher
* PHP 7.4 or higher

== Frequently Asked Questions ==

= How do I display the menu? =

The easiest way: open any page or your site header in the editor, click the **+** inserter and search for **MenuX** — drop the block in and you're done, no code required. Prefer a shortcode? Just type `[menux]` into any page, post or widget. To show different menus in different spots (header, footer, sidebar…), pick the location from the block sidebar or pass it to the shortcode as `[menux location="footer"]`.

= Is it really free? Are there ads, watermarks or upsells? =

Yes, genuinely free. Every feature described here — mega menus, the WooCommerce cart, 50 themes, the Announcement Bar with countdown, accessibility, Google Fonts, the Gutenberg block — is included with no paywall, no "upgrade now" banners inside the builder, no ads and no watermark on your menu. If the plugin saves you time, a small voluntary donation is welcome, but nothing is locked behind it.

= I already built my menu in Appearance → Menus. Do I have to start over? =

No! Open the builder, click the **📋 Import WP** tab, pick your existing menu from the dropdown and hit **↓ Import**. All items — pages, custom links and one level of sub-items — land in the MenuX builder ready to style. It takes about ten seconds.

= Does it replace my theme's menu? How do I hide the old one? =

MenuX renders its own menu wherever you place the block or shortcode — it doesn't delete your theme's menu. To hide the old one: in FSE themes, remove the Navigation block from the header template part in the Site Editor; in classic themes, either use the **WP Menu Integration** panel (which intercepts `wp_nav_menu()` and replaces the theme menu output directly) or unassign the menu from the theme location in Appearance → Menus.

= How many menus can I create? =

One configuration drives up to four menu locations: **Primary, Footer, Sidebar and Mobile**. Assign each item to a location in the builder, then place each menu with `[menux location="footer"]` or by picking the location in the block sidebar. Items default to Primary.

= Can I have different menus for different pages? =

Yes — per-item **page conditions** let you show an item only on specific page IDs, and you can combine that with device, role, login-state, schedule and campaign (UTM) conditions. For structurally different menus in different areas, use the four locations (Primary / Footer / Sidebar / Mobile).

= How do I create dropdown submenus? =

Open any item in the builder and find the **📂 Submenu** section. Click **+ Add submenu**, then **+ Add sub-item** — each sub-item can be a WordPress page or a custom link, with its own label per language, icon and tab target. On desktop the submenu opens on hover; on mobile it expands inline when tapped. No code needed.

= How do I turn a menu item into a button ("Book Now", "Get Started")? =

Open the item in the builder and enable the **🎯 CTA Button** toggle. Four controls appear: background color, text color, hover color and border-radius (0 for square corners, 50 for a pill shape). The item renders as a real button in the menu bar — with a hover effect — and the styling survives theme changes and export/import.

= Can I schedule menu items to appear and disappear automatically? =

Yes. Every item has a **⚙️ Schedule & Conditions** section with a From/To date-time range — perfect for limited-time promo links. You can also restrict an item to a daily time window (e.g. show "Lunch Menu" only 12:00–15:00), and the window can even cross midnight for night-time businesses.

= Can I show items only to logged-in users or specific roles? =

Yes. Each item has a visibility dropdown: everyone, logged-in only, logged-out only, or any specific WordPress role (Administrator, Editor, Subscriber, custom roles…). Great for member areas, client portals and "My Account" links that only appear after login.

= How do I add a logo? =

Go to **MenuX → Logo** in the admin sidebar, upload or pick an image, then set its position inside the bar (left, center or right), width, height, margins and border-radius (handy for circular or pill-shaped logos). The logo appears immediately in the live preview.

= How do I make the menu stick to the top when scrolling? =

Open **MenuX → Style → Sticky** and enable the sticky header. By default it mirrors your main menu's look ("Match main menu"); turn that off to give the sticky bar its own background, shadow, padding and alignment. You can also enable a shrink-on-scroll effect and an auto-hide behavior.

= How do I add a search bar? =

Enable it from the Search panel in the admin. A magnifying-glass icon is added to the menu; clicking it opens a modal with two tabs — search your menu items, or search the text on the current page with keyboard prev/next navigation.

= Does it work in Full Site Editing (FSE) themes like Twenty Twenty-Five? =

Yes — and it couldn't be simpler. From **Appearance → Editor**, open the header template part, click the **+** inserter, search for **MenuX**, and drop the **MenuX — Menu** block where you want the navigation. Use the block sidebar to pick the menu location. Font Awesome icons, your configured Google Font, and the mega-menu / hamburger JavaScript all load correctly right inside the editor preview, so you see the real thing as you build.

= Does it work with page builders? =

Yes. In the WordPress block editor use the native **MenuX** block. In Elementor, Divi, WPBakery and other builders just add a Shortcode element with `[menux]` — both produce the same menu.

= Does it work with caching plugins? =

Yes. The menu HTML is generated server-side and compatible with WP Rocket, LiteSpeed Cache, W3 Total Cache and similar plugins.

= How do I add Font Awesome icons? =

In the menu builder, each item has an icon field. Type the FA class name, e.g. `fa-solid fa-house`, or use the **🎨 Pick** button to browse and search icons visually. Font Awesome 6 Free is loaded automatically.

= Is it compatible with WPML / Polylang / TranslatePress? =

Yes. This plugin automatically detects installed multilingual plugins and lets you set a label per language for each menu item.

= Where is the mobile breakpoint? =

Go to **MenuX → Style → Mobile** and set your preferred pixel breakpoint, or choose Auto to detect based on available space. Default is 768px.

= Can the mobile menu text have different colors than desktop? =

Yes. In **Style → Hamburger → 🔤 Mobile link text** you'll find three dedicated color pickers — Normal, Hover and Active — that apply only inside the mobile menu. Leave them empty to inherit your desktop menu colors.

= The hamburger button has a dark or grey background on my theme — why? =

That was your theme's own `<button>` styling bleeding through. Since version 3.5.0 the plugin forcefully resets the hamburger background to transparent on every theme — and if you set a custom background color, that wins too. Just update to the latest version; no configuration needed.

= How do I use the preset themes? =

In the admin sidebar click **✨ Themes**. Use the category chips (Dark, Minimal, Vibrant, Creative, Corporate, Nature, Elegant, Retro, Glass, Playful) to filter the 50 preset themes, then click any card to apply it instantly and preview it live.

= How does the Mega Menu work? =

Go to **⚡ Mega Menu** in the sidebar, enable the toggle next to a first-level nav item, then click **⚡ Edit Columns ▶**. Add up to 4 columns, fill them with headings, links (with icon and description), dividers, images or shortcodes. Click **🎨 Appearance** to give this specific mega menu its own background, colors and spacing. Hit **✨ Presets** to load one of 20 ready-made templates.

= How do I add an Announcement Bar? =

Go to **MenuX → Announcement** in the admin sidebar, check **Enable Announcement Bar**, enter your message, optionally add a link and configure the colors. Choose **Above** or **Below** to control where the bar appears relative to the navigation. To add a countdown, enable the Countdown Timer toggle, pick a target date/time and optionally set an expired message.

= Can I have a different background for each mega menu? =

Yes, since version 3.0. Click **⚡ Edit Columns ▶** on any enabled item, then switch to the **🎨 Appearance** tab. Changes apply only to that item's panel and override the global defaults.

= Does the WooCommerce cart work with all themes? =

Yes. The cart icon is part of the menu output, so it works with any theme whether you place the menu via the MenuX block or the `[menux]` shortcode. The mini-cart uses WooCommerce's native fragments system for live updates.

= Does the WP Menu Integration work with all themes? =

It works with classic PHP themes that call `wp_nav_menu()` directly (e.g. GeneratePress, OceanWP, Neve, Kadence). Themes that use a custom header builder (e.g. Astra Header Builder) bypass `wp_nav_menu()` internally, so the integration cannot intercept them — in that case just drop the MenuX block (or the `[menux]` shortcode) into your header instead.

= Will I lose my menu if I switch themes? =

No. Your menu items and styles are stored by the plugin, not by the theme. When you change theme the menu stays intact — you only need to place the block (or `[menux]` shortcode) again in the new theme's header.

= Can I move my menu to another website? =

Yes. Use **Import / Export**: export your full configuration (items, styles, mega menus, cart, announcement and all settings) to a JSON file, then import it on another site to recreate the menu exactly. It's also a convenient backup.

= Is the menu accessible? =

Yes. A single master toggle enables a full WCAG 2.2 AA layer: keyboard navigation, a visible focus ring, a skip link, ARIA labels, adequate touch-target sizes, reduced-motion support and a high-contrast mode.

= Will it slow down my site? =

No. The menu HTML and its CSS are generated server-side, Font Awesome is bundled locally (no external request), and Google Fonts load only if you actually choose one. There's no heavy framework, so the footprint stays light and caching-plugin friendly.

= Is it GDPR compliant? =

The plugin makes zero external requests by default: no tracking, no analytics, no cookies, no CDN calls — Font Awesome is bundled locally. The only optional external connection is Google Fonts, and only if you explicitly choose one in the Typography settings (in that case Google receives the visitor's IP as part of the standard font request — see the External Services section). With no Google Font selected, there is nothing to add to your privacy policy.

= Can I reset everything and start fresh? =

Yes. Go to **MenuX → Tools → Reset Everything** and confirm. This permanently deletes all menu items, styles and integration settings.

= What happens to my data if I uninstall the plugin? =

Deactivating keeps everything — you can toggle the plugin off and on without losing your setup. **Deleting** the plugin from the Plugins screen removes all its options and cached data from your database completely. If you might come back later, export your configuration to a file first — importing it restores everything exactly.

= Can I use custom CSS? =

You can target the `.menux-container` wrapper and its child elements from your theme's stylesheet or from any "Additional CSS" field in the WordPress Customizer.

== Screenshots ==

1. Main admin panel with visual menu builder
2. Preset themes panel with live preview
3. Style panel — Colors tab
4. Style panel — Layout and spacing options
5. Mega Menu editor — column builder with live preview
6. Mega Menu editor — per-item Appearance tab
7. Mega Menu preset templates picker
8. WooCommerce cart settings panel
9. Frontend — desktop view with mega menu open
10. Frontend — WooCommerce cart icon with mini-cart dropdown

== External Services ==

This plugin may connect to the following external service:

**Google Fonts** (optional)

If a Google Font name is entered in the Style panel (Typography tab), the plugin loads that font's stylesheet from Google's servers at `https://fonts.googleapis.com`. This request is made only when a Google Font is explicitly configured by the site administrator. The font name and the visitor's IP address are sent to Google as part of the standard HTTP request.

* Terms of service: https://developers.google.com/terms
* Privacy policy: https://policies.google.com/privacy

Font Awesome icons are bundled locally within the plugin and do **not** load from any external server.

== Changelog ==

= 3.8.1 =
* **Fix: Sub-screen visible on desktop** — `li.menux-mega-subscreen-li` is now hidden globally (`display:none!important`) and only revealed inside the mobile context, so it never appears as a stray list item in the desktop nav bar
* **Fix: Dark screen on mobile open** — replaced the `transform + pointer-events` approach with `display:flex + @keyframes` animation; the sub-screen is invisible until explicitly opened, eliminating the full-screen dark flash
* **Fix: Text invisible on dark overlays** — when `mobile_link_color` is not configured and the menu uses fullscreen or drawer style, the sub-screen text now defaults to `#ffffff` instead of `#374151`
* **Fix: Back button animation** — closing the sub-screen now triggers a slide-out animation (`menux-ss-closing`) with a 300 ms cleanup timeout; the whole menu closing removes both classes instantly with no animation
* **Fix: Sub-screen `menux-ss-closing` class not cleaned up** — `bmCloseMenu()` now removes both `menux-ss-open` and `menux-ss-closing` and clears the pending timer to prevent stale state on reopen

= 3.8.0 =
* **New: Mobile mega menu push-navigation** — tapping a mega menu item on mobile now slides in a dedicated full-screen panel showing only those links, with a ← back button at the top (like mediaworld.it / euronics). This replaces the accordion approach entirely, giving a native app feel and eliminating all font, alignment and bullet-point inconsistencies
* **Fix: Dropdown indicator on mobile** — the `▾` chevron is replaced with a right-pointing `›` arrow, correctly signalling push navigation rather than expand-in-place
* **Change: Mobile Layout option** — the "2-column grid" choice has been removed; the setting now has two values: "Visible on mobile" (push-screen) and "Hidden on mobile"

= 3.7.1 =
* **Fix: Mobile mega menu polish** — removed the stray focus box that appeared around a section heading after tapping it (the keyboard focus ring is preserved for accessibility); forced all mega links and headings to align left on mobile regardless of the per-column alignment set for desktop; mobile mega links now show just their icon + label (the secondary description is hidden) for a cleaner, lighter list

= 3.7.0 =
* **Fix: Mega menus were unreadable on mobile** — preset colours and formatting (designed for a coloured desktop panel) leaked onto the mobile view, producing broken, often unreadable combinations (e.g. light text on the transparent mobile list). On mobile the mega panel is now fully neutralised: no preset background, shadow, radius, fonts or colours — links read like the rest of the mobile menu, using the standard submenu link colour
* **New: Mobile mega menu is now a clean nested accordion** — tapping a mega menu item expands it; inside, each section heading becomes a tappable sub-accordion that reveals its own links. Sub-sections start collapsed for a compact, easy-to-scan list. Links placed without a section heading stay always-visible at the top. Full keyboard support (Enter/Space) and ARIA expanded state included
* **Improvement: Per-panel and per-item appearance now applies on desktop only** — the visual Appearance overrides remain exactly as designed on desktop, while mobile always falls back to the neutral, readable accordion
* **Improvement: CSS cache is now version-aware** — a plugin update immediately serves freshly generated CSS instead of waiting for a settings save or the 24-hour cache expiry
* **Housekeeping: Removed the redundant Global Default Colors section** from the Mega Menu panel — the per-item 🎨 Appearance tab already covers panel background and all mega colours

= 3.6.1 =
* **Fix: Mega editor Appearance tab trapped the user** — switching to the Appearance tab hid the entire toolbar including the tab buttons themselves, making it impossible to return to Content and causing the live preview to disappear; the toolbar is now always visible and only the column-editing tools are hidden when Appearance is active
* **New: Per-panel Max Width** — the Appearance tab now includes a "Panel Max Width (px)" field (400–2400); when set, the mega panel box is constrained and centred via `max-width` + `margin: auto`, overriding any global inner-content cap; leaving the field empty falls back to full-width behaviour
* **Fix: Fatal parse error in help-content.php** — an unescaped apostrophe inside a single-quoted PHP string caused a parse error that crashed the entire WordPress admin; apostrophe now correctly escaped (`doesn\'t`)
* **Improvement: Delete button visibility** — the item delete button in Menu Structure was nearly invisible against the white background; it is now shown in red at rest and deepens on hover, making destructive intent immediately clear
* **Improvement: Drag handle affordance** — the drag handle icon in Menu Structure now shows a coloured highlight on row hover and a short "Grab the handle to reorder" label, making the reorder mechanic discoverable for first-time users

= 3.6.0 =
* **New: Scroll Spy** — automatically highlights the nav link for the section currently visible in the viewport as the user scrolls; activate in Style → Layout → 🎯 Scroll Spy; set a trigger offset (default 80 px — sticky bar height is added automatically at runtime); enable smooth scroll with History API hash updates and ARIA live region announcements for screen readers; the last section always activates when the page is scrolled to the very bottom; active section links share the visual treatment defined in the Colors → Active Link tab
* **New: Responsive Mega Menu Mobile Layout** — a three-mode selector replaces the old "Disable on mobile" checkbox in the Mega Menu panel: Stacked List (all columns merged into a tappable accordion, same behavior as before), 2-Column Grid (columns kept side-by-side in a CSS grid — ideal for category or product menus), or Hidden (panel not rendered on mobile); existing menus automatically retain their previous behavior via back-compat migration
* **Improvement: 8 new mega menu presets (20 total)** — the preset picker now ships 20 industry templates: SaaS, E-Commerce, Agency, Restaurant, Travel, Healthcare, Real Estate, Law Firm, Finance, Fashion, Hotel, Nonprofit, Events, Automotive, Gaming, Fitness, Beauty & Wellness, Tech Startup, Portfolio, and Education; load any preset in one click from the 🎨 Appearance → ✨ Presets tab
* **Improvement: Global mega menu color defaults** — a new Color Defaults section in Mega Menu → Appearance lets you set site-wide default colors for mega panel links, headings and accent/icons; per-item overrides remain possible from the individual Appearance tab
* **Improvement: Enforce contrast on active links** — a new checkbox in Colors → Active Link forces a WCAG-compliant contrast ratio between the active link text and its background; a live badge shows the ratio and WCAG grade (AA / AAA / Fail) as you pick colors
* **Improvement: Style panel tab state preserved after save** — the open tab (Colors, Typo, Layout…) is no longer reset to Themes after saving; the previously active tab is re-selected automatically
* **Improvement: Onboarding tutorial overhauled** — expanded from 5 to 11 steps, one per major admin section (Structure, Logo, Mega Menu, Themes, Colors, Typography, Layout, Mobile, Announcement, Search, WooCommerce), each with concrete action guidance
* **Improvement: Color picker opacity restored on re-enable** — re-checking a color field's enable checkbox now restores the picker at its last saved opacity instead of snapping back to 1.0
* **Fix: Device visibility condition** — the PHP save handler now correctly handles separate 'mobile' and 'tablet' condition values via `wp_is_mobile()`; previously 'tablet' was treated identically to 'mobile' at the database level, leading to inconsistent behavior
* **Fix: Conditional roles blocked logged-out users** — items with Visibility set to "logged-out only" AND a Roles condition set were incorrectly hidden for guests; the roles check is now gated behind `is_user_logged_in()` so it never runs for unauthenticated visitors
* **Fix: CSS cache transient had no expiry** — `set_transient('menux_css_cache')` was called without an expiration argument, potentially allowing stale cached CSS to persist indefinitely after design changes; now expires after 24 hours
* **Fix: Import — mega_style, mega_mobile_layout and scroll spy settings not sanitized** — these five keys were silently dropped during configuration import; all are now sanitized and preserved correctly

= 3.5.0 =
* **New: CTA Button style per item** — enable the 🎯 CTA toggle on any menu item and choose its background, text color, hover color and border-radius; the link becomes a styled call-to-action button without touching your theme's CSS; settings are saved per item and survive export/import
* **New: Import from WordPress Menus** — a new "📋 Import WP" tab in the builder lets you choose any menu created in Appearance → Menus and import all its items (pages and custom links, with one level of sub-items) into the MenuX builder in one click; a confirmation prompt prevents accidental overwrites
* **Improvement: Mobile hamburger always transparent by default** — `!important` guards on `background`, `border`, `appearance` and `box-shadow` prevent theme CSS from accidentally turning the button grey or black; custom background colors also get `!important` so they actually apply
* **Improvement: Mobile text colors** — three new color fields (Normal, Hover, Active) in the Style → Hamburger section let you control the link text color inside the mobile menu independently of the desktop menu; empty = inherits theme/menu colors
* **Fix: Close button (✕) colors now work on all themes** — the fallback was `color:inherit`, which on many themes resolved to the `<button>` default (often near-black on dark overlays); replaced with an explicit `#333333` default and added `!important` guards so the color and background settings are always respected
* **Fix: Sticky header on mobile no longer clips the hamburger** — adds `padding-top:8px; padding-bottom:8px` inside the mobile media query for `.menux-sticky-fixed`, giving the button breathing room
* **Fix: Mega menu resize listeners accumulated per item** — every mega menu item added its own `window resize` handler; now a single handler per nav covers all open panels
* **Fix: Mega menu outside-click handler duplicated per nav** — with multiple `[menux]` shortcodes on one page, every click fired N handlers; now a single guarded `document` handler covers all navs
* **Fix: Close button (✕) now returns focus to the hamburger** — clicking the close button in fullscreen/drawer mode now moves focus back to the hamburger, matching the Escape key behavior and fixing a WCAG 2.4.3 violation
* **Fix: Mega panel sub-links now close the panel on mobile** — tapping a link inside an open mega panel previously left the panel visible behind the destination page; the panel now closes immediately on link click

= 3.4.0 =
* **New: 50 preset themes with filterable style categories** — the Themes panel now offers 50 professionally designed themes (up from 20), organized into 10 style categories: 🌙 Dark, ⚪ Minimal, 🌈 Vibrant, 🎨 Creative, 💼 Corporate, 🌿 Nature, 💎 Elegant, 📼 Retro, 🧊 Glass, 🎈 Playful; a row of interactive category chip buttons above the grid lets you narrow the theme list instantly — each chip shows the number of themes it contains; 30 new original themes added including Obsidian Gold, Graphite Ice, Neon Synthwave, Holographic, Miami 80s, Burgundy Velvet, Frosted Aqua, Bubblegum, Vaporwave and more

= 3.3.2 =
* **Fix: Announcement Bar width and gap** — the bar is now wrapped in a shared flex-column container with the nav, so it always matches the menu width exactly and sits flush against it with no white-space gap, regardless of the theme layout
* **Fix: PHP fatal error on admin pages** — an unescaped apostrophe in `help-content.php` caused a parse error that crashed the entire WordPress admin; fixed by escaping the offending character (`bar\'s`)
* **Fix: Announcement Bar section missing from help modal** — the 📢 Announcement panel was not documented in the contextual help; a full section covering all fields (message, link, colors, position, dismissal, countdown timer) has been added
* **Improvement: Help modal display instructions** — the "How to display the menu" entry now leads with the native MenuX block (no-code path) instead of the shortcode

= 3.3.1 =
* **New: Countdown Timer in Announcement Bar** — attach a live ticking countdown (days / hours / minutes / seconds) to any announcement; set a target date/time, a label (e.g. "Ends in:") and an optional expired message; initial values are rendered server-side to eliminate first-paint flash; the days segment hides automatically when it reaches zero
* **Fix: Stale open-state on mobile after closing the menu** — second-level and third-level submenus that were open before the hamburger close remained visually open on the next open; `bmCloseMenu()` now collapses all nested `.mobile-sm-open` links and resets mega-menu `.menux-open` state including `aria-expanded`
* **Fix: Accordion not fully collapsing sibling branches** — closing a sibling item on mobile only removed the direct-child open class; now clears all descendant `.mobile-open` / `.mobile-sm-open` in the sibling branch so deeply nested submenus are fully reset
* **Fix: Sticky spacer height drift when web fonts load late** — when a Google Font was configured and the page was scrolled before the font finished loading, the spacer kept the wrong height permanently; the new `recalcMetricsForce()` function briefly removes the fixed class synchronously (no visual flicker) to re-measure, called on `document.fonts.ready` and on resize

= 3.3.0 =
* **New: Announcement Bar** — add a full-width promotional banner above or below the navigation from **MenuX → Announcement** in the admin sidebar; configure text, link, background color, text color, font size, vertical padding and position; optionally make it dismissible with a configurable expiry (localStorage); the bar renders exactly once per page even when multiple `[menux]` shortcodes are present; settings are included in Import/Export

= 3.2.1 =
* **New: Mobile accordion mode** — a new toggle in the Mobile panel ("Close other submenus when one opens") collapses sibling submenus at the same level whenever a new one is opened on mobile; works for all nesting levels and all mobile opening styles (dropdown, fullscreen, drawer)

= 3.2.0 =
* **New: Dropdown Indicator customization** — choose between Triangle (▾), Chevron (⌄), Dot (•) or None for the arrow shown on items with submenus; set a custom color, size (6–24 px) and toggle the open/close rotation animation. Applies to all levels: top-level items animate on hover or mega-panel open, nested items rotate when their sub-submenu opens. Settings are included in Import/Export.

= 3.1.3 =
* **Fix: Sticky spacer height stale after Google Font load** — when a Google Font was set, the font swap could change the nav height slightly after the initial measurement; `document.fonts.ready` now triggers a re-measure so the spacer is always the correct height when sticky first engages
* **Fix: Duplicate HTML IDs with multiple shortcodes on same page** — using `[menux]` twice on the same page produced duplicate `id` attributes (`menux-nav-main`, `menux-spacer`, `menux-list-main`, `menux-progress-bar`); the shortcode now applies the same per-instance suffix strategy already used by the Gutenberg block

= 3.1.2 =
* **Fix: Overlay and Escape key fire multiple times with multiple nav instances** — the overlay click and `document` Escape listener were registered once per nav element on the page; both are now bound exactly once and dispatch to all nav instances, so pressing Escape or clicking the backdrop always closes the correct open menu
* **Fix: Search results XSS with HTML in page text or menu labels** — page text containing `<`, `>` or `&` characters was inserted into search result HTML without escaping, potentially breaking layout or allowing injected markup; all text piped through `bmSmHL` is now HTML-escaped before the `<mark>` replacement
* **Fix: Search "No results" display with special characters** — the user's query string was inserted raw into the "No results for …" message; it is now escaped before rendering
* **Fix: Admin language list XSS** — language codes and labels returned by the multilingual-plugin AJAX endpoint were inserted into innerHTML without escaping; `menux_esc()` is now applied to both values

= 3.1.1 =
* **Fix: Scroll Progress Bar settings were never saved** — enabling the progress bar and setting its color, height or position had no effect because the save handler dropped these four fields; they are now persisted and survive import/export
* **Fix: Sticky "Shrink on scroll" and "Transition duration" were never saved** — both sticky options were rendered in the form but silently discarded on save; now persisted and included in import/export
* **Fix: Mega menu shortcode/widget columns** — shortcodes that output forms, iframes or inputs (e.g. Contact Form 7, video embeds) were being stripped by output sanitisation; trusted admin shortcode output now renders intact while the surrounding markup stays sanitised
* **Fix: Mega panel overflow escape (Elementor)** — the page-builder overflow workaround is now ref-counted across sibling mega items and correctly released when a panel is closed by clicking outside or via keyboard, so wrappers are never left with permanently broken clipping
* **Fix: Staggered entrance animation** — menus with more than 20 top-level items no longer leave the items beyond the 20th permanently invisible
* **Fix: Sticky spacer height** — the sticky placeholder height is now re-measured on resize and font reflow, preventing a content jump when the bar engages
* **Fix: Per-item mega Appearance editor** — picking a background no longer wipes unsaved padding/gap/colour edits; every Appearance field now updates the live preview immediately, and the preview honours the per-item border radius and divider style
* **Fix: In-page search** — clicking a specific result now jumps to that match instead of snapping back to the first; repeated searches no longer fragment the page text
* **Internal** — aligned the mobile overlay opacity default (0.9) across all layers; removed a per-render document click-listener leak in the mega editor

= 3.1.0 =
* **Elementor compatibility** — mega menu panels now correctly escape Elementor columns that use `overflow:hidden`; the JavaScript walks up the DOM on open and restores overflow values on close, so the panel is fully visible and receives mouse events correctly
* **Entrance animation z-index fix** — themes with CSS entrance animations (Indigo Pulse: slideDown, Cosmic Dusk: fadeIn, Violet Cloud, Aurora Night, Ocean Electric, Cloud Glass) no longer trap the mega panel inside a stacking context; changed `animation-fill-mode` from `both` to `backwards` so no transform/opacity is retained after the animation ends, and added an `animationend` listener to remove the animation rule entirely
* **Nav bar right padding** — WooCommerce cart icon and search icon no longer sit flush against the right edge of the menu bar; the container now applies the same horizontal padding on the right side as the link items use internally (minimum 8 px)
* **Mega menu border-radius** — per-item border-radius now applies only to the two bottom corners of the panel, eliminating the visual gap between the nav bar and the panel top edge

= 3.0.0 =
* **Per-item mega menu appearance** — each mega menu now has its own independent 🎨 Appearance tab inside the editor modal with full control over: background (solid color, 12 gradient presets or a custom gradient builder with direction selector and two color pickers), padding top/bottom, padding left/right, column gap, border radius, font size, link color, heading color, accent/icon color, link hover color, description color, divider color and divider style (solid/dashed/dotted); settings are saved per item and generate scoped CSS so each mega menu panel renders with a completely independent look; a "↺ Reset to global defaults" button clears all overrides for that item
* **Redesigned Mega Menu admin panel** — the item list now shows clear ON/OFF status badges (green ⚡ ON / grey OFF) for each first-level nav item; items in OFF state show a dashed "＋ Enable Mega Menu" call-to-action button; items in ON state show the "⚡ Edit Columns ▶" primary button, a Full Width checkbox and a "✕ Disable" link; the editor modal adds 📋 Content and 🎨 Appearance tab buttons in the toolbar for switching between the column editor and the per-item style panel
* **Sidebar reorganisation** — ⚡ Mega Menu moved into the Structure group (alongside Menu Structure) since it configures what is in the menu, not how it looks; 🖼️ Logo moved into the Style group (below Colors) since it is a visual/brand setting; ✨ Themes added as a first-class sidebar entry at the top of the Style group for immediate discoverability
* **Themes panel accessible directly from sidebar** — clicking ✨ Themes in the sidebar now opens the theme grid immediately without requiring a form save first; `buildInlineThemeGrid()` is called both on DOMContentLoaded and on every navigation to the Themes section
* **Descriptive empty-menu state** — the builder sidebar empty state now shows a helpful message with a clickable link ("→ Go to Menu Structure") rather than just "Empty menu"
* **Live preview empty state** — the live preview also shows an informative message referencing Menu Structure when no items have been added

= 2.12.0 =
* New: Duplicate Column button in the mega menu editor — clone any column (including all its items) and insert it right after the original; disabled automatically when the 4-column maximum is reached.
* New: Column text alignment controls (L / C / R) in the mega menu editor — set per-column alignment for links and headings; stored as a column-level property and rendered via data-align CSS selectors.
* New: Mega menu divider color and style settings — choose a custom color for column dividers and headings border, and select between solid, dashed or dotted line styles.
* New: Mega menu open/close animation speed control — configure the panel transition duration (0–800 ms) from the Panel Appearance settings.

= 2.11.0 =
* New: Dedicated Mega Menu text styling, independent from the main Colors section — separate controls for heading, link, link hover and description colors, plus the existing panel background.
* New: Per-item heading and link color overrides in the mega menu editor (alongside the existing description color).
* Improved: All 12 mega menu preset templates now ship with professional, high-contrast color palettes tuned to each template's panel background, so they look polished out of the box regardless of the theme or main menu colors.
* Fix: Mega menu text no longer borrows colors from the main navigation; applying a preset now also applies its colors end-to-end.

= 2.10.0 =
* **WooCommerce integration** — adds a cart icon to the menu with a live item-count badge, an optional cart subtotal, and a mini-cart dropdown showing the current cart contents; the count, total and mini-cart refresh instantly when products are added, with no page reload, via WooCommerce's native add-to-cart fragments
* **Cart icon options** — choose between cart, bag or basket icons; place the cart on the left or right of the menu; customise the icon and count-badge colors; optionally hide the cart while it's empty
* **Mini-cart behavior** — open the dropdown on hover (with automatic tap-to-open on touch devices), on click, or disable it so the icon links straight to the cart page; closes on outside-click and Escape
* **Multi-instance & block safe** — every cart icon on the page (header, footer, multiple Gutenberg blocks) updates together; works in classic themes via the shortcode and in FSE themes via the giuliomax/menu block
* **Graceful fallback** — when WooCommerce is not installed the feature stays completely silent; the settings panel remains available and shows a notice
* **Import/Export parity** — the new cart settings are included in configuration export and restored on import

= 2.9.0 =
* **Native Gutenberg block (giuliomax/menu)** — adds a dynamic block registered via `register_block_type()` + `block.json`; the `render_callback` delegates entirely to the existing `menux_render_shortcode()` function so no HTML is duplicated; the shortcode, WP Menu Integration and all other existing features are completely unchanged
* **FSE / Site Editor support** — the block works in Full Site Editing themes (e.g. Twenty Twenty-Five): drag it into any header template part from the Site Editor; the `enqueue_block_editor_assets` hook ensures Font Awesome 6, the configured Google Font, and the dynamic theme CSS are loaded inside the editor's iframe; the mega-menu and hamburger JS initialise correctly in the template-preview iframe
* **InspectorControls sidebar** — a `SelectControl` in the block sidebar lets you pick the menu location (Primary, Footer, Sidebar, Mobile); live preview updates via `ServerSideRender` using the REST block-renderer endpoint
* **Multi-instance ID safety** — when two or more `giuliomax/menu` blocks appear on the same page, structural element IDs are automatically suffixed with a unique instance counter
* **No new build toolchain** — the editor script is plain vanilla JS registered directly via `wp_register_script()`; no `@wordpress/scripts`, Webpack or npm required

= 2.8.0 =
* **Sticky mirror** — new "Match main menu" toggle (on by default) makes the sticky bar inherit all styles from the main menu automatically; custom options shown when mirror is disabled
* **Container border-radius** — new field in Layout → Spacing to round the corners of the menu container
* **Page Load Animation** — renamed from "Entrance Animation" with improved UX; duration/delay/stagger controls hidden when "None" is selected
* **Logo in live preview** — the admin live preview now shows the configured logo at the correct position; updates immediately without a save
* **Mega Menu preset modal** — the template grid was clipped after the first row; the grid wrapper now scrolls independently so all 12 templates are reachable

= 2.7.0 =
* **Help & Documentation modal** — a full-screen contextual help overlay accessible from every section via the ❓ Help button; 12 sections covering every panel and field, navigable via a sidebar
* **Section persistence after save** — saving settings returns the admin to the same panel section the user was in rather than jumping to the top

= 2.6.5 =
* **Rock-solid search modal** — the open/close click handler now runs unconditionally at page load, independent of any JS configuration flag
* **Full deferred-script support** — the plugin JS now detects whether the DOM is already parsed when the script executes; if an optimisation plugin adds `defer`, the init runs immediately

= 2.6.2 =
* **Visual gradient picker for container background** — a fully mouse-driven widget: live preview strip, Linear / Radial type toggle, 8-direction compass rose, 0–360° fine-tune slider, two native colour pickers

= 2.6.0 =
* **Accordion menu builder** — collapsible per-item editor with clearly labelled sections; streamlined Add pane; polished drag-and-drop rows

= 2.5.0 =
* **Google Font picker** — searchable dropdown with 70+ fonts, lazy typeface preview, live update
* **Onboarding tutorial** — floating 🐝 bee mascot auto-starts on first visit and guides through 4 steps
* **Search bar** — moved to free tier; Menu tab + In-page search tab with full keyboard navigation

= 2.4.1 =
* **Accessibility master toggle** — all WCAG features disabled by default, activated with a single switch
* **Close button color config** — color pickers for the × close button in Fullscreen/Drawer modes

= 2.4.0 =
* Added complete **Accessibility** settings panel (WCAG 2.2 AA): keyboard navigation, focus ring, skip link, ARIA, touch targets, reduced motion, high-contrast, focus trap in mobile overlay

= 2.3.5 =
* Added **12 demo templates** for the Mega Menu editor — load a full column layout in one click

= 2.3.2 =
* Mega Menu: gradient background picker with 12 presets and custom gradient builder; font size, link color, heading color and accent/icon color controls; icon picker for all item types; drag & drop reordering

= 2.3.0 =
* Introduced **Mega Menu** — full-width column panels for first-level nav items (free); up to 4 columns, 5 item types, mobile support

= 2.2.0 =
* Added 20 preset themes, link border-radius, submenu styling, WP Menu Integration, full Reset button

= 2.1.1 =
* Initial release — builder, 4 mobile modes, sticky, scroll progress bar, entrance animations, import/export, multilingual

== Upgrade Notice ==

= 3.5.0 =
Adds CTA button styling per menu item and one-click import from WordPress native menus. Fixes mobile hamburger/close button theme interference, sticky mobile padding, mega menu event-listener accumulation, and close-button focus management. Recommended for all users.

= 3.4.0 =
Adds 30 new themes (50 total) with a chip-based category filter in the Themes panel — pick from Dark, Minimal, Vibrant, Creative, Corporate, Nature, Elegant, Retro, Glass and Playful styles. Recommended for all users.

= 3.3.2 =
Fixes a PHP fatal error caused by an unescaped apostrophe in the help modal, corrects the Announcement Bar width and flush alignment with the menu, and adds the missing help documentation for the Announcement panel. Recommended for all users.

= 3.3.1 =
Adds a countdown timer to the Announcement Bar; fixes stale mobile open-state after hamburger close, accordion sibling-collapse depth, and sticky spacer drift after late-loading Google Fonts. Recommended for all users.

= 3.3.0 =
New feature: Announcement Bar. Display a dismissible full-width promotional banner above or below your menu with custom colors, a link and configurable dismiss duration. Go to MenuX → Announcement to enable it.

= 3.2.1 =
New mobile accordion mode: enable "Close other submenus when one opens" in the Mobile panel for cleaner one-at-a-time navigation on small screens.

= 3.2.0 =
New feature: fully customizable dropdown indicator (triangle, chevron, dot or none) with color, size and open/close animation controls.

= 3.1.3 =
Sticky spacer height is now re-measured after Google Fonts load; duplicate HTML IDs when using multiple [menux] shortcodes on one page are fixed. Recommended for all users.

= 3.1.2 =
Security and reliability fixes: overlay/Escape handlers no longer duplicate when multiple menus are on the same page; search result rendering is now XSS-safe for page text and menu labels containing HTML characters. Recommended for all users.

= 3.1.1 =
Important fixes: Scroll Progress Bar and sticky shrink/transition settings now save correctly; mega menu shortcode columns (forms, embeds) render intact; mega panel overflow, staggered entrance, sticky spacer height and the per-item Appearance editor are all fixed. Recommended for all users.

= 3.1.0 =
Stability and compatibility release. Fixes mega menu z-index on all animated themes, Elementor overflow clipping, right-edge padding for cart/search icons, and bottom-only border-radius on mega panels. Recommended for all users.

= 3.0.0 =
Major release. Each mega menu now has its own independent Appearance tab — background, padding, colors and more — so you can style every mega menu differently. The admin panel is redesigned for clarity, the Themes section is directly accessible from the sidebar, and the WooCommerce cart integration continues to be completely free. Recommended for all users.

= 2.10.0 =
Adds WooCommerce integration: a cart icon with live item count, optional total and a mini-cart dropdown that updates without a page reload. Enable it under MenuX → WooCommerce. Fully optional and silent when WooCommerce is not installed.

= 2.9.0 =
Adds a native Gutenberg block (giuliomax/menu) for Full Site Editing themes. Drop it into any FSE template header or template part directly from the Site Editor.

= 2.8.0 =
Sticky menu now mirrors the main menu by default, logo visible in admin live preview, entrance animation preview fixed, and several layout improvements.

= 2.6.0 =
Major admin UI overhaul: collapsible accordion builder, streamlined Add pane, polished sortable rows.

= 2.5.0 =
New Google Font picker with live preview, onboarding tutorial, free search bar. Recommended for all users.

= 2.3.0 =
Major update: full Mega Menu system added for free. Supports up to 4 columns, 5 item types, gradient backgrounds, mobile handling and more.

= 2.2.0 =
Major update: 20 preset themes, submenu controls, WP integration, reset button and multiple bug fixes. Recommended for all users.

= 2.1.1 =
First public release.
