﻿html{
    height: 100%;
}

body {
    background-color: #edeff6;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro' !important;
    /*letter-spacing: -.022em;*/
    color: #1d1d1f;
}

.main {
    min-height: 500px;
}

h1 {
    font-family: /*'Roboto', */'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro'; font-weight: 200;
}

    h1.h1InformesPersonalizados {
        color: #29457d !important;
        font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    }

h2 {
    font-family: /*'Roboto', */ 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    font-size: 26px;
    color: #1d1d1f;
    margin: 0;
}

h3 {
    font-family: /*'Roboto', */ 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    font-size: 18px;
    color: #1d1d1f;
    margin: 0;
}

h5 {
    font-size: 15px;
}

select {
    border-radius: 5px !important;
}

p {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    font-size: 14px;
    font-weight: normal;
}

    p.claim {
        font-family: /*'Roboto', */'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    }

    a {
        color: #0071e3;
        font-weight: lighter;
    }

label {
    font-weight: normal;
    font-size: 1.1em;
}

.floatRight {
    float: right;
    margin-right: 2px;
}

.LeyendaPorLlegar.floatRight {
    height: 11px;
    width: 11px;
}

.LeyendaEnEspera.floatRight {
    height: 11px;
    width: 11px;
}

.LeyendaEnConsulta.floatRight {
    height: 11px;
    width: 11px;
}

.LeyendaTerminado.floatRight {
    height: 11px;
    width: 11px;
}

.LeyendaNoAsistencia.floatRight {
    height: 11px;
    width: 11px;
}

.LeyendaAsistencia.floatRight {
    height: 11px;
    width: 11px;
}

.LeyendaVacia.floatRight {
    height: 11px;
    width: 11px;
}

.LeyendaPersonalizado.floatRight {
    height: 11px;
    width: 11px;
}

/* HOME */
#divPanelMensjaesDashboardPadre {
    position: absolute;    
    top: 10px;
    max-height: 600px;
    overflow-x: auto;
    max-width: 500px;
    right: 10px; 
    background: transparent;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    border-radius: 12px;
    margin-top: 15px;
    margin-right: 15px;
}

#divPanelMensjaesDashboardPadre::-webkit-scrollbar {
    width: 8px;
}

/* Estilos barra (thumb) de scroll */
#divPanelMensjaesDashboardPadre::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 4px;
}

    #divPanelMensjaesDashboardPadre::-webkit-scrollbar-thumb:active {
        background-color: #999999;
    }

    #divPanelMensjaesDashboardPadre::-webkit-scrollbar-thumb:hover {
        background: #b3b3b3;
        box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.1);
    }

/* Estilos track de scroll */
#divPanelMensjaesDashboardPadre::-webkit-scrollbar-track {
    background: #e1e1e1;
    border-radius: 4px;
}

    #divPanelMensjaesDashboardPadre::-webkit-scrollbar-track:hover,
    #divPanelMensjaesDashboardPadre::-webkit-scrollbar-track:active {
        background: #d4d4d4;
    }


#divMensajesDashboardContenido span{
    background-color: transparent !important;
}

/* CONTABILIDAD */
#divContabilidad h1, #formContactosContactos h1 {
    font-weight: normal;
}

/* MONITOR */
.CitaMonitor h1 {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
}

.monitorZone h1{
    font-weight: bold;
}

.monitorZone .logo {
    padding: 0;
    background: none;
    border: 0;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    border-radius: 15px;
    /* margin-bottom: 10px;*/
    /*width: auto;*/
    height: 100%;
}

.monitorZone .logo-header {
    width: 70%;
    height: auto;
    margin-top: 20%;
}

#divMonitorCabeceraCentral {
    text-align: center;
}

/* CHECK IN OUT */
#navCheckInCheckOut {
    border-radius: 0;
}

#navCheckInCheckOut .logo {
    padding: 0;
    background: none;
    border: 0;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    border-radius: 15px;
}

#divContainerCheckInCheckOut {
    top: 35%;
    position: absolute;
    width: 100%;
}

    #divContainerCheckInCheckOut .form-textbox-input {
        height: 65px;
        font-size: 19px;
    }

    #divContainerCheckInCheckOut label {
        font-size: 18px;
    }

#divContainerCheckInCheckOut .panel {
    background: transparent;
}

#divContainerCheckInCheckOut .panel-primary > .panel-heading {
    background: transparent;
}

#divContainerCheckInCheckOut .panel-primary > .panel-heading h2 {
    font-size: 24px;
}

#divContainerCheckInCheckOut .panel-footer {
    border: none;
    background: transparent;
}

.navbar-slogan {
    font-size: 30px;
}

#divContainerCheckInCheckOut .btn {
    font-size: 20px;
    padding: 30px 30px;
}

#divContainerCheckInCheckOut .btn-success {
    padding-left: inherit;
    padding-right: inherit;
}

#divModalDialogCheckInCheckOut.modal-dialog {
    top: 30%;
}

#divModalDialogCheckInCheckOut .modal-dialog h2{
    font-size: 25px;
}

#divModalDialogCheckInCheckOut .panel {
    background: #fff;
}

#divModalDialogCheckInCheckOut .panel-body {
    font-size: 18px;
}

/* ALERTAS */
.alert-info {
    background-color: #eef7ff !important;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    border: 0;
    border-radius: 12px;
    color: #29457d;
    box-shadow: 5px 5px 5px rgba(0, 0, 0, .05);
}

    .alert-info.alert-info2 {
        background-color: #eee !important;
        color: #333;
    }

    .alert-info.alert-info3 {
        background-color: #fff !important;
        border: 1px solid #eee;
        border-radius: 12px !important;
        color: #666;
    }

    .alert-info h4 {
        font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
        color: #29457d;
    }

.alert-info h3 {
    color: #fff;
}

.alert-info a {
    color: #fff;
}

/* DIALOGOS */
#pleaseWaitDialog h3 {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    color: #7c7ffd;
}

/* HEADER */
header p {
    font-family: /*'Roboto', */ 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
}

header {
    background: linear-gradient(to bottom right, #29457d 0%, #5b8dc9 100%);
    box-shadow: none;
}

.separador-header {
    background-image: none;
}

.headerEdit .logo {
    width: 188px;
    height: 117px;
}

img.logo-header {
    width: auto;
    height: 45px;
}

/* 51x51, que es EXACTAMENTE lo que miden en la v1 (Enrique, 22-09-2026: "los iconos de arriba en la
   v1 son mas grandes... en la v2 mucho mas pequenos, puedes dejarlos igual?").
   En la v1 no hay ninguna regla .iconoMenuSuperior: mandan los atributos width="51" height="51" del
   propio <img>. Aqui esta regla los estaba encogiendo a 44, siete pixeles menos por lado. */
.iconoMenuSuperior {
    width: 51px;
    height: 51px;
}

ul.menu-principal li p span {
    font-size: 13px;
}

/* CUENTAS */
#div_Caja .alert-info {
    /*border-radius: 0;*/
}

#divBodyPagosProfesionales h3{
    font-weight: normal;
    margin-top: 15px;
}

#divBodyGastosContabilidadProveedores #txtFechaPrevistaPagoGastosProveedores {
    width: 200px;
}

/* PACIENTES */
.pacBx h4 {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    margin-bottom: 15px;
    color: #29457d;
    margin-top: 10px;
    text-shadow: none;
    font-weight: normal;
}

.filiacionForm input.datepicker {
    width: 100%;
    float: left;
    text-align: left;
    padding: 0;
}

#ddlPaginadorPacientes{
    margin-bottom: 10px;
}

/* STOCK */
#TxtFechaCad {
    width: 150px;
}

/* AGENDA */
#lblPacienteCtlEditEventoCita{
    display: none;
}

/* BOTONES */
.btn {
    font-size: 14px;
    padding: 5px 12px;
}

button {
    background: none;
    border: 0;
    box-sizing: content-box;
    color: inherit;
    cursor: pointer;
    font: inherit;
    line-height: inherit;
    overflow: visible;
    vertical-align: inherit;
}

.btn.active:hover{
    box-shadow: none;
}

.btn-xs {
    padding: 1px 6px;
    font-size: 13px !important;
}

.btn-lg {
    padding: 85px !important;
    font-size: 30px !important;
}

.btnPrimary {
    cursor: pointer;
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    background: #0071e3;
    color: #fff !important;
    /*font-size: 12px;*/
    font-weight: 400;
    letter-spacing: -.01em;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    min-width: 23px;
    padding-left: 11px;
    padding-right: 11px;
    border-radius: 12px;
}

.btn-primary {
    cursor: pointer;
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    background: #507dc5;
    border-color: #507dc5;
    color: #fff;
    /*font-size: 12px;*/
    line-height: 1.6;
    font-weight: 400;
    letter-spacing: -.01em;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    min-width: 23px;
    padding-left: 11px;
    padding-right: 11px;
    border-radius: 12px;
}

    /*.btn-primary.btn-xs {
        padding: 2px 5px;
    }*/

.btn-primary.btn-sm{
    font-size: 12px;
}

    .btn-primary .glyphicon, .btn-forms .glyphicon {
        margin-right: 0;
        font-size: 12px;
    }

    .btn-primary:hover {
        background: #1d82c6;
        border-color: #1d82c6;
        color: #fff;
    }

    .btn-primary.disabled, .btn-primary[disabled], fieldset[disabled] .btn-primary, .btn-primary.disabled:hover, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary:hover, .btn-primary.disabled:focus, .btn-primary[disabled]:focus, fieldset[disabled] .btn-primary:focus, .btn-primary.disabled:active, .btn-primary[disabled]:active, fieldset[disabled] .btn-primary:active, .btn-primary.disabled.active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary.active {
        /*background: #bbf2bb;
        border-color: #bbf2bb;
        color: #666;*/
    }

.btn-danger {
    color: #fff;
    border-radius: 12px;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    padding-left: 11px;
    padding-right: 11px;
    border-radius: 12px;
    line-height: 1.6em;
    background: #d9534f;
    background-image: none;
    border-color: #d9534f;
}

    .btn-danger.btn-xs {
        padding: 1px 5px;
    }

    .btn-danger.btn-sm {
        font-size: 12px;
    }

    .btn-danger:hover {
        opacity: 0.8;
        background: #d9534f;
    }

