table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child
{
    position: relative;

    padding-left: 30px;

    cursor: pointer;
}
table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before
{
    line-height: 14px;

    position: absolute;
    top: 8px;
    left: 4px;

    display: block;

    -webkit-box-sizing: content-box;
       -moz-box-sizing: content-box;
            box-sizing: content-box;
    width: 16px;
    height: 16px;

    content: '+';
    text-align: center;

    color: #fff;
    border: 2px solid #fff;
    border-radius: 16px;
    background-color: #3f51b5;
}
table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child.dataTables_empty:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child.dataTables_empty:before
{
    display: none;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before
{
    content: '-';

    background-color: #f44336;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.child td:before
{
    display: none;
}

table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td:first-child,
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th:first-child
{
    padding-left: 27px;
}
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td:first-child:before,
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th:first-child:before
{
    line-height: 12px; 

    top: 5px;
    left: 4px;

    width: 14px;
    height: 14px;

    border-radius: 14px;
}

table.dataTable.dtr-column > tbody > tr > td.control,
table.dataTable.dtr-column > tbody > tr > th.control
{
    position: relative;

    cursor: pointer;
}
table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before
{
    line-height: 14px;

    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    -webkit-box-sizing: content-box;
       -moz-box-sizing: content-box;
            box-sizing: content-box;
    width: 16px;
    height: 16px;
    margin-top: -10px;
    margin-left: -10px;

    content: '+';
    text-align: center;

    color: #fff;
    border: 2px solid #fff;
    border-radius: 16px;
    background-color: #3f51b5;
}

table.dataTable.dtr-column > tbody > tr.parent td.control:before,
table.dataTable.dtr-column > tbody > tr.parent th.control:before
{
    content: '-';

    background-color: #f44336;
}

table.dataTable > tbody > tr.child
{
    padding: .5em 1em;
}
table.dataTable > tbody > tr.child:hover
{
    background: transparent !important;
}
table.dataTable > tbody > tr.child ul
{
    display: inline-block;

    margin: 0;
    padding: 0; 

    list-style-type: none;
}
table.dataTable > tbody > tr.child ul li
{
    padding: .5em 0; 

    border-bottom: 1px solid #e0e0e0;
}
table.dataTable > tbody > tr.child ul li:first-child
{
    padding-top: 0;
}
table.dataTable > tbody > tr.child ul li:last-child
{
    border-bottom: none;
}
table.dataTable > tbody > tr.child span.dtr-title
{
    font-weight: 400; 

    display: inline-block;

    min-width: 75px;
}
