.table {
    --border-color: var(--gray);
    color: var(--black);
    border-color: var(--border-color);
    border-bottom: 2px solid var(--border-color);
    margin-bottom: 0;
}
.table-striped>tbody>tr:nth-child(2n+1)>td, 
.table-striped>tbody>tr:nth-child(2n+1)>th {
   background-color: var(--gray-light);
}
.table-striped>tbody>tr:nth-child(2n)>td, 
.table-striped>tbody>tr:nth-child(2n)>th {
   background-color: var(--white);
}
.table thead {
    font-size: 1rem;
}
.table thead > tr > th {
    font-weight: 500;
    border-color: var(--border-color);
    vertical-align: middle;
    line-height: 1rem;
    color: var(--black);
}
.table tbody tr {
    border-bottom: 1px solid var(--border-color);
}
.table tbody tr td {
    font-size: 1.05rem;
    font-weight: 300;
    border-color: var(--border-color);
    vertical-align: middle;
}
.table.font-small thead {
    font-size: 0.85rem;
}
.table.font-small tbody tr td {
    font-size: 0.9rem;
}
th.table-checkbox,
td.table-checkbox {
    width: 40px;
}
/*  */
.table-fullwidth {
    position: relative;
    left: calc(50% - 50vw);
    width: calc(100vw - 10px);
}

.table-fullwidth th.table-edit,
.table-fullwidth td.table-edit {
    padding-right: 1.75rem;
    width: 40px;
}
.table-fullwidth th.table-checkbox,
.table-fullwidth td.table-checkbox {
    padding-left: 1.75rem;
}
td.table-product-name {
    position: relative;
}
.table-product-actions {
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    align-items: center;
    justify-content: center;
    gap: 20px;
    height: 100%;
    width: 100%;
    background-color: #D8DCE680;
}
.table-product-name:hover .table-product-actions,
.table-product-name #text:hover .table-product-actions,
.table-product-actions:hover {
    display: flex;
}

.table-input {
    position: relative;
}
.table-input input {
    border: 0;
    padding: 4px;
    border-radius: 7px;
    background-color: var(--gray);
    border: 2px solid transparent;
    text-align: center;
    /* cursor: pointer; */
}
.table-input input:disabled {
    cursor: not-allowed;
}
.table-input input:focus {
    background-color: var(--white);
    border: 2px solid var(--blue);
    transition: border .5s;
}
.table-input.loading::after {
    content: '';
    position: absolute;
    display: block;
    left: calc(180px - 1rem);
    bottom: 0.5rem;
    height: 1rem;
    width: 1rem;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23112B66' viewBox='0 0 512 512'%3E%3Cpath d='M304 48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm0 416a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM48 304a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm464-48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM142.9 437A48 48 0 1 0 75 369.1 48 48 0 1 0 142.9 437zm0-294.2A48 48 0 1 0 75 75a48 48 0 1 0 67.9 67.9zM369.1 437A48 48 0 1 0 437 369.1 48 48 0 1 0 369.1 437z' /%3E%3C/svg%3E");
    animation: spin 1s linear infinite;
}
@keyframes spin {  
    0%   {transform: rotate(0deg);}  
    100% {transform: rotate(360deg);}  
}

.table-input.success input {
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23112B66' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-position: right 0.5rem bottom 0.45rem;
    background-size: 1rem 1rem;
}
.table-input.error input {
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='10' height='10' fill='none' stroke='%23991a4e'%3e%3ccircle cx='6' cy='6' r='4.5' stroke-width='1'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23991a4e' stroke='none'/%3e%3c/svg%3e");
    background-position: right 0.5rem bottom 0.45rem;
    background-size: 1rem 1rem;
}

td.table-image {
    padding: 0.5rem 0 0.25rem 0;
}
td.table-image img {
    height: 40px;
    width: 40px;
    object-fit: contain;
    border: 0;
    box-shadow: 0 0 3px var(--gray-dark);
    background-color: var(--white);
    margin: 0 5px 5px 0;
}

.table .empty {
    display: flex;
    align-items: center;
    justify-content: center;
}

td .dropleft {
    display: flex;
    align-items: center;
    justify-content: end;
}