.results-block__content {
    padding: 1rem 0;
    grid-template-rows: auto auto;
    justify-items: center;
}

.table__data-input {
    font-size: 1rem;
    width: 65px;
    text-align: right;
    padding: .5rem 0.125rem .5rem .375rem;
    border: 1px solid transparent;
    color: var(--text-color-primary);
    background-color: var(--bg-color-secondary);
    appearance: textfield;
}

.table__data-input::-webkit-inner-spin-button,
.table__data-input::-webkit-outer-spin-button {
    appearance: none;
}

.table__data-input:hover,
.table__data-input:focus {
    outline: transparent;
    border: 1px solid var(--color-accent);
}

.table-underlay {
    height: fit-content;
    width: 100%;
    border-radius: .5rem;
    border: 1px solid var(--border-color);
    background: var(--bg-color-secondary);
    box-shadow: 1px 2px 6px -1px hsla(var(--color-black), .1), 1px 2px 4px -2px hsla(var(--color-black), .1);
}

.table__container {
    max-height: 70vh;
    overflow: auto;
    scrollbar-color: var(--color-accent) var(--bg-color-secondary);
    scrollbar-width: thin;
}

.table {
    border-collapse: collapse;
    width: 100%;
}

.summary-table {
    max-width: clamp(520px, 480px + 15vw, 750px);
    grid-column: 1 / -1;
    grid-row: 1;
}

.calculation-table {
    max-width: 520px;
    grid-column: 1 / -1;
    grid-row: 2;
}

.table__header {
    display: flex;
    padding: .5rem 0;
    justify-content: center;
}

.table__footer {
    display: flex;
    padding: .5rem 0;
    justify-content: center;
}

.table__body + .table__body .table__row:first-child {
    border-top: 1px solid var(--border-color);
}

.table__row + .table__row {
    border-top: 1px solid var(--border-color);
}

.table__heading {
    font-size: clamp(1rem, 0.675rem + .5vw, 1.125rem);
    font-weight: 300;
    line-height: 1.5rem;
    white-space: nowrap;
    padding: .625rem .5rem;
    color: var(--text-color-secondary);
}

.table__heading--align-left {
    text-align: left;
}

.table__heading--align-right {
    text-align: right;
}

.table__data {
    font-size: clamp(.875rem, .5rem + .785vw, 1.125rem);
    line-height: 1.25rem;
    white-space: nowrap;
    color: var(--text-color-primary);
}

.table__data--text {
    padding: .5625rem 0.25rem;
}

.table__data--custom {
    padding: 0 .25rem;
}

.table__data--custom-wide {
    padding: 0 1rem;
}

.table__data--align-right {
    display: flex;
    justify-content: right;
    align-items: baseline;
}

.table__data--sheet-slice {
    gap: 1rem;
}

.table-data--many > :not(:last-child) {
    margin-right: 1rem;
}

.slice-add-button,
.slice-remove-button {
    border-radius: .25rem;
    border: 0;
    padding: .125rem;
    color: hsl(var(--color-black));
    background-color: var(--color-accent);
}

@media (min-width: 640px) {
    .table__data--text {
        padding: .5625rem .5rem;
    }

    .table__data--custom {
        padding: 0 .5rem;
    }
}

@media (min-width: 768px) {
    .results-block__content {
        max-width: 768px;
    }
}

@media (min-width: 1024px) {
    .results-block__content {
        max-width: 1024px;
        grid-template-rows: 1fr auto 1fr;
    }

    .summary-table {
        grid-column: 1 / span 6;
        grid-row: 2;
    }

    .calculation-table {
        grid-column: 7 / span 6;
        grid-row: 2;
    }
}

@media (min-width: 1280px) {
    .results-block__content {
        max-width: 1280px;
    }
}

@media (min-width: 1536px) {
    .results-block__content {
        max-width: 1536px;
    }

    .summary-table {
        width: fit-content;
        min-width: clamp(300px, 240px + 25vw, 520px);
    }
}