.btn-warning {
    color: #fff;
    border-radius: 12px;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    padding-left: 11px;
    padding-right: 11px;
    line-height: 1.6em;
    background: #e07840;
    background-image: none;
    border-color: #c96830;
}

    .btn-warning:hover {
        opacity: 0.8;
        background: #e07840;
    }

.btn-success {
    color: #29457d !important;
    border-radius: 12px;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    padding-left: 11px;
    padding-right: 11px;
    border-radius: 12px;
    line-height: 1.6em;
    background: #eef7ff;
    background-image: none;
    border-color: #29457d;
}

    .btn-success:hover, .open .dropdown-toggle.btn-success {
        opacity: 0.8;
        color: #29457d;
        background: #eef7ff;
        border-color: #29457d;
    }

    .btn-success.disabled, .btn-success[disabled], fieldset[disabled] .btn-success, .btn-success.disabled:hover, .btn-success[disabled]:hover, fieldset[disabled] .btn-success:hover, .btn-success.disabled:focus, .btn-success[disabled]:focus, fieldset[disabled] .btn-success:focus, .btn-success.disabled:active, .btn-success[disabled]:active, fieldset[disabled] .btn-success:active, .btn-success.disabled.active, .btn-success[disabled].active, fieldset[disabled] .btn-success.active, .btn-success:focus {
        background: #eef7ff;
        border-color: #29457d;
    }

.btn.btn-success .caret {
    border-top-color: #29457d;
    border-bottom-color: #29457d;
}

.btn-default {
    color: #666;
    border-radius: 12px;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    padding-left: 11px;
    padding-right: 11px;
    border-radius: 12px;
    line-height: 1.6em;
    background: #fff;
    background-image: none;
    border-color: #cccccc;
}

    .btn-default:active, .btn-default.active, .btn-default:hover {
        background: #f2f2f2;
        box-shadow: none;
    }

    .btn-default:active, .btn-default.active {
        border: 1px solid #0071e3;
    }

    .btn-default span:not(.badge) {
        color: #666 !important;
    }

.btn-info {
    border-radius: 12px;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    padding-left: 11px;
    padding-right: 11px;
    border-radius: 12px;
    line-height: 1.6em;
}

.btn-forms {
    background: transparent;
    background-image: none;
    border-radius: 12px;
}

    .btn-forms:hover {
        background: transparent;
        background-image: none;
        color: #428bca;
    }

    .btn-forms.disabled, .btn-forms[disabled], fieldset[disabled] .btn-forms, .btn-forms.disabled:hover, .btn-forms[disabled]:hover, fieldset[disabled] .btn-forms:hover, .btn-forms.disabled:focus, .btn-forms[disabled]:focus, fieldset[disabled] .btn-forms:focus, .btn-forms.disabled:active, .btn-forms[disabled]:active, fieldset[disabled] .btn-forms:active, .btn-forms.disabled.active, .btn-forms[disabled].active, fieldset[disabled] .btn-forms.active, .btn-forms:focus {
        background: transparent;
        border-radius: 12px;
    }

.form-button {
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    border-radius: 18px;
    background: #0071e3;
    color: #fff;
    font-size: 17px;
    line-height: 1.17648;
    font-weight: 400;
    letter-spacing: -.022em;
    min-width: 28px;
    padding: 18px 31px;
    border-radius: 28px;
    box-sizing: border-box;
    display: block;
    width: 100%;
    border-radius: 8px;
    border-radius: 12px;
    white-space: normal;
    display: inline-block;
}

.form-buttonInsideInput {
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    background: #fff;
    color: #555555;
    font-size: 17px;
    line-height: 1.17648;
    font-weight: 400;
    letter-spacing: -.022em;
    min-width: 28px;
    padding: 18px 31px;
    box-sizing: border-box;
    display: block;
    width: 100%;
    border-radius: 12px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    white-space: normal;
    display: inline-block;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    border: 1px solid #cccccc;
}

.btn [class^="flaticon-"], .btn [class*=" flaticon-"], .btn [class^="icon-"], .btn [class*=" icon-"]{
    color: #fff;
}

.btn.btn-dri.btn-green {
    background: #90f890;
    border-radius: 12px;
    border: 0;
    box-shadow: none;
    padding-left: 11px;
    padding-right: 11px;
}

/* Estilos para el botón flotante de guardar */
.btn-success.floating-save-btn {
    position: fixed;
    bottom: 40px;
    right: 30px;
    z-index: 1041;
}

    .btn-success.floating-save-btn.bottom80 {
        bottom: 80px;
    }

    .btn-success.floating-save-btn.bottom120 {
        bottom: 120px;
    }

.btn-primary.floating-save-btn {
    position: fixed;
    bottom: 40px;
    right: 30px;
    z-index: 1041;
}

.btn-warning.floating-save-btn {
    position: fixed;
    bottom: 40px;
    right: 150px;
    z-index: 1041;
}

.floating-save-group {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1041;
}

    /* Menú dropdown para botones flotantes con position fixed */
    .floating-save-group .dropdown-menu {
        position: fixed !important;
        bottom: 75px !important; /* Ajusta según la altura de tu botón */
        right: 20px !important;
        top: auto !important;
        left: auto !important;
        margin: 0;
    }

    /* Abrir menú al hacer hover */
    .floating-save-group:hover .dropdown-menu {
        display: block;
    }

    /* Invertir la flecha del caret cuando es dropup */
    .floating-save-group.dropup .caret {
        border-top: 0;
        border-bottom: 4px dashed;
        border-bottom: 4px solid\9;
    }

/* Animación de entrada */
@@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.btn-success.floating-save-btn, .btn-warning.floating-save-btn {
    animation: slideInUp 0.4s ease-out;
}

.btn-warning {
    color: #fff;
    background-color: #e07840;
    border: 1px solid #c96830;
}

/* MENÚS LATERALES */
ul.nav-aside li a {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    background-color: #fff;
    color: #333;
    border: none;
    border-radius: 0;
    font-weight: normal;
    font-size: 15px;
    letter-spacing: 0.04em;
}

ul.nav-aside li a [class^="flaticon-"], ul.nav-aside li a [class*=" flaticon-"] {
    color: #333;
}

ul.nav-aside li a:hover {
    background: #f2f2f2;
    font-weight: normal;
    color: #333;
    border: none;
    opacity: 1;
}

    ul.nav-aside li a:hover [class^="flaticon-"], ul.nav-aside li a:hover [class*=" flaticon-"] {
        color: #29457d;
    }

ul.nav-aside li.active a, ul.nav-aside li.active span:not(.badge), ul.nav-aside li:hover span:not(.badge) {
    background-color: #f2f2f2;
    color: #29457d;
}

ul.nav-aside li.active > a:hover, .nav-pills > li.active > a:focus, ul.nav-aside li > a:hover, .nav-pills > li > a:focus {
    background-color: #f2f2f2;
    color: #29457d;
}

ul.nav-aside li.active, ul.nav-aside li:not(.list-heading):hover {
    border-left: 2px solid rgba(17, 108, 169, 0.7);
}

/* MODALES */
.modal-content{
    border-radius: 12px;
}

.modal-header {
    border-bottom: 1px solid #a5c6dc;
}

/* PROGRESS BAR */
.progress.active .progress-bar {
    background-color: #7c7ffd;
    border-radius: 12px;
}

/* FORMULARIOS */
.pTitleForm {
    margin-top: 5px;
    font-size: 1.2em;
}

.floating-label-group {
    position: relative;
    margin-top: 10px;
    margin-bottom: 2px;
}

.floating-label-group .floating-label {
    font-size: 13px;
    color: #999;
    position: absolute;
    pointer-events: none;
    top: 5px;
    left: 11px;
    transition: all 0.1s ease;
    font-weight: 300;
    margin-top: 0;
    background-color: white;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 95%;
}

    .floating-label-group .floating-label.floating-label-ingroup {
        left: 40px;
    }

.floating-label-group input:focus ~ .floating-label,
.floating-label-group input:not(:focus):valid ~ .floating-label {
    top: -10px;
    bottom: 0px;
    left: 10px;
    font-size: 15px;
    opacity: 1;
    color: #cccccc;
}

.floating-label-group .multiselect.dropdown-toggle {
    height: 43px;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0;
    margin-top: 0;
}

#divEstadoBono .floating-label-group .multiselect.dropdown-toggle {
    right: inherit;
}

.floating-label-group .input-group {
    position: initial;
}

    .floating-label-group .input-group {
        position: initial;
    }

    .floating-label-group .LandbotImgAyudas {
        right: -4px;
        top: -4px;
        position: absolute;
        z-index: 9;
    }

    .input-group-addon {
        border-radius: 12px;
    }

        .input-group-addon .glyphicon {
            margin-right: 0;
        }

.floating-label-group .btn {
    right: -4px;
    top: -10px;
    position: absolute;
}

@media (min-width: 768px) {
    .form-inline select.form-control {
        width: 100%;
    }
}

textarea, .form-textbox .form-textbox-input {
    color: #1d1d1f;
    border-color: #d2d2d7;
    background-color: hsla(0,0%,100%,.8);
    text-overflow: ellipsis;
}

.form-textbox-input {
    height: 45px;
    font-size: 14px;
    line-height: 1.23536;
    font-weight: 400;
    width: 100%;
    border-radius: 12px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    margin-bottom: .82353rem;
    padding: 1.9rem 1rem 0 !important;
    padding-right: 3px !important;
    text-align: left;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

.combo-textbox-input {
    /*padding: 0 .94118rem 0 !important;*/
    opacity: 1;
    cursor: pointer;
}

.floating-label-group .tagit.ui-widget.ui-widget-content {
    color: #1d1d1f;
    border-color: #d2d2d7;
    background-color: hsla(0,0%,100%,.8);
    text-overflow: ellipsis;
    height: 51px;
    font-size: 14px;
    line-height: 1.23536;
    font-weight: 400;
    width: 100%;
    border-radius: 12px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    margin-bottom: .82353rem;
    padding: 1.9rem 1rem 0 !important;
    text-align: left;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
    resize: both;
}

.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
    background-color: #f1f1f1;
}

