.list-item {
    font-size: 0;
    line-height: 0;
    position: relative;
}

body,
.list-chblock,
.task,
.list-item-total,
.list-val {
    font-size: 18px;
}

body {
    cursor: default;
    min-width: 320px;
}

.list-chblock {
    position: relative;
}

.list-chbox {
    height: 0;
    margin-right: 15px;
    width: 0;
}

.list-label {
    cursor: pointer;
    height: 24px;
    line-height: 1.5;
    left: 0;
    margin: 0;
    position: absolute;
    top: 0;
    width: 12px;
    z-index: 1;
}

.list-label:before,
.list-label:after {
    border: 6px solid transparent;
    content: '';
    display: block;
    position: absolute;
    top: 6px;
}

.list-label:before {
    border-left: 6px solid #000;
    left: 4px;
}

.list-label:after {
    border-left: 6px solid #cfe2ff;
    left: 2px;
}

.list-chbox ~ ul {
    display: none;
}

.list-chbox:checked ~ ul {
    display: block;
}

.list-chbox:checked + div {
    height: 24px;
}

.list-chbox:checked + div > label:before,
.list-chbox:checked + div > label:after {
    border: 6px solid transparent;
    left: 0;
}

.list-chbox:checked + div > label:before {
    border-top: 6px solid #000;
    top: 8px;
}

.list-chbox:checked + div > label:after {
    border-top: 6px solid #fff;
    top: 6px;
}

.list-label:hover:before{
    border-left-color: #f00;
}

.list-chbox:checked + div > label:hover:before {
    border-left-color: transparent;
    border-top-color: #f00;
}

.list-chblock,
.task,
.list-item-total,
.list-val {
    line-height: 1.5;
}

.list-val {
    display: inline-block;
    margin-left: 14px;
}

.task-time {
    float: right;
}

.task-name {
    display: inline-block;
    margin-right: 10px;
    min-width: 110px;
}

.list-item-total {
    text-align: right;
}

.task-actions {
    margin: 0;
    max-width: 300px;
}

.task,
.list-item-total {
    padding: 0 5px;
}

.task:nth-child(2n+1) {
    background: #f8f9fa;
}

.list-item-total {
    background: #cfe2ff;
}

.total-plan {
    margin-right: 5px;
}

@media (min-width: 768px) {
    body,
    .list-chblock,
    .task,
    .list-item-total,
    .list-val {
        font-size: 16px;
    }

    .list-label:before,
    .list-label:after {
        top: 5px;
    }
}

@media (min-width: 1024px) {
    body,
    .list-chblock,
    .task,
    .list-item-total,
    .list-val {
        font-size: 15px;
    }
}

@media (min-width: 1280px) {
    body,
    .list-chblock,
    .task,
    .list-item-total,
    .list-val {
        font-size: 14px;
    }

    .list-label:before,
    .list-label:after {
        top: 4px;
    }
}