/* Race Lens table extras — keep separate from user style.css */
#rl-root .rl-detail-head-wrap { flex: 0 0 auto; display: flex; flex-direction: column; gap: var(--rl-space-xs); min-width: 0; }
#rl-root .rl-race-blobs {display: flex;flex-wrap: wrap;gap: var(--rl-space-xs);min-width: 0;margin: 0 0 4px 0;}
#rl-root .rl-race-blobs.hidden { display: none; }
#rl-root .rl-race-blob {display: inline-flex;flex-direction: column;width: 69px;align-items: center;gap: var(--rl-space-2xs);padding: var(--rl-space-2xs) var(--rl-space-sm);border: 1px solid var(--rl-border);border-radius: var(--rl-radius);background: var(--rl-bg-tab);font-size: var(--rl-text-md);line-height: var(--rl-lh-tight);white-space: nowrap;}
#rl-root .rl-race-blob-key {color: var(--rl-text-muted);font-weight: var(--rl-fw-semibold);text-transform: uppercase;}
#rl-root .rl-race-blob-val { color: var(--rl-text); font-weight: var(--rl-fw-semibold); }
#rl-root .rl-table-toolbar { display: flex; justify-content: flex-end; align-items: center; min-width: 0; }
#rl-root .rl-column-picker { position: relative; }
#rl-root .rl-column-picker-panel { position: absolute; top: 100%; right: 0; z-index: 30; margin-top: var(--rl-space-2xs); padding: var(--rl-space-sm); min-width: 10rem; max-height: 16rem; overflow: auto; background: var(--rl-bg-page); border: 1px solid var(--rl-border); border-radius: var(--rl-radius); box-shadow: 0 2px 8px rgba(0,0,0,0.12); display: flex; flex-direction: column; gap: var(--rl-space-xs); }
#rl-root .rl-column-picker-panel.hidden { display: none; }
#rl-root .rl-column-picker-block { display: flex; flex-direction: column; gap: 2px; }
#rl-root .rl-column-picker-block-title { font-size: var(--rl-text-xs); font-weight: var(--rl-fw-semibold); color: var(--rl-text-muted); text-transform: uppercase; padding-top: var(--rl-space-2xs); }
#rl-root .rl-column-picker-option { display: flex; align-items: center; gap: var(--rl-space-xs); margin: 0; font-size: var(--rl-text-sm); cursor: pointer; white-space: nowrap; }
#rl-root .rl-column-picker-option input { width: 14px; height: 14px; margin: 0; cursor: pointer; }
/* Cell gutters — match Cards #race_tbl (separate borders + 1px spacing) */
#rl-root .runners-wrap { background: var(--rl-bg-page); }
#rl-root .rl-table.rl-table--grouped {
    border-collapse: separate;
    border-spacing: 2px;
    table-layout: auto;
    background: var(--rl-bg-page);
}
#rl-root .rl-table.rl-table--grouped tr {
    border: none;
    padding: 0;
}
#rl-root .rl-table.rl-table--grouped thead tr.rl-th-top td {
    background: var(--rl-bg-tab);
    text-transform: uppercase;
    text-align: center;
    padding: var(--rl-space-2xs) var(--rl-space-sm);
    border: 1px solid var(--rl-border-light);
}
#rl-root .rl-table.rl-table--grouped th.block-spacer,
#rl-root .rl-table.rl-table--grouped td.block-spacer {
    width: 2px;
    min-width: 2px;
    max-width: 2px;
    padding: 0;
    background: var(--rl-bg-page);
    border: none;
    border-top: none;
    border-bottom: none;
    border-left: none;
    border-right: none;
}
/* Top group row spacers must not inherit group-header cell borders */
#rl-root .rl-table.rl-table--grouped thead tr.rl-th-top td.block-spacer {
    background: var(--rl-bg-page);
    border: none;
    border-top: none;
    border-bottom: none;
    border-left: none;
    border-right: none;
    padding: 0px;
}
#rl-root .rl-table th.col-hidden, #rl-root .rl-table td.col-hidden, #rl-root .rl-table .block-spacer.col-hidden { display: none; }
#rl-root .rl-runner-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#rl-root .rl-runner-extra {font-size: var(--rl-text-xs);font-weight: 600;/* color: var(--rl-text-muted); */line-height: var(--rl-lh-tight);overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
#rl-root .rl-table td.col-name { white-space: normal; vertical-align: middle; }

#rl-root .rl-column-picker-btn {
    padding: var(--rl-input-pad-y) var(--rl-space-md);
    border: 1px solid var(--rl-border);
    border-radius: var(--rl-radius);
    background: var(--rl-bg-tab);
    font-family: var(--rl-font);
    font-size: var(--rl-text-xs);
    font-weight: var(--rl-fw-semibold);
    line-height: 18px;
    text-transform: uppercase;
    color: var(--rl-text);
    cursor: pointer;
}
#rl-root .rl-column-picker-btn:hover { background: var(--rl-bg-tab-hover); }
#rl-root .runners-wrap { display: flex; flex-direction: column; gap: var(--rl-space-xs); min-height: 0; }

#rl-root .rl-table.rl-table--grouped col.block-spacer-col {
    width: 2px;
}
