/* A quiet, page-fixed contact entrance; never a custom mouse pointer. */
.ulives-contact-pal {
  --contact-pal-white: var(--workflow-white, var(--v2-white, #fff));
  --contact-pal-ink: var(--workflow-ink, var(--v2-ink, #19243a));
  --contact-pal-green: var(--workflow-green-soft, var(--v2-lime-soft, #e8eedb));
  --contact-pal-line: var(--workflow-green-line, #96a77b);
  position: fixed; z-index: 4;
  right: max(24px, calc(env(safe-area-inset-right, 0px) + 8px));
  bottom: calc(max(24px, env(safe-area-inset-bottom, 0px)) + var(--ulives-contact-pal-lift, 0px));
  width: 72px; box-sizing: border-box;
  color: var(--contact-pal-ink); font-family: "Noto Sans TC", "PingFang TC", sans-serif;
}
.ulives-contact-pal *, .ulives-contact-pal *::before, .ulives-contact-pal *::after { box-sizing: border-box; }
.ulives-contact-pal[data-contact-suspended="true"], .has-flow-service-view .ulives-contact-pal { display: none !important; }
.ulives-contact-pal-link { display: grid; justify-items: center; gap: 4px; width: 100%; border-radius: 36px 36px 12px 12px; color: inherit; text-decoration: none; }
.ulives-contact-pal-image { display: block; width: 72px; height: 72px; max-width: 100%; border: 1px solid var(--contact-pal-line); border-radius: 50%; background: var(--contact-pal-white); }
.ulives-contact-pal-label { display: block; width: 100%; padding: 2px 3px; border: 1px solid var(--contact-pal-line); border-radius: 999px; color: var(--contact-pal-ink); background: var(--contact-pal-green); font-size: 13px; font-weight: 750; line-height: 20px; text-align: center; white-space: nowrap; }
.ulives-contact-pal-link:hover .ulives-contact-pal-label { text-decoration: underline; text-underline-offset: 3px; }
.ulives-contact-pal-close { position: absolute; z-index: 1; top: -18px; right: -8px; display: grid; place-items: center; width: 44px; height: 44px; min-width: 44px; min-height: 44px; margin: 0; padding: 0; border: 0; border-radius: 50%; color: var(--contact-pal-ink); background: transparent; font: inherit; cursor: pointer; }
.ulives-contact-pal-close > span { display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid var(--contact-pal-line); border-radius: 50%; color: inherit; background: var(--contact-pal-white); font-size: 18px; font-weight: 500; line-height: 1; }
.ulives-contact-pal :is(a, button):focus-visible { outline: 3px solid var(--contact-pal-ink); outline-offset: 3px; }
@media (max-width: 640px) {
  .ulives-contact-pal { right: max(12px, calc(env(safe-area-inset-right, 0px) + 8px)); bottom: calc(max(18px, env(safe-area-inset-bottom, 0px)) + var(--ulives-contact-pal-lift, 0px)); width: 56px; }
  .ulives-contact-pal-image { width: 56px; height: 56px; }
  .ulives-contact-pal-link { gap: 3px; }
  .ulives-contact-pal-label { padding: 1px 2px; font-size: 11px; line-height: 18px; }
}
@media print { .ulives-contact-pal { display: none !important; } }
