/* Optional section UF images: both states occupy the same fixed space. */
.category-icon {
    display: inline-block;
    position: relative;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    margin-right: 8px;
    vertical-align: middle;
    line-height: 0;
}
.category-icon--header { width: 32px; height: 32px; flex-basis: 32px; }
.category-icon--breadcrumb { width: 18px; height: 18px; flex-basis: 18px; margin-right: 6px; }
.category-icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.category-icon__active { position: absolute; inset: 0; opacity: 0; }
a:hover > .category-icon--paired > .category-icon__normal,
a:focus-visible > .category-icon--paired > .category-icon__normal,
.b-category-left-list a.active > .category-icon--paired > .category-icon__normal,
.category-icon--current.category-icon--paired > .category-icon__normal { opacity: 0; }
a:hover > .category-icon--paired > .category-icon__active,
a:focus-visible > .category-icon--paired > .category-icon__active,
.b-category-left-list a.active > .category-icon--paired > .category-icon__active,
.category-icon--current.category-icon--paired > .category-icon__active { opacity: 1; }
.b-header-categories a:focus-visible,
.b-category-left-list a:focus-visible,
.b-breadcrumbs a:focus-visible { outline: 2px solid #FF345F; outline-offset: 2px; }

/* Keep wrapped sidebar names beside the fixed icon column. Text-only links retain their layout. */
.b-category-left-list a.category-link--with-icon { display: flex; align-items: flex-start; }
.b-category-left-list .category-link__name { min-width: 0; overflow-wrap: anywhere; }
