/*Generales*/
    /* Implementación de fuente externa */
    @import url('https://fonts.googleapis.com/css2?family=Albert+Sans:wght@300;400;500;600;700;800;900&display=swap');
    @import url('https://fonts.googleapis.com/css2?family=Figtree:wght@300;400;500;600;700;800;900&display=swap');
* {
    margin: 0px;
    padding: 0px;
    /* font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif; */
    font-family: 'Figtree', 'Albert Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
    text-decoration: none;
    box-sizing: border-box;
}

html {
    font-size: 16px;
}

body {
    background-color: white;
}

body > footer {
    position: sticky;
    top: 100vh;
  }

input[type="text"]:enabled, input[type="number"]:enabled {
    background-color: transparent;
    border-color: #ced4da;
}

input[type="text"]:disabled, input[type="number"]:disabled, textarea:disabled, select:disabled{
    background-color: #f8f9fa !important;
    border-color: #dee2e6 !important;
    opacity: .5 !important;
}

input[type="text"]:read-only, textarea:read-only {
    border: none;
    cursor:default;
}

input[type="text"]:read-only:focus, textarea:read-only:focus {
    box-shadow: none;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;}

input[type="number"] {
    appearance:textfield;
    }

/* html objects general */
p {
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

div {
    display: block;
}

fieldset.custom-section {  
    padding: 2px 12px 18px;
    border-radius: 8px;
    border-color: #0045a52d;
    min-width: 0;
}

legend {
    cursor: pointer;
    padding: 2px;
}

legend:hover {
    color: white;
    background-color: #0045a5;
    border-radius: 8px;
    transition-duration: 150ms;
}

input:not(:disabled), select:not(:disabled){
    cursor: pointer;
}

div.buttonContainer{
    display:table;
    width: 100%;

}

div.section-content{
    display:none;
}

/* Modify bootstrap style */
.form-control::placeholder {
    color: var(--bs-secondary-color);
    opacity: 0.8;
    font-weight: lighter;
}  

.dokit-form-switch:checked {
    background-color: #7839EE;
    border-color: #1d234935 !important;
}

/* Hero */

#hero {
    width: 100%;
    height: 100%;
    min-height: 100vh;
    background-color:#acaaff;
}

#building-content-container {
    margin:auto;
}

#building-banner-title {
    font-weight: 500;
    max-width: 45rem;
}

#building-image {
    max-height: 23rem;
}

#welcome-image {
    max-height: 600px;
    min-height: 600px;
    margin-left: 350px;
    margin-top: -180px;
}


#hamburger-menu{
    margin-right: 0.5rem;
}

#login-hompage-link, #sign-up-homepage-link {
    display: None;
}

.shadow-container {
    border-radius: 8px;
    background-color: #f5f8fa;
    padding: 5px;
    border-color: #cbd6e2;
}

#welcome-container {
    overflow: initial;
}

@media (min-width:0) {
    .home-product-image {
        width: 15rem  !important;
    }

    .right-text-description {
        margin-left: 0;
    }

    .left-index-section {
        padding-top: 1rem !important;
    }

    #medical-report-filler-text {
        padding-right: 0;
    }

    .md-show {
        display: none;
    }

    .sm-show {
        display: block;
    }

    .team-illustration-container{
        height:30vh; 
        max-width: 13rem;
    }

}

@media (min-width:768px) {
    .home-product-image {
        width: 40vw !important;
    }

    .right-text-description {
        margin-left: 3rem;
    }

    .left-index-section {
        padding-top: 3rem !important;
    }

    #medical-report-filler-text {
        padding-right: 1.5rem;
    }

    .md-show {
        display:block;
    }

    .sm-show {
        display: none;
    }

}

@media (min-width:992px) {
    .home-product-image {
        width: 25rem !important;
    }

    .team-illustration-container{
        min-height: 305px;
        max-height:55vh; 
        max-width: 13rem !important;
    }

}

@media (max-width: 400px) {
    .navbar-brand {
        margin-right: 0;
    }

    #login-homepage, #sign-up-homepage {
        display: None
    }

    #building-image {
        margin-left: 5%
    }
    

    #login-hompage-link, #sign-up-homepage-link {
        display: block;
    }

    #navigation-login{
        width: 0;
    }
}

