/* Le catalogue : catégories, origines et filiation des dépôts. */
.go-eyebrow { display: block; margin-bottom: .35rem; color: var(--ht-primary); font-size: .67rem; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
.go-catalog-head { align-items: center; margin-bottom: 1.4rem; }
.go-catalog-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.go-catalog-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .9rem; margin-bottom: 1.5rem; }
.go-catalog-stat { position: relative; display: flex; gap: .8rem; padding: 1.1rem; border: 1px solid var(--ht-border-color); border-radius: .7rem; background: var(--ht-card-bg); color: var(--ht-heading-color); text-decoration: none; }
.go-catalog-stat > span:last-child { display: flex; flex-direction: column; min-width: 0; }
.go-catalog-stat b { font-size: 1.85rem; line-height: 1.1; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.go-catalog-stat span span { margin-top: .3rem; font-size: .82rem; font-weight: 700; }
.go-catalog-stat small { margin-top: .35rem; color: var(--ht-gray-600); font-size: .7rem; line-height: 1.45; }
.go-stat-icon { width: 2rem; height: 2rem; display: grid; place-items: center; flex: none; border: 1px solid rgba(var(--ht-primary-rgb), .2); background: rgba(var(--ht-primary-rgb), .06); color: var(--ht-primary); border-radius: .45rem; }
.go-catalog-stat.active { border-color: var(--ht-primary); background: color-mix(in srgb, var(--ht-primary) 5%, var(--ht-card-bg)); }
.go-catalog-toolbar { margin-bottom: 1rem; }
.go-catalog-tabs { display: flex; gap: 1.2rem; overflow-x: auto; border-bottom: 1px solid var(--ht-border-color); margin-bottom: 1rem; }
.go-catalog-tabs a { display: inline-flex; align-items: center; gap: .4rem; padding: .7rem .05rem; color: var(--ht-gray-600); font-size: .8rem; font-weight: 600; white-space: nowrap; text-decoration: none; border-bottom: 2px solid transparent; }
.go-catalog-tabs a[aria-current="page"] { color: var(--ht-primary); border-color: var(--ht-primary); }
.go-catalog-tabs a span, .go-group-count { padding: .1rem .4rem; border-radius: .3rem; background: rgba(var(--ht-primary-rgb), .07); font-size: .68rem; color: var(--ht-primary); font-variant-numeric: tabular-nums; }
.go-catalog-filters { display: flex; gap: .6rem; flex-wrap: wrap; }
.go-catalog-filters > label { margin: 0; }
.go-catalog-search { display: flex; gap: .55rem; align-items: center; flex: 1 1 16rem; padding: .4rem .7rem; border: 1px solid var(--ht-border-color); border-radius: .4rem; background: var(--ht-card-bg); }
.go-catalog-search .go-ic { color: var(--ht-gray-600); flex: none; }
.go-catalog-search input { border: 0; background: none; outline: none; width: 100%; min-width: 0; font-size: .8rem; color: var(--ht-heading-color); }
.go-catalog-search:focus-within { outline: 2px solid rgba(var(--ht-primary-rgb), .4); outline-offset: 1px; }
.go-catalog-filters .form-select { height: 100%; max-width: 16rem; }
.go-catalog-results { display: flex; gap: .5rem; justify-content: space-between; margin: 1.1rem 0 .8rem; color: var(--ht-gray-600); font-size: .76rem; }
.go-catalog-section { display: flex; align-items: center; gap: .5rem; margin: 1.45rem 0 .65rem; font-size: .9rem; font-weight: 700; }
.go-catalog-section .go-ic { color: var(--ht-primary); }
.go-repo-group { margin-bottom: .9rem; border: 1px solid var(--ht-border-color); border-radius: .7rem; overflow: hidden; background: var(--ht-card-bg); }
.go-repo-group > summary { display: flex; gap: .7rem; align-items: center; list-style: none; cursor: pointer; padding: .85rem 1rem; background: rgba(var(--ht-primary-rgb), .025); }
.go-repo-group > summary::-webkit-details-marker { display: none; }
.go-repo-group > summary > span:nth-child(2) { display: flex; flex-direction: column; min-width: 0; }
.go-repo-group > summary b { font-size: .82rem; overflow-wrap: anywhere; }
.go-repo-group > summary small { font-size: .68rem; color: var(--ht-gray-600); margin-top: .15rem; }
.go-group-mark { display: grid; place-items: center; width: 1.8rem; height: 1.8rem; color: var(--ht-primary); }
.go-group-count { margin-left: auto; }
.go-group-chevron { color: var(--ht-gray-600); font-size: 1rem; }
.go-repo-group:not([open]) .go-group-chevron { transform: rotate(-90deg); }
.go-group-list .go-catalog-repo { margin: 0; border: 0; border-top: 1px solid var(--ht-border-color); border-radius: 0; padding: 1rem; gap: .85rem; }
.go-group-list .go-catalog-repo:hover { transform: none; }
.go-repo-title { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem; }
.go-repo-title > b { font-size: .95rem; overflow-wrap: anywhere; }
.go-kind-badge { display: inline-flex; padding: .12rem .38rem; border: 1px solid var(--ht-border-color); border-radius: .3rem; color: var(--ht-gray-600); font-size: .62rem; font-weight: 600; white-space: nowrap; }
.go-kind-badge.imports { color: var(--ht-info); border-color: rgba(var(--ht-info-rgb), .3); background: rgba(var(--ht-info-rgb), .04); }
.go-kind-badge.forks { color: var(--ht-primary); border-color: rgba(var(--ht-primary-rgb), .3); background: rgba(var(--ht-primary-rgb), .04); }
.go-origin-line { display: flex; align-items: center; gap: .3rem; margin: .3rem 0 .15rem; color: var(--ht-primary); font-family: var(--go-mono); font-size: .7rem; overflow-wrap: anywhere; }
.go-origin-line .go-ic { width: .8rem; height: .8rem; flex: none; }
.go-repo-local-owner { font-size: .64rem; color: var(--ht-gray-600); margin-top: .3rem; }
.go-catalog-repo .go-reporight { gap: .4rem; min-width: 12rem; }
.go-catalog-repo .go-reporight > small { color: var(--ht-gray-600); font-size: .65rem; }
.go-source-state { display: inline-flex; gap: .3rem; align-items: center; color: var(--ht-primary); font-size: .69rem; }
.go-source-state .go-ic { width: .85rem; height: .85rem; }
.go-source-state.warning { color: var(--ht-warning-text-emphasis, var(--ht-warning)); }
.go-source-state.paused { color: var(--ht-gray-600); }
.go-catalog-empty { border: 1px dashed var(--ht-border-color); border-radius: .7rem; background: var(--ht-card-bg); padding: 3rem 1rem; }
.go-catalog-empty h3 { font-size: 1.05rem; margin: .8rem 0 .4rem; }
.go-activity-page { max-width: 64rem; }
.go-catalog-stat:focus-visible, .go-repo-group > summary:focus-visible, .go-catalog-tabs a:focus-visible, .go-catalog-repo:focus-visible { outline: 2px solid var(--ht-primary); outline-offset: 3px; }
:root[data-ht-style="hud"] :is(.go-catalog-stat, .go-repo-group, .go-kind-badge, .go-stat-icon, .go-catalog-search, .go-catalog-empty) { border-radius: 0; }
:root[data-ht-style="hud"] .go-catalog-section { font-family: var(--hud-font); text-transform: uppercase; letter-spacing: .1em; font-size: .75rem; }
:root[data-ht-style="hud"] .go-catalog-stat::before { content: ""; position: absolute; pointer-events: none; inset: -1px; background: linear-gradient(var(--ht-primary), var(--ht-primary)) left top / 9px 2px no-repeat, linear-gradient(var(--ht-primary), var(--ht-primary)) left top / 2px 9px no-repeat, linear-gradient(var(--ht-primary), var(--ht-primary)) right bottom / 9px 2px no-repeat, linear-gradient(var(--ht-primary), var(--ht-primary)) right bottom / 2px 9px no-repeat; opacity: .65; }
@media (max-width: 1100px) { .go-catalog-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 650px) {
  .go-catalog-head { align-items: flex-start; }
  .go-catalog-stat { padding: .8rem; gap: .6rem; }
  .go-catalog-stat small { display: none; }
  .go-catalog-stat b { font-size: 1.55rem; }
  .go-catalog-stat span span { font-size: .73rem; }
  .go-catalog-filters > label:not(.go-catalog-search) { flex: 1 1 40%; min-width: 0; }
  .go-catalog-filters .form-select { max-width: 100%; width: 100%; }
  .go-catalog-repo { flex-wrap: wrap; }
  .go-catalog-repo .go-repomid { flex-basis: calc(100% - 4rem); }
  .go-catalog-repo .go-reporight { margin-left: 3.2rem; min-width: 0; width: calc(100% - 3.2rem); align-items: flex-start; flex-direction: row; flex-wrap: wrap; text-align: left; }
  .go-catalog-repo .go-reporight > small { flex-basis: 100%; }
}