input.datepicker {
    width: 100px;
    text-align: left;
}

input.datepicker#PAC_FECHA_NACIMIENTO {
    width: 200px;
}

    input.datepicker#TxtFechaTarea {
        width: 100%;
    }

#divListadoBonos input.datepicker {
    width: 200px;
}

#div_ConfirmacionAsistencia input.datepicker {
    width: 200px;
}

#divAltaRapidaPaciente label {
    margin-top: 0;
}

#formularioNuevoBono input.datepicker {
    width: 100%;
}

#formularioSeguimiento input.datepicker {
    min-width: 110px;
}

#divFloatingGroupPacienteBuscador {
    margin-top: 0;
}

#divFloatingGroupPacienteBuscador #lblBuscador {
    display: block !important;
}

#divFloatingGroupPacienteBuscador #txtBuscador::-webkit-input-placeholder, #divFloatingGroupPacienteBuscador #txtBuscador:-moz-placeholder, #divFloatingGroupPacienteBuscador #txtBuscador::-moz-placeholder {
    color: transparent;
}

#div_SearchPatient #lblBusqueda {
    display: block !important;
}

#div_SearchPatient #txtBusqueda::-webkit-input-placeholder, #div_SearchPatient #txtBusqueda:-moz-placeholder, #div_SearchPatient #txtBusqueda::-moz-placeholder {
    color: transparent;
}

#div_SearchPatient #txtBusqueda {
    margin-bottom: 8px;
}

#divContentNewEventCita{
    padding-top: 0;
}

#divContentNewEventCita input.datepicker {
    width: 100%;
}

#divPrimarymNuevaCita .panel-heading{
    border-bottom: none;
}

#formularioPeticionLaboratorio input.datepicker {
    width: 100%;
}

#modalNewRecor input.datepicker {
    width: 200px;
}

#formularioHospitalAsignacion input.datepicker {
    width: 100%;
}

.chosen-container-single .chosen-single {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    height: 45px !important;
    border-radius: 12px !important;
    background: none !important;
    border: 1px solid #ccc !important;
}

.chosen-container-single .chosen-single div{
    top: 8px !important;
}

.bootstrap-switch .bootstrap-switch-handle-on, .bootstrap-switch .bootstrap-switch-handle-off, .bootstrap-switch .bootstrap-switch-label {
    padding: 11px 12px;
}

.chosen-container .chosen-single {
    padding: 1.9rem 1rem 0 !important;
}

.chosen-container .chosen-choices {
    border-radius: 12px !important;
    height: 34px !important;
    padding: 6px 12px !important;
    font-size: 14px !important;
    border: 1px solid #ccc !important;
    line-height: 1.428571429 !important;
    color: #555555 !important;
    vertical-align: middle !important;
    background-color: #ffffff !important;
    background-image: none !important;
    -webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%) !important;
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%) !important;
    -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s !important;
    transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s !important;
}

.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
    margin: 0 !important;
    height: inherit !important;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro' !important;
    color: #555555 !important;
}

/* HISTORIA CLÍNICA */
.detalleBar {
    padding: 5px;
    border: 1px solid #ccc;
    border-radius: 12px;
}

#div_FichaPacSel .paciente-img img, #divCtlExpedienteDatos #imgPatient {
    padding: 0;
    background: none;
    border: 0;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    border-radius: 15px;
    margin-bottom: 0;
    background: #fff;
    background-color: #fff;
}

#div_FichaPacSel .img-thumbnail {
    display: inherit;
    height: inherit;
    max-width: inherit;
    padding: 0;
    line-height: inherit;
    background-color: #ffffff;
    border: 0;
    border-radius: 0;
    -webkit-transition: inherit;
    transition: inherit;
    padding-left: 10px;
}

#divVistaDefecto .img-thumbnail {
    background-color: #ffffff;
    border: 0;
    border-radius: 0;
}

#divVistaDefecto .img-thumbnail img {
    -webkit-box-shadow: 1px 1px 4px 0px rgba(0,0,0,0.75);
    -moz-box-shadow: 1px 1px 4px 0px rgba(0,0,0,0.75);
    box-shadow: 1px 1px 4px 0px rgba(0,0,0,0.75);
}

#div_FichaPacSel #btnLanzarVideoLlamada {
    left: 8px !important;
}

#div_DatosMedicos .img-thumbnail, #div_DatosTecnicos .img-thumbnail {
    padding: 0;
    background: none;
    border: 0;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    border-radius: 15px;
    margin-bottom: 10px;
    background: #fff;
    background-color: #fff;
}

#div_DatosMedicos #divTopBarImgPatient {
    padding-top: 0;
    background-color: transparent;
    border: 0;
}

#div_DatosMedicos .topBar.detMed, #div_DatosTecnicos .topBar.detMed {
    padding: 5px;
    border: 1px solid #ccc;
    border-radius: 12px;
    padding-bottom: 10px;
}

.h3AppleHealthInfo, .h2AppleHealthInfo {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
}

#divLabelActuacionesConsulta, #divLabelFCMID3 {
    display: none;
}

#divAñadirActuacionesConsulta {
    margin-top: 14px;
}

#divDatosEmbarazo input.datepicker {
    width: 200px;
}

#div_DatosTecnicos input.datepicker {
    width: 200px;
}

/* HISTORIAL CLÍNICO */
    .consultaHist {
    margin-bottom: 10px;
}

.consultaHist .panel-footer {
    background-color: #fff;
}

.quirofanoHist {
    margin-bottom: 10px;
}

.quirofanoHist .panel-footer {
    background-color: #fff;
}

.pruebaHist {
    margin-bottom: 10px;
}

.pruebaHist .panel-footer {
    background-color: #fff;
}

.containerHist {
    padding: 0;
    background: transparent;
}

.backgroundAzurClaro {
    border-color: #507dc5 !important;
    background-color: #507dc5 !important;
    opacity: 0.7 !important;
}

    .backgroundAzurClaro:hover {
        background-color: #507dc5 !important;
        opacity: 1 !important;
    }

.backgroundRosa {
    border-color: #ff8cff !important;
    background-color: #ff8cff !important;
    opacity: 1 !important;
    max-width: 100%;
    white-space: normal;
}

    .backgroundRosa:hover {
        background-color: #ff8cff !important;
        opacity: 0.7 !important;
    }

/* APPLE HEALTH */
#div_AppleHealth .panel-primary {
    background-color: transparent;
    border: 1px solid #ccc;
}

/* PACIENTES */
/*#divPacientes */.fichaSmall {
    margin-top: 0;
    padding-top: 0;
}

    /*#divPacientes */ .fichaSmall .tabF {
    min-height: inherit;
    border: none;
    /*border-bottom: 1px solid #0071e3;*/
    background: transparent;
    color: #1d1d1f !important;
    padding-left: 0;
    padding-top: 0;
    text-transform: uppercase; 
    font-weight: bold;
}

    /*#divPacientes */ .fichaSmall .form-group {
    margin-bottom: 5px;
}

/*#divPacientes */ .boxForm.fichaSmall .myForm {
    border: none;
    padding-left: 0;
    padding-right: 0;
    padding: 7px;
    margin-top: 0;
    padding-top: 0;
}

/*#divPacientes */ .fichaSmall p {
    border-bottom: 0;
    min-height: 20px;
    margin-bottom: 5px;
}

/*#divPacientes */ .fichaSmall .myForm p {
    display: inline;
}

    /*#divPacientes */ .fichaSmall .myForm p:empty {
    background-color: #f7f7f7;
    display: block;
}

.pDashboard p {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
}

.fPaciente.boxForm .myForm {
    background: #e3e4fa;
    box-shadow: none;
}

.pDashboard label {
    font-weight: bold;
}

.pDashboard .img-thumbnail {
    padding: 0;
    background: none;
    border: 0;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    border-radius: 15px;
    margin-bottom: 10px;
}

.filiacionForm #imgPaient, .filiacionForm #imgPaientDNI, #divFacturacionBitcoinConfiguracion #imgQRBitcoin {
    padding: 0;
    background: none;
    border: 0;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    border-radius: 15px;
    margin-bottom: 10px;
}

/* USUARIOS */
.fotoProfile .imgProfile{
    border: none;
}

.fotoProfile .imgProfile img {
    padding: 0;
    background: none;
    border: 0;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    border-radius: 15px;
    margin-bottom: 10px;
}

/* FACTURAS */

#divFacturaCabeceraFacturador{
    margin-bottom: 2px !important;
    margin-top: 0 !important;
}

/* PLANNING */
.planningDietM .doctorAsignado .rangoHoras {
    background: #7d7ffd;
}

.planningDietM .doctorAsignado .rangoHoras .hora p{
    /*color: #fff;*/
    margin: 0;

    background: #f5f5fa;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    font-size: 14px;
    color: #29457d;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    font-weight: 600;
    border-left: 2px solid #fff !important;
}

#planning_content .panel-default > .panel-heading h2 {
    font-size: 14px;
    padding-top: 4px;
}

.ui-widget-header:not(.ui-datepicker .ui-widget-header):not(.fc-view-container .ui-widget-header) {
    border: none !important;
    border-bottom: 1px solid #a5c6dc !important;
    background: none !important;
    /*color: #428bca !important;*/
    /*font-weight: normal !important;*/
    border-radius: 0 !important;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro' !important;
    background-color: #fff !important;
    color: #29457d !important;
    /*border: 0;*/
    border-bottom: 1px solid #a5c6dc !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 10px 15px !important;
}

/* COMUNICACIÓN */
#div_Mensajes .boxForm .myForm, 
#div_MensajesPacientes .boxForm .myForm {
    box-shadow: none;
    padding: 0;
}

#div_Mensajes .nav-pills > li.active > a, #div_Mensajes .nav-pills > li.active > a:hover, #div_Mensajes .nav-pills > li.active > a:focus,
#div_MensajesPacientes .nav-pills > li.active > a, #div_MensajesPacientes .nav-pills > li.active > a:hover, #div_MensajesPacientes .nav-pills > li.active > a:focus {
    background-color: transparent;
    color: #0071e3;
}

