@import url('https://fonts.googleapis.com/css2?family=Arbutus+Slab&display=swap');


/*-----------------------------------*\
  #CUSTOM PROPERTY
\*-----------------------------------*/

:root {

    /**
     * colors
     */
  
     
     --Atlantis:hsl(89, 62%, 53%);
     --Tuna: hsl(211, 18%, 23%);
     --Tuna-dark: hsl(212, 18%, 18%);
     --Feta: hsl(85, 76%, 95%);
     --Asparagus: hsl(87, 17%, 51%);
     --Lunar-Green: hsl(88, 11%, 26%);
     --Grey-olive:  hsl(87, 10%, 65%);
     --white-1: hsl(0, 0%, 100%);

  
    /**
     * typography
     */
     /* font-family: "Arbutus Slab", serif; */
    --ff-Arbutus: "Arbutus Slab", serif;
    --fs-01: 2rem;
    --fs-1: 1.563rem;
    --fs-2: 1.5rem;
    --fs-3: 1.25rem;
    --fs-4: 1.078rem;
    --fs-5: 1rem;
    --fs-6: 0.938rem;
    --fs-7: 0.875rem;
    --fs-8: 0.844rem;
    --fs-9: 0.813rem;
    --fs-10: 0.769rem;

    --fw-500: 500;
    --fw-600: 600;
  
    /**
     * transition
     */
  
    --transition: 0.25s ease;
    --cubic-out: cubic-bezier(0.45, 0.85, 0.5, 1);
    --cubic-in: cubic-bezier(0.5, 0, 0.50, 0.95);
  
 /**
   * spacing
   */

   --section-padding: 90px;

   /**
    
  /**
   * border radius
   */

   --radius-circle: 50%;
   --radius-pill: 100px;
   --radius-8: 8px;
   --radius-6: 6px;
 
   /**

    
     * shadow
     */
  
    --shadow-1: 0 12px 20px hsla(210, 10%, 23%, 0.07);
    --shadow-2: 0 2px 10px hsla(0, 0%, 0%, 0.04);
    --shadow-3: 0 2px 20px var(--black_08);

      /**
   * shadow
   */
  
  --shadow-1: -4px 8px 24px hsla(0, 0%, 0%, 0.25);
  --shadow-2: 0 16px 30px hsla(0, 0%, 0%, 0.25);
  --shadow-3: 0 16px 40px hsla(0, 0%, 0%, 0.25);
  --shadow-4: 0 25px 50px hsla(0, 0%, 0%, 0.15);
  --shadow-5: 0 24px 80px hsla(0, 0%, 0%, 0.25);

  /**
   * transition
   */

   --transition-1: 0.25s ease;
   --transition-2: 0.5s ease;
   --transition-3: 0.3s ease-in-out;











   --color-dark: #2f2f2f;
   --color-light: #fff;
   --color-brand: #57bd84;
   --font-fam: 'Lato', sans-serif;
   --height: 5rem;
   --btn-width: 6rem;
   --bez: cubic-bezier(0, 0, 0.43, 1.49);
   --rad: .7rem;
   --dur: .3s;
  
  }
  
  
  
  

/*-----------------------------------*\
  #RESET
\*-----------------------------------*/

*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  li { list-style: none; }
  
  a { text-decoration: none; }
  
  /* a,
  data,
  time,
  input,
  button { display: block; } */
  
  button {
    font: inherit;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
  }
  
  html {
    scroll-behavior: smooth;
  
  }

  body {
    background: var(--cultured);
    font-family: var(--ff-Arbutus);
    overflow-x: hidden;
    scrollbar-width: thin; 
  }
  
  :focus-visible {
    outline: 2px solid var(--onyx);
    outline-offset: 1px;
  }
  
  /* web-kit part */
  *::-webkit-scrollbar {
    width: 12px;
  }
  
  *::-webkit-scrollbar-track { background: var(--Feta); background-clip: content-box; }
  
  /* ::-webkit-scrollbar-thumb { background: hsl(0, 0%, 80%); } */
  
  ::-webkit-scrollbar-thumb:hover { background: var(--Tuna-dark) }

