forked from fa/breadcrumb-the-shire
Refactors the address-book detail partial (templates/partials/app-user-profile.phtml) toward a Stripe/Linear aesthetic: the banner + avatar still carry identity, but the header now also carries meta chips (primary tenant, department, hire date) and primary CTAs (Send email, Call). Email/phone/mobile move out of a tab into an always-visible contact stack directly under the identity block, with icon-led rows and a hover-revealed copy button. Tabs reduce to Address / About / Organization, with Organization only appearing for multi-tenant users — single-tenant assignments are fully communicated through chips. The detail aside is gone; main content is single-column and more focused. Introduces web/js/components/app-copy-field.js — a generic, server- markup-driven copy-to-clipboard button component wired from app-init.js. The markup is rendered by the PHP partial (role-compatible, SSR-safe); the component only attaches the click handler and drives icon-swap feedback via an is-copied class. Address-book index page now loads the 'address-book' CSS group alongside 'address-book-index' so the detail drawer (which mounts the same profile partial inline) gets the correct styles. Contact rows use inline-block + vertical-align centering inside the clickable link; the field-label tooltip lives on a <span> wrapper rather than the <i> itself (Bootstrap icons render their glyph via ::before, and the tooltip rule would otherwise cap it). Hover reveals the copy button on pointer devices; @media (hover: none) shows it permanently on touch. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>