
.error {
    background: var(--goldenrod);
}
    
/*======================================= ALL ==*/
    :root {
            --color-primario: #7c1a14;
        --color-primario-hov: #631410;
                        --uf: #D93438;
          --color-secundario: #28867c;
      --color-secundario-hov: #2CB29C;
           --color-terciario: #72acd3;
       --color-terciario-hov: #a0b3ce;
                 --goldenrod: goldenrod;
                --color-text: #727272;

           --content-padding: 0 3rem;
          --head-padding-top: 1rem;

                   --card-bg: #efefef;
                  --card-bg2: #bcbcbc;
               --card-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
               --card-bottom: .5rem;

        --main-border-radius: 3px;
    }
    * { 
        margin: 0;
        padding: 0;
        font-family: 'Open Sans', serif;
        font-size: 16px;
        box-sizing: border-box;
    }
    .flex, .flex-column, .flex-strech {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .flex-column {
        flex-direction: column;
    }
    .flex-strech {
        align-items: stretch;
    }
    .content-padding {
        padding: var(--content-padding);
    }
    .content-head {
        background: var(--color-primario);
        padding: var(--content-padding);
        padding-top: var(--head-padding-top);
    }
    .content-head h1 {
        color: #fff;
        font-size: 2rem;
        font-weight: 100;
    }
    .content-card {
        padding: 2rem;
        background: var(--card-bg);
        margin: 1rem .5rem;
        /*margin-bottom: var(--card-bottom);
        margin: var(--card-bottom) 0;*/
        color: #3d3d3d;
        box-shadow: var(--card-shadow);
        border-radius: var(--main-border-radius);
    }
    .w100 {
        width: 100%;
    }
    .mg-btm-1 {
        margin-bottom: 1rem !important;
    }
/*==============================================*/


/*===================================== MAIN ===*/
    html, body, #foro-main {
        min-height: 100vh;
    }
    #foro-main {
        background-size: cover;
        /*background: #888;*/
        background: #d9d9d9;
       /* background: #fff;*/
        /*background: #4c4c4c;*/

        /*background-image: url(https://images.unsplash.com/photo-1541140134513-85a161dc4a00?q=80&w=1470&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D);*/
        
        /*background-image: url(https://images.unsplash.com/photo-1585314062340-f1a5a7c9328d?w=500&auto=format&fit=crop&q=60&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8NHx8Z3JleSUyMHRleHR1cmV8ZW58MHx8MHx8fDA%3D);*/

         /*background-image: url(https://images.unsplash.com/photo-1533035353720-f1c6a75cd8ab?w=500&auto=format&fit=crop&q=60&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8M3x8Z3JleSUyMHRleHR1cmV8ZW58MHx8MHx8fDA%3D);*/

        /*background-image: url(https://media.istockphoto.com/id/184601291/es/foto/xxxl-hormig%C3%B3n-oscuro.webp?a=1&b=1&s=612x612&w=0&k=20&c=1LXiV22jvpBsgqYjHXVfr-bs8VcNQPWbl6-XQ7igeXA=);
       */
    }
    #foro-main-content {
        width: 100%;
        min-height: 100vh;
    }
    #main-btns {
        width: 70%;
    }
    .main-btn {
        height: 3rem;
        color: #fff;
        background: var(--color-primario);
        width: 70%;
        margin: .5rem 0;
        justify-content: end;
        padding-right: 2rem;
        overflow: hidden;
        border-radius: var(--main-border-radius);
    }
    .main-btn:hover {
        cursor: pointer;
        color: var(--color-primario);   
        box-shadow: var(--card-shadow);
    }
    .btn-ut, .btn-uf, .btn-search {
        transition: .3s all ease !important;
    }
    .btn-ut h2, .btn-uf h2, .btn-search h2 {
        font-weight: 100;
    }
    .btn-ut:hover h2, .btn-uf:hover h2, .btn-search:hover h2 {
        font-weight: 600;
    }
    .btn-ut:hover, .btn-uf:hover, .btn-search:hover {
        border-right: 1rem solid var(--color-primario);
    }
    .btn-ut:before, .btn-uf:before, .btn-search:before {
        background: #fff;
    }
    .hvr-sweep-to-right {
        vertical-align: middle;
        -webkit-transform: perspective(1px) translateZ(0);
        transform: perspective(1px) translateZ(0);
        box-shadow: 0 0 1px transparent;
        position: relative;
        -webkit-transition-property: color;
        transition-property: color;
        -webkit-transition-duration: 0.3s;
        transition-duration: 0.3s;
    }
    .hvr-sweep-to-right:before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;

        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 0 50%;
        transform-origin: 0 50%;
        -webkit-transition-property: transform;
        transition-property: transform;
        -webkit-transition-duration: 0.3s;
        transition-duration: 0.3s;
        -webkit-transition-timing-function: ease-out;
        transition-timing-function: ease-out;
    }
    .hvr-sweep-to-right:hover, .hvr-sweep-to-right:focus, .hvr-sweep-to-right:active {}
    .hvr-sweep-to-right:hover:before, .hvr-sweep-to-right:focus:before, .hvr-sweep-to-right:active:before {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
/*==============================================*/


/*=================================== BUTTONS ==*/
    button {
        padding: .25rem 2.5rem;
        margin: .5rem 0;
        background: var(--color-secundario);
        color: #fff;
        border: none;
        outline: none
    }
    button:hover {
        cursor: pointer;
    }
    button:disabled {
        cursor: not-allowed;
    }
/*==============================================*/


/*====================================== FORM ==*/
    input, select {
       width: 100%;
    }
    input[type="text"], input[type="number"], .input-editable {
        text-align: center;
        width: 100%;
        margin: 0 auto;
        display: block;
        font-weight: 400;
        min-height: 2.5rem;
        border: 1px solid #8d8d8d;
        padding: .5rem;
        background: #fff;
    }
    input[type=number]::-webkit-inner-spin-button, 
    input[type=number]::-webkit-outer-spin-button { 
        -webkit-appearance: none; 
        margin: 0; 
    }
    input[type=number] {
        -moz-appearance: textfield;
    }
    input[type="checkbox"] {
        width: auto; 
        margin-left: .5rem;
    }
    textarea {
        overflow: hidden;
        height: auto; 
        resize: none;
        width: 100%;
        padding: .75rem;
    }
    select {
        width: 100%;
        margin: 0 auto;
        display: block;
        font-weight: 400;
        min-height: 2.5rem;
        border: 1px solid #8d8d8d;
        padding: .5rem;
        background: #fff;
    }
    .radio-label:hover {
        background-color: #f0f0f0;
        cursor: pointer;
    }
/*==============================================*/


/*======================================== UT ==*/
    #main-ut {
        width: 100%;
        min-height: 100vh;
    }
    .ut-info-additional p {
        padding: 0 0 1rem 2rem;
        color: var(--card-bg2);
    }
    #ut-data-content {
        display: grid;
        grid-template-columns: 80% 20%;
    }
    .label-txt {
        font-weight: 400;
        font-size: .95rem;
        margin-bottom: 1rem;
        color: var(--color-primario);
        border-bottom: 1px solid var(--color-primario);
    }
    #ut-pay {
        background: var(--card-bg2);
    }
    .ut-input-container {
        margin: .5rem 0;
    }
    #ut-data-info-check {
        display: flex;
        align-items: center;
    }
    .ut-data-wrapper {
        padding-left: .75rem;
    }
    #ut-data-info-container {
        padding-top: 1rem;
    }
    #ut-data-content-top {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    #ut-data-content-subgrid-right {
        display: flex;
    }
    #ut-data-init-options {
        position: relative;
    }
    .action-leyend {
        font-size: 1.3rem;
        font-weight: 100;
        padding: .75rem 0;
        line-height: 1;
    }
    .action-leyend span {
        font-weight: 600;
        font-size: 1.5rem;
    }
    #utCaratula {
        width: 100%;
    }
    #ut-type-action-module {
        padding: 1rem;
    }
    .action-parent {
        font-weight: 500;
        font-size: 1.2rem;
        line-height: 1;
        margin-bottom: .2rem;
    }
    .action-name {
        font-size: 2rem;
        line-height: 1;
        position: relative;
        border-left: 5px solid var(--color-primario);
        padding-left: .5rem;
    }  
    #ut-data-details-content {
        margin-top: 1.25rem;
    }
    #ut-base-date-q {
        margin: 1rem 0 .5rem;
    }
    .ut-base-date-input {
        width: 100%;
        justify-content: start;
        height: 1.75rem;
    }
    .ut-base-date-input input {
        width: 10%;
    }
    .action-subleyend {
        font-size: 0.95rem;
        font-weight: 400;
        line-height: 1;
        padding: .5rem;
    }

    /*-------- Información complementaria -*/
    .ut-input-container {
        position: relative;
        margin-bottom: 1rem;
    }
    .input-field {
        width: 100%;
        padding: 1rem 0.5rem 0.5rem 0.5rem;
        font-size: 1rem;
        border: 1px solid #ccc;
        border-radius: 4px;
        outline: none;
        background: white;
    }
    .floating-label {
        position: absolute;
        top: .5rem;
        left: 0.5rem;
        color: #676767;
        font-size: 1rem;
        pointer-events: none;
        transition: 0.4s ease all;
        background-color: white;
        padding: 0 0.25rem;
    }

    /* Efecto "float" cuando hay foco o texto */
    .input-field:focus + .floating-label,
    .input-field:not(:placeholder-shown) + .floating-label {
        top: -1.2rem;
        font-size: 0.75rem;
        padding: 0;
        color: #333;
        background: transparent;
    }

    /*-------- Vista Pago -*/
    #ut-pay h3 {
        font-size: 2rem;
        font-weight: 100;
        line-height: 1;
        text-align: center;
        margin-bottom: 3rem;
    }
    #ut-total-num, 
    #ut-total-num span {
        font-size: 1.5rem;
        font-weight: 500;
        color: #000;
    }