.msg_container_base {
    background: #fafafa !important;
    padding: 0;
}

#div_Mensajes .nav > li > a:hover, #div_Mensajes .nav > li > a:focus,
#div_MensajesPacientes .nav > li > a:hover, #div_MensajesPacientes .nav > li > a:focus {
    background-color: #fff;
    color: #0071e3;
}

#div_Mensajes .accordion-body.in .list-group-item,
#div_MensajesPacientes .accordion-body.in .list-group-item {
    padding: 0;
    border: 1px solid #ddd;
    border-radius: 0;
}

#div_Mensajes .accordion-body.in .panel-default,
#div_MensajesPacientes .accordion-body.in .panel-default {
    margin-bottom: 0;
    padding-bottom: 0;
}

/* FULL CALENDAR */
#calendar .fc-event {
    border-radius: 5px;
    border-left: 4px solid rgba(0,0,0, 0.25);
    font-weight: bold;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, .05);
    font-size: 12px;
}

#calendar .fc-time-grid-event .fc-time {
   /* border-bottom: solid 1px rgba(0,0,0,0.2);*/
    font-size: 11px;
}

/* UI GRIDS */
div.ui-jqgrid {
    margin-bottom: 10px;
    border: none !important;

    background: #ffffff !important; /* fondo blanco para que la sombra se aprecie */
    box-shadow: 0 2px 5px rgba(16, 24, 40, 0.09) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

#main_content div.ui-jqgrid {
    box-shadow: none !important;
}

    .ui-widget-header th {
        border: 1px solid #eee !important;
    }

.ui-jqgrid .ui-jqgrid-titlebar {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    background-color: #fff;
    color: #29457d;
    border: 0;
    border-bottom: 1px solid #a5c6dc;
    font-size: 16px;
    font-weight: 500;
}

.ui-state-default .btn-primary, .ui-state-default .btn-primary:link {
    color: #fff;
}

.ui-pager-control {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    background: transparent !important;
    color: #428bca;
}

.ui-icon:before {
    color: #48659d;
    font-size: 17px !important;
}

#div_Facturas .ui-pager-control {
    background: transparent !important;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
    background: none;
    color: #29457d;
}

    .ui-state-default:not(.tagit-choice),
    .ui-widget-content .ui-state-default:not(.tagit-choice),
    .ui-widget-header .ui-state-default:not(.tagit-choice) {
        border: none;
    }

#div_Facturas .ui-jqgrid-pager {
    border-radius: 0;
}

.ui-jqgrid .ui-jqgrid-view input[type=checkbox] {
    height: initial;
}

/* WIDGETS */
.ui-widget, .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro' !important;
}

/* WIDGET: CALENDARIO */

#datepicker .ui-datepicker{
    border: 0 !important;
    background: #fff;
    border-radius: 0;
}

#divMenuLateral #datepicker .ui-datepicker {
    border-radius: 12px;
    box-shadow: 5px 5px 5px rgba(0, 0, 0, .05);
}

#divMenuLateral .ui-datepicker .ui-datepicker-header {
    border: none;
    background: #48659d;
    border-radius: 8px;
}

.ui-datepicker {
    border: 1px solid #ccc !important;
    /* background: none !important; */
    border-radius: 0;
    z-index: 1041 !important;
}

.ui-datepicker-calendar {
    background: #fff;
}

.ui-datepicker .ui-datepicker-header {
    border: none;
    background: #48659d;
    border-radius: 0px;
}

.ui-datepicker th {
    color: #29457d;
    font-size: 11px;
}

.ui-th-column-header.ui-th-ltr {
    font-size: 13px;
    padding-left: 6px !important;
}

.ui-datepicker td span, .ui-datepicker td a.ui-state-default {
    background: #fff;
    color: #29457d;
}

.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus {
    background: #eee !important;
}

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
    border: none !important;
    outline: 2px solid #ff7b0d !important;
    outline-offset: -2px; /* Para que quede dentro del elemento */
}

.ui-datepicker .ui-widget-header .ui-icon {
    background-image: url(images/ui-icons_d8e7f3_256x240.png);
}

/* LOGIN */
.login {
    background-color: #edeff6;
    height: 100%;
}

.loginBx {
    background-color: transparent;
    width: 300px;
    margin-top: 15%;
    overflow: inherit;
}

.loginBx .floating-label-group .floating-label{
    /*top: 1px;*/
}

.loginDric .arrgDri {
    box-sizing: inherit;
}

.lBx {
    width: 100%;
    background-color: transparent;
}

.loginDric h1 {
    color: #666;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    font-size: 25px;
}

.loginDric .logoZone img {
    margin-left: auto;
    margin-right: auto;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    width: 100px;
    border-radius: 15px;
}

.loginDric .logoZone{
    height: auto;
    text-align: center
}

.loginDric .btn-primary{
    width: 100%;
    margin-top: 15px;
    box-sizing: inherit;
}

.loginDric h4 {
    font-size: 1.1em;;
}

.loginDric .form-group input{
    border-radius: 12px;
}

.rBx, .imgBottom {
    display: none;
}

.bottomLogin{
    font-size:11px;
    color: #a4a1a1;
    padding-bottom: 20px;
}

#div_RGDP{
    display: none;
}

#divPanelReetablecerContraseña {
    background-color: rgba(255,255,255, 0.6);
}

.loginDric .alertLogin {
    width: 100%;
}
/* HOME */
.home {
    background-color: #fff;
}

.homeBx {
    background-color: transparent;
    padding: 0em;
    widows: 100%;
    max-width: 830px;
    margin: 0 auto;
    overflow: hidden;
    /* height: 420px; */
    padding-bottom: 5px;
    height: auto;
    margin-top: 15%;
    border-radius: 5px;
}

.homeDric .arrgDri {
    box-sizing: inherit;
}

.hBx {
    width: 100%;
    background-color: transparent;
}

.homeDric h1 {
    color: #666;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    font-size: 32px;
}

.homeDric .homeZone img {
    margin-left: auto;
    margin-right: auto;
    box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;
    width: 100px;
    border-radius: 15px;
}

.homeDric .homeZone {
    height: auto;
    text-align: center
}

.homeDric .homeZone a {
    font-size: 15px;
}

.homeDric .homeMenu img {
    width: 65px;
    height: 65px;
}

.homeDric .homeMenu span {
    font-size: 15px;
}

.homeDric .homeMenu img.noClicable{
    opacity: 0.5;
}

.homeDric .btnPrimary {
    width: 100%;
    margin-top: 15px;
    box-sizing: inherit;
}

.rBx, .imgBottom {
    display: none;
}

.bottomLogin {
    font-size: 11px;
    color: #a4a1a1;
    padding-bottom: 20px;
}

.homeMenu img {
    display: inherit;
    margin-left: auto;
    margin-right: auto;
}

.homeMenu .badge-top {
    top: -60px;
    position: relative;
}

.badge-red {
    color: #fff !important;
}

/* TABLAS */
.tareaDestacada {
    background-color: #ffcf98; 
}

