div.statsContainer {
    display: flex;
    flex-direction: column;
    align-items: center;
}
div.stats {
    display: inline-block;
    width: auto;
}
div.stats div.statsControls {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    padding-bottom: 10px;
}
div.stats div.statsControls span, div.stats div.statsControls input, div.stats div.statsControls select {
    font-size: 85%;
}
div.stats div.statsControls span.group {
    flex: 1 1 auto;
}
div.stats div.statsControls span.filter {
    flex: 1 1 auto;
    text-align: center;
}
div.stats div.statsControls span.limit {
    flex: 1 1 auto;
    text-align: right;
}

div.stats table {
    border-collapse: separate;
    border-spacing: 0;
}
div.stats table th, div.stats table td {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 1px min(1vw, 15px);
}


div.stats table th {
    border-bottom: 1px solid #777;
    background-color: #f6f6f6;
}
div.stats table th.sortable, div.stats table th.sorted {
    cursor: pointer;
    position: relative;
    padding-right: 16px;
}

div.stats table th.sortable::after, div.stats table th.sorted::after {
    content: '▼';
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
}
div.stats table th.sortable::after {
    color: gray;
    font-size: 50%;
}
div.stats table th.sortable:hover::after {
    color: black;
}
div.stats table th.sorted::after {
    font-size: 70%;
}


div.stats table td.noENS {
    color: #ccc;
}
div.stats table td.timeExtended {
    text-align: right;
    padding: 1px 3px;
}




div.stats table.main > tr:nth-child(2n) {
    cursor: pointer;
}
div.stats table.main > tr:nth-child(4n+2) {
    background-color: #eee;
}
div.stats table.main > tr > td.ens {
    max-width: min(max(calc(50vw - 150px), 20vw), 200px);
}
div.stats table.main > tr > td.address {
    max-width: min(10vw, 100px);
}
div.stats table.main td.numPieces {
    text-align: center;
}



div.stats table.details {
    font-size: 70%;
    padding-top: 10px;
    padding-bottom: 25px;
    margin-left: auto;
    margin-right: auto;
}
div.stats table.details > tr:nth-child(even) {
    background-color: #eee;
}
div.stats table.details > tr > td.ens {
    max-width: min(max(calc(30vw - 100px), 15vw), 120px);
}
div.stats table.details > tr > td.address {
    max-width: min(8vw, 80px);
}
div.stats table.details > tr.total {
    font-weight: bold;
}
div.stats table.details > tr.total td {
    border-top: 1px solid #777;
}
