@font-face {
  font-family: "Poppins";
  src: url(../Fonts/Poppins/Poppins-Regular.ttf);
}

@font-face {
  font-family: "Alkatra";
  src: url(../Fonts/Alkatra/Alkatra-VariableFont_wght.ttf);
}

@font-face {
  font-family: "Lora";
  src: url(../Fonts/Lora/Lora-VariableFont_wght.ttf);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-decoration: none;
}

body {
  background: url(../Images/indexPhotos/Background2.png) lightgray 50% / cover
    no-repeat;
  display: flex;
  background-color: #88858534 !important;
  background-blend-mode: darken !important;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
}

.container {
  position: relative;
  width: 850px;
  height: 650px;
  background: #fff;
  margin: 20px;
  border-radius: 30px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.container h1 {
  font-family: "Poppins";
  font-weight: bold;
  font-size: 36px;
  margin: 12px 0;
}

#signUpTitle {
  margin-top: 2.2vw !important;
}
.welcome {
  font-family: "Alkatra" !important;
  text-align: center;
  padding: 0.5vw;
}

.mamyrLogo {
  height: 70px;
  margin-top: 1vw;
}

.container p {
  font-size: 14.5px;
  margin: 15px 0;
}

.back-icon-container-login {
  position: absolute;
  left: 8%;
  top: 8%;
}

.back-icon-container-signup {
  position: absolute;
  right: 3vw;
  margin-top: -70vh;
}

.backArrow {
  margin-top: -1vw;
}

form {
  width: 100%;
}

.form-box {
  font-family: "Poppins";
  position: absolute;
  right: 0;
  width: 50%;
  height: 100%;
  background: #fff;
  display: flex;
  align-items: center;
  color: #333;
  text-align: center;
  padding: 40px;
  z-index: 1;
  transition: 0.6s ease-in-out 1.2s, visibility 0s 1s;
}

.container.active .form-box {
  right: 50%;
}

.form-box.register {
  visibility: hidden;
}
.container.active .form-box.register {
  visibility: visible;
}

.input-box {
  position: relative;
  margin: 25px 0;
}

.input-box input {
  width: 100%;
  padding: 13px 50px 13px 20px;
  background: #ffffff;
  border-radius: 8px;
  border: 1px solid #eee;
  outline: none;
  font-size: 16px;
  color: #333;
  font-weight: 500;
}

.input-box input::placeholder {
  color: #888;
  font-weight: 400;
}

.input-box i {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  z-index: 1;
}

input[type="password"]::-ms-reveal,
input[type="password"]::-webkit-contacts-auto-fill-button,
input[type="password"]::-webkit-search-cancel-button {
  display: none;
}

.bx.bxs-user-circle {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
}

.fullName {
  padding: 0 !important;
  width: 100%;
  display: flex !important;
  gap: 2vw;
  margin-top: -1vw;
}

.passwordContainer {
  padding: 0 !important;
  width: 100%;
  display: flex !important;
  gap: 2vw;
  margin-top: -1.5rem;
}

.progress {
  height: 0.8rem !important;
  text-transform: capitalize;
}

.userInfo {
  margin-top: -1.5vw;
}
#firstName,
#lastName {
  width: 100%;
}

.forgot-link {
  margin: -15px 0 15px;
}
.forgot-link a {
  text-decoration: none;
  font-size: 14.5px;
}

.btn {
  font-family: "Lora";
  width: 100%;
  height: 48px;
  background: #44b3f8;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  border: none;
  cursor: pointer;
  font-size: 16px;
  color: #fff;
  font-weight: 600;
}

div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm) {
  background-color: #0865b1 !important;
}

.signUpSection {
  margin-top: 2vw;
}
.toggle-box {
  width: 100%;
  height: 100%;
}

.toggle-box::before {
  content: "";
  position: absolute;
  left: -250%;
  width: 300%;
  height: 100%;
  background: #44b3f8;
  border-radius: 220px;
  z-index: 2;
  transition: 1.8s ease-in-out;
}

.container.active .toggle-box::before {
  left: 50%;
}

.toggle-panel {
  position: absolute;
  width: 50%;
  height: 100%;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 2;
  transition: 0.6s ease-in-out;
}

.toggle-panel.toggle-left {
  left: 0;
  transition-delay: 1.2s;
}
.container.active .toggle-panel.toggle-left {
  left: -50%;
  transition-delay: 0.6s;
}

.toggle-panel.toggle-right {
  right: -50%;
  transition-delay: 0.6s;
}
.container.active .toggle-panel.toggle-right {
  right: 0;
  transition-delay: 1.2s;
}

