﻿/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */

/*Texto*/
@font-face {
    font-family: Quasimoda-Light;
    src: url('../Font/Quasimoda/Quasimoda Light.otf');
}

@font-face {
    font-family: Quasimoda-Regular;
    src: url('../Font/Quasimoda/Quasimoda Regular.otf');
}

@font-face {
    font-family: Quasimoda-Black;
    src: url('../Font/Quasimoda/Quasimoda Black.otf');
}

/*Titulos*/
@font-face {
    font-family: Urbanist-SemiBold;
    src: url('../Font/Urbanist/Urbanist-SemiBold.ttf');
}

@font-face {
    font-family: Urbanist-Bold;
    src: url('../Font/Urbanist/Urbanist-Bold.ttf');
}

@font-face {
    font-family: Urbanist-Black;
    src: url('../Font/Urbanist/Urbanist-Black.ttf');
}

.Quasimoda-Light {
    font-family: Quasimoda-Light !important;
}

.Quasimoda-Regular {
    font-family: Quasimoda-Regular !important;
}

.Quasimoda-Black {
    font-family: Quasimoda-Black !important;
}

.Urbanist-Black {
    font-family: Urbanist-Black !important;
}

.Urbanist-Bold {
    font-family: Urbanist-Bold !important;
}

.Urbanist-SemiBold {
    font-family: Urbanist-SemiBold !important;
}

:root {
    --color-azul: #005cb9;
    --color-celeste: #00A8E3;
    --color-amarillo: #FBD900;
    --color-amarillo-o: #FBBA17;
}

h1, h2, h3, h4, h5, h6 {
    font-family: Urbanist-Bold !important;
    color: var(--color-azul) !important;
}

body {
    background-image: url("../Assets/Img/Fondos/FondoCompleto.png");
    background-color: white !important;
    height: 100%;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: top left;
    font-family: Quasimoda-Regular !important;
}
html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

/*Inputs*/
input:disabled {
    background-color: #f2f2f2 !important;
}

.style-input {
    border-radius: 10px !important;
    background-color: white;
    font-family: Quasimoda-Light !important;
    color: black !important;
}

/*Aligns*/
.center {
    display: flex !important;
    justify-content: center !important;
}

.align-center {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.align-right {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
}

.align-left {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
}

/* Centrado y Responsivo */
.container-main {
    width: 100%;
    max-width: 80%;
    height: 90%;
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 10px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    transform: translateX(13%);
}

@media screen and (max-width: 575px) {
    .container-main {
        max-width: 95%;
        transform: translateX(3%);
    }
}

@media screen and (max-width: 1024px ) {
    .container-main {
        max-width: 90%;
        transform: translateX(8%);
    }
}


label.form-label {
    margin-left: 1rem;
    font-weight: bold;
    color: var(--color-azul);
}


/* Contenedor de pasos */
.container-pasos {
    width: 100%;
    max-width: 70%;
    height:10%;
    margin: 10px auto;
    position: relative;

}

.progress-steps {
    display: flex;
    align-items: center;
    justify-content: space-between;
}


.step {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: white;
    color: #000;
    font-size: 18px;
    position: relative;
    overflow: hidden;
}

    .step .fill {
        position: absolute;
        top: 0;
        left: 0;
        width: 0%;
        height: 100%;
        background-color: var(--color-azul);
        border-radius: 50%;
        transition: width 1.5s ease;
    }

    .step.active {
        border-color: var(--color-azul);
    }

    .step.completed {
        background-color: var(--color-azul);
        /*color: white;*/
    }

    .step i {
        position: relative;
        z-index: 1;
        color: var(--color-amarillo);
    }

    /*.step.completed i {
        position: relative;
        z-index: 1;
        color: white;
    }*/

.line {
    width: 30px;
    height: 2px;
    background-color: var(--color-amarillo);
    transition: background-color 1.5s ease-in-out;
}

.step.completed + .line {
    background-color: var(--color-azul);
}

.step.completed .fill {
    width: 100%;
}

.progress-steps .line {
    width: 30px;
    height: 2px;
}

/*Prueba de Vida*/
#vidContainer {
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


#wrapperVideo {
    position: relative;
    width: 100%;
    height: 420px;
}

#canvasVideoFirma {
    position: absolute;
    bottom: 0;
    border: 1px solid cyan;
}

