diff --git a/studio/src/strings.js b/studio/src/strings.js
index ca31178f1..7053f1a27 100644
--- a/studio/src/strings.js
+++ b/studio/src/strings.js
@@ -2505,7 +2505,8 @@ export const STRINGS = {
PICK_NO_PLAYERS: 'No HLTV highlights in the queue',
PICK_ADD_TEAM: 'Add a team…',
PICK_ADD_TEAM_TITLE: 'Adds every player of a team from the Teams list: whoever played on its side in an HLTV demo, or has its tag in their name.',
- PICK_NO_TEAMS: 'No teams in the HLTV demos',
+ // Short enough for the list's fixed 160 px; its tooltip says where teams come from.
+ PICK_NO_TEAMS: 'No teams',
pickTeamOption: (name, count) => `${name} (${count} player${count === 1 ? '' : 's'})`,
PICK_NONE: 'Nobody picked yet',
PICK_REMOVE: 'Take this player out',
diff --git a/studio/tests/e2e/review-hltv.html b/studio/tests/e2e/review-hltv.html
index 1f3500116..178a06435 100644
--- a/studio/tests/e2e/review-hltv.html
+++ b/studio/tests/e2e/review-hltv.html
@@ -26,8 +26,9 @@
-
-
+
+
+
diff --git a/studio/tests/e2e/review-hltv.spec.js b/studio/tests/e2e/review-hltv.spec.js
index 6d10891ee..3c95c4508 100644
--- a/studio/tests/e2e/review-hltv.spec.js
+++ b/studio/tests/e2e/review-hltv.spec.js
@@ -62,6 +62,21 @@ test.describe('Review: HLTV players', () => {
const add = page.locator('#review-hltv-add-player');
await expect(add).toBeDisabled();
await expect(add.locator('option')).toHaveText(['No HLTV highlights in the queue']);
+ await expect(page.locator('#review-hltv-add-team option')).toHaveText(['No teams']);
+ // Both lists' fixed widths show the whole line beside the ~12 px arrow
+ // (#845: the team list cut "No teams in the HLTV demos" short).
+ const cut = await page.evaluate(() => {
+ const ctx = document.createElement('canvas').getContext('2d');
+ return [...document.querySelectorAll('#review-hltv-add-player, #review-hltv-add-team')]
+ .filter((list) => {
+ const css = getComputedStyle(list);
+ ctx.font = `${css.fontSize} ${css.fontFamily}`;
+ const room = list.clientWidth - parseFloat(css.paddingLeft) - parseFloat(css.paddingRight) - 12;
+ return ctx.measureText(list.options[0].text).width > room;
+ })
+ .map((list) => list.options[0].text);
+ });
+ expect(cut).toEqual([]);
// What main.js's updateDemoFooter does after a scan.
await page.evaluate(() => { window.__emptyQueue(false); window.__pick.refresh(); });
await expect(add).toBeEnabled();