diff --git a/src/app/globals.css b/src/app/globals.css index 850ef7d05..03deee517 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -1340,15 +1340,17 @@ summary::-webkit-details-marker { display: none; } -.cross-mode-links-rail { - scrollbar-width: none; - -ms-overflow-style: none; - mask-image: linear-gradient(90deg, black calc(100% - 1rem), transparent); - -webkit-mask-image: linear-gradient(90deg, black calc(100% - 1rem), transparent); -} +@media (min-width: 768px) { + .cross-mode-links-rail { + scrollbar-width: none; + -ms-overflow-style: none; + mask-image: linear-gradient(90deg, black calc(100% - 1rem), transparent); + -webkit-mask-image: linear-gradient(90deg, black calc(100% - 1rem), transparent); + } -.cross-mode-links-rail::-webkit-scrollbar { - display: none; + .cross-mode-links-rail::-webkit-scrollbar { + display: none; + } } .answer-suggestion-chip { diff --git a/src/components/ClinicalDashboard.tsx b/src/components/ClinicalDashboard.tsx index 46c9f3b1f..5ee16227c 100644 --- a/src/components/ClinicalDashboard.tsx +++ b/src/components/ClinicalDashboard.tsx @@ -3502,9 +3502,6 @@ export function ClinicalDashboard({ {showSystemNotice && answer ? renderSystemNotice("sm:hidden") : null} - {activeModeResultKind === "answer" && answer && ( - - )} {activeModeResultKind === "answer" && answer && ( void; - compact?: boolean; }) { return ( -
+
logCrossModeLinkOpen(query, link)} @@ -102,6 +100,7 @@ function CrossModeLinkActions({ function CrossModeLinkCard({ link, Icon, query, onModeSearch }: CrossModeLinkCardProps) { return (
- + ); } @@ -220,6 +219,9 @@ export function CrossModeLinksStrip({

1 ? 0 : undefined} + aria-label={links.length > 1 ? "Related library matches; scroll horizontally for more" : undefined} className="cross-mode-links-rail polished-scroll grid gap-2 overflow-x-auto overscroll-x-contain pb-1 md:flex md:w-max md:max-w-full md:gap-2.5" data-testid="cross-mode-links-rail" > diff --git a/tests/ui-smoke.spec.ts b/tests/ui-smoke.spec.ts index e695c7f68..9296d7830 100644 --- a/tests/ui-smoke.spec.ts +++ b/tests/ui-smoke.spec.ts @@ -1480,6 +1480,7 @@ test.describe("Clinical KB UI smoke coverage", () => { const answerSurface = page.locator('[data-dashboard-stage="answer-surface"]'); const strip = answerSurface.getByTestId("cross-mode-links"); await expect(strip).toBeVisible({ timeout: 15_000 }); + await expect(answerSurface.getByTestId("cross-mode-links")).toHaveCount(1); const rail = strip.getByTestId("cross-mode-links-rail"); await expect(rail).toBeVisible(); await expect(rail).toHaveClass(/overflow-x-auto/);