.rkit-modal-dialog {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}

.rkit-logo-container {
   display: flex;
   gap: 0.5rem;
   align-items: center;
}

.rkit-close-modal {
   font-size: large;
   background: none;
   border: none;
   color: #b7b7b7;
   cursor: pointer;
}

.rkit-close-modal:hover {
   color: white;
}

.rkit-loading {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   height: 100%;
   width: 100%;
}

.rkit-template-library-banner {
   width: 100%;
}

.rkit-template-library-banner img {
   width: 100%;
   border-radius: 5px;
}

.r-template-list {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 0.5rem;
}

.rkit-template-container .rkit-template img {
   max-width: 100%;
}

.rkit-template {
   display: block;
   background-color: #515151;
   position: relative;
}

.rkit-template-f {
   margin-bottom: 0.5rem;
   padding-inline: 1rem;
   display: flex;
   justify-content: center;
   flex-direction: column;
   gap: 8px;
}

.rkit-import-btn {
   padding-block: 0.5rem;
   padding-inline: 1rem;
   text-align: center;
   background-color: transparent;
   color: #33e4c0;
   border: solid 2px #33e4c0;
   border-radius: 5px;
   cursor: pointer;
   display: flex;
   gap: 1rem;
}

.r-header-page , .r-header-block {
   display: flex;
   margin-bottom: 0.5rem;
   padding-block: 1rem;
}
.r-header-page{
   justify-content: space-between;
}

.r-header-block{
   justify-content: flex-end;
}

.r-search {
   width: 35%;
   font-size: 15px;
   padding-block: 10px;
}

.rkit-import-btn:hover {
   background-color: #33e4c0;
   color: #2d2d2d;
}

.r-preview-btn {
   padding-block: 0.5rem;
   padding-inline: 1rem;
   text-align: center;
   background-color: transparent;
   color: #cccccc;
   border: solid 2px #cccccc;
   border-radius: 5px;
   cursor: pointer;
   display: flex;
   gap: 1rem;
}

.r-preview-btn:hover {
   color: white;
   border-color: white;
}

.r-img-container-page{
   width: 100%;
   aspect-ratio: 3/2;
   overflow: hidden;
}

.r-preview-modal-overlay {
   position: fixed;
   width: 100vw;
   height: 100vh;
   background-color: rgba(0, 0, 0, .65);
   z-index: 9999;
   top: 0;
   left: 0;
   display: flex;
   flex-direction: column;
}

.r-preview-header {
   display: flex;
   justify-content: space-between;
   padding-inline: 1rem;
   padding-block: 0.5rem;
   width: 100%;
   height: 50px;
   background-color: #000000;
   box-shadow: 0px -1px 19px -2px rgba(0, 0, 0, 1);
   -webkit-box-shadow: 0px -1px 19px -2px rgba(0, 0, 0, 1);
   -moz-box-shadow: 0px -1px 19px -2px rgba(0, 0, 0, 1);
}

.r-preview-body {
   width: 100%;
   height: 100%;
   overflow: auto;
   display: flex;
   justify-content: center;
   align-items: center;
}

.r-preview-back-btn {
   background-color: transparent;
   border: none;
   color: #e3e3e3;
   display: flex;
   gap: 0.5rem;
   align-items: center;
   font-size: large;
   cursor: pointer;
}

.r-preview-insert-btn {
   background-color: #33e4c0;
   color: #2d2d2d;
   padding-inline: 1.5rem;
   display: flex;
   justify-content: center;
   align-items: center;
   gap: 0.5rem;
   border-radius: 4px;
   cursor: pointer;
   border: none;
}

.r-preview-modal-img {
   width: 80vw;
   max-width: 1024px;
}

.r-preview-title {
   display: flex;
   align-items: center;
   justify-content: center;
}

.r-cat-list {
   width: 100%;
   display: flex;
   flex-wrap: wrap;
   padding: 1rem;
   gap: 1rem;
}

.r-category-btn {
   font-size: 15px;
   height: 60px;
   background-color: #535353;
   border: solid 1px #ababab;
   margin: 2px;
}

.r-category-btn:hover{
   background-color: #33e4c0 !important;
   color: #535353 ;
}

.new-template-page::before {
   content: "NEW";
   position: absolute;
   top: 0;
   font-size: large;
   background-color: #33e4c0;
   padding: 1rem;
   right: 0px;
   margin-right: 8px;
   margin-top: -10px;
   color: black;
   font-weight: 500;
}

.new-template-block::before {
   content: "NEW";
   position: absolute;
   top: 0;
   font-size: large;
   background-color: #33e4c0;
   padding: 0.5rem;
   right: 0px;
   margin-right: 8px;
   margin-top: -10px;
   color: black;
   font-weight: 500;
}

.r-select-cat {
   height: 100%;
   padding: 0.5rem;
   width: 20rem;
   cursor: pointer;
}

.r-select-container::before {
   content: "⏷";
   font-family: "Font Awesome 5 Free";
   position: absolute;
   right: 10px;
   top: 50%;
   transform: translateY(-57%);
   font-size: 16px;
   color: #9c9c9c;
   /* align-items: center; */
}

.r-list-page-category {
   display: none;
   position: absolute;
   width: 30rem;
   border: 1px solid #5a5a5a;
   border-radius: 5px;
   z-index: 2;
   background-color: #34383c;
   grid-template-columns: repeat(3, 1fr);
   padding: 1rem;
   gap: 1rem;
   text-align: left;
}

.r-page-category {
   cursor: pointer;
   color: #ababab;
}
.r-page-category:hover{
   color: white;
}

.r-select-container:hover .r-list-page-category {
   display: grid !important;
}

.r-select-container {
   position: relative;
}



.spinner {
   width: 56px;
   height: 56px;
   border-radius: 50%;
   border: 5px solid #e3e3e3;
   animation: spinner-bulqg1 0.8s infinite linear alternate,
      spinner-oaa3wk 1.6s infinite linear;
}

@keyframes spinner-bulqg1 {
   0% {
      clip-path: polygon(50% 50%, 0 0, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
   }

   12.5% {
      clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
   }

   25% {
      clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 100% 100%, 100% 100%);
   }

   50% {
      clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
   }

   62.5% {
      clip-path: polygon(50% 50%, 100% 0, 100% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
   }

   75% {
      clip-path: polygon(50% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 50% 100%, 0% 100%);
   }

   100% {
      clip-path: polygon(50% 50%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 0% 100%);
   }
}

@keyframes spinner-oaa3wk {
   0% {
      transform: scaleY(1) rotate(0deg);
   }

   49.99% {
      transform: scaleY(1) rotate(135deg);
   }

   50% {
      transform: scaleY(-1) rotate(0deg);
   }

   100% {
      transform: scaleY(-1) rotate(-135deg);
   }
}