/*==============================================*/
    

/*======================================== UF ==*/
    #main-uf {
        background: var(--bg);
        width: 100%;
        text-align: center;
    }
    #uf-head {
        
    }
    #uf-content {
        
    }
/*==============================================*/


/*==================================== SEARCH ==*/
    input[type="radio"]:checked + label {
       /* background-color: tomato;
        color: #fff;
        transition: .3s all ease;*/
    }
/*==============================================*/


/*============================= MEDIA QUERIES ==*/
    /*----- MAIN -*/
    @media (max-width: 768px) {
        .main-btn {
            width: 100%;
            height: 2.5rem;
        }
    }

    /*----- UT -*/
    @media (max-width: 768px) {
        #ut-head {
            padding: 1rem;
        }
        .content-head h1 {
            font-size: 1.2rem;
        }
        #ut-data-content {
            padding: 1rem;
            display: flex !important;
            flex-direction: column;
        }
        #ut-data-content-top {
            grid-template-columns: repeat(1, 1fr);
        }
        .content-card {
            margin: .5rem 0;
            padding: 1.5rem;
        }
        .ut-data-wrapper {
            padding: 0;
        }
        #ut-data-info-required-inputs {
            flex-direction: column;
            width: 100%;
        }
        .ut-input-container {
            width: 100%;
        }
        #ut-type-action-module {
            padding-left: 0;
            padding-right: 0;
        }
        .action-name {
            font-size: 1.5rem;
            font-weight: 300;
        }
        .action-leyend {
            font-size: 1rem;
        }
    }

/*==============================================*/