{# Position-circle tooltip portal — page-root, position:fixed (escapes any  #}
{# tray overflow / mask-image clip per the portal gotcha). Distinct id from  #}
{# the tray's #id_tooltip_portal so the two hover systems don't collide.     #}
{# position-tooltip.js fills it on .gate-slot mouseenter from the circle's   #}
{# data-tt-* attrs + copies the circle's .tt-pos-* class on so it themes per #}
{# occupant kind. The .tt-sign stack (seat significator: rank + suit) pins   #}
{# top-right, modeled on the tray sig card.                                  #}
<div id="id_position_tooltip_portal" class="tt">
    <span class="tt-sign" style="display:none"><span class="fan-corner-rank"></span><i class="fa-solid tt-sign-suit"></i></span>
    <span class="tt-title"></span>
    <span class="tt-description"></span>
    <span class="tt-shoptalk"></span>
    <span class="tt-expiry"></span>
</div>
