/* In this file you can find the basic messures and color the system use*/
h2 {
  font-family: "Rubik" !important;
  font-size: 36px !important;
  font-weight: 600 !important;
  color: #121C53 !important;
}

.grid-menu #menu section .tab {
  font-family: "Rubik" !important;
  
  font-weight: 400 !important;
  color: #121C53 !important;
}

body * {
  font-family: "Roboto";
  font-size: 14px;
}

html, body, #principal-grid {
  width: 100%;
  height: 100vh;
  background-color: #EBF4FF;
}

.container-fluid {
  height: 100%;
}

.cleaned-container {
  margin: 0px !important;
  padding: 0px !important;
}

a {
  text-decoration: none;
  color: #000;
}

.btn-cta {
  background-color: #6E2360;
  color: #FEF5FE;
}

.btn-sec {
  background-color: #121C53;
  color: #EBF4FF;
}

.btn-trash {
  background-color: #C80D0D;
  color: #FFF1F1;
}

.btn-cta:hover, .btn-cta:active {
  background-color: #6d125c !important;
  color: #FEF5FE !important;
}

.btn-sec:hover, .btn-sec:active {
  background-color: #0e1d69 !important;
  color: #EBF4FF !important;
}

.btn-trash:hover, .btn-trash:active {
  background-color: #A50F0F !important;
  color: #FFF1F1 !important;
}

.title-header {
  width: 90% !important;
}

.mandatory-field {
  color: #C80D0D;
}

.clear-fix {
  float: none;
  clear: both;
}

/*
form input, form .btn-search {
  height: 32px !important;
}
  */

form select {
  height: 32px;
  padding: 0px 0px 0px 8px !important;
}

form button {
  height: 40px;
}

/* Grid layout */
.principal-grid-desktop {
  display: grid;
  grid-template-columns: 17% 83%;
  grid-template-rows: 8% 92%;
  transition: 300ms all ease-in-out;
}

.principal-grid-movil {
  grid-template-columns: 6% 94%;
}

/* Grid layout */
.grid-menu {
  grid-row: 1/3;
}
.grid-menu #menu {
  display: inline-flex;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 8px 0px 8px 0px;
  width: 100%;
  height: 100%;
  background-color: #121C53;
  color: #FEF5FE;
}
/*.grid-menu #menu section:nth-child(1) {*/
.grid-menu #menu section:nth-child(2) {
  overflow-y: auto;
  flex: 1; /*new line*/
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
.grid-menu #menu section:nth-child(1)::-webkit-scrollbar {
  display: none;
}
.grid-menu #menu section {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: 85%;
}
.grid-menu #menu section #logo-lg {
  width: 25%;
  margin: 0px !important;
  margin-top: 16px !important;
  transition: 100ms all !important;
}
.grid-menu #menu section #logo-lg img {
  width: 100%;
}
.grid-menu #menu section #logo-sm {
  margin-bottom: 0px !important;
  width: 80%;
}
.grid-menu #menu section #logo-sm img {
  width: 100%;
}
.grid-menu #menu section hr {
  width: 100%;
  margin-top: 4px !important; /*new line*/
  margin-bottom: 8px !important; /*new line*/
}
.grid-menu #menu section .tab {
  width: 100%;
}
.grid-menu #menu section .tab a {
  display: inline-flex;
  width: 100%;
  gap: 8px;
  padding: 8px !important;
  color: #FEF5FE;
}
.grid-menu #menu section .tab a > div {
  display: flex;
  gap: 8px;
}
.grid-menu #menu section .tab div.sub-menu {
  background-color: #195da1;
  border-radius: 8px;
  width: calc(100% - 32px);
  justify-self: flex-end;
}
.grid-menu #menu section .tab .icon-option {
  font-size: 24px;
}
.grid-menu #menu section .tab > a:hover, .grid-menu #menu section .tab > div.sub-menu a:hover {
  border-radius: 8px;
  background: #003d7c;
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.25);
}
.grid-menu #menu section .tab > a:active, .grid-menu #menu section .tab > div.sub-menu a:hover {
  background: #184674;
}
.grid-menu #menu #btn-collapse {
  align-self: end;
  position: absolute;
  top: 50%;
  right: -10px;
  background-color: #121C53;
  padding: 4px 4px 0 4px !important;
  border-radius: 20px;
}
.grid-menu #menu #btn-collapse .icon-option {
  font-size: 24px;
}
.grid-menu #menu #btn-collapse:hover {
  border-radius: 20px;
  background: #003d7c;
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.25);
  cursor: pointer;
}

