/* ===== Grid Tables (Payouts) ===== */
.payout-grid-table {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    overflow: hidden;
    margin-bottom: 24px;
}
.payout-grid-header {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 160px;
    padding: 10px 16px;
    font-weight: 600;
    color: var(--text-secondary);
    font-size: 12px;
    text-transform: uppercase;
    border-bottom: 1px solid var(--border);
    background: var(--bg-hover);
    align-items: center;
    overflow: hidden;
    scrollbar-gutter: stable;
}
.payout-grid-header.buddy-table-header {
    grid-template-columns: 2fr 1fr 1fr;
}
.payout-grid-row {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 160px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--border-light);
    align-items: center;
    transition: background var(--transition);
}
.payout-grid-row.buddy-table-row {
    grid-template-columns: 2fr 1fr 1fr;
}
.payout-grid-row:last-child {
    border-bottom: none;
}
.payout-grid-row:hover {
    background: var(--bg);
}
.payout-grid-row.parent-row {
    background: var(--bg-hover);
    font-weight: 600;
    cursor: pointer;
    overflow: hidden;
    scrollbar-gutter: stable;
}
.payout-grid-row.sub-row {
    padding-left: 48px;
    font-size: 13px;
    border-bottom: 1px solid var(--border-light);
}
.payout-col.text-right {
    text-align: right;
    display: flex;
    justify-content: flex-end;
}
.payout-col.text-center {
    text-align: center;
    display: flex;
    justify-content: center;
}
.payout-sub-rows {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.35s cubic-bezier(0.25, 1, 0.5, 1);
}
.payout-sub-rows.open {
    grid-template-rows: 1fr;
}
.payout-sub-rows-inner {
    min-height: 0;
    overflow: hidden;
}
.payout-sub-rows-scroll {
    max-height: 400px;
    overflow-y: auto;
    scrollbar-gutter: stable;
}
