/* Genre profiles and the directory share the discovery palette, card and motion language (tagsmod-discovery.css). */
.zbui.tagsmod-genre { min-height: 65vh; }
.tagsmod-genre *, .tagsmod-genre *::before, .tagsmod-genre *::after { box-sizing: border-box; }
.tagsmod-genre [hidden] { display: none !important; }
.tagsmod-genre :is(a,button,input,select,summary) { font: inherit; }
.tagsmod-genre a { color: inherit; text-decoration: none; }
.tagsmod-genre button, .tagsmod-genre summary, .tagsmod-genre select { cursor: pointer; }
.tagsmod-genre :is(a,button,input,select,summary,[tabindex]):focus-visible { outline: 2px solid var(--tagsmod-accent); outline-offset: 4px; }
.tagsmod-genre .tagsmod-ico { width: 18px; height: 18px; flex-shrink: 0; }
.tagsmod-genre-breadcrumb { position: relative; display: flex; align-items: center; min-height: 60px; margin-bottom: 0; font-size: 13px; }
.tagsmod-genre-breadcrumb a:hover { color: var(--tagsmod-accent-text); }
.tagsmod-genre-eyebrow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 14px; color: var(--tagsmod-accent-text); font-size: 12.5px; font-weight: 600; }
.tagsmod-genre-eyebrow > span { display: inline-flex; align-items: center; gap: 6px; }
.tagsmod-genre .tagsmod-genre-eyebrow .tagsmod-ico { width: 14px; height: 14px; }
.tagsmod-genre-eyebrow .tagsmod-genre-category { padding-left: 10px; border-left: 1px solid var(--zb-border); color: var(--zb-text-muted); font-weight: 500; }