/* SISTEMAS */
ul li.list-heading h4 {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    background-color: transparent;
    border-radius: 0;
    color: #29457d;
    border: none;
    border-bottom: 2px solid #e0e4f0;
    padding: 12px 18px;
    margin: 0;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

ul li.list-heading {
    background: linear-gradient(to right, #f5f7fb 0%, #ffffff 100%);
    margin-bottom: 2px;
}

.drIcoUnlock[class^="icon-"], .drIcoUnlock[class*=" icon-"] {
    color: inherit;
    font-size: 1em;
}

/* OTROS */
    .nav-stacked > li + li {
    margin-top: 1.3px;
}

th[role="columnheader"] {
    background: #f2f2f2 !important;
    color: #333 !important;
    font-size: 13px;
}

    th[role="columnheader"]:hover {
        background: #e8e6e6 !important;
    }

table.ui-jqgrid-btable tbody tr:nth-child(odd) {
    background: #fff;
}

    table.ui-jqgrid-btable tbody tr:nth-child(odd):hover {
        /*background: #f2f2f2 !important;
        color: #428bca;*/
    }

table.ui-jqgrid-btable tbody tr.ui-state-highlight {
    background: #eef7ff !important;
}

table.ui-jqgrid-btable tbody tr.item_found {
    background: #eef7ff !important;
}

    table.ui-jqgrid-btable tbody tr.item_found td {
        background: #eef7ff !important;
    }

table.ui-jqgrid-btable tbody tr.ui-state-highlight td {
    background: #eef7ff !important;
}
table.ui-jqgrid-btable tbody tr.ui-state-highlight:nth-child(odd) {
    background: #eef7ff !important;
}

    table.ui-jqgrid-btable tbody tr.ui-state-highlight:nth-child(odd):hover {
        background: #eef7ff !important;
    }

.ui-th-column, .ui-jqgrid .ui-jqgrid-htable th.ui-th-column {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    border: 1px solid #eee !important;
    background: #f5f5fa !important;
    font-size: 14px;
    color: #29457d !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    font-weight: 600 !important;
}

.ui-jqgrid tr.ui-row-ltr td {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    font-size: 14px;
    color:black;
}

    .ui-jqgrid tr.ui-row-ltr td a {
        font-weight: normal;
        color: #0071e3;
    }

.fc-time-grid .ui-widget-content {
    color: #29457d;
}

.ui-widget-content {
    color: #29457d;
    z-index: 998;
}

.ui-widget-overlay{
    z-index: 999 !important;
}

.ui-jqdialog {
    z-index: 1052 !important;
}

.consultasBg {
    background: #f5f5fa;
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    font-size: 14px;
    color: #29457d;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.navbar-collapse .navbar-nav.navbar-right:last-child {
    margin-right: 0;
}

.navbar-inverse {
    background-color: rgba(0,0,0,0.8);
    border-color: #fff;
}

.navbar-form {
    padding: 0;
    margin-top: 0;
    margin-right: -15px;
    margin-bottom: 0;
}

/* TOP BAR */
.topBar {
    padding: 0;
    padding-top: 5px;
    /*padding-bottom: 5px;*/
    background-color: #fff;
    /*border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;*/
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

    .topBar h1 {
        color: #29457d;
        font-weight: 500;
        padding-bottom: 9px;
        padding-top: 7px;
    }

    .topBar h4 {
        /*color: #666;*/
        font-weight: normal;
        margin-top: 8px;
        margin-bottom: 7px;
        font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    }

.menu-lateral .nav-aside{
    /*padding-right: 2px;*/
}

#leyendaAgenda {
    /*background: transparent;*/
    border: none;
    display: none !important;
}

.img-responsive {
    /*width: 80px;*/
}



/* PANEL */
.panel{
    border-radius: 12px;
}

.panel-primary {
    border: 0;
    box-shadow: 5px 5px 5px rgba(0, 0, 0, .05);
}
    .panel-primary:not(:has(.panel-footer)) {
        background: linear-gradient( to bottom, rgba(255,255,255,1) 80%, rgba(255,255,255,0.35) 99%, rgba(255,255,255,0) 100% );        
    }

.panel-heading h2 {
    font-family: /*'Roboto', */'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
}

.panel-primary > .panel-heading {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    background-color: #fff;
    color: #29457d;
    border: 0;
    border-bottom: 1px solid #a5c6dc;
    font-size: 16px;
    font-weight: 600;
}

.panel-primary > .panel-heading {
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

.panel-primary > .panel-heading h2 {    
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';    
    color: #29457d !important;
    border: 0;
    font-size: 16px;
    font-weight: 600;
}

.modal-dialog .panel-primary {
    -webkit-box-shadow: 0 5px 15px rgb(0 0 0 / 50%);
    box-shadow: 0 5px 15px rgb(0 0 0 / 50%);
}

.panel-success > .panel-heading {
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

.panel-success > .panel-heading h2 {
    font-weight: normal;
    color: #3c763d  !important;
    font-size: 15px;
}

.panel-danger > .panel-heading h2 {
    font-weight: normal;
    color: #E75B5B !important;
    font-size: 15px;
}

.panel-default {
    border: 0;
}

.panel-default > .panel-heading {
    font-family: /*'Roboto', */ 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
    background-color: #fff;
    color: #428bca;
    border: 0;
    border-bottom: 1px solid #a5c6dc;
}

    .panel-default > .panel-heading h2 {
        font-weight: normal;
        color: #48659d !important;
        font-size: 15px;
    }

.panel-footer {
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    background-color: #f1f2f7;
}

.panel-primary > .panel-heading a {
    font-weight: normal;
}

/* PICK COLOR */
.pick-a-color-markup .color-preview.current-color {
    height: 43px;
    width: 43px;
    border-radius: 12px;
    margin-right: 0;
}

.pick-a-color-markup .caret {
    display: none;
}

.color-dropdown .dropdown-toggle {
    margin-right: 0;
}


.checkbox {
    font-size: 15px;
}

/* DATOS DE EMPRESA */
#divFormularioAlegraColombia input.datepicker {
    width: 200px;
}

#formCitasOnlineConfig .bs-callout {
    padding: 1px;
    /*margin-top: 2px;
    margin-bottom: 10px;*/
}

.ui-pg-div {
    font-family: 'Inter';
    font-size: 13px;
    color: #2e7fae;
}

.ui-pg-div #text{
    padding: 3px;
}

.ui-jqgrid .ui-userdata {
    height: 30px;
    border-top: none;
    padding-top: 2px;
}

.borderRightWhite{
    border-right: 2px solid #fff;
}

#div_Historial #divFiltrosHistorialClinico .noPaddingLeft {
    padding-left: 0 !important;
}

#div_Historial #divFiltrosHistorialClinico .noPaddingRight {
    padding-right: 2px !important;
}

/* SCROLL DETALLE CITA: HISTORIAL */
.scrollDetalleCitaHistorial {
    top: 10px;
    max-height: 1000px;
    overflow-x: auto;
    background: transparent;
    /*box-shadow: rgb(0 0 0 / 24%) 1px 2px 4px;*/
    border-radius: 12px;
}

    .scrollDetalleCitaHistorial::-webkit-scrollbar {
        width: 8px;
    }

    /* Estilos barra (thumb) de scroll */
    .scrollDetalleCitaHistorial::-webkit-scrollbar-thumb {
        background: #ccc;
        border-radius: 4px;
    }

        .scrollDetalleCitaHistorial::-webkit-scrollbar-thumb:active {
            background-color: #999999;
        }

        .scrollDetalleCitaHistorial::-webkit-scrollbar-thumb:hover {
            background: #b3b3b3;
            box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.1);
        }

    /* Estilos track de scroll */
    .scrollDetalleCitaHistorial::-webkit-scrollbar-track {
        background: #e1e1e1;
        border-radius: 4px;
    }

        .scrollDetalleCitaHistorial::-webkit-scrollbar-track:hover,
        .scrollDetalleCitaHistorial::-webkit-scrollbar-track:active {
            background: #d4d4d4;
        }

.crop{
    width: 150px;
}

#divUsuarioRecetasContenido {
    /*overflow-x: scroll;*/
}

.noPaddingLeftImportant {
    padding-left: 0 !important;
}

.input-group .form-control:first-child, .input-group-addon:first-child, .input-group-btn:first-child > .btn, .input-group-btn:first-child > .dropdown-toggle, .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

#divCtlExpedienteDatos input.datepicker {
    width: 100%;
}

#divExpedienteNewPatient input.datepicker {
    width: 100%;
}

.divFormInformes input.datepicker {
    width: 100%;
}

.divMultiselectDropdown{
    margin-top: 10px;
}

.divMultiselectDropdown button.multiselect {
    height: 32px;
}

.aMessageChat {
    position: fixed;
    right: 30px;
    bottom: 50px;
    z-index: 999;
}

    .aMessageChat img {
        width: 40px;
        height: 40px;
    }

.iti--allow-dropdown input, .iti--allow-dropdown input[type=text], .iti--allow-dropdown input[type=tel], .iti--separate-dial-code input, .iti--separate-dial-code input[type=text], .iti--separate-dial-code input[type=tel] {
    padding-right: 6px !important;
    padding-left: 52px !important;
}

.iti__selected-flag {
    padding: 16px 6px 0 8px !important;
}

#div_CRM .iti {
    width: inherit;
}

#div_CRM .iti__selected-flag {
    padding: 0px 3px 0 3px !important;
}

#div_CRM .iti--allow-dropdown input, #div_CRM .iti--allow-dropdown input[type=text], #div_CRM .iti--allow-dropdown input[type=tel], #div_CRM .iti--separate-dial-code input, #div_CRM .iti--separate-dial-code input[type=text], #div_CRM .iti--separate-dial-code input[type=tel] {
    padding-right: 1px !important;
    padding-left: 37px !important;
    font-size: 11px;
    width: 130px;
}

.iti__country-list {
    z-index: 2222 !important;
}

#openbtn {
    position: absolute;
    font-size: 16px;
    cursor: pointer;
    top: -20px;
    /*left: -15px;*/
    color: #48659d;
}

#closebtn {
    position: absolute;
    font-size: 16px;
    cursor: pointer;
    top: -20px;
    left: -15px;
    color: #48659d;
}

.PlanningBgLineasDiagonales {
    background: repeating-linear-gradient( 135deg, #b2b2b2 15px, #b2b2b2 20px, #FFF 20px, #FFF 25px ) !important;
    opacity: 0.7;
}

#delmodlist{
    z-index: 1000 !important;
}

.form-control-applestyle {
    color: #0071e3;
    border: none;
    -webkit-appearance: none;
    appearance: none /*menulist*/ !important;
    outline: none;
    padding-left: 5px;
    cursor: pointer;
}

.form-control-applestyle:focus {
    outline: none;
}

#div_FichaPacSelLoading .myForm{
    overflow: visible;
}

#div_FichaPacSelLoading #ddlPAC_TCC_ID_chosen .chosen-single {
    color: #0071e3;
    border: none !important;
    -webkit-appearance: none !important;
    appearance: none /*menulist*/ !important;
    outline: none !important;
    padding-left: 5px !important;
    box-shadow: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    height: auto !important;
    line-height: 1.428571429;
    font-size: 14px;
    margin-top: -2px;
}

#div_FichaPacSelLoading #ddlPAC_TCC_ID_chosen .chosen-single div b {
    background: none !important;
    background-image: none !important;
}

#div_FichaPacSelLoading .fichaSmall p{
    padding: 0;
}

#div_PacienteInfoFacturas_Contenido {
    font-size: 11px;
    height: 100px;
    overflow-y: scroll;
    overflow-x: hidden;
    border-radius: 12px;
    border-width: 1px;
    border-style: solid;
    border: 1px solid #cccccc;
    padding: 5px
}

#div_PacienteInfoFacturas_ContenidoVacio {
    border-radius: 12px;
    border-width: 1px;
    border-style: solid;
    border: 1px solid #cccccc;
    padding: 5px;
    text-align: center;
    height: 45px;
}

.height20{
    height: 20px;
}

.margin-top-10{
    margin-top: 10px;
}

.iti{
    width: 100%;
}

#divFacturasFormularioBusqueda .multiselect, #divFacturasFormularioBusqueda .divMultiselectDropdown .btn-group {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}

.ui-jqgrid tr.ui-row-ltr td {
    cursor: inherit;
}

    .ui-jqgrid tr.ui-row-ltr td span:not([class*="Leyenda"]), .ui-jqgrid tr.ui-row-ltr td select {
        cursor: pointer;
        border: none;
        background-color: transparent;
        box-shadow: none;
        font-size: 14px;
    }


.w90px {
    width: 90px;
}

.w120px{
    width: 120px;
}

.scrollableY {
    overflow-x: visible;
    overflow-y: hidden;
}

.spanDietarioTipoCita {
    display: block;
    width: 100%;
    border: 2px solid #cbf8cc;
    background-color: transparent;
    color: #607188;
    border-radius: 20px;
    text-align: center;
    font-size: 12px;
    padding: 2px;
}

.tdOverflowInherit{
    overflow: inherit !important;
}

