html {
  font-size: unset!important;
}

/* CM-2184: kill trackpad rubber-band in the authenticated shell.
   Scoped so Costco / iframe documents keep default overscroll (CENTAH-6384). */
html:has(.authenticated-app-shell),
body:has(.authenticated-app-shell) {
  overscroll-behavior: none;
}

.tw-h-128 {
  height: 32rem;
}

.tw-h-136 {
  height: 34rem;
}

.tw-max-h-100 {
  max-height: 25rem;
}

.lt-cell, .lt-column {
  padding: 10px;
  word-wrap: break-word;
}

.leads-table-container {
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 20px);
  display: flex;
  flex-direction: column;
  overflow: auto;
  height: 100%;
  max-height: calc(100vh - 64px - 41px);
}

.is-impersonating .leads-table-container {
  /*get smaller by impersonating message size*/
  max-height: calc(100vh - 64px - 68px);
}

.leads-table-wrapper {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.leads-table-wrapper .ui-table {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.leads-table-wrapper .models-table-wrapper {
  flex: 1;
  min-height: 0;
  overflow: auto;
  border-right: 2px solid #EDEFF3;
}

.leads-table-wrapper .models-table-wrapper:hover {
  overflow: auto;
}

.leads-table-wrapper > .tw-flex.tw-items-center.tw-justify-between.tw-mt-6 {
  position: sticky;
  bottom: 0;
  background: white;
  z-index: 28;
  flex-shrink: 0;
}

/* Tag UiPageRecordsIndicator uses tw-text-xs (12px); tables expect 16px */
.ui-table .models-table-wrapper .tw-text-xs.tw-text-ui-black-100 {
  font-size: 1rem !important;
}

/* Power-select dropdown list items inherit ~14px; match 16px form text */
.ember-power-select-dropdown .ember-power-select-option,
.ember-power-select-dropdown .ember-power-select-group-name,
.ember-power-select-dropdown .ember-power-select-search-input {
  font-size: 1rem !important;
}

.leads-table-wrapper th {
  position: sticky;
  top: 0;
  background: white;
  z-index: 3;
  width: 150px;
  height: 75px;
  min-width: 150px;
}

.leads-table-wrapper th:first-child,
.leads-table-wrapper td:first-child {
  position: sticky;
  left: 0;
  background: white;
  z-index: 4;
  width: 150px;
  min-width: 150px;
}

 .leads-table-wrapper tr:hover td:first-child {
   background: var(--color-ui-gray-40);
  }

.leads-table-wrapper th:nth-child(2),
.leads-table-wrapper td:nth-child(2) {
  position: sticky;
  left: 150px;
  background: white;
  z-index: 3;
}

.leads-table-wrapper tr:hover td:nth-child(2) {
  background: var(--color-ui-gray-40);
}

.leads-table-wrapper thead th:first-child { z-index: 6; }
.leads-table-wrapper thead th:nth-child(2) { z-index: 5; }

.leads-table-wrapper th:nth-child(2)::after,
.leads-table-wrapper td:nth-child(2)::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 2px;
  height: 100%;
  background-color: #EDEFF3;
  pointer-events: none;
}

/* Mobile: keep header sticky, disable sticky columns */
@media (max-width: 640px) {
  /* Unstick ONLY the first two data columns */
  .leads-table-wrapper td:first-child,
  .leads-table-wrapper td:nth-child(2) {
    position: static !important;
    left: auto !important;
    z-index: auto !important;
  }

  .leads-table-wrapper th:first-child,
  .leads-table-wrapper th:nth-child(2) {
    left: auto !important;
    z-index: 3 !important;
  }

  /* Remove the vertical divider */
  .leads-table-wrapper th:nth-child(2)::after,
  .leads-table-wrapper td:nth-child(2)::after {
    display: none !important;
  }
}

/* FIXME */
.notification-settings-list table thead tr {
  display: none;
}

/* Custom CSS  */

/* ---start---
   Swagger */
.swagger-ui {
  color: rgb(59, 65, 81)
}
.swagger-ui .topbar{
  background-color: white !important;
}
.topbar-wrapper img {
  display: flex;
  justify-content: flex-start;
  content: url('/assets/images/CentahLogo-v2.svg');
}

.swagger-ui .topbar .download-url-wrapper {
  display: none !important;
}
/* Swagger
   ---end--- */

/* ---start---
   tailwind extenders */
.ext-tw-max-w-content {
  max-width: fit-content;
}
.ext-tw-min-w-32 {
  min-width: 8rem;
}

@media (min-width: 640px) {
  .call-center-basic-scripting-layout {
    align-items: flex-start;
  }

  .call-center-basic-scripting-main,
  .call-center-basic-scripting-sidebar {
    max-height: calc(100vh - 7rem);
    overflow-y: auto;
  }

  .call-center-basic-scripting-sidebar {
    position: sticky;
  }

  .sm\:ext-tw-max-w-content {
    max-width: fit-content;
  }
  .sm\:ext-tw-min-w-32 {
    min-width: 8rem;
  }
}

@media (min-width: 1024px) {
  .call-center-basic-scripting-main,
  .call-center-basic-scripting-sidebar {
    max-height: calc(100vh - 11rem);
  }
}

@media (min-width: 768px) {
  .md\:ext-tw-max-w-content {
    max-width: fit-content;
  }
  .md\:ext-tw-min-w-32 {
    min-width: 8rem;
  }
}

@media (min-width: 1024px) {
  .lg\:ext-tw-max-w-content {
    max-width: fit-content;
  }
  .lg\:ext-tw-min-w-32 {
    min-width: 8rem;
  }
}

@media (min-width: 1280px) {
  .xl\:ext-tw-max-w-content {
    max-width: fit-content;
  }
  .xl\:ext-tw-min-w-32 {
    min-width: 8rem;
  }
}

th.tw-header-bottom {
  text-align: left;
  white-space: nowrap;
}

.tw-w-2-item {
  width: calc(50% - 8px);
}

.tw-w-3-item {
  width: calc(33.3% - 8px);
}

.tw-dot.tw-dot-active::before {
  background-color: #009e6a;
}

.tw-dot.tw-dot-inactive::before {
  background-color: #A8ABB0;
}

.tw-dot::before {
  content: '';
  height: 11px;
  width: 11px;
  display: block;
  position: absolute;
  left: 0;
  top: 6px;
  border-radius: 50%;
}

.tw-dot {
  position: relative;
  padding-left: 18px;
}

.tw-line:after {
  content: '';
  position: relative;
  float: right;
  border-bottom: 0.5px solid #A8ABB0;
  width: 66%;
  top: 6px;
  margin-top: 6px;
}

.tw-line {
  position: relative;
  display: block;
}
/* tailwind extenders
   ---end--- */

.inline-ui-spinner-overlay {
  margin-left: 1rem;
}

.inline-ui-spinner-overlay .ui-spinner {
  width: 20px;
  height: 20px;
}

.inline-ui-spinner-overlay [role=status] {
  display: none;
}

.align-ui-spinner-overlay .ui-spinner-overlay {
  height: 3rem !important;
  top: 21px !important
}

/* Soft-blur content under tag's UiSpinnerOverlay (UiSpinnerOverlayBlur) */
.ui-spinner-overlay-blur__content {
  transition: filter 160ms ease, opacity 160ms ease;
}

.ui-spinner-overlay-blur.is-loading .ui-spinner-overlay-blur__content {
  filter: blur(1.5px);
  opacity: 0.55;
  pointer-events: none;
  user-select: none;
}

.ui-spinner-overlay-blur .ui-spinner-overlay {
  background-color: rgba(255, 255, 255, 0.55);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  animation: ui-spinner-overlay-blur-fade-in 160ms ease;
}

.ui-spinner-overlay-blur .ui-spinner {
  width: 28px;
  height: 28px;
  border-width: 3px;
}

.ui-spinner-overlay-blur .ui-spinner-overlay [role='status'] > div {
  margin-top: 0.75rem;
}

@keyframes ui-spinner-overlay-blur-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.align-top {
  vertical-align: top;
}

.line-through {
  text-decoration: line-through;
}

.disabled-wrapper {
  pointer-events: none;
  opacity: 0.4;
}

.fc-list-day-cushion > a {
  color: #202632 !important
}

.fc-event-past {
  background-color: #EBF4FD;
  border-color: #EBF4FD;
  color: #515661;
}

.fc-event-past .fc-event-main {
  color: #515661;
}

.search-redesign input {
  border: none !important;
  background-color: transparent !important;
  margin: 0 !important;
}

.global-search-open .search-highlight {
  background-color: inherit;
  font-weight: inherit;
}

.search-highlight,
.highlights-enabled .search-highlight {
  background-color: rgb(250, 207, 167);
  font-weight: 700;
}

#user-context-switcher .ember-basic-dropdown-content{
  min-width: 438px;
}

