:root{--dpr-safe:env(safe-area-inset-bottom)}
.dprfctap{position:fixed;z-index:99999;display:flex;flex-direction:column;align-items:flex-end;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s ease, transform .25s ease}
.dprfctap.show{opacity:1;transform:none;pointer-events:auto}
.dprfctap-br{right:var(--dpr-ox);bottom:calc(var(--dpr-oy) + var(--dpr-safe,0px))}
.dprfctap-bl{left:var(--dpr-ox);bottom:calc(var(--dpr-oy) + var(--dpr-safe,0px));align-items:flex-start}
.dprfctap .btn{display:flex;align-items:center;justify-content:center;position:relative;width:var(--dpr-size);height:var(--dpr-size);border-radius:var(--dpr-round);box-shadow:var(--dpr-shadow);text-decoration:none;outline:none}
.dprfctap .btn + .btn{margin-top:var(--dpr-gap)}
.dprfctap .btn .ico{display:flex;align-items:center;justify-content:center}
.dprfctap.labels-desktop .btn .label{position:absolute;right:calc(100% + 10px);left:auto;white-space:nowrap;background:#0f172a;color:#fff;padding:6px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.12);font-weight:800;font-size:.9rem;opacity:0;transform:translateX(4px);transition:opacity .15s ease, transform .15s ease;pointer-events:none}
.dprfctap-bl.labels-desktop .btn .label{left:calc(100% + 10px);right:auto}
.dprfctap.labels-desktop .btn:hover .label{opacity:1;transform:none}
@media (max-width: 980px){ .dprfctap.labels-desktop .btn .label{display:none} }
@media (prefers-reduced-motion: reduce){
  .dprfctap, .dprfctap .btn, .dprfctap .btn .label{transition:none !important}
}
.dprfctap.pulse .btn.book::after{
  content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid rgba(255,255,255,.65);
  transform:scale(1);opacity:.0;animation:dpr-pulse 2.2s ease-out infinite;pointer-events:none
}
@keyframes dpr-pulse{0%{opacity:.35;transform:scale(1)}100%{opacity:0;transform:scale(1.5)}}