#divLiquidacionProfesionalesContabilidadTratamientoUsuario_Padre .panel-heading {
    padding: 5px 0px;
    color: #1d1d1f;
    font-size: 15px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    line-height: 1.1;
}

#divLiquidacionProfesionalesContabilidadTratamientoUsuario_Padre .panel-heading a:hover {
    text-decoration: none;
}

#ddlTipos, #ddlVistas, #ddlClinicas {
    /*max-width: inherit;*/
    /*background-color: #eff1f8;*/
    /*color: #29457d;*/
}

/* Estilo personalizado para ddlTipos */
/*#ddlTipos, #ddlVistas, #ddlClinicas {
    background: linear-gradient(to bottom, #f5f5f5 0%, #f0f0f0 100%);
}*/

    /*#ddlTipos:hover, #ddlVistas:hover, #ddlClinicas:hover {
        background: linear-gradient(to bottom, #fafafa 0%, #e5e5e5 100%);
    }*/

/* Estilos limitados al jqGrid: cabecera azul (#29457d), filas blancas/gris alternadas.
       No se tocan paneles ni su padding/altura. */

/* Cabecera */
.ui-jqgrid .ui-jqgrid-htable th {
    background: #6c92d0 !important;
    color: #ffffff !important;
    /*border-bottom: 1px solid #fff !important;*/
    font-weight: 600;
    text-shadow: none !important;
}

/* Contenedor del grid: bordes redondeados (solo la tabla).
       Usamos overflow:hidden en el contenedor principal para que las esquinas se muestren por ambos lados. */
.ui-jqgrid {
    border-radius: 8px;
    overflow: hidden;
    background: transparent;
}

    /* Aplicar redondeo solo si NO hay titlebar */
    .ui-jqgrid:not(:has(.ui-jqgrid-titlebar)) .ui-jqgrid-hdiv {
        border-top-left-radius: 8px;
        border-top-right-radius: 8px;
        overflow: hidden;
    }

    /* Si hay titlebar, el hdiv no lleva redondeo superior */
    .ui-jqgrid:has(.ui-jqgrid-titlebar) .ui-jqgrid-hdiv {
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        /*overflow: hidden;*/
    }

    .ui-jqgrid .ui-jqgrid-bdiv {
        box-shadow: 0 4px 12px rgba(14,30,37,0.06);
        border-bottom-left-radius: 8px;
        border-bottom-right-radius: 8px;
        overflow: hidden;
    }

    /* Filas: alternado blanco / gris muy claro, sin tocar padding/line-height */
    .ui-jqgrid .ui-jqgrid-btable tr.jqgrow:nth-child(odd) td {
        background: #ffffff;
    }

    .ui-jqgrid .ui-jqgrid-btable tr.jqgrow:nth-child(even) td {
        background: #f7f8fa; /* gris tenue alternado */
    }

    /* Hover claro (mantiene contraste) */
    .ui-jqgrid .ui-jqgrid-btable tr.jqgrow:hover td {
        background: #eef7ff;
    }

    /* Bordes entre filas sutiles */
    .ui-jqgrid .ui-jqgrid-btable tr.jqgrow td {
        border-bottom: 1px solid #eef2f6;
        color: #29457d;
        vertical-align: middle;
    }

/* Mantener alturas por defecto: no modificar padding/line-height del header/rows */

ul.ui-autocomplete {
    z-index: 1100;
}

#calendar .ui-widget-content {
    background: none;
    border: 1px solid #ddd;
}

.ui-jqgrid tr.jqgrow td {
    padding: 5px 0px 5px 0px;
}

.fc-bgevent {
    background-color: #bdc9e8 !important;
}

/* Estilos específicos para el menú lateral de pacientes */
#divMenuLateral .nav-aside {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    padding: 0;
    margin: 0;
    overflow: hidden;
    margin-bottom: 9px;
}

    #divMenuLateral .nav-aside li {
        border-left: none !important;
        border-bottom: 1px solid #f0f0f0;
        margin: 0;
    }

        #divMenuLateral .nav-aside li:first-child a {
            border-top-left-radius: 12px;
            border-top-right-radius: 12px;
        }

        #divMenuLateral .nav-aside li:last-child {
            border-bottom: none;
        }

            #divMenuLateral .nav-aside li:last-child a {
                border-bottom-left-radius: 12px;
                border-bottom-right-radius: 12px;
            }

        #divMenuLateral .nav-aside li a {
            padding: 14px 18px !important;
            font-size: 14px !important;
            color: #7687b9 !important;
            background-color: #f1f2f7 !important;
            border: none !important;
            border-radius: 0 !important;
            font-weight: 600 !important;
            transition: all 0.2s ease;
            display: flex;
            align-items: baseline;
        }

            #divMenuLateral .nav-aside li a .glyphicon,
            #divMenuLateral .nav-aside li a [class^="flaticon-"],
            #divMenuLateral .nav-aside li a [class*=" flaticon-"] {
                margin-right: 12px !important;
                font-size: 16px !important;
                color: #7687b9 !important;
                width: 20px;
                text-align: center;
            }

        #divMenuLateral .nav-aside li.active {
            border-left: 3px solid #7687b9 !important;
            background-color: #f0f6ff !important;
        }

            #divMenuLateral .nav-aside li.active a {
                background-color: #e9ebf6 !important;
                /*color: #5b8dc9 !important;*/
                font-weight: 600 !important;
            }

                #divMenuLateral .nav-aside li.active a .glyphicon,
                #divMenuLateral .nav-aside li.active a [class^="flaticon-"],
                #divMenuLateral .nav-aside li.active a [class*=" flaticon-"] {
                    color: #7687b9 !important;
                }

        #divMenuLateral .nav-aside li:not(.list-heading):hover {
            border-left: 3px solid #7687b9 !important;
        }

        #divMenuLateral .nav-aside li:not(.active):hover a {
            background-color: #e9ebf6 !important;
            color: #7687b9 !important;
        }

        #divMenuLateral .nav-aside li:not(.list-heading):hover a .glyphicon,
        #divMenuLateral .nav-aside li:not(.list-heading):hover a [class^="flaticon-"],
        #divMenuLateral .nav-aside li:not(.list-heading):hover a [class*=" flaticon-"] {
            color: #7687b9 !important;
        }

        #divMenuLateral .nav-aside li .badge {
            background-color: #ff3b30;
            border-radius: 10px;
            padding: 3px 8px;
            font-size: 11px;
            margin-left: auto;
        }

        #divMenuLateral .nav-aside li.isDisabled a {
            opacity: 0.5;
            cursor: not-allowed;
        }

        #divMenuLateral .nav-aside li a.menuVerde {
            background-color: #dff0d8 !important;
            border-color: #d6e9c6 !important;
        }

        #divMenuLateral .nav-aside li a.menuRojo {
            background-color: #f2dede !important;
            border-color: #ebccd1 !important;
        }

.loading-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

    .loading-dots span {
        width: 12px;
        height: 12px;
        border-radius: 50%;
        display: inline-block;
        animation: bounce 1.4s infinite ease-in-out both;
    }

        .loading-dots span:nth-child(1) {
            animation-delay: -0.32s;
        }

        .loading-dots span:nth-child(2) {
            animation-delay: -0.16s;
        }

@keyframes bounce {
    0%, 80%, 100% {
        transform: scale(0.6);
        opacity: 0.5;
    }

    40% {
        transform: scale(1);
        opacity: 1;
    }
}

.modal-dialog-centered {
    align-items: center;
    min-height: calc(100% - 1rem);
    margin: auto;
}
@media (min-width: 768px) {
    .modal-lg {
        width: 768px;
    }
}

@media (min-width: 992px) {
    .modal-lg {
        width: 900px;
    }
}
/* Efecto de aparición suave */
#pleaseWaitDialog.modal.show .modal-content {
    animation: fadeInScale 0.3s ease-out;
}

