Article-level share's entry point is a share button within Minerva. Implement [design](https://www.figma.com/design/qxyZFjTEgVNm5romOcj3f6/Highlight-actions?node-id=417-3431&m=dev).
{F77157772}
=== Acceptance criteria
[] add share button (with "Share" aria label) to toolbelt & remove "download pdf" button
=== Technical considerations
Minerva includes a **toolbar** (icon row) and a conditional **overflow dropdown**. The overflow is gated by the `MinervaOverflowInPageActions` config (`base: false`, `loggedin: true`), so logged-out readers on main namespace pages (the target population per T420773) should see only the toolbar.
**Sources of toolbar items.** They don't all come from the same place:
- Language / Watch / History / Edit are server-rendered via the [[https://www.mediawiki.org/wiki/Manual:Hooks/SkinTemplateNavigation::Universal | SkinTemplateNavigation::Universal]] hook and built into the toolbar by Minerva's `ToolbarBuilder`.
- "Download as PDF" is Minerva's own button, //not// from the [[https://www.mediawiki.org/wiki/Extension:Collection | Collection]] extension. **It is injected client-side** by `skins.minerva.scripts/downloadPageAction.js` via `mw.util.addPortletLink`, and self-gates on the `wgMinervaDownloadNamespaces` JS config var exposed by `SkinMinerva::getJsConfigVars()`.
The good news for us is that we should be able to keep all work inside [[https://www.mediawiki.org/wiki/Extension:ReaderExperiments | ReaderExperiments]], no need for a Minerva patch:
# **Add share icon** — register [[https://www.mediawiki.org/wiki/Manual:Hooks/SkinTemplateNavigation::Universal | SkinTemplateNavigation::Universal]] and insert a `share`-keyed entry with an `icon` property into `$links['views']` for enrolled users. `ToolbarBuilder` renders any view with an icon, so nothing is needed on Minerva's side. The existing ShareHighlight ResourceLoader module binds the click handler.
# **Remove Download-as-PDF icon** — in the existing [[https://www.mediawiki.org/wiki/Manual:Hooks/BeforePageDisplay | BeforePageDisplay]] handler, call `$out->addJsConfigVars( 'wgMinervaDownloadNamespaces', [] )` for enrolled users. Minerva's JS self-gate reads that config and skips injection entirely — no CSS suppression, no DOM flash.
Gating for both changes mirrors the existing ShareHighlight pattern: Minerva skin + `NS_MAIN` + logged-out + assigned experiment group.