/* ============================================================
   Traces — Page liste des traces
   ============================================================ */

.traces-page { padding: 40px 72px 60px; }

/* ---- Filtres ---- */
.filters-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 40px;
}

.filter-btn {
  padding: 8px 18px;
  border-radius: 50px;
  border: 1px solid var(--border);
  background: transparent;
  color: var(--white);
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: border-color 0.2s, background 0.2s, color 0.2s;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.filter-btn:hover,
.filter-btn.active {
  border-color: var(--pink);
  color: var(--pink);
}

.filter-btn .chevron {
  font-size: 10px;
  opacity: 0.7;
}

.filter-clear {
  margin-left: auto;
  background: var(--pink);
  border-color: var(--pink);
  color: #0a0a0a;
  font-weight: 600;
}

.filter-clear:hover {
  background: var(--pink-dark);
  border-color: var(--pink-dark);
  color: #0a0a0a;
}

/* ---- Dropdown filter ---- */
.filter-group { position: relative; }

.filter-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  background: #222;
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 6px 0;
  min-width: 160px;
  z-index: 50;
  box-shadow: var(--shadow);
}

.filter-group.open .filter-dropdown { display: block; }

.filter-dropdown a {
  display: block;
  padding: 8px 16px;
  font-size: 12px;
  color: var(--gray-light);
  transition: color 0.15s, background 0.15s;
}

.filter-dropdown a:hover {
  background: rgba(232,121,168,0.1);
  color: var(--pink);
}

/* ---- No results ---- */
.no-results {
  grid-column: 1 / -1;
  text-align: center;
  padding: 60px 0;
  color: var(--gray);
  font-size: 15px;
}

@media (max-width: 600px) {
  .traces-page { padding: 24px 20px 48px; }
  .filter-clear { margin-left: 0; }
}
