.view-table-cell {
    padding:
        var(--table-cell-padding-top)
        var(--table-cell-padding-right)
        var(--table-cell-padding-bottom)
        var(--table-cell-padding-left);
    height: 19px; /* min cell height */
    vertical-align: top;
}
.view-table-cell.number {
    text-align: right;
}
.view-table-cell .num-delim {
    padding-left: 2px;
}
.view-table-cell.complex,
.view-table-cell.keyword {
    color: #888;
}

.view-table-cell.align-left {
    text-align: left;
}
.view-table-cell.align-center {
    text-align: center;
}
.view-table-cell.align-right {
    text-align: right;
}

.view-table-cell.details {
    padding-left: 14px;
    position: relative;
    background-clip: padding-box;
}
.view-table-cell.details::before {
    content: '.';
    color: transparent;
    display: inline-block;
    position: absolute;
    left: 3px;
    top: 3px;
    width: 9px;
    transform: rotate(-90deg);
    transition: .12s ease-in;
    transition-property: transform, opacity;
    background-image: url('./table-cell-details-expand.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 9px;
    opacity: .5;
}
.view-table-cell.details:hover {
    background-color: rgba(180, 180, 180, 0.2);
    cursor: pointer;
}
.view-table-cell.details-expanded {
    background-image:
        linear-gradient(to top, rgba(170, 170, 170, 0.2), transparent),
        linear-gradient(to top, rgba(170, 170, 170, 0.2), transparent);
    background-repeat: no-repeat;
    background-size: 1px 100%;
    background-position: left top, right top;
    border-bottom: none !important;
}
.view-table-cell.details-expanded:hover {
    background-color: rgba(180, 180, 180, 0.2);
}
.view-table-cell.details.details-expanded::before {
    transform: rotate(0deg);
    opacity: 1;
}

.view-table-cell-details-row > .view-cell-details-content {
    padding: 1px;
    border: 1px solid rgba(170, 170, 170, 0.25);
    border-top: none;
}
.view-table-cell-details-row > .view-cell-details-content > :first-child {
    margin-top: 0 !important;
}
.view-table-cell-details-row > .view-cell-details-content > :last-child {
    margin-bottom: 0 !important;
}

.view-table-cell > .view-struct,
.view-table-cell > .view-struct:hover {
    margin:
        calc(-1 * max(calc(var(--table-cell-padding-top) - 1px), 0px))
        calc(-1 * max(calc(var(--table-cell-padding-right) - 1px), 0px))
        calc(-1 * var(--table-cell-padding-bottom))
        calc(-1 * var(--table-cell-padding-left));
    padding:
        var(--table-cell-padding-top)
        var(--table-cell-padding-right)
        max(calc(var(--table-cell-padding-bottom) - 1px), 0px)
        var(--table-cell-padding-left);
}
.view-table-cell > .view-struct {
    background-color: transparent;
}
