.form-actions--search {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.brands-search__controls,
.users-search__controls,
.companies-search__controls {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  flex-wrap: wrap;
  flex: 1;
  min-width: 280px;
}

.brands-search__search-field,
.users-search__search-field,
.companies-search__search-field {
  flex: 1;
  min-width: 220px;
}

.users-search__role-field {
  min-width: 180px;
}

.table-filter__input,
.table-filter__select {
  width: 100%;
  min-height: 40px;
  border: 1px solid var(--c-border-strong);
  border-radius: var(--r-sm);
  background: var(--c-surface);
  color: var(--c-text);
  font: inherit;
  padding: 8px 12px;
}

.table-filter__input:focus,
.table-filter__select:focus {
  outline: none;
  border-color: var(--c-accent);
  box-shadow: 0 0 0 3px rgba(20, 184, 166, .15);
}

.brands-table-wrap,
.users-table-wrap,
.companies-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid var(--c-border);
  border-radius: var(--r-lg);
  background: var(--c-surface);
  box-shadow: var(--shadow-sm);
}

.table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}

.table thead th {
  background: var(--c-bg);
  color: var(--c-secondary);
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--c-border);
}

.table th,
.table td {
  text-align: left;
  vertical-align: middle;
  padding: 12px 14px;
  border-bottom: 1px solid var(--c-border);
  font-size: .875rem;
}

.table tbody tr:last-child td {
  border-bottom: none;
}

.table tbody tr:hover {
  background: #f8fffe;
}

.table thead a,
.brands-table__sort-link {
  color: inherit;
  font-weight: inherit;
  text-decoration: none;
}

.table thead a:hover,
.brands-table__sort-link:hover {
  color: var(--c-primary);
}

.brands-table__name-link,
.users-table__name-link,
.brands-table__link {
  color: var(--c-accent-dark);
  font-weight: 600;
  text-decoration: none;
}

.brands-table__name-link:hover,
.users-table__name-link:hover,
.brands-table__link:hover {
  color: var(--c-accent);
  text-decoration: underline;
}

.pager,
.brands-pager,
.users-pager,
.companies-pager {
  margin-top: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.brands-pager__left,
.users-pager__left {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.brands-pager__pageof,
.users-pager__pageof {
  font-size: .875rem;
  color: var(--c-muted);
}

.brands-pager__size-form,
.users-pager__size-form {
  display: flex;
  align-items: center;
  gap: 8px;
}

.brands-pager__size-label,
.users-pager__size-label {
  margin: 0;
  font-size: .875rem;
  color: var(--c-secondary);
}

.brands-pager__page-size,
.users-pager__page-size {
  width: auto;
  min-width: 88px;
}

.companies-subscriptions__message {
  margin-top: 16px;
}

.companies-subscriptions__table td:last-child {
  white-space: nowrap;
}

.account-subscription-embed {
  margin-top: 24px;
  border: 1px solid var(--c-border);
  border-radius: var(--r-lg);
  background: var(--c-surface);
  box-shadow: var(--shadow-sm);
  padding: 16px;
}

.account-subscription-embed h2 {
  margin: 0 0 12px;
}

.account-subscription-embed__frame {
  width: 100%;
  min-height: 720px;
  border: 1px solid var(--c-border);
  border-radius: var(--r-md);
  background: var(--c-bg);
}

.account-subscription-embed__actions {
  margin-top: 12px;
  display: flex;
  justify-content: flex-end;
}

.is-disabled,
.btn[aria-disabled="true"] {
  opacity: .55;
  pointer-events: none;
}

@media (max-width: 960px) {
  .form-actions--search {
    align-items: stretch;
  }

  .brands-search__controls,
  .users-search__controls,
  .companies-search__controls {
    width: 100%;
  }

  .brands-search__add,
  .users-search__add,
  .companies-search__add {
    width: 100%;
    justify-content: center;
  }

  .pager,
  .brands-pager,
  .users-pager,
  .companies-pager {
    flex-direction: column;
    align-items: stretch;
  }

  .brands-pager__left,
  .users-pager__left,
  .brands-pager__size-form,
  .users-pager__size-form {
    width: 100%;
    justify-content: space-between;
  }

  .account-subscription-embed__frame {
    min-height: 640px;
  }
}