@keyframes fadeInScale {
    from {
        opacity: 0;
        transform: scale(0.9);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Overlay del loader AJAX */
.modern-loader-overlay {
    animation: fadeIn 0.2s ease-in;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Menú desplegable de acciones */
.dropdown-menu {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    border: 1px solid #e0e0e0;
}

    .dropdown-menu > li > a {
        padding: 5px 15px;
        font-size: 14px;
        color: #29457d;
        transition: background-color 0.2s ease;
        cursor: pointer;
    }

        .dropdown-menu > li > a:hover {
            opacity: 0.8;
            color: #29457d;
            text-decoration: none;
            background-color: inherit;
        }

        .dropdown-menu > li > a .glyphicon,
        .dropdown-menu > li > a img {
            margin-right: 10px;
        }

    .dropdown-menu .divider {
        margin: 5px 0;
        background-color: #e0e0e0;
    }

/* Botón Nueva Cita destacado */
#btnNuevaCita {
    font-weight: 600;
    box-shadow: 0 2px 4px rgba(0,113,227,0.2);
}

    #btnNuevaCita:hover {
        box-shadow: 0 4px 8px rgba(0,113,227,0.3);
    }

.input-xs {
    height: 26px;
}

/*#div_Formulario {
    position: static !important;
}

.pnlFooterClass {
    position: static !important;
}*/

@keyframes bounce {
    0%, 80%, 100% {
        transform: scale(0) translateY(0);
        opacity: 0.5;
    }

    40% {
        transform: scale(1) translateY(-10px);
        opacity: 1;
    }
}

.loading-dots-ajax span {
    animation: bounce 1.4s infinite ease-in-out both;
}

/* Estilos para el botón de cerrar (X) en tagit */
.tagit .tagit-close {
    /*display: inline-block;
    width: 16px;
    height: 16px;
    cursor: pointer;
    text-align: center;
    line-height: 16px;
    margin-left: 5px;
    opacity: 0.6;
    transition: opacity 0.2s;*/
}

    .tagit .tagit-close:hover {
        opacity: 1;
    }

        /* Crear una X visible usando CSS */
        .tagit .tagit-close .ui-icon-close::before {
            content: "×";
            font-size: 18px;
            font-weight: bold;
            color: #666;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            line-height: 1;
        }

    /* Alternativa: usar un icono más moderno */
    .tagit .tagit-close .ui-icon-close {
        font-family: Arial, sans-serif;
        font-size: 16px;
        line-height: 16px;
    }

/* ========================================
   TABLA BORDERED - Estilo jqGrid
   ======================================== */

.table-bordered {
    font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro' !important;
    background: #ffffff !important;
    box-shadow: 0 2px 5px rgba(16, 24, 40, 0.09) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    margin-bottom: 10px;
    font-size: 14px;
    color: #1d1d1f;
}

    /* Encabezado de tabla */
    .table-bordered {
    border-radius: 8px;
    border-collapse: separate; /* Necesario para border-radius en tablas */
}

    .table-bordered thead {
        font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
        border: 1px solid #eee !important;
        background: #f5f5fa !important;
        font-size: 14px;
        color: #29457d !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
        font-weight: 600 !important;
    }

        .table-bordered thead th {
            font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro' !important;            
            color: #29457d !important;
            font-size: 13px !important;
            font-weight: 600 !important;
            padding: 10px 15px !important;
            border: 1px solid #eee !important;
            vertical-align: middle;
            text-align: left;
        }

        /* Primera fila del encabezado - esquinas superiores redondeadas */
        .table-bordered thead tr:first-child th:first-child {
            border-top-left-radius: 8px;
        }

        .table-bordered thead tr:first-child th:last-child {
            border-top-right-radius: 8px;
        }

    /* Cuerpo de tabla */
    .table-bordered tbody {
        background: #ffffff;
    }

        .table-bordered tbody tr {
            border-bottom: 1px solid #eee;
        }

            .table-bordered tbody tr:hover {
                background-color: #f5f5fa !important;
            }

        .table-bordered tbody td {
            font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
            font-size: 14px;
            font-weight: normal;
            color: #29457d;
            padding: 6px 15px !important;
            border: 1px solid #eee !important;
            vertical-align: middle;
        }

        .table-bordered > tbody > tr > th {
            color: #29457d;
        }

        /* Última fila del cuerpo - esquinas inferiores redondeadas */
        .table-bordered tbody tr:last-child td:first-child {
            border-bottom-left-radius: 8px;
        }

        .table-bordered tbody tr:last-child td:last-child {
            border-bottom-right-radius: 8px;
        }

        /* Filas alternas (efecto striped) */
        .table-bordered tbody tr:nth-child(even) {
            background-color: #fafafa;
        }

            .table-bordered tbody tr:nth-child(even):hover {
                background-color: #f5f5fa !important;
            }

    /* Enlaces dentro de la tabla */
    .table-bordered a {
        color: #0071e3;
        font-weight: lighter;
        text-decoration: none;
    }

        .table-bordered a:hover {
            color: #0071e3;
            opacity: 0.8;
            text-decoration: underline;
        }

    /* Botones dentro de la tabla */
    .table-bordered .btn {
        font-size: 13px !important;
        padding: 2px 6px;
    }

    /* Checkboxes e inputs dentro de la tabla */
    .table-bordered input[type=checkbox] {
        height: initial;
        margin: 0;
    }

    .table-bordered input[type=text],
    .table-bordered select {
        font-family: 'Roboto', 'Inter', "Helvetica Neue", Helvetica, 'Source Sans Pro';
        font-size: 14px;
    }

    /* Estado activo/seleccionado */
    .table-bordered tbody tr.active,
    .table-bordered tbody tr.selected {
        background-color: #eef7ff !important;
        border: 2px solid #ff7b0d !important;
    }

/* Variante sin sombra (para cuando está dentro de main_content) */
#main_content .table-bordered {
    box-shadow: none !important;
}

/* Responsive - mejora visual en móviles */
@media (max-width: 768px) {
    .table-bordered thead th,
    .table-bordered tbody td {
        padding: 8px 10px;
        font-size: 12px;
    }
}

/* Contenedor con scroll horizontal para móviles */
@media screen and (max-width: 1200px) {
    #dietario_content, #main_contentDashboardProximas, #main_contentDashboardUltimas, #divFactNoPagadas, #divFactAplazado, #divFactPagadas, #divPresupuestos, #divAlbaranes, #divDevoluciones, #divDiagnostico, #divBaremoActosMedicosConsulta,
    #divProximasVisitas, #divUltimasVisitas, #divConsulta, #divIntervenciones, #divPruebas, #divExpedientes, #divConsInf, #divDocPac, #divInformes, #divFotografias, #divFacturas, #divDocInfFirmaDigital, #divDocumentosPaciente,
    #divBodyResultadoStockPaciente, #main_contentResto, #main_contentTerminadoEntregado, #divSubirDocumentosPacienteDinamico, #divFacturasDetalleFacturas, #divPresupuestosDetalleFacturas, #divAlbaranesDetalleFacturas, #divDevolucionesDetalleFacturas,
    #divStock, #div_facturas, #div_ConsultasOnlineRegistradas, #div_ServiciosConsultaOnline, #divPagosOnline, #divRegistroMailsEnviados, #divRegistroSMSEnviados, #divGastosContabilidadUsuarios, #divGastosContabilidadProveedores,
    #divListFactTodas, #divListFactAplazado, #divListFactPagadas, #divListFactNoPagadas, #divTiemposEspera, #divListActosMedicos, #divListConsumoStock, #divBonos, #divDocumentosFirmaDigital, #divListEstudiosRetrospectivos,
    #div_CRM_Leads_Hoy, #div_CRM_Acuerdos_Mes, #div_CRM_Llamadas_Futuras, #div_TarHacer, #div_TarComp, #div_TarHacerFuturas, #div_TarCompFuturas,
    #div_CRM_NoInteresados, #div_CRM_Leads, #div_CRM_Contactos, #div_CRM_Acuerdos, #div_CRM_Llamadas, #divRecordatoriosCRM, #divRecordatorios, #divRemarketing, #divFormularioHC, #divComoConocido,
    #divListUsuarios, #divUnlockUsers, #divClinicas, #divDespachos, #divEspecialidades, #divTratamientos, #divTiposCita, #divEstadosDeCita, #divEstadosDeCitaQuirofano, #divHospitales, #divPlantas, #divPlantasHabitaciones, #divQuirofanos, #divCirugias, #divSociedades,
    #divMedicamentos, #divDoctoresClinicas, #divSociedadesContabilidad, #divListFacturacionAvanzada, #divPlantillasFacturas, #divFormasDePago, #divProveedores, #divDocumentosPaciente, #divConsentimientosInformados, #divBorrarPaciente, div[id^="divContactos_"],
    #divLogs, #divVacaciones, #divDiasFestivos, #divListVacaciones, #divControlHorasTrabajos, #divFormularios, #divCitaProxima, #divAccionesBonos, #divCancelaciones, #divListHospitalizacion,
    #divPagosProfesionales1, #divPagosProfesionales2, #divPagosProfesionales3, #divPagosProfesionales4, #div_AsistenteIAChatBotRegistradas {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch; /* Mejora el scroll en iOS */
    }

    .ui-jqgrid {
        min-width: 1200px; /* Ancho mínimo de la tabla - ajusta según necesites */
    }

    .ui-jqgrid-bdiv {
        overflow-x: visible !important;
    }

    .ui-jqgrid-hdiv {
        overflow-x: visible !important;
    }
}

.navbar-default .navbar-toggle{
    border-color: #fff;
}

.navbar-toggle{
    float: left;
    margin-left: 25px;
}

.navbar-default .navbar-toggle .icon-bar{
    background-color: #fff;
}

a.list-group-item {
    color: #29457d;
}

.alert-info .badge {
    background-color: #7687b9;
}

@media (max-width: 991px) {
    #btDescartarDatosFacturacionPaciente, #btnSaveDatosFacturacionPaciente {
        width: 95%;
        white-space: normal;
        text-align: left;
    }
}

#divContentFormularioInformesPersonalizados{
    overflow: auto;
}


/* Botón hamburguesa moderno - centrado en la parte inferior */
.btn-menu-toggle {
    display: none;
    position: inherit;
    margin: 20px auto;
    width: 38px;
    height: 38px;
    background: #fff;
    border: 2px solid #29457d;
    border-radius: 50%;
    cursor: pointer;
    padding: 0;
    z-index: 1050;
    box-shadow: 0 3px 12px rgba(41, 69, 125, 0.25);
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

    .btn-menu-toggle:hover {
        background: #29457d;
        border-color: #29457d;
        transform: scale(1.08);
        box-shadow: 0 5px 18px rgba(41, 69, 125, 0.35);
    }

        .btn-menu-toggle:hover .hamburger-line {
            background-color: #fff;
        }

    .btn-menu-toggle:active {
        transform: scale(0.98);
    }

    .btn-menu-toggle:focus {
        outline: none;
    }

/* Líneas del hamburguesa más consistentes con la X */
.hamburger-line {
    display: block;
    width: 14px;
    height: 2px;
    background-color: #29457d;
    margin: 3.5px auto;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    border-radius: 1px;
}

.btn-menu-toggle.active {
    background: #29457d;
    border-color: #29457d;
}

    .btn-menu-toggle.active .hamburger-line {
        background-color: #fff;
    }

        .btn-menu-toggle.active .hamburger-line:nth-child(1) {
            transform: translateY(5.5px) rotate(45deg);
        }

        .btn-menu-toggle.active .hamburger-line:nth-child(2) {
            opacity: 0;
            transform: translateX(-20px);
        }

        .btn-menu-toggle.active .hamburger-line:nth-child(3) {
            transform: translateY(-5.5px) rotate(-45deg);
        }

/* Botón de cerrar (X) dentro del menú lateral */
.menu-close-btn {
    display: none;
    position: absolute;
    top: 15px;
    right: 15px;
    width: 36px;
    height: 36px;
    background: transparent;
    border: 2px solid #ddd;
    border-radius: 50%;
    cursor: pointer;
    padding: 0;
    z-index: 10;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

    .menu-close-btn:hover {
        background: #f5f5f5;
        border-color: #999;
        transform: rotate(90deg);
    }

    .menu-close-btn:focus {
        outline: none;
    }

    .menu-close-btn::before,
    .menu-close-btn::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        width: 18px;
        height: 2px;
        background-color: #666;
        transition: background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    }

    .menu-close-btn::before {
        transform: translate(-50%, -50%) rotate(45deg);
    }

    .menu-close-btn::after {
        transform: translate(-50%, -50%) rotate(-45deg);
    }

    .menu-close-btn:hover::before,
    .menu-close-btn:hover::after {
        background-color: #333;
    }

/* Overlay para cerrar el menú al hacer clic fuera */
.menu-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    z-index: 1040;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    transition: opacity 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

    .menu-overlay.show {
        opacity: 1;
    }

/* Estilos responsive para el menú lateral */
@media (max-width: 767px) {
    .btn-menu-toggle,
    .menu-close-btn {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .menu-lateral {
        position: fixed;
        top: 0;
        left: -100%;
        width: 280px;
        max-width: 85%;
        height: 100%;
        overflow-y: auto;
        overflow-x: hidden;
        background-color: #edeff6;
        z-index: 1045;
        transition: left 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
        box-shadow: 3px 0 15px rgba(0,0,0,0.2);
        padding-top: 60px;
        padding-bottom: 30px;
    }

        .menu-lateral.active {
            left: 0;
        }

        .menu-lateral #divMenuLateral {
            width: 100%;
            padding: 0;
        }

            .menu-lateral #divMenuLateral > * {
                margin-bottom: 30px;
            }

    .main #divMain {
        width: 100% !important;
        padding: 10px;
    }
    /* Ocultar botones de escritorio en móvil */
    #openbtn,
    #closebtn {
        display: none !important;
    }
}

