/* ==========================================================================
   POPTHÈQUE — styles des collections de jeux (charte v2).
   La charte vient du thème commun ; uniquement ses variables, aucune couleur
   en dur. Documentation interne : Readme-theme.txt
   ========================================================================== */

/* Statuts d'un jeu, déclinés des pastilles du thème */
.status-owned { color: var(--ok); background: var(--ok-soft); }
.status-lent { color: var(--accent-text); background: var(--accent-soft); }
.status-wishlist { color: var(--text-muted); background: var(--surface-2); border-color: var(--border); }

/* Grille de la collection */
.item-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 20px; }
.item-card {
  position: relative; display: flex; flex-direction: column; text-decoration: none; color: inherit;
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg);
  padding: 12px 12px 16px; box-shadow: var(--shadow-sm);
  transition: transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
}
a.item-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-lg); border-color: var(--border-strong); }
.item-card h3 { font-size: 16px; letter-spacing: -0.01em; margin: 4px 4px 10px; }
.item-card .status-chip { margin: 0 4px; align-self: flex-start; }
.item-cover { display: block; width: 100%; height: 160px; object-fit: cover; margin-bottom: 12px;
  border-radius: var(--r); background: var(--surface-2); }
.item-cover-empty {
  background:
    radial-gradient(60% 80% at 80% 10%, var(--accent-soft), transparent 70%),
    linear-gradient(135deg, var(--surface-2), var(--bg));
}

/* Lien de partage */
.share-box { font-family: var(--font-mono); font-size: 13px; color: var(--text-soft); word-break: break-all;
  margin: 0 0 14px; padding: 10px 12px; background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--r-sm); }

/* Résultats de recherche BoardGameGeek */
.search-result { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--border); }
.search-result:last-child { border-bottom: none; }

/* Fiche d'un jeu */
.detail-title { margin-top: 16px; }
.game-sheet { display: flex; gap: 24px; flex-wrap: wrap; }
.game-sheet-cover { width: 168px; height: 168px; object-fit: cover; border-radius: var(--r); border: 1px solid var(--border); }
.game-sheet-body { flex: 1; min-width: 220px; }
.game-specs { display: grid; grid-template-columns: auto 1fr; gap: 6px 18px; margin: 0 0 12px; }
.game-specs dt { font-size: 12.5px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--text-muted); padding-top: 2px; }
.game-specs dd { margin: 0; }
.game-description { font-size: 15px; color: var(--text-soft); margin: 0; }

/* Catalogue (référentiel BoardGameGeek) */
.filtres-catalogue { display: grid; grid-template-columns: 2fr 1fr auto auto; gap: 14px; align-items: end; margin-bottom: 24px; }
.filtres-catalogue label { margin-top: 0; }
.filtres-catalogue .case-a-cocher { margin: 0 0 10px; }
.search-result .rang { font-size: 13px; margin-left: 6px; }
.source-donnees { font-size: 13px; color: var(--text-muted); margin-top: 24px; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 16px; margin: 24px 0; flex-wrap: wrap; }
@media (max-width: 860px) { .filtres-catalogue { grid-template-columns: 1fr; } }