/* Below 610px the fixed 438px min-width overflows and ember-basic-dropdown flips alignment off-screen.
   Scale width down gradually from 438px using space from the trigger to the viewport edge. */
@media (max-width: 610px) {
  #top-nav #user-context-switcher .ember-basic-dropdown-content {
    width: min(438px, calc(100vw - 10.5rem));
    min-width: min(438px, calc(100vw - 10.5rem));
    max-width: min(438px, calc(100vw - 10.5rem));
  }
}

.saved-filters-row fieldset {
  width: 100% !important;
}

.tag-theme-button-basic:disabled {
  color: var(--tw-text-ui-gray-dark);
  cursor: not-allowed;
  opacity: 0.7;
  text-decoration: none !important
}
/* FIXME in the current version of tag there is .tw-text-lg hardcoded in UiCheckbox */
#fixme-tw-text-md-for-checkbox-wrapper .checkbox-wrapper {
  font-size: 1rem!important;
}

.ui-modal__overlay {
  z-index: 40 !important;
}

#salesforce-configuration-modal .ui-modal__overlay {
  overflow: hidden;
}

#salesforce-configuration-modal [data-tag-ui-modal] {
  max-height: calc(100vh - 5rem);
  overflow: hidden;
}

#salesforce-configuration-modal main {
  max-height: calc(100vh - 17rem);
  min-height: 0;
  height: auto !important;
  overflow-y: auto !important;
}