@media (max-width: 768px) {
    #hamburger-menu{
        margin-right: 1rem;
    }

    #navbar-container {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    #navigation-menu{
        margin-left: 0;
        margin-top: 1.8em;
    }
    
    #navbar-logo {
        padding-right: 0 !important;
        padding-left: 0 !important;
        padding-top: 0.5 rem;
    }

    #navigation-login{
        flex-grow: 2;
    }

    #building-content-container {
        max-width: 90%;
    }

    .shadow-container {
        border-color: transparent;
        background-color: transparent;
        padding: 0;
    }

    #welcome-container {
        overflow: hidden;
    }

    #welcome-image {
        min-width: calc(0.7*100vh);
        margin-top: calc(-0.1*100vh);
        margin-left: 5%;
    }
}

.simple-delete-button:active{
    border: none;
    font-weight: 600;
}

.vital-signs {
    max-width: 160px;
}

input[type='submit'].bigButton {
    width: 100%;
    font-size: 20px;
    font-weight: 600;
    cursor: pointer;
    background-color: #0045a5;
    color: white;
    transition-duration: 150ms;
}

input[type='submit'].bigButton:hover{
    background-color: #0460e1;
    transition-duration: 150ms;
}

button.add-button{
    color:white; 
    background-color:green;
    border-radius: 500px;
    font-weight: 500;
    border:none; 
    padding:0px 4px; 
    margin-right:4px;
}

button.delete_button{
    background-color:transparent; 
    border:none; 
    border-radius: 8px;
    margin-left:3px;
    font-weight:500;
}

button.delete_button:hover{
    color: red;
    font-weight: 600;
}

.btn.light-button{
    border-style: none;
    border-radius: 500px;   
}

.btn.light-button:active, .btn.light-button:hover{
    border-style: none;
    border-radius: 500px;
}

.btn-more {
    color:white;
    background-color:#1d2349;
    border-radius:100%;
}

/* Custom checkbox */
/* The container */

.hide {
    visibility: hidden;
    height: 0;
    overflow: hidden;  /* to hide child elements */
}

.checkbox-container {
    display: block;
    position: relative;
    padding-left: 18px;
    margin-bottom: 16px;
    font-size: 16px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
  
  /* Hide the browser's default checkbox */
.checkbox-container input {
    position: absolute;
    opacity: 0;
    height: 0;
    width: 0;
}
.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 15px;
    width: 15px;
    background-color: #c7d2dd;
    cursor: pointer;
    z-index: 2;
    border-radius: 2px;
  }

/* On mouse-over, add a grey background color */
.checkbox-container:hover input ~ .checkmark {
    background-color: #023e9356;
}

/* When the checkbox is checked, add a blue background */
.checkbox-container input:checked ~ .checkmark {
    background-color: #0460e1;
}

