.contract-grid {
    width: 100%;
}

.contract-grid .table tr th {
    position: relative;
}

.contract-grid .table tr td {
    border-bottom: solid 1px #d9d9d9;
    padding: 0 !important;
}

.contract-grid .contract-grid__input {
    background: transparent;
    border: solid 1px transparent;
    border-radius: 0;
    padding: 8px;
    width: 100%;
    outline: none;
}

.contract-grid .contract-grid__select {
    width: 100px;
}

.contract-grid .contract-grid__input:focus {
    border: solid 1px #0078d4;
}

.contract-grid .contract-grid__input--error {
    background: #ffaaaa;
}

.contract-grid .contract-grid__button-remove {
    cursor: pointer;
    color: #ff0000;
}

.contract-grid .contract-grid__checkbox {
    margin: 12px;
}

.contract-grid__buttons {
    margin: 20px 0 0 0;
}

.contract-grid__buttons .nav-pills li {
    padding: 0 10px 0 10px;
}

.contract-grid__table__sortable {
    align-items: center;
    cursor: pointer;
    display: grid;
    user-select: none;
    gap: 10px;
    grid-template-columns: auto 1fr;
    position: relative;
}

.contract-grid__table__sortable--desc::after,
.contract-grid__table__sortable--asc::after {
    content: '';
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    display: block;
    border-top: 5px solid #000;
}

.contract-grid__table__sortable--asc::after {
    border-top: none;
    border-bottom: 5px solid #000;
}