/* Estilos para tablets */
@media (min-width: 768px) and (max-width: 991px) {
    /*.menu-lateral #divMenuLateral {
        width: 25%;
    }

    .main #divMain {
        width: 75%;
    }*/
}

/* Scroll suave en el menú lateral */
.menu-lateral {
    scrollbar-width: thin;
    scrollbar-color: #ccc #f5f5f5;
}

    .menu-lateral::-webkit-scrollbar {
        width: 6px;
    }

    .menu-lateral::-webkit-scrollbar-track {
        background: #f5f5f5;
    }

    .menu-lateral::-webkit-scrollbar-thumb {
        background: #ccc;
        border-radius: 3px;
    }

        .menu-lateral::-webkit-scrollbar-thumb:hover {
            background: #999;
        }

/* Botón de cerrar (X) dentro del menú lateral */
.menu-close-btn {
    display: none;
    position: absolute;
    top: 15px;
    right: 15px;
    width: 36px;
    height: 36px;
    background: transparent;
    border: 2px solid #ddd;
    border-radius: 50%;
    cursor: pointer;
    padding: 0;
    z-index: 10;
    transition: all 0.3s ease;
}

    .menu-close-btn:hover {
        background: #f5f5f5;
        border-color: #999;
        transform: rotate(90deg);
    }

    .menu-close-btn:focus {
        outline: none;
    }

    .menu-close-btn::before,
    .menu-close-btn::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        width: 18px;
        height: 2px;
        background-color: #666;
        transition: background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    }

    .menu-close-btn::before {
        transform: translate(-50%, -50%) rotate(45deg);
    }

    .menu-close-btn::after {
        transform: translate(-50%, -50%) rotate(-45deg);
    }

    .menu-close-btn:hover::before,
    .menu-close-btn:hover::after {
        background-color: #333;
    }

@media (max-width: 767px) {
    .menu-close-btn {
        display: block;
    }
}

.overlay-soporte-derecha {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 2000;
    display: none;
}

.panel-soporte-derecha {
    position: fixed;
    top: 0;
    right: -34%;
    bottom: 0;
    width: 33.3333%;
    min-width: 420px;
    max-width: 640px;
    height: auto;
    z-index: 2001;
    transition: right 0.25s ease;
}

    .panel-soporte-derecha.open {
        right: 0;
    }

.panel-soporte-derecha-inner {
    height: 100%;
    margin: 0;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    box-shadow: -8px 0 30px rgba(0, 0, 0, 0.18);
    overflow: hidden;
}

.panel-soporte-derecha-heading {
    border-radius: 0;
    flex: 0 0 auto;
}

.panel-soporte-derecha-heading h2 {
    margin-left: 0;
}

.panel-soporte-derecha-subtitle {
    font-size: 13px;
    margin-top: 4px;
    color: #808ea8;
}

.panel-soporte-derecha-body {
    flex: 1;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: #f7f9fc;
    padding: 18px;
    box-sizing: border-box;
}

.soporte-card {
    background: #ffffff;
    border: 1px solid #e6ebf2;
    border-radius: 14px;
    padding: 14px;
    margin-bottom: 14px;
    flex: 0 0 auto;
}

.soporte-card-title {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 4px;
    color: #2c3e50;
}

.soporte-card-text {
    font-size: 13px;
    color: #6b7785;
    margin-bottom: 0;
}

.soporte-acciones {
    margin-bottom: 14px;
    width: 100%;
    min-width: 0;
    flex: 0 0 auto;
}

.soporte-acciones-secundarias {
    display: flex;
    gap: 12px;
    margin-bottom: 12px;
    width: 100%;
    min-width: 0;
}

    .soporte-acciones-secundarias > * {
        flex: 1;
        min-width: 0;
    }

.btn-soporte-secundario,
.btn-soporte-principal {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    white-space: normal;
}

.btn-soporte-secundario {
    border-radius: 10px;
    padding: 10px 12px;
    font-weight: 600;
}

.btn-soporte-principal {
    border-radius: 10px;
    padding: 12px 14px;
    font-weight: 700;
}

#divFormularioContactoSoporte {
    flex: 0 0 auto;
}

.soporte-form-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.soporte-form-title {
    font-size: 16px;
    font-weight: 700;
    color: #2c3e50;
    margin: 0;
}

.btn-cerrar-formulario-soporte {
    opacity: 1;
    font-size: 24px;
    line-height: 1;
    margin-top: -4px;
}

.soporte-tags {
    margin-bottom: 12px;
}

.soporte-tag {
    display: inline-block;
    background: #eef3f8;
    color: #4b5b6b;
    border-radius: 20px;
    padding: 6px 10px;
    font-size: 12px;
    margin-right: 6px;
    margin-bottom: 6px;
}

.soporte-textarea {
    min-height: 140px;
    resize: vertical;
    border-radius: 10px;
    padding: 12px;
}

.soporte-form-footer {
    text-align: right;
    margin-top: 12px;
}

/* 28-09-2026: los tres botones del centro de soporte en una sola línea. */
.soporte-acciones-linea { display: flex; gap: 8px; }
    .soporte-acciones-linea > .btn { flex: 1 1 0; min-width: 0; white-space: normal; line-height: 1.2;
                                     padding: 8px 6px; display: flex; align-items: center; justify-content: center; text-align: center; }

#divChatbotSoporte {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

    #divChatbotSoporte > div {
        flex: 1;
        min-height: 0;
        display: flex;
        flex-direction: column;
    }

#chatbot-widget-window-iframe {
    display: block;
    flex: 1;
    width: 100%;
    height: 100%;
    min-height: 0;
    border-radius: 12px;
    background: #fff;
    border: 0;
}

body.soporte-derecha-open {
    overflow: hidden;
}

.panel-soporte-derecha-body .row {
    margin-left: 0;
    margin-right: 0;
}

@media (max-width: 991px) {
    .panel-soporte-derecha {
        width: 100%;
        min-width: 0;
        max-width: none;
        right: -100%;
    }

    .soporte-acciones-secundarias {
        flex-direction: column;
    }
}

.glyphicon-spin {
    animation: spin 1s infinite linear;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* ============================================================
   Panel heading colapsable: label + chevron siempre en la misma línea
   Aplica a todos los paneles con data-toggle="collapse"
   en Views/Servicios y cualquier otra vista del proyecto.
   ============================================================ */
.SuscripcionesyServicios .panel-heading[data-toggle="collapse"] > .row {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    /*margin-left: 0;*/
    margin-right: 0;
}

    .SuscripcionesyServicios .panel-heading[data-toggle="collapse"] > .row > [class*="col-"] {
        float: none;
    }

        .SuscripcionesyServicios .panel-heading[data-toggle="collapse"] > .row > [class*="col-"]:first-child {
            flex: 1 1 auto;
            min-width: 0;
            word-break: break-word;
            padding-right: 8px;
        }

        .SuscripcionesyServicios .panel-heading[data-toggle="collapse"] > .row > [class*="col-"]:last-child {
            flex: 0 0 auto;
            width: auto;
            padding-left: 0;
        }
/* =====================================================================
   CABECERA Y FRANJA SUPERIOR (15-09-2026, Enrique)
   "queda una linea azul debajo del logo que no queda bien y baja demasiado
    la barra azul donde van los iconos. disminuir el alto de la zona blanca
    donde va escrito la palabra Agenda y los desplegables".

   1) La linea azul: el logotipo mide 117 px de alto fijos, pero la cabecera
      de la v2 habia crecido unos 10 px (los margenes de los dos parrafos del
      nombre de la clinica), asi que por debajo del logo asomaba el degradado
      azul. Ahora la columna del logo se estira hasta abajo del todo de la
      cabecera y el logotipo la rellena, con lo que no puede volver a asomar
      por mucho que cambie el alto.
   2) La cabecera vuelve a la altura de la v1 quitando el margen inferior de
      esos dos parrafos, que es lo que la hacia bajar.
   ===================================================================== */
header .container-fluid > .row.margin-0 {
    display: flex;
    align-items: stretch;
}

    header .container-fluid > .row.margin-0 > .headerEdit {
        display: flex;
        align-items: center;
        padding-top: 0;
        padding-bottom: 0;
    }

        header .container-fluid > .row.margin-0 > .headerEdit > .logo {
            height: 100%;
            width: auto;
            max-width: 100%;
            object-fit: contain;
        }

    header .container-fluid > .row.margin-0 p.claim,
    header .container-fluid > .row.margin-0 > div > p {
        margin-bottom: 0;
        line-height: 1.25;
    }