*::-webkit-scrollbar-thumb {
  background: var(--Tuna);
  border-radius: 10px;
  border: 3px solid #ffffff;
}



  
  /*-----------------------------------*\
    #REUSED STYLE
  \*-----------------------------------*/



  .page__wrapper{
    display: flex;
    /* gap: 24px; */
  }

  .flx{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
  }
  .flx_lft{
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  /* HEADER */

  .header{
    background-color: var(--Feta);
    padding-block: 0.5rem;
  }

  .header__wrapper{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-inline: 3.5rem;
  }

  .logo img{
    width: 200px;
  }

  .header_title{
    color: var(--Tuna);
  }

  input{
    height: 2.25rem;
    font-family: var(--font-fam);
    border: 0;
    color: var(--Tuna);
    font-size: var(--fs-4);
  }
  input[type="search"] {
    outline: 0; 
    width: 100%;
    background: var(--color-light);
    padding: 0 1.6rem;
    border-radius: var(--rad);
    appearance: none; 
    transition: all var(--dur) var(--bez);
    transition-property: width, border-radius;
    z-index: 1;
    position: relative;
    height: 38px;
  }

  .search_bar{
    display: flex;
    align-items: center;
    background-color: var(--white-1);
    padding-inline-end: 12px;
    border: 2px solid var(--Atlantis);
    border-radius: 4px;
    height: 50px;
    width: 550px;
  }
  .search_bar::-webkit-scrollbar { 
    display: block !important;
    outline: 2px dashed cornflowerblue;
    overflow: auto;
    background-color: #aaa; 
    width: 10px; 
  }




  button.profile_btn {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
}

  .profile-menu a svg{
    width: 23px;
    height: 23px;
    line-height: 20px;
    border-radius: 50%;
    border: 1px solid var(--Tuna);
    padding: 3px;
    fill: var(--white-1) !important;
    margin-top: 3px;
    margin-right: 7px;
}

.profile-menu{
  display: none;
}
.prof_sec{
  display: block;
}

.profile_wrap{
  position: relative;
}
.profile-menu{
  position: absolute;
  top: 99%;
  left: -190%;
  background-color: var(--Tuna);
  width: 209px;
  padding: 4px;
  border-radius: 4px;
}
.profile-menu li{
  border-bottom: 1px solid var(--white-1);
  padding-block: 4px;
}
.profile-menu li a{
  color: var(--white-1);
}






  /* SIDEBAR */

.sidebar{
  background-color: var(--Tuna);
  border-top-right-radius: 45px;
  position: sticky;
    left: 0px;
    top: 0px;
    z-index: 99;
}
  #sidebar {
    width: 320px;
    position: relative;
    height: inherit;
    min-height: 90vh;

  }
  #sidebar .nav_txt{
    display: block;
  }
  #sidebar-btn  {
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 15px;
    cursor: pointer;
    margin: 20px;
    position: absolute;
    left: 100%;

    top: 0px;
  }
  #sidebar.visible {
    width: 62px;
    transition: 0.5s;
  }

  /* #sidebar.visible .menu a .nav_txt,
  #sidebar.visible .signout .nav_txt{
    display: none;
  } */
  #sidebar.visible .menu a .dropdown{
    display: none;
  }
  #sidebar-btn span {
    background-color: rgb(0, 0, 0);
    height: 1px;
    display: block;
    margin-bottom: 5px;
  }
  
  #sidebar-btn span:nth-child(2) {
    width: 75%;
  }

  
  a{
    color: var(--white-1);
  }

  .side_nav{
    padding-block-start: 75px;
  }
  .side_nav ul li{
    padding-block: 1rem;
    padding-inline-start: 0.75rem;
    border-bottom: 1px solid white;
  }

  .nav_head{
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .nav_title{
    padding-inline-start: 1rem;
  }

  /*  */

  
 .menu{
  width: 100%;
  margin-top: 80px;
}

 .menu .item{
  position: relative;
  cursor: pointer;
}

.menu .item a{
  color: #fff;
  font-size: 16px;
  text-decoration: none;
  display: block;
  padding: 16px 14px;
  border-bottom: 1px solid;
}



 .menu .item a:hover{
  background: var(--Tuna-dark);
  color: var(--white-1);
  transition: 0.3s ease;
}


.nav_itm_fl{
  display: flex;
  align-items: center;
  gap: 1rem;
} 
  
.menu .item a .dropdown{
  position: absolute;
  right: 0;
  margin: 20px;
  transition: 0.3s ease;
}

 .menu .item .sub-menu{
  background: rgba(255, 255, 255, 0.1);
  display: none;
}

.side-bar .menu .item .sub-menu a{
  padding-left: 80px;
}
.rotate{
  transform: rotate(90deg);
}


.icon svg{
  width: 32px;
  height: 26px;
  fill: #f4fce9;
}

/* 

.signout{
  position: absolute;
  bottom: 4%;
  padding: 16px 14px;
} */


/* page title */

.page_title{
  /* display: inline-block; */
  background-color: var(--Atlantis);
  padding: 7px 1rem;
  /* border: 1px solid var(--Tuna); */
  border-radius: 4px;
}
.page_title h2{
  color: #ffffff;
    font-weight: 500;
    font-size: 30px;
}

/* home */

.layout{
  width: 100%;
  padding-block: 24px;
  padding-block-end: 5rem;
}
.layout_wrap{
  padding-inline-start: 4rem;
    padding-block: 1rem;
    padding-inline-end: 2rem;
}
.container {
  width: 92% !important;
}

/* footer */

.footer{
  position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
  padding: 1.5rem 0;
  text-align: center;
  background-color: var(--Tuna);
  color: var(--Feta);
  z-index: 9;
}





/* breadcrummb */

.breadcrumb{
  display: flex;
  align-items: center;
	overflow: hidden;
	border-radius: 5px;
  margin-block-end: 1rem;
}

.breadcrumb a {
	font-size: 12px;
	line-height: 36px;
	color: white;
	padding: 0 10px 0 32px;
	background: var(--Tuna);
	position: relative;
}

.breadcrumb a:first-child {
	padding-left: 24px;
	border-radius: 5px 0 0 5px; 
}
.breadcrumb a:first-child:before {
	left: 14px;
}
.breadcrumb a:last-child {
	border-radius: 0 5px 5px 0; 
	padding-right: 20px;
}

.breadcrumb a.active, .breadcrumb a:hover{
  background: var(--Tuna);
}
.breadcrumb a.active:after, .breadcrumb a:hover:after {
  background: var(--Tuna);
}

.breadcrumb a:after {
	content: '';
	position: absolute;
	top: 0; 
	right: -18px; 
	width: 36px; 
	height: 36px;
	transform: scale(0.707) rotate(45deg);
	z-index: 1;
	background: var(--Tuna);
	box-shadow: 
		2px -2px 0 2px rgba(61, 61, 61, 0.411), 
		3px -3px 0 2px rgba(94, 109, 100, 0.027);
	border-radius: 0 5px 0 50px;
}

.breadcrumb a:last-child:after {
	content: none;
}

.flat a:hover, .flat a.active, 
.flat a:hover:after, .flat a.active:after{
	background: var(--Atlantis);
}








/* CARDS */

.cards-tab{
  padding-block: 1.5rem;
}

.cards__wrapper{
  display: flex;
  /* grid-template-columns: repeat(3, 1fr); */
  gap: 2.75rem;
  align-items: center;
}
.cards{
  background-color: var(--Atlantis);
  height: 220px;
  border-radius: 1.25rem;
  position: relative;
  display: flex;
  /* justify-content: center; */
  align-items: center;
  padding-inline: 2.5rem;
  /* min-width: 380px; */
  width: 30%;
}
.card-title{
  color: var(--Feta);
}

.cards::after{
  content: "";
  position: absolute;
  top: 19px;
  left: 0;
  height: 75px;
  width: 7px;
  background-color: var(--Tuna);
  border-radius: 4px;
}
.card-title h2{
  font-size: var(--fs-01);
}
.card_icon svg{
  width: 108px;
  height: 80px;
}



/* select box */

.selectbox_wrapper{
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 24px;
  align-items: center;
}

.select_box_wrap input,
.select_box_wrap select {
    width: 100%;
    height: 100%;
    border: 1px solid var(--Tuna);
    outline: none;
    background: none;
    padding-left: 40px;
    font-size: 14px;
    color: var(--Tuna-dark);
    border-radius: 5px;
}
.status select{
  padding-left: 0 !important;
  height: 45px;
    width: 100%;
    border-radius: 5px;
    background: white;
    /* margin-block-start: 7px; */
}

input::placeholder {
    color: #252627;
}

.select_box {
    margin-top: 1.5rem;
}

.select_box_wrap svg,
.select_box_wrap svg {
    width: 20px;
    height: 19px;
    position: absolute;
    left: 10px;
    top: 13px;
    fill: var(--Tuna);
}

.select_box_wrap {
    height: 45px;
    width: 100%;
    border-radius: 5px;
    background: white;
    position: relative;
    /* margin-block-start: 7px; */
}


/* certified_testcenter */
.certified_testcenter select{
padding-left: 10px;
}

.total_cen {
  margin-block: 2rem;
}
.partner_center{
  padding: 0.7rem;
  color: var(--Atlantis);
    margin-inline-start: 0.5rem;
    font-size: var(--fs-5);
    background: var(--Tuna);
    border-radius: 4px;
}


option:checked,
    option:hover {
      background-color: lime;
    }


/* DATATABLES */

.data_table{
  margin-block: 2rem;
  /* border: 1px solid var(--Tuna); */
  border-radius: 7px;
}

.status_wrapper{
  display: flex;
  justify-content: end;
  align-items: center;
}
.status_wrapper .select_box_wrap{
  width: 160px;
}

.table-scroll {
  position: relative;
  width:100%;
  z-index: 2;
  margin: auto;
  overflow: auto;
  height: 450px;
}
.table-scroll table {
  width: 100%;
  /* min-width: 1000px; */
  margin: auto;
  border-collapse: separate;
  border-spacing: 0;
}
.table-wrap {
  position: relative;
}
.table-scroll th,
.table-scroll td {
  padding: 5px 10px;
  border: 1px solid var(--Tuna);
  background: #fff;
  vertical-align: middle;
  text-align: center;
}
/* .table-scroll tfoot td,
.table-scroll tfoot th{
  border: none !important;
} */
.table-scroll thead th {
  background: var(--Atlantis);
  color: #fff;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  padding-block: 1rem;
}

.table-scroll tfoot td{
text-align: right;
}
.table-scroll tfoot,
.table-scroll tfoot th,
.table-scroll tfoot td {
  position: -webkit-sticky;
  position: sticky;
  bottom: -1px;
  background: var(--Atlantis);
  color: #fff;
  z-index:4;
  padding-block: 1rem;
  border: none !important;
}


.table-scroll svg{
  fill: var(--Tuna);
  width: 25px;
}
.table-scroll::-webkit-scrollbar {
  width: 5px;
  height: 10px;
}
.table-scroll::-webkit-scrollbar-thumb {
  border: 5px solid var(--Tuna);
}

/* ADD USERS */


title {
	font-size: 24px;
	line-height: 28px;
	font-weight: bold;
	color: var(--Tuna);
	padding-bottom: 11px;
	border-bottom: 1px solid #d7dbdf;
}

.form-group {
	margin-top: 18px;
	display: flex;
	flex-direction: column;
}

.textarea-group label,
.form-group label {
	color: var(--Tuna);
	font-size: 16px;
	line-height: 19px;
	margin-bottom: 10px;
}

.form-group [type],
.textarea-group textarea {
	border: 1px solid var(--Tuna);
	border-radius: 6px;
	padding: 21px;
}
.form-group [type]:hover,
.textarea-group textarea:hover {
	border-color: var(--Tuna);
}
.form-group [type]:focus,
.textarea-group textarea:focus {
	border-color: var(--Tuna-dark);
}

.textarea-group {
	margin-top: 24px;
}

.textarea-group textarea {
	resize: none;
	width: 100%;
	margin-top: 10px;
	height: calc(100% - 59px);
}


input[type=file] {
  width: 350px;
  max-width: 100%;
  color: var(--Tuna);
  padding: 7px !important;
  background: var(--Feta);
  border-radius: 10px;
  border: none !important;
  height: 3.25rem;
}

input[type="file"]::file-selector-button {
  border-radius: 4px;
  padding: 0 16px;
  height: 40px;
  cursor: pointer;
  background-color: var(--Tuna);
  border: 1px solid var( --Tuna);
  box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.05);
  margin-right: 16px;
  color: var(--white-1);
  transition: background-color 200ms;
}
.custom-file-upload {
  display: inline-block;
  /* padding: 6px 12px; */
  cursor: pointer;
}