.grid-nav nav {
  height: 100%;
}
.grid-nav nav > ul {
  padding: 8px !important;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: end;
  gap: 8px;
  align-items: center;
  list-style: none;
}
.grid-nav nav > ul .icon-nav {
  font-size: 24px;
}
.grid-nav nav > ul .notifications > i {
  color: #121C53;
}
.grid-nav nav > ul .notifications > i:hover {
  cursor: pointer;
}
.grid-nav nav > ul .btn-usr {
  border-radius: 30px;
  background-color: #121C53;
  color: #EBF4FF !important;
  width: 40px;
  height: 40px;
  margin: 0px !important;
  padding: 0px !important;
}
.grid-nav nav > ul .btn-usr:hover {
  background-color: #121C53;
  color: #EBF4FF;
}
.grid-nav nav > ul ul li a {
  align-self: center;
  display: flex;
  gap: 8px;
  width: 90%;
  margin: 0px auto !important;
  padding: 8px 4px 8px 4px !important;
  border-radius: 8px;
  transition: 500ms;
}
.grid-nav nav > ul ul li a i {
  font-size: 24px;
  color: #121C53;
}
.grid-nav nav > ul ul li a:hover {
  background-color: #EBF4FF;
}
.grid-nav nav > ul ul > li:first-child a:hover {
  background-color: #fff;
  cursor: default;
}
.grid-nav nav > ul li button::after {
  content: none;
}

.grid-dashboard > .container-fluid {
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow-y: auto !important;
}
.grid-dashboard > .container-fluid > div .title-header {
  display: flex;
  align-items: center;
  gap: 16px;
}
.grid-dashboard > .container-fluid > div .title-header button {
  background-color: #121C53;
  color: #EBF4FF;
  padding: 0px !important;
  width: 40px;
  height: 40px;
  border-radius: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.grid-dashboard > .container-fluid > div .title-header button i {
  font-size: 24px;
}
.grid-dashboard > .container-fluid > div .title-header h2 {
  margin: 0px !important;
}

.hidden {
  display: none;
}

.auto-width {
  width: auto !important;
}

.active-tab {
  border-radius: 8px;
  background: #003d7c;
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.25);
}

/* Appoiments */
/* div:has(>.appointments-calendar){
  border:2px solid magenta;
  padding: 0px !important;
} */

.appointments-calendar{
  border: 2px solid;
}
/* Appoiments */

/*breakpoints bootstrap
    *** xs  --- 0 < 576px
    *** sm  --- >= 576px < 768px
    *** md  --- >= 768px < 992px
    *** lg  --- >= 992px < 1200px
    *** xl  --- >=1200px < 1400px
    *** xxl --- >=1400px
*/
/*Responsive Design .xs*/
/*Media mobil*/
@media (max-width: 575px) {
  .principal-grid-desktop {
    display: grid;
    grid-template-columns: 19% 81%;
    grid-template-rows: 6% 94%;
    transition: 300ms all ease-in-out;
  }
  #menu section {
    display: block;
    overflow-y: scroll;
  }
  #menu section #logo-lg {
    display: none;
  }
  #menu section #logo-sm {
    display: block;
  }
  #menu section .tab {
    width: auto !important;
    /*i{
        font-size: $i-lg !important;
    }*/
  }

  #menu section .tab div > span {
    display: none;
  }
  #menu #btn-collapse {
    display: none;
  }
  .grid-dashboard > .container-fluid {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
  .grid-dashboard > .container-fluid > div .title-header {
    gap: 8px;
  }
  .grid-dashboard > .container-fluid > div .title-header button {
    width: 32px;
    height: 32px;
  }
  .grid-dashboard > .container-fluid > div .title-header button i {
    font-size: 16px;
  }
  .grid-dashboard > .container-fluid > div .title-header h2 {
    margin: 0px !important;
    font-size: 24px !important;
  }
}
/*Media tablet .sm .md*/
@media (min-width: 576px) and (max-width: 991px) {
  .principal-grid-desktop {
    display: grid;
    grid-template-columns: 29% 71%;
    grid-template-rows: 5% 95%;
    transition: 300ms all ease-in-out;
  }
  .principal-grid-movil {
    grid-template-columns: 8% 92%;
  }
  #menu section {

  }
  #menu section #logo-lg {
    width: 86% !important;
  }
  #menu section #logo-sm {
    width: 90% !important;
  }
}
/*Media tablet .lg*/
@media (min-width: 992px) and (max-width: 1199px) {
  .principal-grid-desktop {
    display: grid;
    grid-template-columns: 20% 80%;
    grid-template-rows: 7% 93%;
    transition: 300ms all ease-in-out;
  }
  .principal-grid-movil {
    grid-template-columns: 6% 94%;
  }
  #menu section #logo-lg {
    width: 78% !important;
  }
  #menu section #logo-sm {
    width: 90% !important;
  }
}
/*Responsive Design*/

/*# sourceMappingURL=menu.css.map */
