diff --git a/src/components/miners/MinerPRsTable.tsx b/src/components/miners/MinerPRsTable.tsx index 9e41b069..c0d5ff98 100644 --- a/src/components/miners/MinerPRsTable.tsx +++ b/src/components/miners/MinerPRsTable.tsx @@ -579,12 +579,18 @@ const MinerPRsTable: React.FC = ({ githubId }) => { .MuiButton-root': { - flex: { xs: 1, sm: 'none' }, - minWidth: 0, + flexShrink: 0, }, }} > diff --git a/src/components/miners/MinerRepoStandings.tsx b/src/components/miners/MinerRepoStandings.tsx index 386c1e44..6533d984 100644 --- a/src/components/miners/MinerRepoStandings.tsx +++ b/src/components/miners/MinerRepoStandings.tsx @@ -389,14 +389,14 @@ const MinerRepoStandings: React.FC = ({ > @@ -434,11 +434,30 @@ const MinerRepoStandings: React.FC = ({ {rows.length > 0 && ( - + *': { flexShrink: 0 }, + }} + > {view === 'cards' && ( <> Sort: @@ -491,7 +510,7 @@ const MinerRepoStandings: React.FC = ({ : 'background.default', fontSize: '0.8rem', height: 32, - minWidth: 156, + minWidth: { xs: 120, sm: 156 }, borderRadius: 2, '& .MuiOutlinedInput-notchedOutline': { borderColor: isSortMenuOpen @@ -551,6 +570,7 @@ const MinerRepoStandings: React.FC = ({ size="small" aria-label="Standings view" sx={{ + flexShrink: 0, '& .MuiToggleButton-root': { color: 'text.secondary', borderColor: 'border.light', diff --git a/src/pages/MinerDetailsPage.tsx b/src/pages/MinerDetailsPage.tsx index bef076c1..93830944 100644 --- a/src/pages/MinerDetailsPage.tsx +++ b/src/pages/MinerDetailsPage.tsx @@ -103,79 +103,17 @@ const MinerDetailsPage: React.FC = () => { px: { xs: 2, md: 0 }, }} > - {/* ── Header: back · mode toggle · watch ─────────────── */} - - + {/* ── Header: back + watch on one row; mode toggle below ─ */} + - {/* Mode toggle — a real page-level axis, not a stat */} - - {( - [ - { label: 'OSS Contributions', value: 'prs' as const }, - { label: 'Issue Discovery', value: 'issues' as const }, - ] as const - ).map((option) => { - const isActive = viewMode === option.value; - return ( - alpha(t.palette.text.primary, 0.5), - transition: 'all 0.2s', - '&:hover': { - backgroundColor: 'surface.elevated', - color: 'text.primary', - }, - }} - > - - {option.label} - - - ); - })} - + {minerExists && ( { /> )} + + {( + [ + { label: 'OSS Contributions', value: 'prs' as const }, + { label: 'Issue Discovery', value: 'issues' as const }, + ] as const + ).map((option) => { + const isActive = viewMode === option.value; + return ( + alpha(t.palette.text.primary, 0.5), + transition: 'all 0.2s', + '&:hover': { + backgroundColor: 'surface.elevated', + color: 'text.primary', + }, + }} + > + + {option.label} + + + ); + })} + {/* ── Two-column shell: main + sticky identity rail ──── */}