/* One shared stack owns placement and dimensions; each service retains its
   colors, permissions, page exclusions and mobile visibility preference. */
.floating-services {
  --shortcut-width: 176px;
  --shortcut-height: 52px;
  position: fixed;
  left: max(24px, env(safe-area-inset-left));
  bottom: max(24px, env(safe-area-inset-bottom));
  z-index: 70;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  pointer-events: none;
}
.floating-services > :is(.digital-launcher, .auction-launcher, .assistant-launcher) {
  position: relative;
  inset: auto;
  box-sizing: border-box;
  width: var(--shortcut-width);
  height: var(--shortcut-height);
  min-width: var(--shortcut-width);
  min-height: var(--shortcut-height);
  flex: none;
  gap: 10px;
  padding: 12px 14px;
  font-size: 13px;
  line-height: 1.6;
  pointer-events: auto;
}
.floating-services > a > svg { width: 22px; height: 22px; flex: none; }
.floating-services > a > span:not(.assistant-launcher-dot) {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.floating-services > .assistant-widget { pointer-events: auto; }
.floating-services .assistant-launcher-dot {
  position: absolute;
  inset-inline-end: 10px;
  margin: 0;
}
@media (max-width: 760px) {
  .floating-services {
    --shortcut-width: 48px;
    --shortcut-height: 48px;
    left: max(16px, env(safe-area-inset-left));
    bottom: max(16px, env(safe-area-inset-bottom));
    gap: 8px;
  }
  .floating-services > :is(.digital-launcher, .auction-launcher, .assistant-launcher) {
    padding: 0;
    justify-content: center;
  }
  .floating-services .assistant-launcher > span:not(.assistant-launcher-dot) {
    position: absolute;
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    overflow: hidden;
    white-space: nowrap;
  }
  .floating-services .assistant-launcher-dot { display: none; }
}
@media print { .floating-services { display: none; } }
