/* ==========================================================================
   FILM FILTER — Search bar + category buttons for Browse Films page.
   ========================================================================== */

/* Filter bar on dark background — contained within the grid width */
.otb-filter-bar {
  background: var(--color-surface-scrim);
  padding: var(--spacing-sm);
  margin-bottom: var(--spacing-md);
  border-radius: var(--border-radius-sm);
}

/* ---------- SEARCH INPUT ---------- */

.otb-filter-bar__search {
  position: relative;
  margin-bottom: var(--spacing-sm);
}

/* No bottom margin when search is the last child (no category buttons) */
.otb-filter-bar__search:last-child {
  margin-bottom: 0;
}

.otb-filter-bar input.otb-filter-bar__input {
  width: 100%;
  max-width: 100%;
  background: var(--color-input-dark-bg);
  border: 1px solid var(--color-input-dark-border);
  border-radius: var(--border-radius-sm);
  color: var(--color-white);
  padding: var(--space-3) 2.5rem var(--space-3) var(--space-4);
  font-size: var(--font-size-sm);
  transition: border-color 0.2s ease, background 0.2s ease;
}

.otb-filter-bar__input::placeholder {
  color: var(--color-gray-400);
}

.otb-filter-bar__input:focus {
  border-color: var(--color-input-dark-focus-border);
  outline: none;
  background: var(--color-input-dark-focus-bg);
}

.otb-filter-bar__search .otb-filter-bar__icon {
  position: absolute;
  right: var(--space-3);
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-gray-400);
  pointer-events: none;
}

/* ---------- CATEGORY BUTTONS ---------- */

.otb-filter-bar__categories {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.otb-filter-btn {
  background: var(--color-btn-dark-bg);
  border: 1px solid var(--color-btn-dark-border);
  border-radius: var(--border-radius-sm);
  color: var(--color-gray-400);
  padding: var(--space-1) var(--space-3);
  font-size: var(--font-size-xs);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  cursor: pointer;
  transition: all 0.15s ease;
}

.otb-filter-btn:hover {
  color: var(--color-white);
  border-color: var(--color-btn-dark-hover-border);
  background: var(--color-btn-dark-hover-bg);
}

.otb-filter-btn.is-active {
  background: var(--color-primary-on-dark);
  border-color: var(--color-primary-on-dark);
  color: var(--color-dark);
}

/* ---------- RESULT COUNT ---------- */

.otb-filter-bar__count {
  font-size: var(--font-size-xs);
  color: var(--color-gray-400);
  margin-bottom: var(--spacing-sm);
  min-height: 1.2em;
}

.otb-filter-bar__count:empty {
  display: none;
}

/* ---------- FEATURED FILM SECTION ---------- */

.otb-films-page .otb-section--featured-film {
  padding: 0;
}


/* Staff notice styles moved to notice.css (shared component). */