.button {
	font-weight: bold;
	line-height: 19px;
	background: #5850eb;
	border: none;
	padding: 15px 25px;
	border-radius: 6px;
	color: white;
	width: 100%;
	margin-top: 24px;
}
.button:hover {
	background: #6e67ee;
}
.button:focus {
	background: #4239e8;
}


/* permission */
.permission_box{
  border: 1px solid var(--Atlantis);
  padding: 2.25rem 1rem;
  margin-top: 2rem;
  border-radius: 7px;
}
.checkboxes_wrapper{
  /* padding-block-end: 3.25rem; */
}
.checkbox-group {
	margin-top: 25px;
}

.checkbox-group label {
	display: flex;
}

.checkbox-group label::before {
	content: "\0020";
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-right: 8px;
	border: 1px solid var(--Tuna);
	border-radius: 6px;
	transition: background 0.1s ease-in;
}

.checkbox-group input[type="checkbox"] {
	/* ici on ne doit pas mettre de display: none afin de pouvoir "tabber" */
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}
.checkbox-group input[type="checkbox"]:focus + label:before {
	border-color: var(--Tuna);
}
.checkbox-group input[type="checkbox"]:checked + label:before {
	color: #fff;
	content: "\2713";
	background: var(--Atlantis);
	border-color: var(--Tuna);
}