.toggle-panel p {
  margin-bottom: 20px;
  font-family: "Poppins";
}

.toggle-panel .btn {
  font-family: "Lora";
  width: 160px;
  height: 46px;
  background: transparent;
  border: 2px solid #fff;
  box-shadow: none;
}

#signUp {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}

.loginMessageBox {
  color: red;
  width: 100%;
  height: 5vh;
  position: absolute;
  left: 50%;
  bottom: 10.9%;
  transform: translateX(-50%);
}
.successMsg {
  color: green;
}

.emailErrorMsg {
  position: absolute;
  bottom: 30.5%;
  width: 80%;
  color: red;
}

.signUpLink {
  text-decoration: none;
  font-size: 16px;
  border: none;
  background-color: transparent !important;
  color: #0d6dfc;
}

.signUpLink:hover {
  color: #0148b4;
}

.confirmErrorMsg {
  width: 88%;
  font-size: 15px;
  position: absolute;
  color: red;
  margin-top: 5rem;
}

#passwordMatch {
  margin-top: 7.5vw;
}

#terms {
  margin-top: 1.5rem;
}

.termsSection {
  margin-top: 1rem;
}

#termsError {
  position: absolute;
  color: red;
  text-align: center !important;
  width: 85%;
  font-size: 15px;
  margin-top: -0.2rem;
}

#signUp {
  margin-top: 1.5vw;
  margin-bottom: 1rem;
}
/* modal css */

.modal-dialog {
  max-width: 60%;
}
.modal-body {
  max-height: 500px;

  overflow-y: auto !important;
}
.modal-title {
  margin: auto;
  font-size: 2vw;
}

.modal-footer {
  display: flex;
  margin: auto;
}

#declineBtn,
#acceptBtn {
  width: 15vw;
  border-radius: 30px;
}

/*end of modal css */

/* user type modal */
.btn-close {
  margin: 0 !important;
  position: absolute;
  right: 1.5%;
}

.user-category {
  display: flex;
  justify-content: center;
}

#usertype-modal-content {
  width: 90rem !important;
}

#userType-modal-label {
  font-size: 22px;
  display: block !important;
  margin: auto !important;
}
.category-card {
  width: 15rem;
  height: 22rem !important;
}
.category-card,
.category-body {
  margin: 1vw;
  border-radius: 2vw 2vw 2vw 2vw !important;
  text-align: center;
}

.category-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1vw;
}

.category-card img {
  object-fit: cover;
  width: 12rem;
  height: auto;
  margin: auto;
}

.category-title {
  font-family: "Poppins Black" !important;
  font-style: italic;
  font-weight: bolder;
  font-size: 18px;
  color: #0865b1 !important;
}

.card-text {
  color: black;
  font-size: 16px;
}

a.categoryLink {
  text-decoration: none;
  &:hover {
    text-decoration: none !important;
  }
}

.categoryLink .category-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.categoryLink:hover .category-card {
  transform: translateY(-12px);
  box-shadow: 0 8px 8px rgba(0, 0, 0, 0.2);
}
/* user type modal */

@media screen and (max-width: 650px) {
  .container {
    height: calc(110vh - 40px);
  }

  .form-box {
    width: 100% !important;
  }

  .login {
    height: 100%;
  }

  #register {
    align-items: baseline !important;
  }

  .form-box .toggle-left {
    margin-top: 5vw !important;
    padding: 1vw;
  }

  h1 {
    font-size: 25px !important;
  }
  .mamyrLogo {
    height: 45px !important;
    margin-top: 5vw;
  }

  #login-form {
    bottom: 0;
    width: 100% !important;
    height: 25% !important;
  }

  #register {
    bottom: 0;
    width: 100%;
    padding-top: 1vw;
    overflow-y: auto;
  }

  .back-icon-container-signup {
    left: 8%;
    top: 55%;
    margin-top: -10vh;
  }
  .userInfo,
  .passwordContainer {
    margin-top: -5vw !important;
  }

  .errorContainer {
    bottom: 0;
    width: 100%;
    height: 70%;
  }

  .container.active .form-box {
    right: 0;
    bottom: 30%;
  }

  .toggle-box::before {
    left: 0;
    top: -270%;
    width: 100%;
    height: 305%;
    border-radius: 20vw;
  }

  .container.active .toggle-box::before {
    left: 0;
    top: 75%;
  }

  .container.active .toggle-panel.toggle-left {
    left: 0;
    top: -30%;
  }

  .toggle-panel {
    width: 100%;
    height: 30%;
  }
  .toggle-panel.toggle-left {
    top: 0;
  }
  .toggle-panel.toggle-right {
    height: 25%;
    right: 0;
    bottom: -30%;
  }

  .container.active .toggle-panel.toggle-right {
    bottom: 0;
  }

  .signUpLink {
    font-size: 16px;
    margin-left: 1vw;
  }

  #passwordMatch {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 !important;
    text-align: center;
    width: 80%;
    margin-top: 25vw;
  }

  .confirmErrorMsg {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 !important;
    text-align: center;
    width: 80%;
  }

  #passwordMatch {
    margin-top: 6.5rem !important;
  }

  .termsSection {
    margin-top: 5vw;
  }

  #termsError {
    position: absolute;
    color: red;
    text-align: center !important;
    width: 90%;
    font-size: 15px;
    width: 80%;
  }
  #signUp {
    margin-top: 5vw;
    margin-bottom: 1rem;
  }
}

