/* Decorative SVG masks inherit the selected native palette in both frontend and editor.
 * Native Group holds the icon; the adjacent editable text link supplies its name.
 * Theme assets do not require SVG upload permissions or inline SVG in post content. */
.buzz-category-icon {
  position: relative; display: block; flex: none; width: 100px; height: 100px;
  max-width: 100%; margin: 0 auto; border-radius: 50%;
  color: var(--wp--preset--color--primary);
  background: var(--wp--preset--color--surface);
}
.buzz-category-icon::before {
  content: ""; position: absolute; inset: 17%; background-color: currentColor;
  -webkit-mask: var(--buzz-category-mask) center / contain no-repeat;
  mask: var(--buzz-category-mask) center / contain no-repeat;
}
.buzz-category-icon::after {
  content: ""; position: absolute; width: 13%; height: 13%; bottom: 10%; right: 10%;
  border-radius: 50%; background: var(--wp--preset--color--accent);
}
/* Empty decorative Groups must not show WordPress's layout chooser or child
 * inserter. Keep the outer block selectable/reorderable and preserve its icon
 * pseudo-elements. Scope to our decorative wrapper; ordinary Groups are untouched. */
.editor-styles-wrapper .buzz-category-icon { min-height: 0; }
.editor-styles-wrapper .buzz-category-icon > .components-placeholder,
.editor-styles-wrapper .buzz-category-icon > .block-list-appender {
  display: none;
}
@media (max-width: 520px) { .buzz-category-icon { width: 92px; height: 92px; } }
@media (forced-colors: active) {
  .buzz-category-icon { color: CanvasText; background: Canvas; }
  .buzz-category-icon::before { background: CanvasText; }
  .buzz-category-icon::after { background: Highlight; }
}
.buzz-category-icon--food { --buzz-category-mask: url("../icons/categories/food.svg"); }
.buzz-category-icon--shopping { --buzz-category-mask: url("../icons/categories/shopping.svg"); }
.buzz-category-icon--events { --buzz-category-mask: url("../icons/categories/events.svg"); }
.buzz-category-icon--explore { --buzz-category-mask: url("../icons/categories/explore.svg"); }
.buzz-category-icon--family { --buzz-category-mask: url("../icons/categories/family.svg"); }
.buzz-category-icon--new-here { --buzz-category-mask: url("../icons/categories/new-here.svg"); }
.buzz-category-icon--music { --buzz-category-mask: url("../icons/categories/music.svg"); }
.buzz-category-icon--arts { --buzz-category-mask: url("../icons/categories/arts.svg"); }
.buzz-category-icon--outdoors { --buzz-category-mask: url("../icons/categories/outdoors.svg"); }
.buzz-category-icon--community { --buzz-category-mask: url("../icons/categories/community.svg"); }
.buzz-category-icon--drinks { --buzz-category-mask: url("../icons/categories/drinks.svg"); }
