doxa-maps/docs/readme-images
doxa-maps-88655c70 88f01b9a95 lift the pin hint into view when its host clips it
The cap-4 composite shipped the coach-mark sliced through the middle of its sentence.
Measured, same component and viewport: the leaf renders the pill at bottom 864 of 900,
the composite at 919 — clipped by 17px, because the composite adds a ~53px header above
its nested child's stage and findMapBox() finds no positioned container to re-parent into.

The component's header promises that case degrades to "stay put — a degraded anchor, never
a crash". A graceful degradation that degrades to invisible is a failure, not a fallback,
so the clamp measures the rendered rect and only ever lifts a pill that is actually clipped.

Two wrong attempts are recorded in the code because the reasons matter. Setting
style.transform would have destroyed the wrapper's translateX(-50%) centring, and the
pill's computed transform also carries the bob animation, so a computed reading is never
just my offset. Adjusting the bottom offset composes with the attribution clearance
instead of fighting it. Clamping only at nextTick also missed: the composite's layout has
not settled then, so the clamp now runs from syncAttribClearance, which already re-fires
from a ResizeObserver, plus a second observer on the pill's own layout parent.

Verified on six surfaces: the composite lifts 30px to bottom 888, every other surface
reports lift 0 and is byte-identical in behaviour, and all six keep centreDelta 0.
2026-09-21 12:30:11 +00:00
..
cap1-single-element.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
cap2-adoption.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
cap2-engagement.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
cap2-prayer.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
cap3-monolithic-research.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
cap4-upg100-list.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
cap4-upg100-mfe.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
cap4-upg100-poster-wall.png fix the impossible 27/26 zone badge and replace a faked page-2 shot with the real third profile 2026-09-21 11:29:25 +00:00
cap5-doxa-maps-spa.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
cap5-plugin-studio.png shoot the plugin-studio element and stop captioning the product SPA as the studio 2026-09-21 10:59:28 +00:00
deploy1-iframe.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
deploy2-mobile-spa.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00
deploy3-research-dashboard.png lift the pin hint into view when its host clips it 2026-09-21 12:30:11 +00:00