/* PROFILE */

.profile_det_wrap {
  /* max-width: 700px; */
  background: var(--Feta);
  margin-block: 1rem 7rem;
  padding: 1.5rem 2rem 2.5rem;
}




/* Upload Document */


.selectbox_wrapper .form-group{
  margin-top: 1.5rem;
}

.upload_doc_wrapper{
  padding-block: 2rem;
  display: flex;
  gap: 24px;
  align-items: center;
}
.upload_box{
  background-color: var(--Atlantis);
  border: 2px solid var(--Tuna);
  position: relative;
  border-radius: 7px;
  width: 200px;
  height: 150px;
  text-align: center;
}
.upload_box svg{
  width: 90px;
  fill: var(--Tuna);
}
.inputfile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}

.inputfile + label {
  font-size: 1.25em;
  font-weight: 700;
  color: white;
  /* background-color: rgb(238, 238, 238); */
  display: inline-block;
}

.inputfile + label {
	cursor: pointer; /* "hand" cursor */
}

.save_btn button{
  background: var(--Tuna);
  padding: 9px 15px;
    font-size: var(--fs-4);
    color: var(--white-1);
    border-radius: 2px;
}
.document_download p{
  font-size: var(--fs-3);
}




/* multiselect-dropdown */

.multiselect-dropdown{
  width: 400px !important;
  
}


