.rbf{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;flex-direction:column;align-items:flex-end;font-family:var(--f,'Poppins','Segoe UI',Arial,sans-serif)}
.rbf a,.rbf button{position:relative;display:flex;align-items:center;justify-content:center;width:50px;height:50px;border:0;border-radius:50%;padding:0;margin:0;cursor:pointer;color:#fff;text-decoration:none;box-shadow:0 6px 18px rgba(20,30,10,.28);transition:transform .2s ease,box-shadow .2s ease,background .2s ease,opacity .25s ease,height .25s ease,margin .25s ease}
.rbf a+a,.rbf a+button{margin-top:12px}
.rbf svg{width:26px;height:26px;fill:currentColor;flex:none}
.rbf a:hover,.rbf button:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(20,30,10,.34)}
.rbf a:focus-visible,.rbf button:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 6px var(--g,#3f5a19)}
.rbf-wa{background:#25d366}
.rbf-wa:hover{background:#1ebe5b}
.rbf-wa::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:rbfp 2.4s ease-out infinite;pointer-events:none}
.rbf-call{background:var(--g,#3f5a19)}
.rbf-call:hover{background:var(--gd,#2e4312)}
.rbf-call svg{width:23px;height:23px}
.rbf-top{background:#424242;height:0!important;margin-top:0!important;opacity:0;overflow:hidden;pointer-events:none;box-shadow:none!important}
.rbf-top.show{height:50px!important;margin-top:12px!important;opacity:1;pointer-events:auto;box-shadow:0 6px 18px rgba(20,30,10,.28)!important}
.rbf-top:hover{background:#222}
.rbf-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.rbf [data-tip]::after{content:attr(data-tip);position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%) translateX(6px);background:#1f2219;color:#fff;font-size:12px;font-weight:500;line-height:1;white-space:nowrap;padding:8px 11px;border-radius:6px;opacity:0;pointer-events:none;transition:.2s}
@media (hover:hover){.rbf [data-tip]:hover::after{opacity:1;transform:translateY(-50%)}}
@keyframes rbfp{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.55);opacity:0}}
@media (max-width:600px){.rbf{right:12px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}.rbf a,.rbf button{width:46px;height:46px}.rbf-top.show{height:46px!important}.rbf svg{width:24px;height:24px}.rbf-call svg{width:21px;height:21px}}
@media (prefers-reduced-motion:reduce){.rbf-wa::before{animation:none}.rbf a,.rbf button{transition:none}}
@media print{.rbf{display:none}}