/* Topic hero: the newest cover, blurred, tints the band; a fanned hand of covers sits opposite the profile. */
.tagsmod-genre-hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--zb-border); background: radial-gradient(60% 120% at 82% 40%, var(--zb-primary-soft), transparent 70%), var(--zb-surface); isolation: isolate; }
.tagsmod-genre-backdrop { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.tagsmod-genre-backdrop img { display: block; width: 100%; height: 100%; object-fit: cover; filter: blur(60px) saturate(1.5); opacity: .26; transform: scale(1.25); }
.tagsmod-genre-backdrop::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, var(--zb-surface) 18%, transparent 70%), linear-gradient(180deg, transparent 55%, var(--zb-surface)); }
.tagsmod-genre-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 500px); align-items: center; gap: 56px; padding: 8px 0 48px; }
.tagsmod-genre-hero-grid--plain { grid-template-columns: minmax(0, 760px); }
.tagsmod-genre-intro { min-width: 0; animation: tagsmod-genre-enter var(--zb-duration-slow) var(--zb-ease-out) backwards; }
.tagsmod-genre-intro h1 { font-size: clamp(34px, 4vw, 52px); font-weight: 750; line-height: 1.15; letter-spacing: -.02em; overflow-wrap: anywhere; }
.tagsmod-genre .tagsmod-genre-official { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin-top: 12px; color: var(--zb-text-muted); font-size: 13px; }
.tagsmod-genre-official span { color: var(--zb-text-soft); font-size: 14px; font-weight: 600; }
.tagsmod-genre-aliases { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 16px; }
.tagsmod-genre .tagsmod-genre-alias { min-height: 30px; max-width: 100%; padding: 0 12px; color: var(--zb-text-soft); font-size: 12.5px; overflow-wrap: anywhere; }
.tagsmod-genre-alias small { margin-left: 6px; color: var(--zb-text-subtle); font-size: 11px; }
.tagsmod-genre-description, .tagsmod-genre .tagsmod-genre-lede { max-width: 62ch; margin-top: 20px; color: var(--zb-text-soft); font-size: 14.5px; line-height: 1.85; overflow-wrap: anywhere; }
.tagsmod-genre-description :is(p,ul,ol) { margin: 0 0 8px; }
.tagsmod-genre-description > :last-child { margin-bottom: 0; }
.tagsmod-genre-description a { color: var(--zb-link); text-decoration: underline; }
.tagsmod-genre-description img { max-width: 100%; height: auto; }
.tagsmod-genre-description.is-collapsed { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.tagsmod-genre-text-button { display: inline-flex; align-items: center; min-height: 40px; padding: 0; border: 0; background: transparent; color: var(--tagsmod-accent-text); font-size: 13px !important; font-weight: 600; }
.tagsmod-genre .tagsmod-genre-stats { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.tagsmod-genre-stat { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 0 16px; border: 1px solid var(--zb-border); border-radius: var(--zb-radius-pill); background: var(--zb-surface); box-shadow: var(--zb-shadow-card); color: var(--zb-text-soft); font-size: 13px; }
.tagsmod-genre .tagsmod-genre-stat .tagsmod-ico { width: 16px; height: 16px; color: var(--tagsmod-accent-text); }
.tagsmod-genre-stat strong { color: var(--zb-text); font-size: 15px; font-weight: 700; font-variant-numeric: tabular-nums; }
.tagsmod-genre-links { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 18px; }
.tagsmod-genre-links-label { margin-right: 4px; color: var(--zb-text-muted); font-size: 12px; }
.tagsmod-genre .tagsmod-genre-external { display: inline-flex; align-items: center; gap: 8px; min-height: 34px; max-width: 100%; padding: 0 14px; border: 1px solid var(--zb-primary-soft-border); border-radius: var(--zb-radius-pill); background: var(--zb-primary-soft); color: var(--zb-primary-soft-text); font-size: 13px; font-weight: 500; transition: border-color var(--zb-duration-fast) var(--zb-ease), transform var(--zb-duration-fast) var(--zb-ease); }
.tagsmod-genre-external > span:first-child { overflow-wrap: anywhere; }
.tagsmod-genre .tagsmod-genre-external .tagsmod-ico { width: 14px; height: 14px; }
.tagsmod-genre .tagsmod-genre-external:hover { border-color: var(--zb-primary-soft-border-strong); transform: translateY(-1px); }
.tagsmod-genre-disclosure { max-width: 100%; }
.tagsmod-genre-disclosure summary { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 6px; color: var(--zb-text-muted); font-size: 12.5px; list-style: none; }
.tagsmod-genre-disclosure summary::-webkit-details-marker { display: none; }
.tagsmod-genre .tagsmod-genre-disclosure summary .tagsmod-ico { width: 14px; height: 14px; transition: transform var(--zb-duration-base) var(--zb-ease); }
.tagsmod-genre-disclosure[open] summary .tagsmod-ico { transform: rotate(180deg); }
.tagsmod-genre-disclosure[open] > div { animation: tagsmod-genre-enter var(--zb-duration-base) var(--zb-ease-out); }
.tagsmod-genre-alias-more[open], .tagsmod-genre-links-more[open] { flex-basis: 100%; }
.tagsmod-genre-alias-more > div, .tagsmod-genre-links-more > div { display: flex; flex-wrap: wrap; gap: 8px; padding: 4px 0; }
.tagsmod-genre .tagsmod-genre-notice { margin-top: 16px; color: var(--zb-text-muted); font-size: 13px; }
/* A hand of covers fanned around a point below the cards; the pointed card rises to the front. */
.tagsmod-genre-fan { position: relative; height: clamp(250px, 25vw, 320px); min-width: 0; }
.tagsmod-genre-fan-card { --angle: 0deg; position: absolute; top: 14%; left: 50%; display: block; width: 46%; aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--zb-radius-xl); background: var(--zb-surface-sunken); box-shadow: 0 24px 44px -24px rgb(15 23 42 / 60%), var(--tagsmod-cover-ring); transform: translateX(-50%) rotate(var(--angle)); transform-origin: 50% 260%; transition: transform 560ms var(--zb-ease-spring), box-shadow var(--zb-duration-slow) var(--zb-ease-out); animation: tagsmod-genre-deal 700ms var(--zb-ease-out) backwards; animation-delay: calc(var(--i, 0) * 70ms + 120ms); }
.tagsmod-genre-fan-card img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.tagsmod-genre-poster-empty { position: absolute; inset: 0; display: grid; place-items: center; background: var(--zb-primary-soft); color: var(--tagsmod-accent-text); }
.tagsmod-genre .tagsmod-genre-poster-empty .tagsmod-ico { width: 34px; height: 34px; opacity: .6; }
.tagsmod-genre-fan-title { position: absolute; right: 0; bottom: 0; left: 0; padding: 28px 12px 10px; background: linear-gradient(transparent, rgb(8 10 15 / 78%)); color: #fff; font-size: 12.5px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; opacity: 0; transform: translateY(6px); transition: opacity var(--zb-duration-base) var(--zb-ease), transform var(--zb-duration-base) var(--zb-ease-out); }
.tagsmod-genre-fan[data-fan-count="1"] .tagsmod-genre-fan-card { --angle: -3deg; width: 62%; }
.tagsmod-genre-fan[data-fan-count="2"] .tagsmod-genre-fan-card:nth-child(1) { --angle: -7deg; z-index: 2; }
.tagsmod-genre-fan[data-fan-count="2"] .tagsmod-genre-fan-card:nth-child(2) { --angle: 7deg; z-index: 1; }
.tagsmod-genre-fan[data-fan-count="3"] .tagsmod-genre-fan-card:nth-child(1) { --angle: 0deg; z-index: 3; }
.tagsmod-genre-fan[data-fan-count="3"] .tagsmod-genre-fan-card:nth-child(2) { --angle: -13deg; z-index: 2; }
.tagsmod-genre-fan[data-fan-count="3"] .tagsmod-genre-fan-card:nth-child(3) { --angle: 13deg; z-index: 1; }
.tagsmod-genre-fan[data-fan-count="4"] .tagsmod-genre-fan-card:nth-child(1) { --angle: -5deg; z-index: 4; }
.tagsmod-genre-fan[data-fan-count="4"] .tagsmod-genre-fan-card:nth-child(2) { --angle: 5deg; z-index: 3; }
.tagsmod-genre-fan[data-fan-count="4"] .tagsmod-genre-fan-card:nth-child(3) { --angle: -16deg; z-index: 2; }
.tagsmod-genre-fan[data-fan-count="4"] .tagsmod-genre-fan-card:nth-child(4) { --angle: 16deg; z-index: 1; }
.tagsmod-genre-fan-card:is(:hover, :focus-visible) { z-index: 6 !important; transform: translateX(-50%) rotate(var(--angle)) translateY(-18px) scale(1.04); box-shadow: 0 30px 50px -24px rgb(15 23 42 / 70%), var(--tagsmod-cover-ring); }
.tagsmod-genre-fan-card:is(:hover, :focus-visible) .tagsmod-genre-fan-title { opacity: 1; transform: none; }
@keyframes tagsmod-genre-deal { from { opacity: 0; transform: translateX(-50%) translateY(30px) rotate(0deg); } }

/* Collection: content tabs and search on one line above a quiet heading and the grid. */
.tagsmod-genre-body { padding-top: 28px; padding-bottom: 72px; }
.tagsmod-genre-results { margin: 0; padding: 0; }
.tagsmod-genre-controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 24px; padding-bottom: 20px; border-bottom: 1px solid var(--zb-border); }
.tagsmod-genre .tagsmod-genre-tabs .tagsmod-seg-item { min-height: 40px; padding-inline: 16px; font-size: 14px; }
.tagsmod-genre-toolbar { display: flex; flex: 1 1 460px; align-items: center; justify-content: flex-end; gap: 12px; min-width: 0; }
.tagsmod-genre-search, .tagsmod-genre-select { display: flex; align-items: center; min-width: 0; min-height: 44px; border: 1px solid var(--zb-field-border); border-radius: var(--zb-radius-lg); background: var(--zb-field); box-shadow: var(--zb-field-shadow, none); transition: border-color var(--zb-duration-fast) var(--zb-ease), box-shadow var(--zb-duration-fast) var(--zb-ease); }
.tagsmod-genre-search:hover, .tagsmod-genre-select:hover { border-color: var(--zb-primary-soft-border-strong); }
.tagsmod-genre-search:focus-within, .tagsmod-genre-select:focus-within { border-color: var(--tagsmod-accent); box-shadow: var(--zb-focus-ring); }
.tagsmod-genre-search { flex: 1 1 280px; gap: 10px; max-width: 440px; padding: 3px 3px 3px 14px; }
.tagsmod-genre .tagsmod-genre-search > .tagsmod-ico { width: 16px; height: 16px; color: var(--zb-text-muted); }
.tagsmod-genre-search input { flex: 1; width: 100%; min-width: 0; height: 36px; margin: 0; padding: 0; border: 0; background: transparent; color: var(--zb-text); font-size: 14px; line-height: 1.5; outline: none; box-shadow: none; }
.tagsmod-genre-search input::placeholder { color: var(--zb-text-subtle); opacity: 1; }
.tagsmod-genre .tagsmod-genre-search input:focus-visible, .tagsmod-genre .tagsmod-genre-select select:focus-visible { outline: none; }
.tagsmod-genre-search button, .tagsmod-genre-action { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; min-height: 36px; padding: 0 16px; border: 0; border-radius: var(--zb-radius-md); background: var(--zb-primary); color: var(--zb-on-primary) !important; font-size: 13.5px; font-weight: 600; white-space: nowrap; transition: background-color var(--zb-duration-fast) var(--zb-ease); }
.tagsmod-genre-action { min-height: 44px; padding: 0 20px; box-shadow: var(--zb-shadow-action); }
.tagsmod-genre-search button:hover, .tagsmod-genre-action:hover { background: var(--zb-primary-hover); }
.tagsmod-genre-select { position: relative; flex-shrink: 0; padding-left: 14px; font-size: 13.5px; }
.tagsmod-genre-select label { flex-shrink: 0; margin: 0; padding-right: 10px; border-right: 1px solid var(--zb-border); color: var(--zb-text-muted); font-size: 13px; line-height: 1.4; cursor: pointer; }
.tagsmod-genre-select select { flex: 1; width: 100%; min-width: 0; min-height: 42px; margin: 0; padding: 0 36px 0 10px; border: 0; border-radius: 0 var(--zb-radius-lg) var(--zb-radius-lg) 0; appearance: none; background: transparent; color: var(--zb-text); font-size: 13.5px; line-height: 1.5; box-shadow: none; color-scheme: light; }
.tagsmod-genre-select select option { color: var(--zb-text); background: var(--zb-field); }
[data-bs-theme="dark"] .tagsmod-genre-select select { color-scheme: dark; }
.tagsmod-genre .tagsmod-genre-select > .tagsmod-ico { position: absolute; top: 50%; right: 12px; width: 15px; height: 15px; color: var(--zb-text-muted); transform: translateY(-50%); pointer-events: none; }
.tagsmod-genre-sort-apply { flex-shrink: 0; min-height: 44px; padding: 0 16px; border: 1px solid var(--zb-field-border); border-radius: var(--zb-radius-lg); background: var(--zb-field); color: var(--zb-text); font-size: 13.5px; transition: background-color var(--zb-duration-fast) var(--zb-ease); }
.tagsmod-genre-sort-apply:hover { background: var(--zb-muted); }
.tagsmod-genre.is-enhanced .tagsmod-genre-sort-apply { display: none; }
.tagsmod-genre-result-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; min-height: 32px; margin: 22px 0 18px; }
.tagsmod-genre .tagsmod-genre-result-heading h2 { font-size: 15px; font-weight: 650; line-height: 1.6; overflow-wrap: anywhere; scroll-margin-top: 112px; }
.tagsmod-genre-result-heading h2 > span { color: var(--zb-text-muted); font-size: 13px; font-weight: 400; }
.tagsmod-genre .tagsmod-genre-clear { display: inline-flex; align-items: center; gap: 4px; min-height: 36px; padding: 0 10px; border-radius: var(--zb-radius-pill); color: var(--tagsmod-accent-text); font-size: 12.5px; }
.tagsmod-genre .tagsmod-genre-clear:hover { background: var(--zb-primary-soft); }
.tagsmod-genre .tagsmod-genre-clear .tagsmod-ico { width: 14px; height: 14px; }
.tagsmod-genre-loading { display: none; margin-left: auto; color: var(--tagsmod-accent-text); }
.tagsmod-genre.is-loading .tagsmod-genre-loading { display: inline-flex; animation: tagsmod-genre-spin var(--zb-duration-spinner, 850ms) linear infinite; }
.tagsmod-genre-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 20px; transition: opacity var(--zb-duration-base) var(--zb-ease); }
.tagsmod-genre-grid--articles { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 24px; }
.tagsmod-genre.is-loading :is(.tagsmod-genre-grid, .tagsmod-genres-grid) { opacity: .5; }
.tagsmod-genre-article { position: relative; min-width: 0; }
.tagsmod-genre-article-cover { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; border-radius: var(--zb-radius-lg); background: var(--zb-surface-sunken); box-shadow: var(--zb-shadow-card); transition: transform var(--zb-duration-slow) var(--zb-ease-out), box-shadow var(--zb-duration-slow) var(--zb-ease-out); }
.tagsmod-genre-article-cover::after { content: ''; position: absolute; inset: 0; border-radius: inherit; box-shadow: var(--tagsmod-cover-ring); pointer-events: none; }
.tagsmod-genre-article-cover img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 600ms var(--zb-ease-out); }
.tagsmod-genre .tagsmod-genre-article-name { margin-top: 12px; font-size: 15px; font-weight: 600; line-height: 1.5; }
.tagsmod-genre-article-name a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; transition: color var(--zb-duration-fast) var(--zb-ease); }
.tagsmod-genre .tagsmod-genre-excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; margin-top: 6px; overflow: hidden; color: var(--zb-text-soft); font-size: 13px; line-height: 1.75; }
.tagsmod-genre .tagsmod-genre-date { margin-top: 6px; color: var(--zb-text-muted); font-size: 12.5px; font-variant-numeric: tabular-nums; }
.tagsmod-genre-empty { display: flex; flex-direction: column; align-items: center; padding: 56px 24px; border: 1px dashed var(--zb-border); border-radius: var(--zb-radius-2xl); background: var(--zb-surface-sunken); text-align: center; }
.tagsmod-genre-empty-icon { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 18px; border-radius: var(--zb-radius-xl); background: var(--zb-primary-soft); color: var(--tagsmod-accent-text); }
.tagsmod-genre .tagsmod-genre-empty-icon .tagsmod-ico { width: 26px; height: 26px; }
.tagsmod-genre-empty h3 { font-size: 18px; font-weight: 650; }
.tagsmod-genre .tagsmod-genre-empty p { margin-top: 10px; color: var(--zb-text-muted); font-size: 14px; line-height: 1.8; }
.tagsmod-genre-empty .tagsmod-genre-action { margin-top: 22px; }
.tagsmod-genre-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin-top: 44px; }
.tagsmod-genre-pagination a { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; min-height: 40px; padding: 0 6px; border: 1px solid var(--zb-border); border-radius: var(--zb-radius-md); background: var(--zb-surface); color: var(--zb-text-soft); font-size: 13.5px; font-variant-numeric: tabular-nums; transition: background-color var(--zb-duration-fast) var(--zb-ease), border-color var(--zb-duration-fast) var(--zb-ease), color var(--zb-duration-fast) var(--zb-ease); }
.tagsmod-genre .tagsmod-genre-pagination a:hover { border-color: var(--zb-primary-soft-border-strong); color: var(--tagsmod-accent-text); }
.tagsmod-genre .tagsmod-genre-pagination a[aria-current="page"] { border-color: var(--zb-primary); background: var(--zb-primary); color: var(--zb-on-primary); box-shadow: var(--zb-shadow-action); }
.tagsmod-genre-pagination .tagsmod-ico { width: 16px; height: 16px; }
.tagsmod-genre-ellipsis { color: var(--zb-text-muted); }
.tagsmod-genre-results.is-arriving :is(.tagsmod-genre-grid, .tagsmod-genres-grid, .tagsmod-genre-empty) { animation: tagsmod-genre-enter var(--zb-duration-slow) var(--zb-ease-out); }
@keyframes tagsmod-genre-enter { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes tagsmod-genre-spin { to { transform: rotate(360deg); } }
@media (hover: hover) and (pointer: fine) {
    .tagsmod-genre-article:hover .tagsmod-genre-article-cover { transform: translateY(-4px); box-shadow: var(--tagsmod-lift-shadow); }
    .tagsmod-genre-article:hover .tagsmod-genre-article-cover img { transform: scale(1.05); }
    .tagsmod-genre-article:hover .tagsmod-genre-article-name a { color: var(--tagsmod-accent-text); }
}
@media (max-width: 1099.98px) {
    .tagsmod-genre-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 400px); gap: 32px; }
    .tagsmod-genre-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .tagsmod-genre-grid--articles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
    .tagsmod-genre-breadcrumb { min-height: 52px; }
    .tagsmod-genre-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 4px 0 32px; }
    .tagsmod-genre-intro h1 { font-size: clamp(30px, 8vw, 40px); }
    .tagsmod-genre-description, .tagsmod-genre .tagsmod-genre-lede { margin-top: 14px; font-size: 14px; }
    .tagsmod-genre .tagsmod-genre-stats { margin-top: 16px; }
    .tagsmod-genre-fan { height: 190px; margin-top: 8px; }
    .tagsmod-genre-fan-card { top: 10%; width: 50%; }
    .tagsmod-genre-fan-title { display: none; }
    .tagsmod-genre-body { padding-top: 20px; padding-bottom: 48px; }
    .tagsmod-genre-controls { gap: 12px; padding-bottom: 16px; }
    .tagsmod-genre-tabs { width: 100%; }
    .tagsmod-genre-toolbar { flex-basis: 100%; flex-wrap: wrap; }
    .tagsmod-genre-search { flex-basis: 100%; max-width: none; }
    .tagsmod-genre-sort { flex: 1; }
    .tagsmod-genre-search input, .tagsmod-genre-select select { font-size: 16px; }
    .tagsmod-genre-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 12px; }
    .tagsmod-genre-grid--articles { grid-template-columns: minmax(0, 1fr); }
    .tagsmod-genre-pagination { gap: 6px; margin-top: 32px; }
    .tagsmod-genre-empty { padding: 40px 16px; }
}
@media (max-width: 359.98px) {
    .tagsmod-genre-grid { grid-template-columns: minmax(0, 1fr); }
    .tagsmod-genre-links-label { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    .tagsmod-genre *, .tagsmod-genre *::before, .tagsmod-genre *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
    .tagsmod-genre-fan-card:is(:hover, :focus-visible) { transform: translateX(-50%) rotate(var(--angle)); }
    .tagsmod-genre-article:hover .tagsmod-genre-article-cover, .tagsmod-genre-article:hover .tagsmod-genre-article-cover img, .tagsmod-genre .tagsmod-genre-external:hover { transform: none; }
}
@media (forced-colors: active) {
    .tagsmod-genre-search:focus-within, .tagsmod-genre-select:focus-within { outline: 2px solid Highlight; outline-offset: 2px; }
    .tagsmod-genre-fan-title { background: Canvas; color: CanvasText; }
    .tagsmod-genre-pagination a[aria-current="page"] { outline: 2px solid Highlight; }
}
