#mtd-admin-calendar-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .6rem;
  margin-bottom: 1rem;
  padding: .8rem;
  border: 1px solid hsl(var(--border));
  border-radius: .5rem;
  background: hsl(var(--background) / .6);
}

.mtd-calendar-list-card {
  position: relative;
}

.mtd-calendar-list-card > :first-child {
  padding-right: min(26rem, 46%);
}

.mtd-calendar-sorted-list {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}

.mtd-calendar-sorted-list > * {
  margin-top: 0 !important;
}

.mtd-calendar-sorted-list #mtd-admin-calendar-empty {
  order: 99999;
}

#mtd-admin-calendar-search-wrap {
  position: absolute;
  top: 1rem;
  right: 1.5rem;
  display: flex;
  align-items: center;
  width: min(24rem, 42%);
}

#mtd-admin-calendar-search-wrap svg {
  position: absolute;
  left: .8rem;
  width: 1.1rem;
  height: 1.1rem;
  color: hsl(var(--muted-foreground));
  pointer-events: none;
}

#mtd-admin-calendar-search {
  width: 100%;
  min-height: 2.5rem;
  padding: 0 2.3rem;
  border: 1px solid hsl(var(--border));
  border-radius: .375rem;
  background: hsl(var(--background));
  color: hsl(var(--foreground));
}

#mtd-admin-calendar-search:focus {
  border-color: hsl(var(--primary));
  outline: none;
  box-shadow: 0 0 0 1px hsl(var(--primary));
}

#mtd-admin-calendar-filters button,
#mtd-admin-calendar-filters select {
  min-height: 2.5rem;
  border: 1px solid hsl(var(--border));
  border-radius: .375rem;
  background: hsl(var(--background));
  color: hsl(var(--foreground));
  font-weight: 600;
}

#mtd-admin-calendar-filters button {
  padding: 0 .9rem;
  cursor: pointer;
}

#mtd-admin-calendar-filters button:hover {
  border-color: hsl(var(--primary));
  color: hsl(var(--primary));
}

#mtd-admin-calendar-save-order:not(:disabled) {
  border-color: hsl(var(--primary));
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}

#mtd-admin-calendar-save-order:disabled {
  cursor: not-allowed;
  opacity: .55;
}

#mtd-admin-calendar-filters .mtd-calendar-nav {
  width: 2.5rem;
  padding: 0;
  font-size: 1.4rem;
}

#mtd-admin-calendar-month {
  min-width: 14rem;
  padding: 0 .75rem;
}

#mtd-admin-calendar-count {
  margin-left: auto;
  color: hsl(var(--muted-foreground));
  font-size: .875rem;
}

#mtd-admin-calendar-empty {
  padding: 1.5rem;
  border: 1px dashed hsl(var(--border));
  border-radius: .5rem;
  color: hsl(var(--muted-foreground));
  font-size: .875rem;
}

@media (max-width: 900px) {
  #mtd-admin-calendar-search-wrap {
    position: relative;
    top: auto;
    right: auto;
    width: auto;
    margin: 0 1rem 1rem;
  }

  .mtd-calendar-list-card > :first-child {
    padding-right: 1.5rem;
  }

}

@media (max-width: 640px) {

  #mtd-admin-calendar-month {
    flex: 1 1 12rem;
    min-width: 0;
  }

  #mtd-admin-calendar-count {
    width: 100%;
    margin-left: 0;
  }
}
