:root {
  --footer-copy-bg: rgba(17, 17, 17, 0.92);
  --footer-copy-text: #fff;
}

html,
body,
body * {
  -webkit-user-select: none;
  user-select: none;
}

input,
textarea,
select,
[contenteditable="true"],
[contenteditable="plaintext-only"] {
  -webkit-user-select: text;
  user-select: text;
}

body {
  padding-bottom: 0;
}

.shared-contact {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 140;
  padding: 0 40px 24px;
  margin: 0;
  background: transparent !important;
  pointer-events: none;
  isolation: isolate;
  mix-blend-mode: difference;
}

.shared-contact .shared-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  background: transparent !important;
  border-radius: 0 !important;
  pointer-events: none;
}

.shared-contact .footer-left,
.shared-contact .footer-right {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 18px;
  pointer-events: auto;
}

.shared-contact .footer-left a,
.shared-contact .footer-left .footer-time,
.shared-contact .footer-right a {
  color: #fff;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  font-family: "PP Neue Montreal Mono", monospace;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  transition: color 0.2s ease;
}

.shared-contact .footer-right a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.7rem;
  padding: 4px 8px;
}

.shared-contact .footer-left a:hover,
.shared-contact .footer-left .footer-time:hover,
.shared-contact .footer-right a:hover {
  color: #fff
}

.shared-contact .footer-right a:hover,
.shared-contact .footer-right a:focus-visible {
  background: var(--footer-copy-bg);
  color: var(--footer-copy-text);
  outline: none;
}

.shared-contact .footer-left .footer-time {
  cursor: default;
}

.footer-copy-tooltip {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 13000;
  pointer-events: none;
  visibility: hidden;
  transform: translate3d(-999px, -999px, 0);
  padding: 6px 10px;
  border-radius: 0px;
  background: #fff;
  color: #000;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
  isolation: isolate;
  mix-blend-mode: difference;
}

.footer-copy-tooltip.is-visible {
  visibility: visible;
}

.bottom-bar {
  z-index: 150;
}

@media (max-width: 980px) {
  .shared-contact {
    padding: 0 20px 18px;
  }

  .shared-contact .shared-footer {
    align-items: flex-start !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
  }

  .shared-contact .footer-left,
  .shared-contact .footer-right {
    width: 100%;
    justify-content: space-between;
    gap: 12px;
  }
}

@media (min-width: 641px) and (max-width: 1100px) {
  .shared-contact {
    padding: 0 24px 18px;
  }

  .shared-contact .shared-footer {
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 18px !important;
  }

  .shared-contact .footer-left,
  .shared-contact .footer-right {
    width: auto;
    gap: 14px;
  }

  .shared-contact .footer-left {
    justify-content: flex-start;
  }

  .shared-contact .footer-right {
    justify-content: flex-end;
  }

  .shared-contact .footer-left a,
  .shared-contact .footer-left .footer-time,
  .shared-contact .footer-right a {
    font-size: 12px !important;
  }
}

@media (max-height: 760px) {
  .shared-contact {
    padding-bottom: 12px;
  }

  .shared-contact .footer-left a,
  .shared-contact .footer-left .footer-time,
  .shared-contact .footer-right a {
    font-size: 12px !important;
  }
}

@media (max-width: 640px) {
  .shared-contact {
    display: none !important;
  }
}

@media (max-width: 360px) {
  .shared-contact {
    display: none !important;
  }
}

@media (max-height: 540px) {
  .shared-contact {
    position: static;
    left: auto;
    right: auto;
    bottom: auto;
    padding: 1rem 10px 10px;
  }

  .shared-contact .shared-footer {
    gap: 8px !important;
  }

  .shared-contact .footer-left,
  .shared-contact .footer-right {
    gap: 10px;
  }

  .shared-contact .footer-left a,
  .shared-contact .footer-left .footer-time,
  .shared-contact .footer-right a {
    font-size: 10px !important;
  }

  .shared-contact .footer-right a {
    min-height: 1.8rem;
    padding: 2px 4px;
  }
}
