.none {
    display: none !important;
}

.flex {
    display: flex;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.view {
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.view.active {
    display: block;
    opacity: 1;
}

.view.fade-in {
    animation: fadeIn 0.3s forwards;
}

.view.fade-out {
    animation: fadeOut 0.3s forwards;
    opacity: 0;
}


/* ------------------------------------------------------------- */
/* ------------------------------------------------------------- */
/* Apartir de aca va a ir el css que sea del proyecto particular */

.container__Main {
    background-color: var(--upaep-color-tenue-gray);
}

.container__Main:has(.accesosGeneral) {
    width: 100%;
    background-color: initial;
}

.static-header {
    background-color: white;
    height: max-content;
    min-height: 100px;
    padding: 1rem 5rem;

}

.container__Main.closed-sidebar .static-header {
    width: calc(100% + 90px);
    margin-left: -50px;
}

.container__Main.opened-sidebar .static-header {
    width: calc(100% + 75px);
    margin-left: -35px;
}

.container__Main.no-sidebar .static-header {
    width: calc(100% + 45px);
    margin-left: -35px;
}

.title-header {

    h2 {
        font-weight: 700;
        font-size: 35px;
        color: #1D335B;
        text-transform: uppercase;
        font-size: 25px;
    }

    ul {
        padding-left: 20px;
        list-style: decimal;
    }
}

.return-button {
    display: flex;
    gap: 10px;
    width: max-content;
    cursor: pointer;
    align-items: baseline;

    i {
        color: red;
        cursor: pointer;
    }

    p {
        font-weight: 600;
    }
}

.required-field {
    color: var(--upaep-color-red);
}

.three-fields {
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;
}

.two-fields {
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;
}

.align-items {
    align-items: center;
}

.w-30 {
    width: 30%;
}

.w-60 {
    width: 60%;
}

.w-80 {
    width: 80%;
}

.mt-30 {
    margin-top: 30px;
}

.table_config_container table tbody tr td {
    max-width: 300px !important;
}

.buttons-container {
    display: flex;
    justify-content: left;

    button {
        min-width: 135px;
    }
}

.tracker-dot {
    display: grid;
    place-items: center;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    cursor: pointer;
    background-color: #52565A;

    p {
        margin: 0;
        color: white;
        font-size: 15px;
    }
}

.success-dot {
    display: grid;
    place-items: center;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background-color: var(--upaep-color-success);

    i {
        color: white;
        font-size: 15px;
    }
}

.number-dot {
    color: white;
    margin: 0;
}

.upaep__tracker {
    margin-top: 30px;

    & .upaep__tracker-item {
        &.is-progress {
            .upaep__tracker-mark {
                border-color: #52565A !important;
                background: transparent !important;
                border-width: 3px !important;
            }
        }
    }

    &:not(.tracker-vertical) {
        & .upaep__tracker-item {
            &.is-progress {
                & .upaep__tracker-line {
                    &::before {
                        background: #52565A;
                        width: 100%;
                    }
                }
            }
        }
    }

    .upaep__tracker-mark {
        width: 40px !important;
        height: 40px !important;
    }

    & .upaep__tracker-item {
        &.is-complete {
            .upaep__tracker-mark {
                background: transparent !important;
                border-width: 3px !important;
            }
        }
    }
}

.upaep__tracker {
    &:not(.tracker-vertical) {
        .upaep__tracker-line {
            width: calc(100% - 40px);
            height: var(--upaep-tracker-item-line-width);
            inset: calc((40px / 2) - (var(--upaep-tracker-item-line-width) / 2)) auto auto calc(50% + 40px / 2);
        }
    }
}

.points-red {
    height: 6px;
    cursor: pointer;
}

.table_search {
    display: flex !important;
    justify-content: space-between !important;
}

.choose-company {
    cursor: pointer;
    margin-top: 30px;

    h2 {
        font-size: 20px;
        font-weight: 700;
        color: white;
        margin: 10px 0;
        user-select: none;
    }

    .current-company .arrow {
        font-size: 16px;
        margin-left: 8px;
        transition: transform 0.3s ease;
        display: inline-block;
    }

    .current-company {
        display: flex;
        gap: 10px;
        padding: 10px;
        border: 1px solid #ffffff82;
        border-radius: 4px;
        justify-content: center;

        img {
            object-fit: contain;
        }
    }


    .company-list {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;

        ul {
            text-align: center;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;

            li {
                opacity: 0.5;
                width: 100%;
                display: flex;
                min-height: 45px;

                img {
                    width: unset;
                    height: unset;
                    object-fit: contain;
                }
            }
        }
    }

    .company-list.expanded {
        max-height: 1000px;
    }

    .arrow.rotated {
        transform: rotate(180deg);
    }

}

.company-list {
    h3 {
        font-size: 13px;
        margin: 0;
    }
}

@media (width>468px) {
    .static-header {
        margin-left: -35px;
        width: calc(100% + 45px);
    }
}

#update-information-form-container {
    display: flex;
    flex-direction: column;
}

.italic-style {
    font-style: italic;
}

.container__Main.modified-container+.container__Footer footer {
    padding-left: 0;
}

@media (width>768px) {}

@media (width>1068px) {
    .two-fields {
        grid-template-columns: 1fr 1fr;
    }

    .three-fields {
        grid-template-columns: 1fr 1fr 1fr;
    }

}

@media (width>1368px) {}