/* tables */
table{
    margin: auto;
    border-collapse: collapse;
    width: max-content; /* permite que la tabla se expanda más allá del contenedor si es necesario */
    table-layout: auto; /* evita truncamientos extraños */
}
thead{
    position: sticky;
    top:0;
}/*to leave titles fixed*/

/* div table */
.div-table{
    overflow-y: auto;
    overflow-x: auto;
    margin: auto;
    width: fit-content;
    max-width: 95%;
}

/* tables height */
.table-m{
    max-height: 420px;
}

.table-320{
    height: 320px;
}

.table-400{
    height: 400px;
    max-height: 400px;
}

.table-430{
    height: 430px;
    max-height: 430px;
}

.table-450{
    height: 450px;
    max-height: 450px;
}

.table-500{
    height: 500px;
    max-height: 500px;
}

.table-m table {
    table-layout: fixed; /* Ensures columns have a fixed width */
    width: 95%; /* Ensures the table occupies 95% of the container's width */
}

/* tables heads */
.th-s{
    text-align: center;
    background-color: var(--color1);
    color: white;
    height: 1.4rem;
    font-size: 13px !important;
    font-weight: lighter;
}

.th{
    text-align: center;
    background-color: var(--color1);
    color: white;
    height: 2rem;
    font-weight: lighter;
}

/* tables heads - sizes */
.th-s{
    font-size: 14px;
}

/* tables heads - width */
.th-w-10{
    width: 10px;
}

.th-w-50{
    width: 50px;
}

.th-w-100{
    width: 100px;
}

.th-w-180{
    width: 180px;
}

.th-w-200{
    width: 200px;
}

.th-w-250{
    width: 250px;
}

.th-w-300{
    width: 300px;
}

.thw-s{
    width: 50px;
}

.thw-m{
    width: 100px;
}

.thw-l{
    width: 150px;
}

.thw-xl{
    width: 170px;
}

.thw-xxl{
    width: 250px;
}

/* body */
.body {
    font-weight: lighter;
    text-align: center;
}

.body-std {
    font-weight: lighter;
    text-align: center;
    max-height: 2rem; /* Maximum height */    
    padding: 3px 5px;
    overflow: hidden; /* Hides overflow */
    text-overflow: ellipsis; /* Adds ellipsis (...) */
    white-space: nowrap; /* Prevents text from wrapping into multiple lines*/
}

.body-overflow{
    font-weight: lighter;
    padding: 3px 0px;
    text-align: center;
    max-height: 2rem; /* Maximum height */    
    padding: 3px 5px;
}

.body-m{
    font-size: 13px;
}

.body-even{
    background-color: white;
}/*background when row number is even*/

.body-odd{
    background-color: var(--color3);
}/*background when row number is odd*/

.allowed-icon{
    cursor:pointer;
}

/* icon that show popups */
.icon-wrapper {
    position: relative;
    display: inline-block;
    cursor: pointer;
}

.icon-wrapper .tooltip {
    display: none;
    position: absolute;
    top: -90%;
    left: -420px; 
    transform: translateY(-50%);
    background-color: rgb(229, 221, 221);    
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 12px;
    z-index: 1;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.5);
    white-space: nowrap; 
    width: 400px; 
    height: 35px;
    overflow: auto;
    align-items: center;
    justify-content: flex-start;
}

.icon-wrapper:hover .tooltip {
display: flex;
}

/* table tooltips */
.t-tooltip{
    font-size: 12px;
    position: absolute;
    display: none;
    text-align: center;
}

/* th with icons */
.th-icon{
    display: flex;
    column-gap: 10px;
    justify-content: center;
    align-items: center;
}

.order-icon{
    font-size: 14px;
    cursor: pointer;
}