.meetings-table {
  table-layout: fixed;
}

.meetings-table thead th {
  color: var(--text-strong, #1d2939);
  font-weight: 600;
  vertical-align: middle;
  white-space: nowrap;
}

.meetings-table__sort {
  align-items: center;
  background: transparent;
  border: 0;
  color: inherit;
  display: inline-flex;
  font: inherit;
  font-weight: 600;
  gap: 0.35rem;
  max-width: 100%;
  padding: 0;
  text-align: left;
}

.meetings-table__sort:hover,
.meetings-table__sort:focus-visible {
  color: var(--text-strong, #1d2939);
}

.meetings-table__sort.is-active {
  color: #1d4ed8;
}

.meetings-table__sort-label {
  overflow: hidden;
  text-overflow: ellipsis;
}

.meetings-table__sort-icon {
  color: #98a2b3;
  flex-shrink: 0;
  font-size: 0.75rem;
  opacity: 0;
}

.meetings-table thead th:hover .meetings-table__sort-icon,
.meetings-table__sort:focus-visible .meetings-table__sort-icon,
.meetings-table__sort.is-active .meetings-table__sort-icon {
  opacity: 1;
}

.meetings-table__sort.is-active .meetings-table__sort-icon {
  color: currentColor;
}

.meetings-table thead th[data-meetings-column="actions"],
.meetings-table thead th[data-meetings-column="visibility"] {
  text-align: center;
}

.meetings-table thead th[data-meetings-column="visibility"] .meetings-table__sort {
  justify-content: center;
  width: 100%;
}

.meetings-table tbody td {
  color: var(--text-muted, #667085);
}

.meetings-table__col-actions {
  width: 3rem;
}

.meetings-table__col-date {
  width: 7.5rem;
}

.meetings-table__col-name {
  width: 14%;
  min-width: 10rem;
}

.meetings-table__col-status {
  width: 3.25rem;
}

.meetings-table__col-meeting-tags {
  width: 10%;
  min-width: 8rem;
}

.meetings-table__col-agenda-tags {
  width: 10%;
  min-width: 8rem;
}

.meetings-table__col-description {
  width: 10%;
  min-width: 7rem;
}

.meetings-table__col-type {
  width: 7rem;
}

.meetings-table__col-visibility {
  width: 2.75rem;
}

.meetings-table__col-unpublished {
  width: 9rem;
}

.meetings-table__col-meeting-time {
  width: 9rem;
}

.meetings-table__col-created {
  width: 10rem;
}

.meetings-table__visibility-slot,
.meetings-table__actions-slot {
  text-align: center;
  vertical-align: middle;
}

.meetings-table__status-slot {
  padding-inline: 0.25rem;
  text-align: center;
  vertical-align: middle;
  width: 3.25rem;
}

.meetings-table thead th[data-meetings-column="status"] {
  padding-inline: 0.25rem;
  width: 3.25rem;
}

.meetings-table [data-meetings-column].is-column-hidden {
  display: none;
}

.meetings-table__actions-btn {
  color: var(--text-muted, #667085);
  line-height: 1;
  padding: 0.125rem 0.375rem;
}

.meetings-table__actions-btn:hover,
.meetings-table__actions-btn:focus-visible {
  color: var(--text-strong, #1d2939);
}

.meeting-status {
  cursor: help;
}

.meeting-status__dot {
  font-size: 0.5rem;
  line-height: 1;
}

.meeting-status__dot--pending {
  color: #d0d5dd;
}

.meetings-column-settings {
  min-width: 15rem;
  padding: 0.35rem 0;
}

.meetings-column-settings__list {
  display: grid;
  max-height: min(70vh, 36rem);
  overflow-y: auto;
}

.meetings-column-settings__item {
  align-items: center;
  background: transparent;
  border: 0;
  color: #344054;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 1.25rem minmax(0, 1fr) auto;
  padding: 0.45rem 0.85rem;
  text-align: left;
  width: 100%;
}

.meetings-column-settings__item:hover,
.meetings-column-settings__item:focus-visible {
  background: #fff3cd;
}

.meetings-column-settings__check {
  color: #101828;
  display: inline-flex;
  justify-content: center;
  opacity: 0;
  width: 1rem;
}

.meetings-column-settings__item.is-active .meetings-column-settings__check {
  opacity: 1;
}

.meetings-column-settings__tools {
  color: #667085;
  display: inline-flex;
  gap: 0.35rem;
}

.meetings-column-settings__footer {
  border-top: 1px solid var(--brand-border, #e4e7ec);
  display: grid;
  margin-top: 0.35rem;
  padding-top: 0.35rem;
}

.meetings-column-settings__action {
  background: transparent;
  border: 0;
  color: #1d4ed8;
  font-weight: 600;
  padding: 0.5rem 0.85rem;
  text-align: left;
}

.meetings-column-settings__action:hover,
.meetings-column-settings__action:focus-visible {
  background: #f8fafc;
}

.meetings-table-filter {
  min-width: min(32rem, 92vw);
  padding: 0;
}

.meetings-table-filter__header {
  border-bottom: 1px solid var(--brand-border, #e4e7ec);
  color: var(--text-strong, #1d2939);
  font-size: 0.875rem;
  font-weight: 600;
  padding: 0.75rem 1rem;
}

.meetings-table-filter__rules {
  display: grid;
  gap: 0.65rem;
  max-height: min(50vh, 20rem);
  overflow-y: auto;
  padding: 0.85rem 1rem 0.35rem;
}

.meetings-table-filter__empty {
  color: #667085;
  font-size: 0.875rem;
  margin: 0;
}

.meetings-table-filter__rule {
  align-items: center;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(7rem, 1fr) minmax(7rem, 1fr) minmax(8rem, 1.2fr) auto;
}

.meetings-table-filter__field {
  min-width: 0;
}

.meetings-table-filter__remove {
  background: transparent;
  border: 0;
  color: #667085;
  line-height: 1;
  padding: 0.25rem;
}

.meetings-table-filter__remove:hover,
.meetings-table-filter__remove:focus-visible {
  color: #1d2939;
}

.meetings-table-filter__toolbar {
  display: flex;
  gap: 0.75rem;
  padding: 0.35rem 1rem 0.85rem;
}

.meetings-table-filter__add,
.meetings-table-filter__clear {
  background: transparent;
  border: 0;
  color: #1d4ed8;
  font-size: 0.875rem;
  font-weight: 600;
  padding: 0;
}

.meetings-table-filter__add:hover,
.meetings-table-filter__add:focus-visible,
.meetings-table-filter__clear:hover,
.meetings-table-filter__clear:focus-visible {
  text-decoration: underline;
}

.meetings-table-filter__clear {
  color: #667085;
  font-weight: 500;
}

.meetings-table-filter__clear:disabled {
  color: #98a2b3;
  cursor: default;
  text-decoration: none;
}

.meetings-table-filter__trigger.is-active {
  border-color: #1d4ed8;
  color: #1d4ed8;
}

.meetings-table tbody tr.is-filter-hidden {
  display: none;
}

@media (max-width: 767.98px) {
  .meetings-table-filter__rule {
    grid-template-columns: 1fr;
  }
}
