.if-floating {
 position: fixed;
 z-index: 99999;
 display: flex;
 align-items: center;
 justify-content: center;
 width: var(--if-size, 56px);
 height: var(--if-size, 56px);
 box-sizing: border-box;
 padding: 12px;
 border: 0;
 border-radius: 50%;
 background: var(--if-color, #25d366);
 color: #fff;
 text-decoration: none;
 box-shadow: 0 4px 14px rgb(0 0 0 / 25%);
 transition: box-shadow .15s ease;
}
.if-floating:hover { color: #fff; box-shadow: 0 6px 20px rgb(0 0 0 / 35%); }
.if-floating:focus-visible { outline: 3px solid #111; outline-offset: 4px; box-shadow: 0 0 0 4px #fff; }
.if-floating svg, .if-floating .if-floating__image { display: block; width: 100%; height: 100%; max-width: 100%; object-fit: contain; margin: 0; }
.if-floating--top-left, .if-floating--middle-left, .if-floating--bottom-left { left: max(var(--if-offset), env(safe-area-inset-left, 0px)); }
.if-floating--top-right, .if-floating--middle-right, .if-floating--bottom-right { right: max(var(--if-offset), env(safe-area-inset-right, 0px)); }
.if-floating--top-left, .if-floating--top-center, .if-floating--top-right { top: calc(max(var(--if-offset), env(safe-area-inset-top, 0px)) + var(--wp-admin--admin-bar--height, 0px)); }
.if-floating--bottom-left, .if-floating--bottom-center, .if-floating--bottom-right { bottom: max(var(--if-offset), env(safe-area-inset-bottom, 0px)); }
.if-floating--middle-left, .if-floating--middle-right { top: 50%; transform: translateY(-50%); }
.if-floating--top-center, .if-floating--bottom-center { left: 50%; transform: translateX(-50%); }
@media (prefers-reduced-motion: reduce) { .if-floating { transition: none; } }
@media print { .if-floating { display: none; } }
