#map-page {
  height: 100vh;
  display: flex;
  flex-direction: column;
}
.header {
  height: 80px;
  padding: 20px;
}
.header .title {
  font-weight: bold;
}
.main {
  flex: 1;
  position: relative;
  background-color: #ccc;
}
.main .data-wrap {
  width: 436px;
  height: 80vh;
  display: flex;
  flex-direction: column;
  background-color: #fff;
  position: absolute;
  z-index: 999;
}
/* 收起样式 */
.main .data-wrap.close {
  animation: close 0.7s ease forwards;
}
/* 展开样式 */
.main .data-wrap.open {
  animation: open 0.7s ease forwards;
}
.main .data-list::-webkit-scrollbar {
  width: 8px;
  height: 0px;
}
.main .data-list::-webkit-scrollbar-thumb {
  border-radius: 5px;
  -webkit-box-shadow: inset 0 0 5px #ddd;
  background: #ddd;
}
.main .data-list::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 5px transparent;
  border-radius: 0;
  background:transparent;
}
.header-main {
  height: 100%;
  display: flex;
  align-items: center;
}

.header-main .title {
  font-size: 24px;
  color: #444;
}
.header-main .search-wrap {
  margin-left: 20px;
  display: flex;
}
.header-main .search-wrap .search-input {
  width: 370px;
  border: 1px solid #ddd;
  padding-left: 10px;
  font-size: 14px;
}
.header-main .search-wrap .search-btn {
  width: 58px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #376ee8;
  margin-left: 10px;
  cursor: pointer;
}
.main .data-wrap .data-total-total {
  line-height: 40px;
  font-size: 14px;
  padding-left: 20px;
  background-color: #f8f8f8;
}
.data-wrap .data-total-total .total {
  color: #ff3639;
  font-weight: bold;
  margin: 0 3px;
}
.main .data-wrap .data-list {
  flex: 1;
  overflow: scroll;
}
.data-wrap .data-list .data-item {
  height: 88px;
  display: flex;
  padding: 16px 0 0 20px;
  border-bottom: 1px solid #ddd;
  background-color: #fff;
  cursor: pointer;
}
.data-wrap .data-list .data-item.actived {
  background-color: #f8f8f8;
} 
.data-wrap .data-list .data-item:last-child {
  border: none;
}

.data-list .data-item .item-point {
  position: relative;
  margin-right: 20px;
  margin-top: -4px;
}
.data-item .item-point .point-icon {
  width: 20px;
  height: 26px;
}
.data-item .item-point .item-point-txt {
  color: #fff;
  font-size: 12px;
  position: absolute;
  top: 1px;
  left: 6.5px;
}
.data-list .data-item .item-info {
  position: relative;
}
.data-item .item-info .info-block {
  display: flex;
  color: #333;
  line-height: 21px;
}
.item-info .info-block .label {
  width: 84px;
  text-align: right;
  color: #777;
  font-size: 14px;
  margin-right: 10px;
}
.item-info .info-block .value {
  font-size: 14px;
}

.data-wrap .pagination {
  width: 100%;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  margin: 0 auto;
  border-top: 1px solid #ddd;
}
.data-wrap .pagination .list {
  display: flex;
}
.pagination .list .item {
  font-size: 14px;
  color: #999;
  line-height: 30px;
  margin-right: 10px;
  padding: 0 15px;
  border: 1px solid #ddd;
  cursor: pointer;
}
.pagination .list .actived {
  background: #1f59d8;
  color: #fff;
  border: none;
}
.pagination .list .item:last-child {
  color: #000;
}
.data-wrap .shrink-btn {
  width: 25px;
  line-height: 50px;
  text-align: center;
  background-color: #fff;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  position: absolute;
  top: 20%;
  right: -25px;
  cursor: pointer;
}
.data-wrap .shrink-btn .img {
  width: 10px;
}
.data-wrap.open .shrink-btn .img {
  width: 10px;
  transform: rotate(180deg);
}

@keyframes close {
  from {
    left: 0px;
  }
  to {
    left: -436px;
  }
}

@keyframes open {
  from {
    left: -436px;
  }
  to {
    left: 0;
  }
}