#videoFirma {
    position: absolute;
    top: 0;
    height: 420px !important;
    width: 100%;
    filter: opacity(50%);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


.file-upload-wrapper {
    position: relative;
    width: 100%;
    height: 60px;
}

    .file-upload-wrapper:after {
        content: attr(data-text);
        font-size: 14px;
        position: absolute;
        top: 0;
        left: 0;
        background-color: transparent!important;
        padding: 10px 15px;
        display: block;
        width: calc(100% - 40px);
        pointer-events: none;
        z-index: 20;
        height: 40px;
        line-height: 40px;
        color: #999;
        border-radius: 5px 10px 10px 5px;
        font-weight: 300;
    }

    .file-upload-wrapper::before {
        font-family: "Material_Icons";
        content: "\e557";
        position: absolute;
        top: 0;
        right: 0;
        display: inline-block;
        height: 60px;
        font-weight: 700;
        z-index: 25;
        font-size: 26px;
        line-height: 60px;
        padding: 0 15px;
        pointer-events: none;
        border-radius: 0 5px 5px 0;
    }


    .file-upload-wrapper input {
        opacity: 0;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 99;
        height: 40px;
        margin: 0;
        padding: 0;
        display: block;
        cursor: pointer;
        width: 100%;
    }

.marco-cedula {
    border: 5px solid #005db2;
    padding-top: 23%;
    padding-left: 23%;
    padding-right: 25%;
    padding-bottom: 10%;
    border-radius: 0px !important;
    position: absolute;
    /* background-color: #fff;*/
    border: 1px solid transparent;
    background-image: linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2);
    background-repeat: no-repeat;
    background-size: 3% 25%, 15% 3%, 3% 25%, 15% 3%, 3% 25%, 15% 3%, 3% 25%, 15% 3%, calc(100% - 8px) calc(100% - 8px);
    background-position: left bottom, left bottom, right bottom, right bottom, left top, left top, right top, right top, 4px 4px;
    /*  padding: 10px; */
}

@media screen and (max-width: 575px) {
    .marco-cedula {
        padding-top: 30%;
        padding-left: 30%;
    }
}



.marco-selfie {
    border: 5px solid #005db2;
    padding-top: 23%;
    padding-left: 20%;
    padding-right: 15%;
    padding-bottom: 10%;
    border-radius: 0px !important;
    position: absolute;
    /* background-color: #fff;*/
    border: 1px solid transparent;
    background-image: linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2), linear-gradient(#005db2, #005db2);
    background-repeat: no-repeat;
    background-size: 3% 25%, 15% 3%, 3% 25%, 15% 3%, 3% 25%, 15% 3%, 3% 25%, 15% 3%, calc(100% - 8px) calc(100% - 8px);
    background-position: left bottom, left bottom, right bottom, right bottom, left top, left top, right top, right top, 4px 4px;
    /*  padding: 10px; */
}

@media screen and (max-width: 575px) {
    .marco-selfie {
        padding-top: 45%;
        padding-left: 45%;
    }
}

.circle-check {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    display: inline-block;
    height: 80%;
    width: 80%;
    border-radius: 50%;
    border: 0px solid var(--color-azul);
}
.Fondo-espera {
    background-image: url('../../Assets/Img/Fondos/fondo-espera.jpg') !important;
    background-color: #cccccc;
    height: 100%;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: top left;
    margin: 0px !important;
}

#carga {
    width: 50%;
    background-color: grey;
}

#rojo {
    width: 4%;
    height: 30px;
    background-color: red;
}

/*Upload Files Comprobante*/
#uploadFiles {
    max-width: 600px;
    margin: 20px auto;
}

    #uploadFiles .insUpload {
        font-size: 12px;
        margin: 0 0 10px;
    }