/* Tag ui-modal-content <main> uses tw-overflow-y-auto; clips in-place power-select */
.ui-modal main[id$="-content"]:has(.ember-power-select-trigger) {
  overflow: visible !important;
}

#search {
  overflow: hidden;
}

#search main {
  overflow: hidden !important;
  display: flex;
}

.ui-tooltip-bubble {
  position: relative;
  width: min(408px, calc(100vw - 2rem));
  transform: translateX(-32px);
  filter: drop-shadow(0 8px 20px rgba(0, 0, 0, 0.15)) drop-shadow(0 3px 8px rgba(0, 0, 0, 0.06));
}

.ui-tooltip-bubble--fit {
  width: 100%;
  max-width: 100%;
  transform: none;
  box-sizing: border-box;
}

.ui-tooltip-arrow {
  position: absolute;
  bottom: 100%;
  left: 24px;
  width: 0;
  height: 0;
  border-left: 16px solid transparent;
  border-right: 16px solid transparent;
  border-bottom: 16px solid white;
}

.ui-tooltip-arrow--center {
  left: 50%;
  transform: translateX(-50%);
}

:root {
  --lead-gen-footer-height: 4rem;
  --lead-gen-navbar-rail: 4rem;
}

@media (max-width: 1023px) {
  .ui-footer-shell {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 30;
  }

  .authenticated-app-shell {
    padding-bottom: var(--lead-gen-footer-height);
  }
}