.checkbox-container input:checked:disabled ~ .checkmark {
    background-color: #505b6a;
    cursor: auto;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.checkbox-container input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator */
.checkbox-container .checkmark:after {
    left: 5px;
    top: 0px;
    width: 4px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}



.invisible-link {
    display: inline;
    height: 0;
    width: 0;
    margin: 0;
    padding:0;
}

.invisible-button {
    background-color: transparent;
    border-color: transparent;
}

/* Dimensions */
.d0 {
    max-height: 93vh;
}

.d1 {
    width: 100%;
}

.d2 {
    height: 100%;
}

.d3 {
    max-width: 360px;
}

.d4 {
    width: 80px;
}

.dd5 {
    max-width: 450px;
}

.dd6 {
    max-width: 20%;
}

.dd7 {
    min-width: 50%;
}

.dd8 {
    max-width: 33%;
}

.dd9 {
    min-width: 33%;
}

.dd10 {
    width: 790px;
}

.dd11 {
    width: 55%;
}

/*Borders / Shadows*/

.b5 {
    border-color: #0045a5
}

.b6 {
    border-color: #cbd6e2;
}

.b7 {
    border-style: solid;
}

.b8 {
    border-width: 2px;
}

.b9 {
    border: none;
}

.b10 {
    border-width: 1px;
}

.b11 {
    border-color: transparent;
}

.b20 {
    box-shadow: 10px 5px 15px #cbd6e2;
}

.bf {
    box-sizing: border-box;
}

/*Object Styling*/
.da {
    padding: 0;
}

.db {
    margin: 0;
}

.dc {
    padding-top: 8px;
}

.dd {
    padding: 0 16px;
}

.de {
    padding: 14px 16px;
}

.df {
    min-height: 48px;
}

.dg {
    margin-top: 24px;
}

.dh {
    margin-bottom: 12px;
}

.di {
    position: absolute;
}

.dj {
    margin-top: 12px;
}

.dk {
    padding: 5px;
}

.dl {
    margin-left: 12px;
}

.dm {
    margin-right: 12px;
}

.d5 {
    line-height: 18px;
}

.d6 {
    line-height: 18px;
}

.d7 {
    line-height: 20px;
}

.d8 {
    line-height: 24px;
}

.d9 {
    line-height: 30px;
}

.d10 {
    line-height: 2em;
}

.d11 {
    outline: none;
}

.d12 {
    background-color: #EEEEEE;
}

.d13 {
    background-color: #f5f8fa;
}

.d14 {
    border-radius: 8px;
}

.d15 {
    background-color: white
}

.d16 {
    background-color: #0460e1
}

.d17 {
    /* background-color: #2D8AF5 */
    background-color: #0045a5
}

.d18 {
    background-color: #9cc7ff
}

.d19 {
    border-radius: 5px;
}

.d20 {
    border-radius: 500px;
}

.d21 {
    margin-left: 8px;
}

.d22 {
    background-color: #c7d2dd;
}

.d23 {
    padding: 0px 12px;
}

.d24 {
    padding: 8px 15px;
}

.d25 {
    display: block;
}

/*Text Styling*/
.fsaa {
    font-weight: 500;
}

.fsab {
    font-weight: 400;
}

.fsac {
    font-weight: 600;
}

.fsad {
    font-weight: 300;
}

.fsc {
    font-size: 24px;
}

.fsd {
    font-size: 16px;
}

.fse {
    font-size: medium;
}

.fsf {
    font-size: large;
}

.fsg {
    font-size: 20px;
}

.fsh {
    font-size: 18px;
}

.cl {
    color: #E54937
}

.cj {
    font-size: 13px;
}

.ea {
    color: white;
}

.eb {
    color: #0460e1;
}

.ec {
    color: #0045a5;
}

.ed {
    color: #33475b
}

.ef {
    color: #243240
}

.p1 {
    text-align: center;
}

.p2 {
    text-align: end;
}

.p3 {
    text-align: start;
}

/* Flex */

.f1 {
    display: flex;
}

.f2 {
    align-items: center;
}

.f3 {
    -webkit-box-pack: center;
    justify-content: center;
}

.f4 {
    -webkit-box-align: center;
    align-items: center;
}

.f5 {
    justify-content: start;
}

.f6 {
    justify-content: end;
}

.f7 {
    align-items: start;
}

.f8 {
    justify-content: space-evenly;
}

.f9 {
    flex-grow: 2;
}

/*Others*/
.bx {
    cursor: pointer;
}

/* Containers */

.flex-row-container {
    display: flex;
    flex-direction: row;
}

.flex-column-page-container {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    padding: 8px;
    flex: 1;
}

.flex-column-container {
    display: flex;
    flex-direction: column;
}

/*  */

#signup-patient:hover, #signup-doctor:hover {
    color:#0460e1 !important;
}

.password-step-ok, .supporting-text.password-step-ok {
    color: #0E9384 !important;
}

#SHOW_PASSWORD:hover, #FORGOT_PASSWORD:hover{
    color: #0460e1;
    font-weight: 500;
    transition-duration: 150ms;
}

#OPTION_SIGNUP:hover, #OPTION_LOGIN:hover {
    color: #0460e1;
    transition-duration: 150ms;
}

.onboarding_text_inputs {
    font-size: 18px;
    width: 100%;
    padding: 8px 15px;
}

.onboarding_left_labels_with_check {
    margin-left: 8px;
    font-size: 16px;
    min-width: 40%;
    text-align: left;
    flex-grow: 2;
}

.onboarding_left_labels {
    font-size: 16px;
    text-align: left;
    flex-grow: 2;
}

.dropdown {
    flex-grow:2; 
    border-color:1px solid #243240; 
    border-radius:8px; 
    background-color:white; 
    padding:4px
}

.custom_field_onboarding_left_with_check {
    margin-left: 8px;
    font-size: 16px;
    min-width: 40%;
    text-align: left;
    flex-grow: 2;
    border-bottom: 1px solid #243240;
    border-top: 0px;
    border-left: 0px;
    border-right: 0px;
}

.custom_field_onboarding_left_labels:focus {
    outline: none;
    border-bottom: 2px solid #2b84ff;
    transition-duration: 50ms;
}