.user-files {
    position: relative;
    background: #fff;
    margin-top: 10px;
    padding-left: 40px;
    padding-right: 40px;
    margin-bottom: 30px;
    border-radius: 4px;
    box-shadow: 0px 1px 6px rgba(0,0,0,0.1);
}

    .user-files ul {
        margin: 0;
        padding: 0;
    }

    .user-files li {
        list-style: none;
        padding: 10px 0;
        border-bottom: 1px solid #f7f6f6;
        font-size: 14px;
        color: #000;
    }

        .user-files li:last-child {
            border-bottom: none;
        }

    .user-files .upld-list, .user-files .upd-iconName {
        display: -webkit-flex;
        display: -moz-flex;
        display: flex;
    }

    .user-files .upld-list, .user-files .upd-iconName {
        -webkit-align-items: center;
        align-items: center;
    }

    .user-files .upld-list {
        position: relative;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .user-files .uploaded-icon {
        position: relative;
        width: 26px;
        height: 26px;
        border-radius: 100%;
        background-size: 52px;
        margin-right: 15px;
    }

    .user-files .docName {
        font-weight: 400;
    }

    .user-files .docType {
        display: none;
        color: #b3b3b3;
        font-size: 12px;
    }

.upld-list .msg {
    color: #ff0000;
    font-size: 11px;
    display: block;
    margin-top: 2px;
    display: none;
}

.user-files input {
    display: none;
}

.user-files label {
    position: relative;
    display: inline-block;
    color: #5e94c3;
    font-size: 15px;
    font-weight: 600;
    padding: 10px;
    right: -10px;
    cursor: pointer;
}

.user-files .mdot {
    width: 3px;
    height: 3px;
    border-radius: 100%;
    background: #b3b3b3;
    margin: 0 10px;
    display: inline-block;
    vertical-align: middle;
}

.user-files .error {
    color: #ff0000;
    font-size: 13px;
    position: absolute;
    left: 0;
    width: 100%;
    bottom: -24px;
    font-weight: 300;
    display: none;
}

.user-files .uploaded-icon svg {
    width: 100%;
    height: 100%;
}

#uploadFiles svg {
    fill: #5a5a5a;
}

#uploadFiles .uploaded svg {
    fill: #23D717;
}

.upld-list .closeStyle, .uploaded .upld-list label {
    display: none;
}

.uploaded .upld-list .closeStyle {
    display: block;
}

.upld-list .closeStyle {
    top: 0;
    bottom: 0;
    margin: auto;
    position: absolute;
    right: -10px;
    width: 40px;
    height: 40px;
    cursor: pointer;
}

    .upld-list .closeStyle:before, .upld-list .closeStyle:after {
        content: '';
        position: absolute;
        width: 24px;
        height: 1.5px;
        background: #7b7b7b;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
    }

    .upld-list .closeStyle:before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .upld-list .closeStyle:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

.uploaded-icon i {
    color: white; 
    transition: color 0.3s ease-in-out;
}

.uploaded .uploaded-icon i {
    color: var(--color-azul);
}

/* Ajustes para pantallas menores a 575px */
@media screen and (max-width: 575px) {

    .user-files {
        padding-left: 20px;
        padding-right: 20px;
    }

        .user-files label {
            font-size: 14px;
            padding: 8px;
            right: 0;
            display: block;
            text-align: center;
        }

    .upld-list {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

        .upld-list .closeStyle {
            right: 0;
            position: relative;
            margin-left: auto;
        }

    .btn-volver,
    .btn-siguiente {
        width: 100%;
        text-align: center;
        font-size: 14px;
        padding: 10px;
    }

    .row.col-12 {
        flex-direction: column;
        gap: 10px;
    }

    .col-6 {
        width: 100%;
    }

}

/* Ajustes adicionales para pantallas menores a 440px */
@media screen and (max-width: 575px) {
    .upld-list {
        padding: 10px;
        gap: 8px;
    }

    .uploaded-icon {
        margin-right: 10px;
    }

    .docName {
        font-size: 13px;
    }

    .btn-volver i,
    .btn-siguiente i {
        margin: 0 4px;
    }

    .progress-steps {
        flex-wrap: wrap;
        gap: 10px;
        justify-content: center;
    }

    .step {
        width: 30px;
        height: 30px;
        font-size: 14px;
    }

    .line {
        width: 20px;
        height: 1.5px;
    }

    .container-pasos {
        max-width: 90%;
        margin-bottom: 10px;
    }

    .step i {
        font-size: 12px;
    }

    /* Botones más pequeños y adaptables */
    .btn-volver,
    .btn-siguiente {
        width: 100%;
        padding: 8px 12px;
        font-size: 14px;
        text-align: center;
    }

        .btn-volver i,
        .btn-siguiente i {
            font-size: 14px;
            margin-right: 4px;
        }

    .row.col-12 {
        flex-direction: column;
        gap: 8px;
    }

    .col-6 {
        width: 100%;
        justify-content: center !important;
    }
}