/* password */

.update_buttons {
  margin-block: 24px;
}




@media screen and (min-width: 1024px) {
 
  .grid_user_wrapper {
    display: grid;
    grid-gap: 18px;
    grid-template-columns: 1fr 1fr;
    /* grid-auto-rows: 1fr; */
    align-items: center;
  }

  .email-group {
    grid-column: 1;
    grid-row: 2;
  }
  
  .phone-group {
    grid-column: 2;
    grid-row: 2;
  }
  
  .textarea-group {
    grid-column: 3;
    grid-row: span 2;
  }
  
}




#sidebar-btn{
  position: fixed;
    top: 19px;
    z-index: 16;
    left: 0px;
}



@media(max-width: 1220px){
  .cards{
    padding-inline: 1.25rem;
  }
  .card-title h2{
    font-size: var(--fs-1);
  }
}
@media(max-width: 1000px){

  #sidebar {
    display: none;
  }
  #sidebar.visible {
    width: 320px;
    transition: 0.5s;
    display: block;
}
/* #sidebar.visible .menu a .nav_txt, #sidebar.visible .signout .nav_txt {
  display: block;
}

  .signout {
    bottom: 0;
    top: 60%;
} */





  .flx_lft{
    flex-direction: column;
    gap: 16px;
    align-items: baseline;
  }
  .cards{
    padding-inline: 1.25rem;
    height: unset;
    padding-block: 2rem;
  }
  .card-title h2{
    font-size: var(--fs-3);
  }
  .card_icon svg{
    width: 80px;
    height: 65px;
  }

.selectbox_wrapper{
  grid-template-columns: 1fr;
  gap: 0px;
}




  /* #sidebar {
    width: 320px;
    position: relative;
    height: 100%;
    min-height: 90vh;

  }
  #sidebar .nav_txt{
    display: block;
  }
  #sidebar-btn  {
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 15px;
    cursor: pointer;
    margin: 20px;
    position: absolute;
    left: 100%;

    top: 0px;
  }
  #sidebar.visible {
    width: 100%;
    transition: 0.5s;
  }

  #sidebar .menu a .nav_txt{
    display: none;
  }
  #sidebar .menu a .dropdown{
    display: none;
  }
  #sidebar.visible .menu a .nav_txt{
    display: block;
  }
  #sidebar.visible .menu a .dropdown{
    display: block;
  }
  .menu .item a .dropdown {
    margin: 0px;
} */

}