@use "../../assets/scss/customVariables.scss" as *;

.card {
  flex: 1;
  min-width: 23%;
  max-width: 25%;
  min-height: 289px;
  max-height: 289px;
  border-radius: 7.01px;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #fff;
  border: 1px solid #DDDDDD;
  overflow: hidden;

  .imageContainer {
    width: 100%;
    height: 138.28px;
    background-color: #DDDDDD;
    position: relative;
    border-bottom: 1px solid #DDDDDD;

    .badge {
      position: absolute;
      background-color: #7a7a7a;
      color: #fff;
      top: 11.5px;
      left: 11.5px;
      height: 28px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;

      padding: 0 12px;
      font-size: 15px;
      font-weight: 600;
      border-radius: 5px;
    }

    .superFeatured {
      background-color: #E23052;
    }

    .featured {
      background-color: #4271D6;
    }
  }


  .contentInCardMode{
    display: flex;
    flex-direction: column;
    width: 100%;
  }

  .contentInListMode{
    display: none;
  }

  .propertyParts {
    width: 100%;
    padding: 6px 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    gap: 10px;

    .personCircle {
      width: 55.78px;
      height: 55.78px;
      max-width: 55.78px;
      max-height: 55.78px;
      min-width: 55.78px;
      min-height: 55.78px;
      position: absolute;
      border-radius: 50%;
      background-color: #fff;
      // overflow: hidden;

      top: -27.8px;
      left: 23.22px;
    }

    .items {
      display: flex;
      flex-direction: row;
      align-items: center;
      gap: 7px;

      & > p {
        font-size: 11.96px;
        color: $primary-color;
        font-weight: 600;
        line-height: 23.34px;
      }
    }
  }

  .prices {
    width: 100%;
    padding: 0px 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    position: relative;

    .price {
      color: #13A407;
      font-weight: 700;
      font-size: 18px;
      line-height: 27.18px;
    }

    .type {
      min-width: 68.14px;
      height: 24.05px;
      padding: 0 20px;
      border-radius: 100px;
      border: 1px solid $primary-color;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;

      color: $primary-color;
      font-size: 12px;
    }

    .rent {
      @extend .type;
      border: 1px solid #E23052; 
      color: #E23052;            
    }

    .sale {
      @extend .type;
      border: 1px solid #4271D6; 
      color: #4271D6;            
    }
  } 

  .texts {
    width: 100%;
    padding: 0px 20px;
    padding-bottom: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;

    .title {
      font-weight: 700;
      font-size: 16px;
      line-height: 27.18px;
      color: #000000;
    }

    .desc {
      font-weight: 500;
      font-size: 15.5px;
      line-height: 16px;
      max-height: 32px;
      overflow: hidden;
      color: #5E5E5E;
    }
  }
}

.cardHorizontal {
  @extend .card;
  max-height: fit-content;
  height: 316px;
  max-height: 316px;

  flex-direction: row;
  width: 100%;
  max-width: 100%;

  .contentInCardMode{
    display: none;
  }

  .contentInListMode{
    display: flex;
    flex-direction: column;
    height: 316px;
    max-height: 316px;
    width: calc(100% - 424px);
  }

  .imageContainer {
    max-width: 424px;
    // width: 100%;
    height: 316px;
    max-height: 316px;
    flex: 1;
  }

  .propertyParts {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    padding: 31px 41px;
    height: 316px;
    max-height: 316px;

    .row {
      width: 80%;
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: space-between;

      .rowItem {
        width: 100%;
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 30px;
        
        .price {
          color: #13A407;
          font-weight: 700;
          font-size: 28px;
          line-height: 27.18px;
        }

        .type {
          min-width: 68.14px;
          height: 36px;
          padding: 0 20px;
          border-radius: 100px;
          border: 1px solid $primary-color;
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;

          color: $primary-color;
          font-size: 16px;
        }

        .rent {
          @extend .type;
          border: 1px solid #E23052; 
          color: #E23052;            
        }

        .sale {
          @extend .type;
          border: 1px solid #4271D6; 
          color: #4271D6;            
        }
      }
    }

    .title {
      font-weight: 700;
      font-size: 16px;
      line-height: 27.18px;
      color: #000000;
    }

    .desc {
      font-weight: 500;
      font-size: 15.5px;
      line-height: 20px;
      max-height: 20px;
      overflow: hidden;
      color: #5E5E5E;
    }
    
    .propertyFeatures {
      width: 100%;
      display: flex;
      flex-direction: row;
      align-items: center;
      max-width: 100%;
      gap: 20px;
      height: fit-content;
      padding: 0;
      overflow-y: hidden;
      overflow-x: auto;
      scrollbar-width: none;

      &::-webkit-scrollbar {
        display: none;
      }

      .type {
        height: 36px;
        padding: 0 20px;
        border-radius: 100px;
        border: 1px solid $primary-color;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 10px;
        white-space: nowrap;

        color: $primary-color;
        font-size: 16px;
      }

      

      .sale {
        @extend .type;
        border: 1px solid #4271D6; 
        color: #4271D6;            
      }
    }

    .constructionDetails {
      width: 100%;
      display: flex;
      flex-direction: row;
      align-items: center;
      padding-top: 12px;
      border-top: 1px solid #DDD;
    }

    .detail {
        flex: 1;
        display: flex;
        min-width: 30%;
        max-width: 30%;
        flex-direction: row;
        align-items: flex-start;
        gap: 0px;
        

        .icon {
          width: 24px;
          height: 24px;
          min-width: 24px;
          min-height: 24px;
          max-width: 24px;
          max-height: 24px;
          margin-top: 5px;
          display: flex;
          flex-direction: row;
          align-items: center;
          justify-content: center;

         

          &> img {
            width: 100%;
            height: 100%;
          }
        }

        .texts {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          box-sizing: border-box;
          flex: 1;
          padding: 0 20px;

          .title {
            font-size: 14px;
            font-weight: 500;
            color: #5E5E5E;
            margin-bottom: 7px;
            box-sizing: border-box;

            @media screen and (max-width: 700px) {
              font-size: 16px;
            }

            
          }
          .value {
            font-size: 12px;
            font-weight: 400;
            color: #5E5E5E;

            @media screen and (max-width: 700px) {
              font-size: 13px;
            }
          }
        }
      }
  }
}