body {
  > main {
    padding-top: 140px;
    padding-bottom: 110px;

    > .logo {
      width: 300px;
      margin-bottom: 50px;

      > img {
        width: 100%;
      }
    }

    > .contact-button {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 50px;
      padding: 13px 18px;
      background-color: #6a9ac2;
      color: #ffffff;
      font-size: 15px;
      font-weight: 500;
      border: none;
      outline: none;
      border-radius: 8px;

      > img {
        width: 21px;
      }
    }

    > .numbers {
      > .filters {
        display: flex;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 18px;

        > .sort {
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
          min-width: 50px;
          height: 50px;
          background-color: #7e94a2;
          border-radius: 6px;
          cursor: pointer;

          &.open {
            > .items {
              visibility: visible;
              opacity: 1;
            }
          }

          > img {
            width: 30px;
          }

          > .items {
            visibility: hidden;
            opacity: 0;
            position: absolute;
            top: 50px;
            right: 0;
            z-index: 1;
            display: flex;
            flex-direction: column;
            gap: 10px;
            background-color: #ffffff;
            padding: 10px;
            border-radius: 6px;
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
            transition: 0.2s;

            > .item {
              all: unset;
              padding: 6px 10px 9px 50px;
              background-color: transparent;
              color: #7e94a2;
              font-weight: 600;
              border-radius: 6px;
              transition: 0.3s;

              &:hover {
                background-color: #dfe5e7;
              }

              &.active {
                background-color: #7e94a2;
                color: #ffffff;
                font-weight: 500;
              }
            }
          }
        }

        > .search {
          width: calc(100% - 60px);

          > .head {
            display: flex;
            width: 100%;
            background-color: #ffffff;
            border: solid 2px #7e94a2;
            border-radius: 6px;

            > .search-pro,
            > .search-proportionate {
              all: unset;
              display: flex;
              gap: 9px;
              align-items: center;
              min-height: 45px;
              padding: 10px;
              background-color: #7e94a2;
              color: #ffffff;
              font-size: 15px;
              font-weight: 500;
              box-sizing: border-box;
              cursor: pointer;

              > img {
                width: 22px;
              }

              > span {
                display: block;
                width: max-content;
              }

              &.search-proportionate {
                > img {
                  padding: 2px;
                }
              }
            }

            > .input {
              display: flex;
              width: 100%;

              > input {
                direction: ltr;
                text-align: right;
                width: 100%;
                padding: 0 15px;
                font-size: 18px;
                font-weight: 600;
                letter-spacing: 1px;
                color: #070707;
                border: none;
                outline: none;
              }

              > .search-button {
                all: unset;
                padding: 0 10px;
                cursor: pointer;

                > img {
                  width: 30px;
                }
              }
            }
          }

          > .search-pro,
          > .search-proportionate {
            height: 0;
            overflow: hidden;
            transition: 1s;

            > .box {
              display: flex;
              flex-direction: column;
              gap: 24px;
              padding: 30px;
              background-color: #ffffff;
              border-radius: 0 0 6px 6px;

              > div {
                display: flex;
                align-items: center;
                color: #434343;

                > .title {
                  display: block;
                  width: max-content;
                  margin-left: 24px;
                  font-size: 18px;
                  font-weight: 600;
                }

                > .radios,
                > .checkboxes {
                  display: flex;
                  flex-wrap: wrap;
                  align-items: center;
                  gap: 26px;

                  > .radio,
                  .checkbox {
                    display: flex;
                    align-items: center;
                    gap: 7px;

                    > label {
                      font-weight: 500;
                    }

                    > input {
                      accent-color: #7e94a2;
                    }
                  }
                }

                > .radios2 {
                  display: flex;
                  flex-wrap: wrap;
                  align-items: center;
                  gap: 10px;
                
                  .radio {
                    input[type='radio'] {
                      appearance: none;
                      -webkit-appearance: none;
                      -moz-appearance: none;
                      position: absolute;
                      width: 1px;
                      height: 1px;
                      opacity: 0;
                      margin: -1px;
                      padding: 0;
                      overflow: hidden;
                      clip: rect(0, 0, 0, 0);
                      border: 0;
                      outline: none;
                
                      &:checked + label {
                        background-color: #7e94a2;
                        color: #ffffff;
                        border-color: #6a818e;
                      }
                    }
                
                    label {
                      font-weight: 500;
                      padding: 6px 12px;
                      border: 1px solid #cccccc;
                      border-radius: 4px;
                      background-color: transparent;
                      color: #6a818e;
                      cursor: pointer;
                      transition: 0.2s;
                      outline: none;
                
                      &:hover {
                        background-color: #f1f1f1;
                      }
                    }
                  }
                }

                > .number-inputs {
                  direction: ltr;
                  display: flex;
                  gap: 10px;

                  > input {
                    width: 40px;
                    height: 40px;
                    text-align: center;
                    font-size: 17px;
                    font-weight: 500;
                    border: solid 1px #7e94a2;
                    border-radius: 4px;
                  }
                }

                > .price-input {
                  display: flex;
                  align-items: center;
                  width: 200px;
                  padding: 5px 8px;
                  border: solid 1px #7e94a2;
                  border-radius: 2px;
                  margin-left: 24px;

                  > input {
                    width: 100%;
                    letter-spacing: 1px;
                    border: none;
                    outline: none;
                  }

                  > span {
                    font-size: 14px;
                    font-weight: 600;
                    color: #808285;
                  }
                }

                > .date-input {
                  width: 150px;
                  padding: 5px 10px;
                  border: solid 1px #7e94a2;
                  border-radius: 2px;
                }

                > .number-input {
                  direction: rtl;
                  width: 200px;
                  padding: 5px 10px;
                  letter-spacing: 1px;
                  border: solid 1px #7e94a2;
                  border-radius: 2px;
                }

                .select2-container {
                  width: 200px !important;
                }
              }

              > .apply-button {
                all: unset;
                width: fit-content;
                margin-top: 20px;
                padding: 10px 20px;
                background-color: #7e94a2;
                color: #ffffff;
                font-weight: 500;
                border-radius: 6px;
                cursor: pointer;
              }
            }
          }
        }
      }

      > .table-responsive {
        overflow-x: auto;
        overflow-y: hidden;

        &::-webkit-scrollbar {
          height: 10px;
        }
        &::-webkit-scrollbar-track {
          background: #d3d3d3;
        }
        &::-webkit-scrollbar-thumb {
          background: #6a9ac2;
        }
        &::-webkit-scrollbar-thumb:hover {
          background: #555;
        }

        > .table {
          display: flex;
          flex-direction: column;
          align-items: center;
          width: 100%;
          min-width: 450px;
          margin-bottom: 10px;

          > .head {
            width: 100%;
            padding: 14px 10px;
            background-color: #6a9ac2;
            border-radius: 8px 8px 0 0;

            > div {
              display: flex;
              align-items: center;
              gap: 6px;

              > * {
                all: unset;
              }
              > img {
                width: 22px;
              }
              > span {
                color: #ffffff;
                font-size: 19px;
                font-weight: 500;
              }
            }
          }

          > .items {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            width: 100%;

            > .item {
              display: flex;
              align-items: center;
              width: 100%;
              background-color: #ffffff;
              padding: 10px;
              text-decoration: none;
              border-right: solid 2px #6a9ac2;
              border-left: solid 2px #6a9ac2;
              border-bottom: solid 2px #6a9ac2;
              transition: 0.3s;

              &:hover {
                background-color: #e3f3ff;
              }

              &:last-of-type {
                border-radius: 0 0 8px 8px;
              }

              > div {
                background-color: transparent;

                &:nth-of-type(3) {
                  > span {
                    font-size: 18px;
                  }
                }

                > * {
                  all: unset;
                }
                > span {
                  color: #606060;
                  font-size: 19px;
                  font-weight: 600;
                }

                &.price {
                  > span {
                    font-size: 21px;
                    > span {
                      font-size: 17px;
                    }
                  }
                }

                &.buttons {
                  display: flex;
                  align-items: center;
                  gap: 16px;

                  > button,
                  > a {
                    position: relative;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    width: 40px;
                    height: 40px;
                    background-color: #6a9ac2;
                    border-radius: 9999px;
                    cursor: pointer;

                    > img {
                      width: 19px;
                    }

                    &:hover {
                      > .tooltip {
                        visibility: visible;
                        opacity: 1;
                      }
                    }

                    > .tooltip {
                      all: unset;
                      position: absolute;
                      right: 50%;
                      top: 40px;
                      z-index: 1;
                      transform: translateX(50%);
                      width: max-content;
                      padding: 5px 8px;
                      background-color: #ffffff;
                      text-align: center;
                      color: #6a9ac2;
                      font-size: 13px;
                      font-weight: 500;
                      border-radius: 4px;
                      box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
                      visibility: hidden;
                      opacity: 0;
                      transition: 0.3s;

                      &::after {
                        content: '';
                        position: absolute;
                        right: 50%;
                        top: -8px;
                        transform: rotate(45deg) translateX(50%);
                        z-index: 2;
                        width: 10px;
                        height: 10px;
                        background-color: #ffffff;
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }

  #modal-details {
    .modal-title {
      font-weight: 600;
    }
    .modal-body {
      line-height: 1.8;
    }
    .close-button {
      background-color: #d83333;
    }
    .see-button {
      background-color: #6a9ac2;
    }
  }

  @media (max-width: 768px) {
    > main {
      > .numbers {
        > .filters {
          display: flex;
          justify-content: space-between;
          margin-bottom: 14px;

          > .sort {
            min-width: 40px;
            height: 40px;
            border-radius: 5px;

            > img {
              width: 24px;
            }

            > .items {
              top: 40px;
              gap: 8px;
              padding: 7px;
              border-radius: 5px;
              box-shadow: 0 0 16px rgba(0, 0, 0, 0.2);

              > .item {
                font-size: 14px;
                padding: 5px 10px 8px 40px;
                border-radius: 5px;
              }
            }
          }

          > .search {
            width: 100%;

            > .head {
              border-radius: 5px;

              > .search-pro,
              > .search-proportionate {
                gap: 7px;
                min-height: 35px;
                padding: 7px 13px;
                font-size: 11px;

                > img {
                  width: 20px;
                }

                > span {
                  display: none;
                }
              }

              > .input {
                > input {
                  padding: 0 10px;
                  font-size: 16px;
                  letter-spacing: 0.8px;
                }

                > .search-button {
                  padding: 0 7px;

                  > img {
                    width: 24px;
                  }
                }
              }
            }

            > .search-pro,
            > .search-proportionate {
              > .box {
                gap: 30px;
                padding: 20px 15px 15px 15px;
                font-size: 13px;
                border-radius: 0 0 5px 5px;

                > div {
                  flex-direction: column;
                  align-items: flex-start;
                  gap: 7px;

                  > .title {
                    margin-left: 14px;
                    font-size: 14px;
                  }

                  > .radios,
                  > .checkboxes {
                    gap: 16px;

                    > .radio,
                    .checkbox {
                      gap: 5px;
                    }
                  }

                  > .number-inputs {
                    gap: 5px;

                    > input {
                      width: 25px;
                      height: 25px;
                      font-size: 15px;
                      border-radius: 3px;
                    }
                  }

                  > .price-input {
                    width: 150px;
                    padding: 4px 7px;
                    margin-left: 16px;

                    > input {
                      letter-spacing: 0.8px;
                    }

                    > span {
                      font-size: 13px;
                    }
                  }

                  .select2-container {
                    width: 150px !important;
                  }
                }

                > .apply-button {
                  margin-top: 10px;
                  padding: 8px 17px;
                  font-size: 14px;
                  border-radius: 5px;
                }
              }
            }
          }
        }

        > .table-responsive {
          > .table {
            > .head {
              padding: 10px 5px;

              > div {
                gap: 5px;

                > span {
                  font-size: 15px;
                }
                > img {
                  width: 16px;
                }
              }
            }
            > .items {
              > .item {
                padding: 4px 5px;

                > div {
                  &:nth-of-type(3) {
                    > span {
                      font-size: 12.5px !important;
                    }
                  }

                  > span {
                    font-size: 14px !important;

                    > span {
                      margin-right: 1px;
                      font-size: 13px !important;
                    }
                  }

                  &.buttons {
                    > button,
                    > a {
                      width: 30px;
                      height: 30px;

                      > img {
                        width: 13px;
                      }

                      > .tooltip {
                        top: 30px;
                        font-size: 10px;
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
