/*
 * Floating contact icons — shared cho TẤT CẢ 837 theme qua cdn_assets_head().
 * Render từ render_floating_contact($tenant) ở cuối <body> qua cdn_assets_foot().
 * Class prefix `ss-fc-*` / `ss-floating-contact` để tránh đụng `.floating-contact`
 * inline trong theme `default` (block riêng của theme đó).
 */
.ss-floating-contact {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 1050;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.ss-fc-btn {
    position: relative;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #fff;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .25);
    transition: transform .15s;
}
.ss-fc-btn:hover { transform: scale(1.08); color: #fff; }
.ss-fc-zalo  { background: #0068ff; }
.ss-fc-fb    { background: #1877f2; }
.ss-fc-phone { background: #16a34a; }
.ss-fc-zalo .ss-fc-label {
    color: #fff;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: .5px;
}
.ss-fc-fb i,
.ss-fc-phone i { font-size: 22px; line-height: 1; }

/* Pulse rim — visual affordance */
.ss-fc-pulse {
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    border: 3px solid currentColor;
    animation: ssFcPulse 2s ease-out infinite;
    pointer-events: none;
    opacity: 0;
}
.ss-fc-zalo  .ss-fc-pulse { color: #0068ff; }
.ss-fc-fb    .ss-fc-pulse { color: #1877f2; }
.ss-fc-phone .ss-fc-pulse { color: #16a34a; }
@keyframes ssFcPulse {
    0%   { opacity: .6; transform: scale(.85); }
    100% { opacity: 0;  transform: scale(1.4); }
}

/* Mobile: shrink + tăng khoảng cách iOS safe-area */
@media (max-width: 600px) {
    .ss-floating-contact {
        right: 14px;
        bottom: calc(14px + env(safe-area-inset-bottom, 0px));
        gap: 10px;
    }
    .ss-fc-btn { width: 50px; height: 50px; }
    .ss-fc-phone i { font-size: 20px; }
}

@media print {
    .ss-floating-contact { display: none !important; }
}
