# Evidence Topic: Company-channel action button compacting

## Metadata

- Date: 2026-07-31
- Status: Implemented
- Scope: Company-channel upload action and three period generation CTAs
- Confidence: Fact
- Source: `arr_web/static/styles.css`, `tests/test_arr_web.py`, 28 focused tests, 348-test discovery, isolated browser geometry/screenshots and port-8766 health probe
- Last verified: 2026-07-31 13:37:49 +08:00
- Stale trigger: company-generation markup, responsive breakpoint or action-label change

## Change

- `.company-period-cta` now uses a compact `clamp(104px, 25%, 124px)` width, 42px height, centered alignment and
  one-line 10px label treatment. Existing hover, disabled and active feedback remain in place.
- `.company-upload-button` uses the same width/height family and is centered inside the desktop 172px action column;
  the mobile single-column override keeps the button centered instead of stretching it full width.
- No API, upload, extraction, report-generation or database code changed.

## Verification

- Static CSS assertions, JavaScript syntax and HTML parsing passed.
- Focused `tests.test_arr_web` plus `tests.test_arr_web_company_reports`: 28/28 passed.
- Full `.venv/bin/python -m unittest discover -s tests`: 348 passed, 10 expected optional skips, 98.283 seconds.
- Isolated authenticated fake Web browser QA at 1280×720 and 390×844 found all three CTA center deltas at `0px`,
  matching 104×42px upload/action geometry, one-line labels, and `document.scrollWidth` equal to the viewport width.
  Browser console error/warning logs were empty; no upload, extraction, deletion, activation or report-generation
  action was invoked. Screenshots showed the compact blue generation actions and subdued disabled upload action
  without overlap.
- Port 8766 was restarted after the change under detached Screen session `arr2-web-8766`; PID 71849 serves the
  updated static assets and `GET /healthz` returns `ready`.
