//modalv1
// Variables
$modal_background_color: var(--_base-white);
$backdrop_color: rgba(0, 0, 0, 0.2);
$box_shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
$modal_width: 618px;
$modal_padding: 24px;
$border_radius: 10px;
$header_font_size: 18px;
$header_font_weight: 600;
$close_btn_font_size: 24px;
$close_btn_size: 35px;
$footer_btn_background_color: #ffffff;
$footer_btn_padding: 10px 15px;
$footer_btn_font_size: 14px;
$primary_100: var(--Primary-100, #ced4f6);
$primary_500: var(--Primary-500, #162578);
$gray_900: var(--Gray-900, #101828);
$gap_between_elements: 24px;
$padding_horizontal: 24px;
$box_shadow_active: 0px 1px 2px rgba(16, 24, 40, 0.05);
$divider_color: #eaecf0;
$border_color: #d0d5dd;
$modal_padding_body: 10px $padding_horizontal;
$btn_margin: 0 5px;
$divider_height: 1px;
$inactive_btn_text_color: #fff;
$active_btn_text_color: #fff;

@mixin flexbox($justify: flex-start, $align: center, $gap: 12px) {
  display: flex;
  justify-content: $justify;
  align-items: $align;
  gap: $gap;
}

.modal-main-element {
  .modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: $backdrop_color;
    z-index: calc(var(--_higher-zIndex) + var(--_cs-et-zIndex) + 9);
    animation: fadeIn 0.4s forwards;
    cursor: auto;
  }

  .modal-container {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: $modal_background_color;
    width: var(--_sf-ml-wh, 450px);
    max-width: min(75%, 850px);
    padding: $modal_padding;
    box-shadow: $box_shadow;
    border-radius: $border_radius;
    display: flex;
    flex-direction: column;
    z-index: calc(var(--_higher-zIndex) + var(--_cs-et-zIndex) + 10);
    cursor: auto;

    &.media__modal {
      width: 60%;

      .modal-body {
        overflow: hidden;
      }

      .modal-footer {
        justify-content: flex-end;
        gap: 12px;
      }
    }
  }

  .modal-header {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 6px;

    h2 {
      font-size: $header_font_size;
      font-weight: $header_font_weight;
      margin: 0;
      color: $gray_900;
    }

    p {
      font-size: 14px;
      color: #475467;
      margin-top: 4px;
    }

    .modal-close-btn {
      width: $close_btn_size;
      height: $close_btn_size;
      font-size: $close_btn_font_size;
      background: none;
      border: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 4px;

      span {
        display: flex;

        svg {
          width: 20px;
          height: 20px;
        }
      }

      &:hover {
        background-color: var(--_gray-100);
      }
    }
  }

  .modal-body {
    font-size: 14px;
    color: $gray_900;
  }

  .modal-footer {
    @include flexbox(flex-end, center, 10px);
    flex-wrap: wrap;
    bottom: 0;
    width: 100%;
    margin-top: 24px;
  }

  .modal-footer-wrapper {
    display: flex;
    width: 100%;
    gap: 12px;

    .wishlist_button_wrapper {
      position: relative;
      width: 100%;

      .wishlist_btn {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        color: var(--_thm-py-bs-dt-se-tt-cr);
        height: 100%;

        &:hover {
          color: var(--_thm-py-bs-hr-se-tt-cr);
          text-decoration: underline;
        }
      }

      .wishlist_list_overlay {
        position: absolute;
        z-index: 10;
        top: 44px;
        left: 41px;
        min-height: 80px;
        max-height: 190px;
        width: 250px;
        overflow-y: auto;
        border-radius: 4px;
        background-color: var(--_base-white);
        box-shadow: 0px 0px 4px rgb(0, 0, 0, 0.1);
        border: 1px solid var(--_gray-200);

        .empty_message {
          height: 200px;
          display: flex;
          justify-content: center;
          align-items: center;
          padding: 24px;
          font-size: 16px;
          font-weight: 500;
          text-align: center;

          .dots {
            display: inline-flex;
            width: 20px;
            /* fixed space so text doesn’t shift */
            justify-content: space-between;
            align-items: flex-end;
            margin-left: 6px;
            margin-bottom: -9px;
          }

          .dots span {
            animation: blink 1.5s infinite;
            opacity: 0;
            width: 2px;
            height: 2px;
            border-radius: 50%;
            background-color: var(--_gray-700);
          }

          .dots span:nth-child(1) {
            animation-delay: 0s;
          }

          .dots span:nth-child(2) {
            animation-delay: 0.3s;
          }

          .dots span:nth-child(3) {
            animation-delay: 0.6s;
          }

          @keyframes blink {
            0% {
              opacity: 0;
            }

            50% {
              opacity: 1;
            }

            100% {
              opacity: 0;
            }
          }
        }

        .wishlist_overlay_header {
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding: 12px;
          font-size: 14px;
          font-weight: 600;
        }

        .wishlist_list_items {
          display: flex;
          flex-direction: column;

          .wishlist_item {
            display: flex;
            align-items: center;
            gap: 8px;
            color: var(--_gray-700);
            padding: 12px;
            border-radius: 4px;
            cursor: pointer;
            position: relative;
            margin: 4px;

            &.active {
              color: var(--_thm-py-bs-dt-se-tt-cr);
            }

            &:not(:last-child) {
              margin-bottom: 2px;
            }

            &:hover {
              background-color: var(--_thm-py-bs-hr-se-bd-cr);
              color: var(--_thm-py-bs-hr-se-tt-cr);
            }

            input {
              display: none; // hide default checkbox
            }

            .custom_checkbox {
              width: 18px;
              height: 18px;
              border: 2px solid var(--_gray-400);
              border-radius: 4px;
              display: inline-flex;
              align-items: center;
              justify-content: center;
              transition: all 0.2s ease-in-out;
              background-color: #fff;

              &::after {
                content: "";
                width: 8px;
                height: 4px;
                border-left: 2px solid #fff;
                border-bottom: 2px solid #fff;
                transform: rotate(-45deg);
                opacity: 0;
                transition: opacity 0.2s ease-in-out;
                margin-bottom: 4px;
              }
            }

            input:checked+.custom_checkbox {
              background-color: var(--_thm-py-bs-dt-se-bd-cr);
              border-color: var(--_thm-py-bs-dt-se-br-cr);

              &::after {
                opacity: 1; // show tick mark
              }
            }

            .label_text {
              font-size: 14px;
              font-weight: 500;
            }
          }
        }

        .wishlist_overlay_footer {
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding: 8px;
          font-size: 14px;
          font-weight: 600;
          border-top: 1px solid var(--_gray-200);
          padding: 8px;

          .btn {
            padding: 8px 12px;
            width: 100%;
            border-radius: 4px;
            text-align: center;
            width: 100%;
            font-weight: 500;
            text-decoration: none !important;

            &.primary {
              background-color: var(--_thm-py-bs-dt-se-bd-cr);
              color: var(--_thm-py-bs-dt-se-tt-cr);
              font-size: 14px;
            }

            &.secondary {
              color: var(--_thm-sy-bs-dt-se-bd-cr);

              &:hover {
                color: var(--_thm-sy-bs-hr-se-bd-cr);

                background-color: var(--_thm-sy-bs-hr-se-bd-cr);
              }
            }
          }
        }

        .no_wishlist,
        .loading_state {
          min-height: 80px;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 14px;
          font-weight: 700;
          color: var(--_gray-700);
        }
      }
    }

    .modal-footer-secondary-btn {
      padding: 12px 0;
      border-radius: 4px;
      background-color: var(--_thm-sy-bs-dt-se-bd-cr);
      color: var(--_thm-sy-bs-dt-se-tt-cr);
      border: 1px solid var(--_thm-sy-bs-dt-se-br-cr);
      font-weight: 500;
      width: 100%;
      display: flex;
      justify-content: center;

      &:hover {
        background-color: var(--_thm-sy-bs-hr-se-bd-cr);
        color: var(--_thm-sy-bs-hr-se-tt-cr);
        border: 1px solid var(--_thm-sy-bs-hr-se-br-cr);
        text-decoration: var(--_thm-ty-bs-hr-se-ue);
      }
    }

    .modal-footer-danger-btn {
      padding: 12px 24px;
      border-radius: 4px;
      background-color: #d92d20;
      color: #fff;
      font-weight: 600;
      width: 100%;
      display: flex;
      border: 1px solid #d92d20;
      justify-content: center;
      align-items: center;

      &:hover {
        background-color: color-mix(in srgb, #d92d20 95%, var(--_base-black) 5%);
      }

      &:disabled {
        opacity: 0.7;
        cursor: not-allowed;
      }
    }
  }

  @keyframes fadeIn {
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }
}

//modalv2 css
// Colors
$white: var(--_white);
$black: var(--base-black);
$gray-100: #f9fafb;
$gray-300: #e5e7eb;
$gray-400: #ccc;
$gray-600: #737373;
$gray-700: #6b7280;
$gray-800: #444;
$gray-900: #111827;

$primary: var(--_primary-400);
$primary-hover: var(--_primary-500);
$text-dark: #222;
$text-medium: #374151;
$text-light: #666;

// Typography
$font-base: "Segoe UI";
$font-size-base: 14px;
$font-size-sm: 12px;
$font-size-md: 15px;
$font-size-lg: 18px;

// Spacing & Sizes
$radius: 6px;
$radius-lg: 8px;
$input-height: 32px;
$input-padding: 10px 12px;

// Z-Index
$z-index-modal: calc(1000 + var(--_cs-et-zIndex, 10) + 10);
$z-index-backdrop: calc(var(--_higher-zIndex) + var(--_cs-et-zIndex) + 11);
$z-index-wrapper: calc(var(--_higher-zIndex) + var(--_cs-et-zIndex) + 9);
$z-index-minimized: calc(var(--_higher-zIndex) + var(--_cs-et-zIndex) + 12);
$z-index-min-cart: calc(var(--_higher-zIndex) + var(--_cs-et-zIndex) + 13); // Higher z-index for min cart

// Shadows
$shadow-md: 0 8px 20px rgba(0, 0, 0, 0.1);

.modalV2-main {
  position: fixed;
  z-index: $z-index-modal;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);

  .modalV2-wrapper {
    overflow: hidden !important;
    position: fixed;
    left: 50%;
    transition:
      all 0.4s ease-in-out,
      transform 0.4s ease-in-out;
    background: $white;
    border-radius: $radius-lg;
    // padding: 0px 20px;
    width: 75%;
    max-width: calc(1280px - 10%);
    box-shadow: $shadow-md;
    z-index: $z-index-wrapper;
    max-height: 70vh;
    overflow: scroll;
    display: flex;
    flex-direction: column;

    .modal-body {
      height: auto;
      display: flex;
      flex-direction: column;
      width: 100%;
      flex: 1 1 auto;
      overflow-y: auto;

      // Payment with checkout started
      .retry-order-overlay {
        .retry-order-container {
          max-width: 960px;
          margin: 0 auto;

          .chk_payment-options {
            form {
              display: flex;
              flex-direction: column;
              gap: 24px;
            }

            display: flex;
            flex-direction: column;
            margin-block: 12px;

            .chk_payment_options_form {
              display: flex;
              flex-direction: column;
              overflow: hidden;
            }

            .payment_program {
              // padding: 0 12px;

              display: flex;
              flex-direction: column;
              gap: 16px;

              .payment_program_header {
                display: flex;
                justify-content: space-between;
                // gap: 8px;
                align-items: center;

                // margin-bottom: 16px;

                &_label {
                  display: flex;
                  justify-content: space-between;
                  align-items: center;

                  &_title {
                    font-size: 14px;
                    font-weight: 600;
                    color: var(--_gray-600);
                  }
                }

                &_pds {
                  font-size: 14px;
                  font-weight: 600;

                  &_label {
                    font-size: 14px;
                    color: var(--_gray-600);
                  }

                  &_value {
                    font-size: 14px;
                    color: var(--_gray-900);
                  }
                }

                .chk_checkbox_wrapper {
                  display: flex;
                  width: fit-content;
                  align-items: center;
                  gap: 12px;

                  .discard_btn {
                    padding: 12px 16px;
                    border-radius: 4px;
                    color: var(--_gray-600);

                    &:hover {
                      background-color: var(--_gray-100);
                    }
                  }

                  input[type="checkbox"] {
                    display: none;
                  }

                  .payment_program_title {
                    font-size: 16px;
                    font-weight: 700;
                    color: var(--_gray-900);
                  }

                  .chk_shipping_address_use_as_billing_address_chkbx {
                    display: flex;
                    align-items: center;
                    cursor: pointer;
                    gap: 10px;

                    color: var(--_gray-900);
                    font-weight: 500;
                    font-size: 14px;

                    .custom-checkbox {
                      width: 20px;
                      height: 20px;
                      border: 1px solid #d0d5dd;
                      border-radius: 4px;
                      position: relative;
                      background-color: #fff;
                      transition: all 0.2s ease;

                      &::after {
                        content: "";
                        position: absolute;
                        display: none;
                        left: 6px;
                        top: 0.5px;
                        width: 5px;
                        height: 10px;
                        border: solid #fff;
                        border-width: 0 2px 2px 0;
                        transform: rotate(45deg);
                      }
                    }
                  }

                  input[type="checkbox"]:checked+label {
                    .custom-checkbox {
                      background-color: #004dff;
                      border-color: #004dff;

                      &::after {
                        display: block;
                      }
                    }
                  }
                }
              }
            }

            .gift_crd_chk_payment_option {
              border: 1px solid var(--_gray-300);
              border-radius: 6px;

              .add_gift_card {
                display: flex;
                gap: 12px;
                padding: 16px;

                .gc_icon {
                  svg {
                    width: 18px;
                    height: 14px;
                  }
                }

                .gc_info {
                  display: flex;
                  flex-direction: column;
                  gap: 6px;

                  .gc_title {
                    font-size: 14px;
                    font-weight: 600;
                  }
                }
              }

              .payment_heading {
                padding: 16px;

                .chk_payment_options_heading {
                  padding: 0;
                  font-weight: 600;
                }
              }

              // gift card styles
              .chk_gft_crd_wrapper {
                display: flex;
                justify-content: space-between;
                align-items: center;
                padding: 16px 16px 0 16px;

                &_item {
                  display: flex;
                  align-items: center;
                  gap: 16px;

                  &_icon {
                    width: 40px;
                    height: 40px;
                    border: 1px solid var(--_gray-200);
                    border-radius: 6px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                  }

                  &_info {
                    display: flex;
                    flex-direction: column;

                    &_title {
                      font-size: 14px;
                      margin-bottom: 4px;
                      font-weight: 600;
                    }

                    &_desc {
                      display: flex;
                      gap: 4px;

                      &_value {
                        font-size: 12px;
                        color: var(--_gray-600);
                      }

                      &_label {
                        font-size: 12px;
                        color: var(--_gray-900);
                      }
                    }
                  }

                  &_pin {
                    margin-left: 36px;

                    input[type="number"] {
                      border: 1px solid var(--_gray-300);
                      border-radius: 4px;
                      background-color: var(--_base-white);
                      width: 95px;
                      height: 44px;
                      padding-inline: 10px;

                      &:focus {
                        outline: 2px solid var(--_primary-100);
                        border: 1px solid var(--_primary-300);
                      }
                    }
                  }
                }

                &_input {
                  border: 1px solid var(--_gray-300);
                  border-radius: 4px;
                  background-color: var(--_base-white);
                  height: 44px;
                  width: 120px;
                  display: flex;
                  align-items: center;
                  gap: 8px;
                  padding-left: 10px;

                  input[type="number"] {
                    background-color: var(--_base-white);
                    padding-right: 10px;
                  }

                  &:focus-within {
                    outline: 2px solid var(--_primary-100);
                    border: 1px solid var(--_primary-300);
                  }
                }
              }

              .chk_gft_crd_wrapper {
                &_btn {
                  text-align: left;
                  margin-bottom: 16px;
                  color: var(--_thm-py-bs-dt-se-tt-cr);

                  &:hover {
                    text-decoration: underline;
                  }
                }
              }
            }

            .chk_payment_option_wrapper {
              display: flex;
              flex-direction: column;
              overflow: hidden;
              border-radius: 6px;
              border: 1px solid var(--_gray-300);

              .pp_pmnt_method_groups {
                &:not(:last-child) {
                  border-bottom: 1px solid var(--_gray-200);
                  padding-bottom: 16px;
                }

                .pp_ppm_section {
                  background-color: var(--_base-white);
                  border-bottom: 1px solid var(--_gray-300);
                  padding: 14px 12px;

                  display: flex;
                  justify-content: space-between;
                  gap: 8px;

                  .pp_ppm_section_label {
                    font-size: 14px;
                    font-weight: 700;
                    color: var(--_gray-900);
                  }

                  .pp_ppm_section_value {
                    font-size: 14px;
                    font-weight: 600;
                    color: var(--_gray-600);

                    .pp_ppm_section_value_label {
                      font-weight: 500;
                      color: var(--_gray-500);
                    }

                    .pp_ppm_section_value_amount {
                      font-weight: 500;
                      color: var(--_gray-500);
                    }
                  }
                }

                .payment_methods {
                  // padding: 12px;
                  display: grid;
                  gap: 8px;

                  .chk_payment_option {
                    .add_new_credit_card {
                      padding: 16px 16px 0px 16px;
                      display: flex;
                      justify-content: space-between;
                      font-weight: 600;

                      .cc_tertiary_btn {
                        // color: var(--_thm-py-bs-dt-se-tt-cr);
                        color: var(--_thm-cs-tt-ls-as);
                        font-size: 14px;

                        &:hover {
                          text-decoration: underline;
                        }
                      }
                    }

                    .chk_payment_section_wrapper {
                      width: 100%;
                      display: flex;
                      justify-content: space-between;
                      padding: 16px;

                      .chk_payment_section {
                        display: flex;
                        justify-content: space-between;
                        align-items: center;
                        width: 100%;

                        .chk_payment_section_col_left {
                          display: flex;
                          gap: 12px;

                          svg {
                            width: 24px;
                            height: 24px;
                          }

                          .chk_payment_section_method {
                            display: flex;
                            flex-direction: column;

                            .chk_payment_section_method_name {
                              font-size: 14px;
                              font-weight: 700;
                              line-height: 20px;
                              color: var(--_gray-700);
                            }

                            &>div {
                              display: flex;
                              gap: 2px;

                              .label {
                                font-size: 12px;
                                color: var(--_gray-500);
                                font-weight: 400;
                              }

                              .price {
                                font-size: 12px;
                                color: var(--_gray-900);
                                font-weight: 500;
                              }
                            }
                          }
                        }

                        &_col_right {
                          .chk_currency_inp {
                            height: 44px;
                            border: 1px solid var(--_gray-200);
                            border-radius: 4px;
                            background-color: var(--_base-white);
                            display: flex;
                            width: 120px;
                            overflow: hidden;
                            align-items: center;
                            padding-inline: 12px;
                            gap: 12px;
                            padding: 8px 12px;
                            border: 1px solid var(--_gray-300);
                            border-radius: 4px;

                            &:focus-within {
                              border: 1px solid var(--_primary-200);
                              outline: 2px solid var(--_primary-50);
                            }

                            input {
                              height: inherit;
                              background-color: var(--_base-white);

                              &:disabled {
                                opacity: 0.8;
                                cursor: not-allowed;
                              }
                            }
                          }
                        }
                      }

                      .chk_payment_options_heading {
                        color: var(--_gray-900);
                        font-size: 16px;
                        font-weight: 700;

                        .chk_primary_btn_link {}
                      }

                      // payment other options styles
                      .chk_pmnt_other_options {
                        display: flex;
                        justify-content: space-between;
                        gap: 80px;
                        padding: 16px;

                        .chk_pmnt_other_options_left_container {
                          display: flex;
                          gap: 12px;

                          .chk_pmnt_option_info_wrapper {
                            display: flex;
                            gap: 12px;

                            .cards {
                              display: flex;
                              flex-direction: column;
                              gap: 8px;

                              .chk_payment_options_name {
                                font-weight: 600;
                              }

                              span {
                                font-size: 12px;

                                .chk_payment_options_label {
                                  color: var(--_gray-600);
                                }

                                .chk_payment_options_value {
                                  color: var(--_gray-900);
                                }
                              }
                            }
                          }
                        }

                        .chk_pmnt_other_options_container {
                          padding: 16px;
                        }
                      }

                      &__other_option_wrapper {
                        display: flex;
                        width: 100%;
                        justify-content: space-between;
                        padding: 16px;

                        @media (max-width: 500px) {
                          flex-direction: column;
                        }
                      }

                      &_left_container {
                        display: flex;
                        gap: 12px;
                        align-items: flex-start;

                        .chk_payment_option__info_wrapper {
                          display: flex;
                          gap: 0px;
                        }

                        @media (max-width: 500px) {
                          flex-wrap: wrap;
                        }
                      }

                      &__left_wrapper {
                        display: flex;
                        flex-direction: column;
                        align-items: flex-start;
                        gap: 16px;
                      }

                      &__card_icon {
                        width: 60px;
                        height: 40px;
                      }

                      &__info_wrapper {
                        display: flex;
                        flex-direction: column;
                      }

                      &_right_container {
                        display: flex;
                        gap: 6px;
                        align-items: flex-start;

                        @media (max-width: 500px) {
                          justify-content: flex-end;
                        }
                      }

                      &_input {
                        display: flex;
                        padding: 9px 12px;
                        align-items: center;
                        max-width: 96px;
                        background-color: var(--_base-white);
                        border: 1px solid var(--_gray-300);
                        border-radius: 6px;
                        color: var(--_gray-700);

                        &:focus-within {
                          border: 1px solid var(--_primary-300);
                          outline: 2px solid var(--_primary-100);
                        }

                        .icon {
                          svg {
                            path {
                              stroke: var(--_thm-py-bs-dt-se-tt-cr);
                            }
                          }
                        }

                        .input_field {
                          background-color: var(--_base-white);
                          border: 1px solid var(--_gray-300);
                          border-radius: 6px;
                          color: var(--_gray-700);

                          &:focus-within {
                            border: 1px solid var(--_primary-300);
                            outline: 2px solid var(--_primary-100);
                          }
                        }
                      }
                    }

                    .chk_cred_form_details {
                      border-top: 1px solid var(--_gray-100);
                      padding: 16px;

                      .chk_basic_form_title {
                        font-size: 14px;
                        margin-bottom: 16px;
                        font-weight: 600;
                      }

                      .chk_form_fields {
                        h3 {
                          font-size: 14px;
                          margin-bottom: 8px;
                        }

                        display: flex;
                        flex-direction: column;
                        gap: 24px;
                        width: 500px;

                        .chk_form_field {
                          width: 100%;

                          &.expiry_details {
                            width: 80px;
                          }

                          display: flex;
                          flex-direction: column;
                          gap: 6px;
                          width: 100%;

                          .chk_form_field_label {
                            // font-size: 14px;
                            // color: var(--_gray-600);
                            padding-bottom: 2px;
                            color: var(--_gray-700);
                          }

                          .chk_form_field_inp {
                            width: -webkit-fill-available;
                            height: 40px;
                            background-color: var(--_base-white);
                            color: var(--_gray-600);
                            border: 1px solid var(--_gray-300);
                            border-radius: 6px;
                            height: 40px;
                            padding: 8px 12px;

                            &::placeholder {
                              color: var(--_gray-600);
                            }

                            input &:focus-within {
                              border: 1px solid var(--_primary-300);
                              outline: 2px solid var(--_primary-100);
                            }
                          }

                          .error_msg {
                            display: block;
                            color: var(--_error-700);
                            font-size: 12px;
                          }
                        }

                        .checkbox {
                          width: auto;

                          label {
                            display: flex;
                            align-items: center;
                            gap: 8px;
                            cursor: pointer;
                            position: relative;
                            user-select: none;

                            input[type="checkbox"] {
                              display: none;

                              &:checked+.custom-checkbox::after {
                                opacity: 1;
                              }
                            }

                            .custom-checkbox {
                              width: 16px;
                              height: 16px;
                              border: 2px solid var(--_thm-py-bs-dt-se-br-cr);
                              border-radius: 4px;
                              position: relative;
                              display: inline-block;
                              box-sizing: border-box;

                              &::after {
                                content: "";
                                position: absolute;
                                left: 3px;
                                top: 0px;
                                width: 4px;
                                height: 8px;
                                border: solid var(--_thm-py-bs-dt-se-br-cr);
                                border-width: 0 1px 1px 0;
                                transform: rotate(45deg);
                                opacity: 0;
                                transition: opacity 0.2s ease-in-out;
                              }
                            }
                          }
                        }

                        .expiry_details {
                          display: flex;
                          gap: 12px;

                          .cvv_inp {
                            width: 110px;
                          }
                        }
                      }

                      .chk_form_actions {
                        display: flex;
                        gap: 12px;

                        .chk_sav_btn {
                          padding: 12px 16px;
                          background-color: var(--_thm-py-bs-dt-se-bd-cr);
                          border-radius: 6px;
                          color: var(--_base-white);
                          font-size: 14px;

                          &:hover {
                            background-color: var(--_primary-500);
                          }
                        }

                        .chk_can_btn {
                          padding: 12px 16px;
                          background-color: transparent;
                          border-radius: 6px;
                          color: var(--_gray-600);
                          padding-inline: 10px;
                          font-size: 14px;

                          &:hover {
                            background-color: var(--_gray-50);
                            color: var(--_gray-900);
                          }
                        }
                      }
                    }
                  }

                  .add_credit_card {
                    display: flex;
                    gap: 12px;
                    padding: 16px;

                    .cc_icon {
                      svg {
                        width: 18px;
                        height: 14px;
                      }
                    }

                    .cc_info {
                      display: flex;
                      justify-content: space-between;
                      width: 100%;
                      gap: 6px;

                      .cc_title {
                        font-size: 14px;
                        font-weight: 600;
                      }
                    }

                    .chk_payment_cred_section_col_right {
                      .chk_currency_inp_sec {
                        display: flex;
                        justify-content: end;

                        .chk_currency_inp {
                          border: 1px solid var(--_gray-200);
                          min-width: 100px;
                          display: flex;
                          gap: 12px;
                          height: 40px;
                          border-radius: 4px;
                          align-items: center;
                          max-width: 120px;
                          padding-inline: 12px;
                        }
                      }

                      .cur_conversion {
                        font-size: 14px;
                      }
                    }
                  }

                  .add_new_credit_card {
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    padding-inline: 16px;
                  }

                  .cc_tertiary_btn {
                    // color: var(--_thm-py-bs-dt-se-tt-cr);
                    color: var(--_thm-cs-tt-ls-as);

                    &:hover {
                      // color: var(--_primary-500);
                      color: var(--_thm-cs-tt-ls-as);
                      text-decoration: underline;
                    }
                  }
                }
              }
            }

            .payment_heading {
              display: flex;
              justify-content: space-between;
              border-bottom: 1px solid var(--_gray-100);
              font-weight: 600;
              gap: 8px;
            }

            .gc_tertiary_btn {
              color: var(--_thm-py-bs-dt-se-tt-cr);
              font-size: 14px;
              line-height: auto;

              &:hover {
                color: var(--_thm-py-bs-hr-se-tt-cr);
                text-decoration: underline;
              }
            }

            .chk_payment_options_heading {
              color: var(--_gray-900);
              font-size: 16px;
              font-weight: 700;
              display: flex;
              justify-content: space-between;
              gap: 8px;
              display: flex;
              justify-content: space-between;
              gap: 8px;
            }
          }

          .chk_payment_cred_section {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 16px 16px 8px 16px;

            .chk_currency_inp {
              height: 44px;
              border: 1px solid var(--_gray-200);
              border-radius: 4px;
              background-color: var(--_base-white);
              display: flex;
              width: 120px;
              overflow: hidden;
              align-items: center;
              padding: 8px 12px;
              gap: 12px;

              &:focus-within {
                border: 1px solid var(--_primary-200);
                outline: 2px solid var(--_primary-50);
              }

              input {
                height: inherit;
                background-color: var(--_base-white);

                &:disabled {
                  opacity: 0.8;
                  cursor: not-allowed;
                }
              }
            }

            .chk_payment_cred_section_col_left {
              .chk_payment_cred_section_col_left_crd_details {
                display: flex;
                gap: 80px;
                align-items: center;

                &>div {
                  display: flex;
                  gap: 12px;

                  .card_icon {
                    width: 60px;
                    height: 40px;
                    border-radius: 4px;
                  }

                  .card_details {
                    .card_details_num {
                      font-weight: 600;
                      color: var(--_gray-900);
                      font-size: 14px;
                      line-height: 20px;
                    }

                    &>div {
                      display: flex;

                      .card_details_label {
                        color: var(--_gray-500);
                        font-size: 12px;
                        font-weight: 400;
                      }

                      .card_details_value {
                        color: var(--_gray-900);
                        font-size: 12px;
                        font-weight: 500;
                      }
                    }
                  }
                }
              }
            }
          }

          // giftcard form styles
          .chk_gift_card_details {
            border-top: 1px solid var(--_gray-300);
            padding: 16px;

            .chk_gift_card_form {
              display: flex;
              flex-direction: column;
              gap: 16px;
              max-width: 480px;

              .chk_gift_cart_form_title {
                font-size: 14px;
                font-weight: 600;
              }

              .chk_gift_form_fields {
                display: flex;
                gap: 12px;
                width: 100%;

                .chk_gift_inp_field {
                  display: flex;
                  flex-direction: column;
                  gap: 6px;
                  width: 100%;

                  label {
                    color: var(--_gray-600);
                  }

                  .chk_gift_inp {
                    border: 1px solid var(--_gray-300);
                    border-radius: 6px;
                    height: 40px;
                    padding-inline: 10px;

                    &:placeholder-shown {
                      padding-left: 10px;
                      color: var(--_gray-400);
                    }

                    &:focus {
                      border: 1px solid var(--_primary-300);
                      outline: 2px solid var(--_primary-100);
                    }
                  }

                  &.pin {
                    width: 110px;
                  }

                  .error_msg {
                    display: block;
                    color: var(--_error-700);
                    font-size: 12px;
                  }
                }

                .error_msg {
                  color: var(--_error-700);
                  font-size: 14px;
                }
              }
            }
          }

          .chk_form_actions {
            display: flex;
            gap: 12px;

            .chk_sav_btn {
              padding: 12px 16px;
              background-color: var(--_thm-py-bs-dt-se-bd-cr);
              border-radius: 6px;
              color: var(--_base-white);
              font-size: 14px;

              &:hover {
                background-color: var(--_thm-py-bs-hr-se-bd-cr);
              }
            }

            .chk_can_btn {
              padding: 12px 16px;
              background-color: transparent;
              border-radius: 6px;
              color: var(--_gray-600);
              padding-inline: 10px;
              font-size: 14px;

              &:hover {
                background-color: var(--_gray-50);
                color: var(--_gray-900);
              }
            }
          }
        }
      }

      // Payment with checkout end

      .dropdown-with-input-section {

        // border: 0.5px solid var(--_gray-300);
        .dropdown-menu {
          margin-left: -7px !important;
        }
      }

      .wishlist-modal {
        display: flex;
        flex-direction: column;
        width: 100%;

        .wishlist-modal-section {
          padding: 16px 24px 24px 24px;
          gap: 16px !important;
          overflow-x: hidden;
          display: flex;
          flex-direction: column;

          input[type="text"] {
            height: 40px;
            border: 1px solid var(--_gray-300);
            border-radius: 6px;
            padding-inline: 16px;
          }
        }
      }

      // .action-buttons {
      //   display: flex;
      //   gap: 1rem;
      //   align-items: center;
      //   justify-content: flex-end;
      //   flex: 1 1 auto;
      //   padding: 16px 24px;
      //   border-top: 1px solid var(--_gray-200);
      //   gap: 12px;
      //   button {
      //     padding: 12px 16px;
      //     border-radius: 6px;
      //   }
      //   .create-btn {
      //     display: flex;
      //     justify-content: center;
      //     align-items: center;
      //     gap: 8px;
      //     background-color: var(--_thm-py-bs-dt-se-tt-cr);
      //     color: var(--_base-white);
      //     &.disabled {
      //       opacity: 0.5;
      //       pointer-events: none;
      //     }
      //     .loader {
      //       animation: rotate-icon 1s linear infinite;
      //       display: inline-block;
      //       transform-origin: center;

      //       svg path {
      //         stroke: var(--_primary-200);
      //       }
      //     }

      //     &:hover {
      //       background-color: var(--_primary-500);
      //     }
      //   }
      //   .discard-btn {
      //     &:hover {
      //       background-color: var(--_gray-50);
      //       color: var(--_gray-900);
      //     }
      //   }
      // }

      // processing loader
      .pmnt_process_container {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        width: 100%;
        background-color: var(--_gray-100);

        .process_load_wrapper {
          .process_loader_content {
            display: flex;
            flex-direction: column;
            /* gap: 8px; */
            justify-content: center;
            align-items: center;

            p {
              margin-top: 8px;
            }

            .process_loader_box {
              .processing_loader {
                position: relative;
                width: 64px;
                height: 64px;
                margin-bottom: 24px;

                &::before,
                &::after {
                  content: "";
                  position: absolute;
                  border-radius: 50%;
                }

                // Background stroke
                &::before {
                  width: 100%;
                  height: 100%;
                  border: 6px solid #e0e0e0;
                }

                // Animated stroke
                &::after {
                  width: 100%;
                  height: 100%;
                  border: 6px solid transparent;
                  border-top-color: #243dc6;
                  animation: processing_loader_spin 1s linear infinite;
                }
              }

              h3 {
                margin-block: 10px;
              }
            }

            @keyframes processing_loader_spin {
              0% {
                transform: rotate(0deg);
              }

              100% {
                transform: rotate(360deg);
              }
            }
          }
        }
      }
    }

    &.fullscreen {
      transition:
        all 0.5s ease-in-out,
        transform 0.5s ease-in-out;
      top: 50%;
      left: 50%;
      width: 99vw;
      height: 98vh;
      border-radius: $radius-lg;
      transform: translate(-50%, -50%);
      box-shadow: none;
      z-index: $z-index-modal;
      display: flex;
      flex-direction: column;
      // max-height: 100vh;
      // max-width: 1200px;
      max-height: calc(100vw - 12px);
      max-width: calc(100vw - 12px);

      .product-list {
        flex: 1;
        overflow-y: auto;
        margin-top: 24px;
      }

      .footer-bar {
        border-top: 1px solid $gray-300;
        margin: 0px;
        padding: 10px 16px;
        display: flex;
        align-items: center;
      }
    }

    &.center {
      top: 50%;
      transform: translate(-50%, -50%);
    }

    &.bottom {
      bottom: 5%;
      transform: translate(-50%, 0%);
      height: 100%;
    }

    .top-bar-emp-bulk-order {
      position: sticky;
      top: 0;
      background: $white;
      z-index: var(--_higher-zIndex);
      // padding: 0 16px;
      border-bottom: 1px solid #d0d5dd;

      .title-bar {
        display: flex;
        justify-content: space-between;
        align-items: center;
        // padding: 15px 0px;
        // height: 60px;
        padding: 8px 8px 8px 16px;

        .left-col {
          .title {
            color: var(--_gray-900);
            font-size: 16px;
            font-weight: 600;
            line-height: 24px;
            display: flex;
            gap: 8px;
            align-items: center;

            span {
              display: flex;

              svg {
                width: 20px;
                height: 20px;
              }
            }

            .modal_heading_icon {
              display: flex;
              align-items: center;
              justify-content: center;

              svg {
                width: 20px;
                height: 20px;
              }
            }

            .count {
              font-weight: 700;
              color: $gray-600;
              background-color: #f2f4f7;
              border-radius: 6px;
              font-size: $font-size-sm;
              // width: 25px;
              height: 25px;
              padding: 0 8px;
              display: flex;
              // align-items: center;
              justify-content: center;
            }
          }
        }

        .right_col {
          display: flex;
          align-items: center;
          gap: 12px;

          .bulk-order-pad-header-body {
            .checkout_btn {
              padding: 8px 16px;
              border-radius: 4px;
              background-color: var(--_thm-cs-at-py);
              color: var(--_base-white);
            }
          }

          .employee_bulk_order_header {
            display: flex;
            justify-self: end;
            align-items: center;

            .single_payment_action {
              display: flex;
              align-items: center;
              gap: 6px;
            }

            .svg_icon {
              display: flex;
              align-items: center;
              cursor: pointer;
            }

            .employee_bulk_order_header_item {
              color: #344054;
              font-size: 14px;
              display: flex;
              justify-content: center;
              align-items: center;
              gap: 4px;
              position: relative;
              line-height: 20px;

              &:after {
                content: "";
                width: 1px;
                height: 24px;
                background: #d0d5dd;
                position: absolute;
                right: -12px;
              }

              .single_checkout_sec_opt {
                display: flex;
                gap: 8px;
              }

              .disabled {
                opacity: 0.4;
              }
            }

            .emp_info {
              display: flex;
              padding-right: 16px;

              .emp_info_item {
                color: var(--_gray-600);
                font-size: 14px;
                display: flex;
                justify-content: center;
                align-items: center;
                position: relative;
                line-height: 20px;

                .emp_count {
                  font-size: 16px;
                  color: var(--_gray-900);
                  font-weight: 600;
                  margin-left: 4px;
                }

                &:not(:last-child):after {
                  content: "";
                  background: var(--_gray-400);
                  width: 4px;
                  height: 4px;
                  border-radius: 50%;
                  margin-inline: 8px;
                  display: inline-block;
                }

                .single_checkout_sec_opt {
                  display: flex;
                  gap: 8px;
                }

                .disabled {
                  opacity: 0.4;
                }
              }
            }

            .emp_options_wrapper {
              display: flex;
              align-items: center;
              gap: 8px;

              &::after {
                content: "";
                display: inline-block;
                height: 20px;
                background-color: var(--_gray-200);
                width: 1px;
                margin-inline-start: 18px;
              }

              &::before {
                content: "";
                display: inline-block;
                height: 20px;
                background-color: var(--_gray-200);
                width: 1px;
                margin-inline: 8px;
              }

              .user_icon {
                width: 30px;
                height: 30px;
                display: flex;
                justify-content: center;
                align-items: center;
                cursor: pointer;

                &.active {
                  background-color: var(--_gray-50);
                }

                &>span {
                  display: flex;
                }

                &:hover {
                  background-color: var(--_gray-100);
                }
              }

              .emp_options {
                position: absolute;
                top: 44px;
                width: 300px;
                background-color: var(--_base-white);
                border: 1px solid var(--_gray-200);
                border-radius: 4px;
                z-index: 10;
                box-shadow: 0 0 24px rgba(0, 0, 0, 0.1);

                .emp_options_header {
                  padding: 12px;
                  font-size: 14px;
                  font-weight: 600;
                  color: var(--_gray-600);
                  border-bottom: 1px solid var(--_gray-200);
                }

                .emp_options_list {
                  padding: 12px;

                  .emp_options_list_item {
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    gap: 8px;

                    .emp_options_list_item_label {
                      display: flex;
                      gap: 12px;
                    }

                    // &:hover {
                    //   background-color: var(--_primary-25);
                    //   color: var(--_thm-py-bs-dt-se-tt-cr);
                    // }
                  }

                  p {
                    font-size: 12px;
                    color: var(--_gray-500);
                    padding-block: 4px 16px;
                  }
                }

                .emp_options_footer {
                  display: flex;
                  border-top: 1px solid var(--_gray-200);

                  &>div {
                    flex-basis: 50%;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    padding: 16px;
                    cursor: pointer;

                    &:first-child {
                      border-right: 1px solid var(--_gray-200);
                    }

                    &:hover {
                      background-color: var(--_primary-25);

                      svg path {
                        stroke: var(--_thm-py-bs-dt-se-tt-cr);
                      }
                    }
                  }
                }
              }
            }

            .em_or_ss_wp {
              position: relative;

              &:hover {
                .em_or_ss_wp_cr {
                  display: block;
                }

                .em_or_ss_wp_bn {
                  background-color: var(--_gray-50);
                }
              }

              .em_or_ss_wp_bn {
                display: flex;
                justify-content: center;
                align-items: center;
                /* border: 1px solid red; */
                height: 30px;
                width: 40px;

                cursor: pointer;
                top: 120%;

                &.disabled {
                  opacity: 0.5;
                  pointer-events: none;
                }
              }

              .em_or_ss_wp_cr {
                position: absolute;
                z-index: calc(var(--_higher-zIndex) + var(--_emp-bulk-order-settings-zIndex));
                min-width: 200px;
                min-height: 100px;
                border-radius: 4px;
                background-color: var(--_base-white);
                box-shadow: 0px 0px 24px rgb(0, 0, 0, 0.1);
                display: none;

                .em_or_ss_wp_cr_hr {
                  color: var(--_gray-600);
                  font-weight: 600;
                  font-size: 14px;
                  padding: 12px;
                  border-bottom: 1px solid var(--_gray-200);
                }

                ul {
                  list-style: none;

                  li {
                    padding: 10px 12px;
                    font-size: 14px;
                    font-weight: normal;
                    color: var(--_gray-700);
                    display: flex;
                    align-items: center;
                    gap: 12px;
                    cursor: pointer;
                    margin: 4px;
                    border-radius: 4px;

                    &>span svg path {
                      stroke: var(--_gray-500);
                    }

                    &>span {
                      display: flex;
                    }

                    &:hover {
                      background-color: var(--_primary-25);
                      color: var(--_thm-py-bs-dt-se-tt-cr);
                    }
                  }
                }
              }
            }

            .emp_btns {
              display: flex;
              align-items: center;
              gap: 12px;

              &::after {
                content: "";
                display: inline-block;
                height: 20px;
                width: 1px;
                background-color: var(--_gray-200);
              }

              &::before {
                content: "";
                display: inline-block;
                height: 20px;
                width: 1px;
                background-color: var(--_gray-200);
              }

              .emp_btn {
                padding: 8px 12px;
                border-radius: 4px;
                text-decoration: none;

                &.emp_primary {
                  color: var(--_base-white);
                  background-color: var(--_primary-500);

                  &:hover {
                    background-color: var(--_primary-500);
                  }
                }

                &.emp_tertiary_secondary {
                  color: var(--_gray-600);
                  margin-inline: 4px;

                  &:hover {
                    background-color: var(--_gray-50);
                    color: var(--_gray-900);
                  }
                }
              }
            }

            .emp_review_cart_btn {
              padding: 8px 16px;
              border: 1px solid var(--_gray-300);
              border-radius: 6px;
              color: var(--_gray-700);
              cursor: pointer;

              &:hover {
                background-color: var(--_gray-50);
              }
            }

            .emp_discard_btn {
              padding-inline: 16px;
              border-radius: 6px;
              color: var(--_gray-700);
              cursor: pointer;
              height: 32px;
              display: flex;
              align-items: center;

              &.disabled {
                pointer-events: none;
                opacity: 0.8;
              }

              &:hover {
                background-color: var(--_gray-50);
              }
            }

            .action_item {
              cursor: pointer;
            }

            .em_order_settings_act {
              width: 40px;
            }

            .em_btn_act {
              padding-inline: 16px;
              height: 32px;
              border-radius: 4px;
            }

            .em_review_btn {
              background: #243dc6;
              color: #fff;
            }

            .em_btn_act_disabled {
              pointer-events: none;
              opacity: 0.8;
            }
          }
        }

        .actions {
          display: flex;
          align-items: center;
          gap: 12px;
          margin-left: 12px;

          svg {
            width: 16px;
            height: 16px;

            path {
              stroke: var(--_gray-600);
            }
          }

          span {
            width: 32px;
            height: 32px;
            cursor: pointer;
            font-size: 16px;
            color: $text-light;
            transition: color 0.2s;
            display: flex;
            align-items: center;
            justify-content: center;

            &[title="Enter Fullscreen"] {
              svg {
                width: 14px;
                height: 14px;

                path {
                  stroke: var(--_gray-500);
                }
              }
            }

            &:hover {
              color: var(--_gray-900);
              background-color: var(--_gray-100);
              border-radius: 4px;

              svg path {
                stroke: var(--_gray-900);
              }
            }
          }

          .sc_modal-close svg {
            width: 20px !important;
            height: 20px !important;
          }
        }
      }

      .input-group {
        display: flex;
        gap: 12px;

        .qty-input {
          padding: $input-padding;
          border: 1px solid $gray-400;
          border-radius: $radius;
          font-size: $font-size-base;
          transition: border 0.2s;
          width: 120px;

          &:focus {
            border-color: $primary;
            outline: none;
          }
        }

        .or-text {
          align-self: center;
          font-weight: 600;
          color: $gray-800;
          font-size: $font-size-base;
        }

        .add-btn {
          background-color: $primary;
          color: $white;
          padding: 10px 16px;
          border-radius: $radius;
          font-weight: 600;
          font-size: $font-size-base;
          cursor: pointer;
          transition: background-color 0.2s;

          &:hover {
            background-color: $primary-hover;
          }
        }
      }
    }

    .footer-bar {
      position: sticky;
      bottom: 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 10px 16px;
      border-top: 1px solid $gray-300;
      font-size: $font-size-base;
      background: $footer_btn_background_color;

      .summary {
        display: flex;
        gap: 24px;

        span {
          font-weight: 700;
          line-height: 20px;
          font-size: 14px;
          color: var(--_gray-900);

          .footer_label {
            font-weight: 400;
            color: var(--_gray-500);
          }
        }
      }

      .footer-actions {
        display: flex;
        gap: 12px;

        .cancel-btn {
          // border-radius: $radius;
          padding: 10px 14px;
          // font-weight: 500;
          // font-size: $font-size-base;
          // color: var(--_gray-900);
          // cursor: pointer;
          // transition: background 0.2s;

          // &:hover {
          //   background: var(--_gray-100);
          // }
        }

        .cart-btn {
          // background: $primary;
          // color: $white;
          // border-radius: $radius;
          padding: 10px 16px;
          // font-weight: 600;
          // font-size: $font-size-base;
          // display: flex;
          // align-items: center;
          // gap: 8px;
          // cursor: pointer;
          // transition: background 0.2s;
          // span {
          //   display: flex;
          // }
          // svg path {
          //   stroke: var(--_base-white);
          // }

          // &:hover {
          //   background: $primary-hover;
          // }
          &>span {
            display: flex;

            svg path {
              stroke: var(--_base-white);
            }
          }

          &.disabled {
            opacity: 0.4;
            pointer-events: none;
          }
        }
      }
    }
  }

  .modalV2-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: $z-index-backdrop;
  }

  .modalV2-min {
    position: fixed;
    transition:
      all 0.4s ease-in-out,
      transform 0.4s ease-in-out;
    right: 20px;
    bottom: 20px;
    padding: 0;
    /* Remove padding from the main min container */
    border-radius: $radius;
    box-shadow: $shadow-md;
    z-index: $z-index-minimized;
    display: none;
    flex-direction: row;
    /* Align items in a row */
    align-items: center;
    gap: 10px;
    /* Adjust gap between elements */
    font-size: $font-size-base;
    background-color: transparent;
    /* Make the main container transparent */

    .min-toolbar {
      background-color: var(--_base-white);
      display: flex;
      align-items: center;
      /* Align items vertically in the toolbar */
      padding-inline-start: 16px;
      /* Add padding to the toolbar */
      border-radius: $radius 0 0 $radius;
      /* Rounded left corners */
      gap: 16px;
    }

    &.no-cart-btn {
      .min-toolbar {
        border-radius: $radius;
        padding-inline-end: 12px;
      }
    }

    &.active {
      display: flex;
      background-color: var(--_base-white);
    }

    .cart-btn {
      background: $primary;
      color: $white;
      border: none;
      /* Remove border */
      border-radius: 0 $radius $radius 0;
      /* Rounded right corners */
      padding: 12px 16px;
      font-weight: 600;
      font-size: $font-size-sm;
      display: flex;
      align-items: center;
      gap: 4px;
      cursor: pointer;
      transition: background 0.2s;
      z-index: $z-index-min-cart;

      &:hover {
        background: $primary-hover;
      }
    }

    .actions {
      display: flex;
      gap: 8px;

      span {
        cursor: pointer;
        font-size: 16px;
        color: $text-light;
        transition: color 0.2s;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;

        &:hover {
          background-color: var(--_gray-50);
          border-radius: 4px;

          svg path {
            stroke: var(--_gray-900);
          }
        }

        &[title="Maximize"] {
          svg {
            width: 14px;
            height: 14px;
          }
        }

        &[title="close"] {
          svg {
            width: 20px;
            height: 20px;
          }
        }

        svg {
          width: 20px;
          height: 20px;
        }

        &:hover {
          color: $black;
        }
      }
    }
  }

  .action-buttons {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: flex-end;
    flex: 1 1 auto;
    padding: 16px 24px;
    border-top: 1px solid var(--_gray-200);
    gap: 12px;

    button {
      padding: 12px 16px;
      border-radius: 6px;
    }

    .create-btn {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 8px;
      background-color: var(--_thm-py-bs-dt-se-bd-cr);
      color: var(--_base-white);

      &.disabled {
        opacity: 0.5;
        pointer-events: none;
      }

      .loader {
        animation: rotate-icon 1s linear infinite;
        display: inline-block;
        transform-origin: center;

        svg path {
          stroke: var(--_primary-200);
        }
      }

      &:hover {
        background-color: var(--_primary-500);
      }
    }

    .discard-btn {
      &:hover {
        background-color: var(--_gray-50);
        color: var(--_gray-900);
      }
    }
  }
}

@keyframes rotate-icon {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}