﻿
.mask-placeholder {
    position: relative;
    font-family: Consolas;
    font-size: 16px;
}


    .mask-placeholder::after {
        white-space: pre;
        position: absolute;
        left: 0px;
        top: 0px;
        color: rgb(200,200,200);
        content: attr(data-placeholder);
        pointer-events: none;
        opacity: 0.6;
    }

.invisible-textbox {
    font-size: 16px;
    padding: 0px;
    margin: 0px;
    font-family: Consolas;
    border: 0px solid red;
    border-bottom: 1px solid black;
}

.invisible-textbox-error{
    background-color: rgb(255,230,230);
    color: red;
    border-bottom: 1px solid red;
}

.invisible-textbox-no-underline {
    font-size: 16px;
    padding: 0px;
    margin: 0px;
    font-family: Consolas;
    border: 0px solid red;
}

.invisible-textbox:focus {
    padding: 0px;
    margin: 0px;
    font-family: Consolas;
    outline: 0px solid red;
    background-color: whitesmoke;
    border-bottom: 2px solid black;
}

.popup-dialog{
    max-height: 85dvh;
}

.popup-1 {
    background-color: rgba(10,10,10,.8);
    display: block;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

.popup-toast {
    width: fit-content;
    max-width: 80dvw;
    height: fit-content;
}

.popup-toast-container {
    width: fit-content;
    max-width: 80dvw;

    height: fit-content;
}

.popup-toast-header {
    color: white;
    background-color: var(--color-panel-header2);
    border-bottom: 1px solid var(--color-boton-borde);
}

.popup-toast-body {
    width: fit-content;
    max-width: 80dvw;
    max-height: 80dvh;
    overflow: auto;
}

.tabla-focus{

}

.tabla-focus:focus{

}

.highlight-tr-on-hover{
    cursor: pointer;
}
.highlight-tr-on-hover:hover {
    outline: 1px dashed var(--color-boton-borde);
}

    .highlight-a-on-hover {
        padding:4px;
        cursor: pointer;
    }

    .highlight-a-on-hover:hover {
        border-radius: 4px;
        outline: 1px dashed var(--color-boton-borde);
    }

    .a-selected{
        padding: 4px;
        border-radius: 4px;
        outline: 1px solid var(--color-boton-borde);
    }

    .ingreso-panel-paciente {

    }

    .ingreso-panel-prestaciones{

    }

.boton-confirmar {
    color: #fff;
    background-image: linear-gradient(to bottom, var(--color-boton-confirmar2), var(--color-boton-confirmar3));
    border: 1px solid var(--color-boton-confirmar-borde);
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    height: 30px;
}

    .boton-confirmar:hover {
        color: #fff;
        background-image: linear-gradient(to bottom, var(--color-boton-confirmar1), var(--color-boton-confirmar2));
        border: 1px solid var(--color-boton-confirmar-borde);
        border-radius: 4px;
    }

    .boton-confirmar:active {
        color: #fff;
        background-image: linear-gradient(to bottom, var(--color-boton-confirmar3), var(--color-boton-confirmar4));
        border: 1px solid var(--color-boton-confirmar-borde);
        border-radius: 4px;
    }


.boton-deshabilitado {
    color: #fff;
    background-image: linear-gradient(to bottom, var(--color-gray2), var(--color-gray));
    align-items: center;
    border: 1px solid var(--color-boton-deshabilitado-borde);
    display: flex;
    align-content: center;
    border-radius: 4px;
    cursor: not-allowed !important;
}

.boton-cancelar {
    color: #fff;
    background-image: linear-gradient(to bottom, var(--color-boton-cancelar2), var(--color-boton-cancelar3));
    border: 1px solid var(--color-boton-cancelar-borde);
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    border-radius: 4px;
    height: 30px;
}

.boton-cancelar:hover {
    color: #fff;
    background-image: linear-gradient(to bottom, var(--color-boton-cancelar1), var(--color-boton-cancelar2));
    border: 1px solid var(--color-boton-cancelar-borde);
    border-radius: 4px;
}

.boton-cancelar:active {
    color: #fff;
    background-image: linear-gradient(to bottom, var(--color-boton-cancelar3), var(--color-boton-cancelar4));
    border: 1px solid var(--color-boton-cancelar-borde);
    border-radius: 4px;
}


.boton-cuidado {
    color: #fff;
    background-image: linear-gradient(to bottom, var(--color-boton-cuidado2), var(--color-boton-cuidado3));
    border: 1px solid var(--color-boton-cancelar-borde);
    display: flex;
    align-content: center;
    justify-content: center;
    border-radius: 4px;

    height: 30px;
}

    .boton-cuidado:hover {
        color: #fff;
        background-image: linear-gradient(to bottom, var(--color-boton-cuidado1), var(--color-boton-cuidado2));
        border: 1px solid var(--color-boton-cancelar-borde);
        border-radius: 4px;
    }

    .boton-cuidado:active {
        color: #fff;
        background-image: linear-gradient(to bottom, var(--color-boton-cuidado3), var(--color-boton-cancelar4));
        border: 1px solid var(--color-boton-cancelar-borde);
        border-radius: 4px;
    }

.boton {
    color: #fff;
    background-image: linear-gradient(to bottom, var(--color-boton2), var(--color-boton3));
    border: 1px solid var(--color-boton-borde);
    display: flex;
    flex-direction: row;
    gap: 4px;
    align-content: center;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    width: fit-content;
    height: 30px;
}

    .boton:hover {
        color: #fff;
        background-image: linear-gradient(to bottom, var(--color-boton1), var(--color-boton2));
        border: 1px solid var(--color-boton-borde);
        border-radius: 4px;
    }

    .boton:active {
        color: #fff;
        background-image: linear-gradient(to bottom, var(--color-boton3), var(--color-boton4));
        border: 1px solid var(--color-boton-borde);
        border-radius: 4px;
    }

    .tabla-estilada {
        padding: 4px;
        outline: 1px solid black;
        width: 100%;
    }

        .tabla-estilada th {
            color: #fff;
            background-color: #868188;
            border-bottom: 1px solid black;
        }

        .tabla-estilada tr {
            background-color: snow;
            border-bottom: 1px solid var(--color-tabla-hover);
            cursor: pointer;
        }

            .tabla-estilada tr:first-child {
                background-color: snow;
                border-bottom: 1px solid var(--color-tabla-hover);
            }

            .tabla-estilada tr:last-child {
                background-color: snow;
                border-bottom-right-radius: 8px;
            }

            .tabla-estilada tr:hover {
                background-color: var(--color-tabla-hover);
            }

    .ingreso-tabla {
        border-radius: 8px;
        display: flex;
        padding: 4px;
    }

    .ingreso-tabla table {

        outline: 1px solid black;
        width: 100%;
    }

        .ingreso-tabla th {
            color: #fff;
            background-color: #868188;
            border-bottom: 1px solid black;
        }


    .ingreso-tabla table:first-child {
        width: 100%;
    }

    .ingreso-tabla tr{
        background-color: snow;
        border-bottom: 1px solid var(--color-tabla-hover);
    }

    .ingreso-tabla tr:first-child {
        background-color: snow;
        border-bottom: 1px solid var(--color-tabla-hover);
    }

    .ingreso-tabla tr:last-child {
        background-color: snow;
        border-bottom-right-radius: 8px;
    }

    .ingreso-tabla tr:hover {
        background-color: var(--color-tabla-hover);
    }

    .selector-fecha {
        padding-left: 4px;
        border: 1px solid #b0a7b8;
        border-radius: 4px;
        font-size: 16px;
        background-color: #f8f8f8;
        color: #333;
        height: 30px;
        outline-color: #3388de;
    }

    .combo {
        border: 1px solid #b0a7b8;
        border-radius: 4px;
        font-size: 16px;
        background-color: #f8f8f8;
        color: #333;
        height: 30px;
        outline-color: #3388de;
        width: 100%;
    }

.textbox-borderless {
    background-color: transparent;
    font-style: italic;
    padding-left: 8px;
    padding-bottom: 0px;
    padding-top: 0px;
    border: 0px solid #b0a7b8;
    border-radius: 4px;
    font-size: 16px;
    color: #555;
    height: fit-content;
    outline-color: #3388de;
    width: 100%;
    margin-bottom: 1px;
}

.textbox-borderless:focus {
    margin-bottom: 0px;
    border-radius: 4px;
    border: 0px solid black;
    outline: 0px solid black;
    border-bottom: 1px solid black;
}

.textbox {
    padding: 10px;
    border: 1px solid #b0a7b8;
    border-radius: 4px;
    font-size: 16px;
    background-color: #f8f8f8;
    color: #333;
    transition: all 0.3s; /* Add a transition for all properties */
    height: 30px;
    outline-color: #3388de;
    width: 100%;
}

.textbox:focus {
    border-color: #3388de; /* Change border color on focus */
    box-shadow: 0 0 5px #3388de; /* Add a subtle shadow on focus */
    outline-color: #3388de;
}

.textbox-invalido {
    padding: 10px;
    border: 2px solid #ec273f;
    border-radius: 4px;
    font-size: 16px;
    color: #333;
    transition: all 0.3s; /* Add a transition for all properties */
    height: 30px;
    outline-color: #3388de;
}

.textbox-valido {
    padding: 10px;
    border: 2px solid #5ab552;
    border-radius: 4px;
    font-size: 16px;
    color: #333;
    transition: all 0.3s; /* Add a transition for all properties */
    height: 30px;
    outline-color: #3388de;
}

.pill-info {
    background-color: var(--color-boton2);
    border: 1px solid var(--color-boton3);
    border-radius: 16px;
    height: fit-content;
    width: fit-content;
    padding-left: 6px;
    padding-right: 6px;
    color: snow;
}

.pill-warning {
    background-color: orange;
    border: 1px solid darkgoldenrod;
    border-radius: 16px;
    height: fit-content;
    width: fit-content;
    padding-left: 6px;
    padding-right: 6px;
    color: snow;
}

.pill-error {
    background-color: var(--color-boton-cancelar1);
    border: 1px solid var(--color-boton-cancelar2);
    border-radius: 16px;
    height: fit-content;
    width: fit-content;
    padding-left: 6px;
    padding-right: 6px;
    color: snow;
}

.pill-success {
    background-color: var(--color-boton-confirmar2);
    border: 1px solid var(--color-boton-confirmar3);
    border-radius: 16px;
    height: fit-content;
    width: fit-content;
    padding-left: 6px;
    padding-right: 6px;
    color: snow;
}



@keyframes shake {
    0% {
        transform: translateX(0);
    }

    25% {
        transform: translateX(-5px);
    }

    50% {
        transform: translateX(5px);
    }

    75% {
        transform: translateX(-5px);
    }

    100% {
        transform: translateX(0);
    }
}

.shake {
    animation: shake 0.3s ease-in-out;
}