.lead-gen-intake .sm\:tw-flex {
  display: block !important;
}

.lead-gen-intake [data-tag-form-group] {
  margin-right: 0 !important;
  margin-bottom: 1rem !important;
  width: 100% !important;
  min-width: 0 !important;
}

/* Override half-width wrapper around the lead-code dropdown so it matches the rest of the intake form */
.lead-gen-intake .sm\:tw-w-1\/2 {
  width: 100% !important;
  padding-right: 0 !important;
}

.lead-gen-intake input:not([type="checkbox"]):not([type="radio"]),
.lead-gen-intake textarea,
.lead-gen-intake select,
.lead-gen-intake .ember-power-select-trigger {
  background-color: #F5F7F9 !important;
  border-color: #B5C0D0 !important;
  border-radius: 8px !important;
  font-size: 1rem !important;
}

/* Larger touch target + prevents iOS zoom-on-focus for native selects */
.lead-gen-intake select {
  min-height: 44px;
  padding: 0.625rem 2rem 0.625rem 0.75rem !important;
}

.lead-gen-intake .ember-power-select-trigger {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.lead-gen-intake .ember-power-select-selected-item,
.lead-gen-intake .ember-power-select-placeholder {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* pointer-events: none lets clicks through the empty area; children re-enable */
.lead-gen-clock-dock {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 40;
  pointer-events: none;
}

.lead-gen-clock-dock > * {
  pointer-events: auto;
}

@media (min-width: 1024px) {
  .lead-gen-clock-dock {
    left: var(--lead-gen-navbar-rail);
  }
}

.lead-gen-clock-tab-container {
  position: absolute;
  left: 0;
  bottom: var(--lead-gen-footer-height);
}

.lead-gen-clock-tab-container--open {
  bottom: 0rem;
}

/* justify-content: flex-end keeps the card pinned to the bottom while max-height grows,
   so the open transition reads as the card rising toward the tab */
.lead-gen-clock-drawer {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  max-height: 0;
  overflow: hidden;
  transition: max-height 320ms cubic-bezier(0.33, 1, 0.68, 1);
}

.lead-gen-clock-drawer.lead-gen-clock-drawer--open {
  max-height: 17rem;
}

.lead-gen-clock-drawer-card {
  flex-shrink: 0;
  box-shadow: 0 -4px 12px rgba(0, 49, 110, 0.06);
}

.lead-gen-clock-tab {
  min-width: 40px;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.lead-gen-clock-icon-bg {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  /* button needs to be circular */
  border-radius: 9999px;
  background-color: #fff;
}

.lead-gen-clock-tab:focus,
.lead-gen-clock-tab:focus-visible,
.lead-gen-clock-tab:active {
  outline: none;
  box-shadow: none;
}

.clock-in-store-icon,
.clock-in-user-icon {
  background: none;
  border: none;
}

.clock-in-store-tooltip {
  max-width: 16rem;
  white-space: pre-line;
}

.clock-in-user-tooltip {
  font-weight: 600;
}

.signup-column {
  width: 393px;
  max-width: 100%;
}

.signup-cta-inline [data-tag-ui-button] {
  min-width: 147px;
  border-radius: 9999px;
}

.signup-cta [data-tag-ui-button] {
  width: 100%;
  border-radius: 9999px;
}

.signup-services-bar {
  position: relative;
  overflow: hidden;
}

/* Wider than the bar so the inset shadow's side edges are clipped off */
.signup-services-bar--scrolling::before {
  content: '';
  position: absolute;
  top: 0;
  left: -8px;
  right: -8px;
  height: 16px;
  pointer-events: none;
  box-shadow: inset 0 4px 4px 0 rgba(32, 38, 50, 0.10);
}