.custom_input_field_container {
    display: flex;
    flex-direction: row;
    justify-content: end;
    flex-grow: 2;
}

.custom_int_input_field {
    font-size: 16px;
    border-bottom: 2px solid #243240;
    border-top: 0px;
    border-left: 0px;
    border-right: 0px;
    min-width: 50px;
    max-width: 100px;
}

.onboarding_date_inputs_1 {
    margin-left: 8px;
    font-size: 16px;
    max-width: 45px;
    max-height:35px;
    padding: 2px 6px;
    outline: none;
    justify-self: center;
}

.onboarding_date_inputs_2 {
    margin-left: 8px;
    font-size: 16px;
    width: 50px;
    max-height:35px;
    padding: 2px 6px;
    outline: none;
}

/*Estilos barra de navegación*/

#navbar-container {
    background-color: #1D2349;
    z-index: 100;
}

#navbar-logo img {
    margin-left: 10px;
    cursor: pointer;
}

.navbar-menu-link {
    color:white; 
    text-decoration: none;
}


.flex-row-container li{
    margin-left: 6px;
    height: 100%;
    min-width: 110px;
    list-style: none;
    font-weight: 550;
}

.flex-row-container li a{
    display: flex;
    align-items: center;
    justify-content: center;
    color: #F2F2F2;
    border-radius: 8px;
    cursor: pointer;
    text-decoration: none;
    height: 2em;
}

.flex-row-container li a:hover {
    background-color: #FFFFFF;
    color:  #0460e1;
    font-weight: 600;
    transition-duration: 150ms;
}

#login-homepage {
    color:  #1D2349;
    background-color: #F2F2F2;
}

#login-homepage:hover {
    color:  #0460e1;
    background-color: #FFFFFF;
    border-style: solid;
    border-width: 3px;
    transition-duration: 50ms;
}

#sign-up-homepage {
    color: #F2F2F2;
}

#sign-up-homepage:hover {
    color: #FFFFFF;
    background-color: #0460e1;
    transition-duration: 150ms;
}

/* Consultation */

.consultation_section_title {
    width: 100%;
    text-align: left;
    margin-bottom: 12px;
    font-size: 22px;
    color: #0045a5;
    font-weight: 400;
    cursor: pointer;
}

.consultation_section_title:hover {
    color: #0460e1;
}

.consultation-section {
    width: 100%;
    background-color: white;
    border-radius: 10px;
    border-width: 1px;
    padding: 12px;
    font-weight: 300;
    color:#1d2349;
}

.consultation-section  h5 {
    font-size: 1.125em;
    font-weight: 400;
}




/* Buttons */

.back-button{
    width:120px;
}

.back-button:hover{
    background-color: #84e1c9;
    color: #1d2349;
    font-weight: 600;
    transition: 200ms ease-in-out;
}

.edit-button:hover{
    background-color: #acaaff;
    color: #1d2349;
    transition: 200ms ease-in-out;
}

.mid-button {
    background-color: transparent;
    border-radius: 30px;
    color: #1d2349;
}

.mid-button:hover {
    background-color: #1d2349e4;
    color: white;
}
  
.btn-img {
    display: block;
  }
  
.btn-img-hover {
display: none;
}

.btn:hover .btn-img {
display: none;
}

.btn:hover .btn-img-hover {
display: block;
}

/* Datepicker */

.datepicker-dropdown {
    font-size: 1em;
    cursor: pointer;
}

.datepicker .day.active,
.datepicker .day.active:hover,
.datepicker .day.active:focus {
    background-color: #1d2349; 
    color: white; 
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.6); 
}


.datepicker table tr td, .datepicker table tr th {
    width: 40px;
    height: 40px;
    text-align: center;
    padding: 5px !important;
}

.datepicker table tr td.day:hover{
    text-align: center;
    background-color: #0460e1!important;
    color: white;
}

.datepicker-dropdown .datepicker-switch {
    width: 220px;
}

/* Ensure the 'datepicker-switch' button, month, and year views are presented in a 'grid' layout */
.datepicker-years .table-condensed>tbody>tr>td, 
.datepicker-months .table-condensed>tbody>tr>td, 
.datepicker-decades .table-condensed>tbody>tr>td {
    width: auto;
    height: auto;
}

.datepicker-months span.month, 
.datepicker-years span.year, 
.datepicker-decades span.decade, 
.datepicker-centuries span.century {
    display: inline-block;
    width: 30%;
    height: 20%;
    margin: 2% 1.5%;
    text-align: center;
    vertical-align: middle;
}