@media screen and (max-width: 570px) {
  .modal-dialog {
    width: 100% !important;
    max-width: 100% !important;
    padding: 1rem;
    margin: auto !important;
  }

  #usertype-modal-content {
    width: 100% !important;
  }

  #userType-modal-label {
    font-size: 18px;
  }

  .category-card {
    width: 10rem !important;
    height: 18rem !important;
  }

  .card-img-top {
    width: 8rem !important;
    height: auto !important;
  }

  .category-title {
    font-size: 16px;
  }

  .card-text {
    font-size: 14px;
  }

  #termsError {
    margin-top: 0.1rem;
  }
}

@media screen and (max-width: 500px) {
  .container {
    height: calc(120vh - 40px);
  }

  .loginMessageBox {
    bottom: 17rem !important;
  }

  .modal-dialog {
    width: 100% !important;
    max-width: 100% !important;
    padding: 1rem;
    margin: auto !important;
  }

  #usertype-modal-content {
    width: 100% !important;
  }

  #userType-modal-label {
    font-size: 18px;
  }

  .category-card {
    width: 10rem !important;
    height: 18rem !important;
  }

  .card-img-top {
    width: 8rem !important;
    height: auto !important;
  }

  .category-title {
    font-size: 16px;
  }

  .card-text {
    font-size: 14px;
  }
}

@media screen and (max-width: 400px) {
  .container {
    height: calc(130vh - 40px);
  }

  .welcome {
    font-size: clamp(20px, 18px, 16px);
  }

  .form-box {
    padding: 10px;
  }

  .back-icon-container-login {
    top: 0;
    img {
      width: 6vw;
      margin-bottom: -1vw;
      margin-top: 1.5rem;
    }
  }

  #login-form {
    bottom: 0;
    width: 100% !important;
    height: 25% !important;
  }

  .mamyrLogo {
    margin-top: 0;
  }

  #welcomeLogin {
    margin-top: 20px;
    margin-bottom: 0;
  }

  .container {
    width: 95% !important;
    padding: 0;
    padding-top: 2vw;
  }
  .errorContainer {
    padding: 19px;
    height: 87%;
  }

  .loginMessageBox {
    bottom: 12rem !important;
  }

  .passwordContainerError {
    margin-top: -25vw;
  }

  .toggle-panel h1 {
    font-size: 30px;
  }
  .signUpSection {
    margin-top: 10vw;
  }

  #passwordMatch {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 !important;
    text-align: center;
    width: 93%;
    margin-top: 30vw;
  }

  .confirmErrorMsg {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 !important;
    text-align: center;
    width: 93%;
    font-size: 12px;
  }

  .termsSection {
    margin-top: 5vw;
  }

  #termsError {
    position: absolute !important;
    text-align: center !important;
    width: 93% !important;
    margin-top: -0.5rem !important;
    font-size: 12px !important;
  }
  #signUp {
    margin-top: 6vw !important;
    margin-bottom: 1rem;
  }

  .modal-dialog {
    width: 100% !important;
    max-width: 100% !important;
    padding: 1rem;
    margin: auto !important;
  }

  #usertype-modal-content {
    width: 100% !important;
  }

  #userType-modal-label {
    font-size: 18px;
  }

  .category-card {
    width: 10rem !important;
    height: 18rem !important;
  }

  .card-img-top {
    width: 8rem !important;
    height: auto !important;
  }

  .category-title {
    font-size: 16px;
  }

  .card-text {
    font-size: 14px;
  }
}
