/* =========================================================
   08 — LIBRARY FILTERS
   PURPOSE: Public-facing filtered Library views.
   PUBLIC RULE:
   - Library cards may show visitor-friendly labels only.
   - Do not show backend statuses, gate names, checkout type, file status, item IDs, or file paths.
   ========================================================= */

.cpc-library-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 16px;
  border-radius: var(--cpc-radius-lg);
  background: #fff;
  border: 1px solid rgba(77, 119, 194, 0.20);
  box-shadow: var(--cpc-shadow-sm);
}

.cpc-library-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cpc-filter-chip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 12px;
  border-radius: var(--cpc-radius-pill);
  background: var(--cpc-soft-blue);
  color: var(--cpc-ink);
  border: 1px solid rgba(77, 119, 194, 0.20);
  font-weight: 850;
  font-size: 0.86rem;
}

.cpc-library-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 22px;
}

.cpc-library-card {
  padding: 22px;
  border-radius: var(--cpc-radius-lg);
  background: #fff;
  border: 1px solid rgba(77, 119, 194, 0.20);
  box-shadow: var(--cpc-shadow-sm);
}

.cpc-public-label {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: var(--cpc-radius-pill);
  background: #eef5ff;
  color: var(--cpc-primary);
  font-size: 0.75rem;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
