/* Hold-to-leave home button: a ring fills while the button is pressed, a tip appears on short taps. */
.hold-link { position: relative; }
.hold-ring { position: absolute; inset: -6px; width: auto; height: auto; pointer-events: none; opacity: 0; transform: rotate(-90deg); transition: opacity .15s; }
.hold-link.holding .hold-ring { opacity: 1; }
.hold-ring circle { fill: none; stroke: var(--accent, #1f8a72); stroke-width: 8; stroke-linecap: round; stroke-dasharray: 289; stroke-dashoffset: 289; }
.hold-tip { position: absolute; top: calc(100% + 9px); left: 0; z-index: 6; padding: 6px 11px; border-radius: 10px; background: #22403a; color: #fff; font-size: 12px; font-weight: 700; letter-spacing: 0; white-space: nowrap; box-shadow: 0 4px 10px #0003; pointer-events: none; }
.hold-tip::before { content: ""; position: absolute; top: -5px; left: 14px; border: 5px solid transparent; border-top: 0; border-bottom-color: #22403a; }
.hold-tip[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { .hold-ring { transition: none; } }