.datepicker table tbody tr td span.month:hover, 
.datepicker table tr td span.year:hover,
.datepicker table tr td span.decade:hover, 
.datepicker table tr td span.century:hover {
    text-align: center;
    background-color: #0460e1!important;
    color: white;
}

.datepicker-days .today:hover, .datepicker-days .clear:hover {
    background-color: #0460e1a4!important;
    color: white;
}

.datepicker-switch:hover {
    background-color: #0460e1a4 !important;
    color: white;
}

.day.old, .day.new {
    color: #c7d2dd;
}

.date-input-container {
    position: relative;
  }
  
  .date-input {
    padding-right: 30px; /* Or enough space for icon */
  }
  
  .date-icon {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none; /* Ignore mouse events, pass them to the input field */
  }
  
  .date-input-container input:disabled + i {
    opacity: 0.2;
  }

.date-input-container {
    position: relative;
    display: flex;  /* add this */
    align-items: center;  /* add this */
}

.date-input-container i {
    position: absolute;
    right: 10px;
    pointer-events: none;
}

.datepicker td.future-date {
    visibility: hidden;
}

.today.day {
    border-color: green;
    border-style: dashed;
    border-width: 1px;
    align-self: center;
}


/* Required */

.consultation-section.required .consultation_section_title:after, .consultation_section_subtitle.required:after {
    content:"*";
    color:#dc3545;
}


/* Floating labels */

.form-floating>.form-control,
.form-floating>.form-control-plaintext {
  padding: 0rem 0.75rem;
}

.form-floating>.form-control,
.form-floating>.form-control-plaintext,
.form-floating>.form-select {
  min-height: calc(2.2rem + 2px);
  height: calc(2.2rem + 2px);
  line-height: 1;
}

.form-floating>label {
  opacity: 0.65;
  padding: 0.5rem 0.75rem;
}

.form-floating > .form-control-plaintext ~ label, 
.form-floating > .form-control:focus ~ label, 
.form-floating > .form-control:not(:placeholder-shown) ~ label, 
.form-floating > .form-select ~ label {
    transform: scale(.75) translateY(-1.4rem) translateX(.15rem);
    color:#1d2349;
    background-color: transparent;
    opacity: 0.7;
}


/* Modify card body */

.card-body {
    font-weight: 300;
    box-shadow: none !important;
}

@media (max-width: 800px) {
    .card {
        border: none;
    }
}

strong {
    font-weight: 500;
}


/* Dropdown submenu */

.dropdown-menu.show{
    display: inline-table;
    }

/* ICD View config */

.browserBodyLeft, .browserBodyRight, .statusdiv {
    display: None;
}

statusFlexContainer{
    color:transparent;
}

.chopped{
    color:#1d2349;
}

.ectComponent .browser em.found, .ectComponent .browser em.found em.wbe, 
.ectComponent .entitylist em.found, .ectComponent .entitylist em.found em.wbe {
    color:#1d2349;
}

.ectComponent .pvs {
    background-color: #84e1ca5c;
}

.ectComponent .browser em.nonwbe, .ectComponent .entitylist em.nonwbe {
    color:#ff6400;
}

.ctw-eb-window .embeddedBrowserSearchbox{
    width: 100%;
    margin:0;
}

.ctw-eb-window .popupModeResults {
    margin:0;
}

.ectComponent #ctwFlexContainer {
    height:14em;
}

.ctw-input{
    display: block;
    width: 100%;
    padding: 1.15em 2.8em;
    font-size: 1rem;
    line-height: 1.5;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' class='bi bi-search' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'%3E%3C/path%3E%3C/svg%3E") no-repeat 13px center;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}


/* Autocomplete menu */

.ui-menu .ui-menu-item{
    background-color: white;
    color: #1d2349;
}

.ui-menu-item .ui-menu-item-wrapper.ui-state-active {
    background: #84e1c9 !important;
    color: #1d2349 !important;
    border:None;
    transition: ease-in-out 150ms;
}

.ui-widget-content {
    border: None;
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15) !important;
}

/* Pagination */

.active > .page-link, .page-link.active {
    background-color: #8c00ff;
    border-color: none;
}

.page-link {
    color:#1d2349;
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
  }
  
/* Hide scrollbar for IE, Edge and Firefox */
.hide-scrollbar {
-ms-overflow-style: none;  /* IE and Edge */
scrollbar-width: none;  /* Firefox */
}  
