{# Reusable marketplace badge (Phase 9). One base style (.mk-badge) + a colour modifier per kind, so badge CSS is never duplicated across pages. Usage: {% from "components/badges.html" import mk_badge %} {{ mk_badge('trending') }} {{ mk_badge('featured', overlay=true) }} {# absolutely positioned on a card #} Supported kinds: trending, featured, new, popular, premium, reported, sold, reserved. #} {% macro mk_badge(kind, overlay=false, label=None) %} {%- set map = { 'trending': ('🔥', 'Trending', 'mk-badge-trending'), 'featured': ('⭐', 'Featured', 'mk-badge-featured'), 'new': ('🆕', 'New', 'mk-badge-new'), 'popular': ('❤️', 'Popular', 'mk-badge-popular'), 'premium': ('👑', 'Premium Seller', 'mk-badge-premium'), 'reported': ('🚩', 'Reported', 'mk-badge-reported'), 'sold': ('💰', 'Sold', 'mk-badge-sold'), 'reserved': ('📌', 'Reserved', 'mk-badge-reserved'), } -%} {%- set b = map.get(kind) -%} {%- if b -%} {{ label or b[1] }} {%- endif -%} {% endmacro %}