.icon-tooltip { position: fixed; z-index: 1000; max-width: min(20rem, calc(100vw - 16px)); padding: var(--spacing) calc(var(--spacing) * 2); border: 1px solid var(--color-gray-750); border-radius: var(--radius-md); background: var(--color-gray-800); box-shadow: var(--shadow-overlay); color: var(--color-white); font-size: var(--text-xs); font-weight: 500; line-height: 1.35; text-align: center; pointer-events: none; opacity: 0; visibility: hidden; transition: opacity var(--duration-fast) var(--ease-out), visibility var(--duration-fast) var(--ease-out); } .icon-tooltip[data-side="top"] { transform: translateY(-100%); } .icon-tooltip[data-side="right"] { max-width: min(calc(var(--spacing) * 70), calc(100vw - 16px)); font-weight: 400; text-align: left; transform: translateY(-50%); } .icon-tooltip[data-side="left"] { transform: translateY(-50%); } .icon-tooltip[data-visible] { opacity: 1; visibility: visible; } .icon-tooltip[data-instant] { transition: none; } @media (prefers-reduced-motion: reduce) { .icon-tooltip { transition: none; } } /* A shortcut hint follows the label in quieter ink. */ .icon-tooltip:not([data-shortcut=""])[data-shortcut]::after { margin-left: calc(var(--spacing) * 1.5); content: attr(data-shortcut); font-weight: 400; opacity: 0.6; }